static void ndo_default_print(netdissect_options *ndo, const u_char *bp,
u_int length);
-static void ndo_error(netdissect_options *ndo _U_, const char *fmt, ...)
+static void ndo_error(netdissect_options *ndo, const char *fmt, ...)
__attribute__((noreturn))
#ifdef __ATTRIBUTE___FORMAT_OK
__attribute__((format (printf, 2, 3)))
#endif /* __ATTRIBUTE___FORMAT_OK */
;
-static void ndo_warning(netdissect_options *ndo _U_, const char *fmt, ...)
+static void ndo_warning(netdissect_options *ndo, const char *fmt, ...)
#ifdef __ATTRIBUTE___FORMAT_OK
__attribute__((format (printf, 2, 3)))
#endif /* __ATTRIBUTE___FORMAT_OK */
;
-static int ndo_printf(netdissect_options *ndo _U_, const char *fmt, ...)
+static int ndo_printf(netdissect_options *ndo, const char *fmt, ...)
#ifdef __ATTRIBUTE___FORMAT_OK
__attribute ((format (printf, 2, 3)))
#endif /* __ATTRIBUTE___FORMAT_OK */
;
void
-init_print(netdissect_options *ndo, u_int32_t localnet, u_int32_t mask,
+init_print(netdissect_options *ndo, uint32_t localnet, uint32_t mask,
uint32_t timezone_offset)
{
}
}
- putchar('\n');
+ ND_PRINT((ndo, "\n"));
}
/*
if (fmt[-1] != '\n')
(void)fputc('\n', stderr);
}
+ nd_cleanup();
exit(1);
/* NOTREACHED */
}
}
static int
-ndo_printf(netdissect_options *ndo _U_, const char *fmt, ...)
+ndo_printf(netdissect_options *ndo, const char *fmt, ...)
{
va_list args;
int ret;
ret = vfprintf(stdout, fmt, args);
va_end(args);
+ if (ret < 0)
+ ndo_error(ndo, "Unable to write output: %s", pcap_strerror(errno));
return (ret);
}