Annotation of embedaddon/mtr/portability/error.c, revision 1.1
1.1 ! misho 1: /*
! 2: Linux error(3) function go around for systems that has err(3) and
! 3: warn(3), but no error(3). MacOS is good example of such.
! 4:
! 5: The GNU C Library is free software; you can redistribute it and/or
! 6: modify it under the terms of the GNU Lesser General Public
! 7: License as published by the Free Software Foundation version 2.
! 8:
! 9: The GNU C Library is distributed in the hope that it will be useful,
! 10: but WITHOUT ANY WARRANTY; without even the implied warranty of
! 11: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
! 12: Lesser General Public License for more details.
! 13:
! 14: You should have received a copy of the GNU Lesser General Public
! 15: License along with the GNU C Library; if not, write to the Free
! 16: Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
! 17: 02111-1307 USA.
! 18: */
! 19:
! 20: #include <stdarg.h>
! 21: #include <err.h>
! 22:
! 23: void error(int status, int errnum, const char *format, ...) {
! 24: va_list arg;
! 25:
! 26: va_start(arg, format);
! 27: if (errnum == 0) {
! 28: if (status == 0)
! 29: vwarnx(format, arg);
! 30: else
! 31: verrx(status, format, arg);
! 32: } else {
! 33: if (status == 0)
! 34: vwarn(format, arg);
! 35: else
! 36: verr(status, format, arg);
! 37: }
! 38: va_end(arg);
! 39: }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>