logmsg
struct sshbuf *logmsg;
if ((logmsg = sshbuf_new()) == NULL)
if ((r = sshbuf_reserve(logmsg, 4, &p)) != 0)
sshbuf_free(logmsg);
if ((r = sshbuf_get_u32(logmsg, &len)) != 0)
sshbuf_reset(logmsg);
if ((r = sshbuf_reserve(logmsg, len, &p)) != 0)
if ((r = sshbuf_get_u32(logmsg, &level)) != 0 ||
(r = sshbuf_get_u32(logmsg, &forced)) != 0 ||
(r = sshbuf_get_cstring(logmsg, &msg, NULL)) != 0)
sshbuf_free(logmsg);
logmsg(LOG_CRIT, "#%d bad port in '%s'", s->id,
logmsg(LOG_INFO, "#%d passive: client to server port %d"
logmsg(LOG_DEBUG, "#%d proxy: %s", s->id, linebuf);
logmsg(LOG_INFO, "#%d active: server to client port %d"
void logmsg(int, const char *, ...) __printflike(2, 3);
logmsg(LOG_CRIT, "#%d pf operation failed: %s", s->id, strerror(errno));
logmsg(LOG_DEBUG, "#%d server: %s", s->id, linebuf);
logmsg(LOG_ERR, "#%d write failed", s->id);
logmsg(LOG_ERR, "#%d server reply too long or not"
logmsg(LOG_ERR, "#%d write failed", s->id);
logmsg(LOG_ERR, "#%d could not allocate memory for buffer", s->id);
logmsg(LOG_DEBUG, "#%d proxy: %s", s->id, linebuf);
logmsg(LOG_ERR, "#%d write failed", s->id);
logmsg(LOG_CRIT, "PASV and PORT not allowed with IPv6");
logmsg(LOG_CRIT, "#%d bad port in '%s'", s->id,
logmsg(LOG_DEBUG, "#%d proxy: %s", s->id, linebuf);
logmsg(LOG_DEBUG, "#%d client: %s", s->id, linebuf);
logmsg(LOG_ERR, "#%d client command too long or not"
logmsg(LOG_ERR, "#%d write failed", s->id);
logmsg(LOG_INFO, "#%d ending session", s->id);
logmsg(LOG_ERR, "#%d pf rule removal failed: %s", s->id,
logmsg(LOG_CRIT, "accept failed: %s", strerror(errno));
logmsg(LOG_ERR, "client limit (%d) reached, refusing "
logmsg(LOG_CRIT, "init_session failed");
logmsg(LOG_DEBUG, "#%d accepted connection from %s", s->id,
logmsg(LOG_CRIT, "#%d getsockname failed: %s", s->id,
logmsg(LOG_CRIT, "#%d server lookup failed (no rdr?)", s->id);
logmsg(LOG_CRIT, "#%d server socket failed: %s", s->id,
logmsg(LOG_CRIT, "#%d cannot bind fixed proxy address: %s",
logmsg(LOG_CRIT, "#%d cannot mark socket non-blocking: %s",
logmsg(LOG_CRIT, "#%d proxy cannot connect to server %s: %s",
logmsg(LOG_CRIT, "#%d getsockname failed: %s", s->id,
logmsg(LOG_INFO, "#%d FTP session %d/%d started: client %s to server "
logmsg(LOG_ERR, "%s exiting on signal %d", __progname, sig);
logmsg(LOG_INFO, "using %s to connect to servers",
logmsg(LOG_INFO, "using fixed server %s",
logmsg(LOG_ERR, "cannot drop privileges: %s", strerror(errno));
logmsg(LOG_ERR, "cannot create new kqueue(2): %s", strerror(errno));
logmsg(LOG_NOTICE, "listening on %s port %s", listen_ip, listen_port);
logmsg(LOG_ERR, "cannot create new kqueue(2): %s", strerror(errno));
logmsg(LOG_ERR, "proxy_reply failed: %d", r);
logmsg(LOG_WARNING, "%s", pcap_geterr(hpcap));
logmsg(LOG_WARNING, "%s", pcap_geterr(hpcap));
logmsg(LOG_ERR, "Failed to initialize: %s", errbuf);
logmsg(LOG_ERR, "Invalid datalink type");
logmsg(LOG_ERR, "BIOCLOCK: %s", strerror(errno));
logmsg(LOG_ERR, "Error: %s: %s", filename, strerror(errno));
logmsg(LOG_ERR, "Error: %s: %s", filename, strerror(errno));
logmsg(LOG_ERR, "Failed to set output buffers");
logmsg(LOG_NOTICE, "Using snaplen %d", snaplen);
logmsg(LOG_WARNING,
logmsg(LOG_ERR,
logmsg(LOG_ERR, "Short file header");
logmsg(LOG_WARNING,
logmsg(LOG_WARNING,
logmsg(LOG_ERR, "Corrupted log file.");
logmsg(LOG_ERR, "Write failed, corrupted logfile!");
logmsg(LOG_ERR, "Logging suspended: fwrite: %s", strerror(errno));
logmsg(LOG_ERR, "Logging suspended: ftello: %s",
logmsg(LOG_ERR, "Logging suspended: fwrite: %s",
logmsg(LOG_NOTICE, "invalid size %zd (%u/%u), packet dropped",
logmsg(LOG_WARNING, "Reading stats: %s", pcap_geterr(hpcap));
logmsg(LOG_NOTICE,
logmsg(LOG_ERR, "Failed to initialize: %s", interface);
logmsg(LOG_ERR, "Exiting, init failure");
logmsg(LOG_WARNING, "Failed to become daemon: %s",
logmsg(LOG_NOTICE, "Failed to form filter expression");
logmsg(LOG_ERR, "Exiting, init failure");
logmsg(LOG_ERR, "unable to privsep");
logmsg(LOG_WARNING, "Failed to allocate output buffer");
logmsg(LOG_ERR, "Logging suspended: open error");
logmsg(LOG_NOTICE, "interface %s went away",
logmsg(LOG_NOTICE, "%s", pcap_geterr(hpcap));
logmsg(LOG_ERR,
logmsg(LOG_NOTICE, "Exiting");
void logmsg(int priority, const char *message, ...) __printflike(2, 3);
logmsg(LOG_DEBUG,
logmsg(LOG_NOTICE,
logmsg(LOG_DEBUG,
logmsg(LOG_NOTICE,
logmsg(LOG_DEBUG,
logmsg(LOG_ERR, "[priv]: unknown command %d", cmd);
logmsg(LOG_ERR, "[priv] new name too long");
logmsg(LOG_ERR, "[priv] failed to create new name: %s",
logmsg(LOG_ERR, "[priv] failed to rename %s to %s: %s",
logmsg(LOG_NOTICE,
logmsg(LOG_ERR, "cannot fork");
logmsg(LOG_ERR, "malloc: %m");
logmsg(LOG_ERR, "malloc: %m");
logmsg(LOG_ERR, "getifaddrs: %m");
logmsg(LOG_DEBUG, "%s %s 0x%08x %s",
logmsg(LOG_ERR, "%s: %m", device);
logmsg(LOG_ERR, "BIOCIMMEDIATE: %m");
logmsg(LOG_ERR, "BIOCSETIF: %m");
logmsg(LOG_ERR, "BIOCGDLT: %m");
logmsg(LOG_ERR, "%s is not an ethernet", device);
logmsg(LOG_ERR, "BIOCSETF: %m");
logmsg(LOG_ERR, "truncated request, got %u, expected %lu",
logmsg(LOG_DEBUG, "request fails sanity check");
logmsg(LOG_DEBUG, "ether/arp sender address mismatch");
logmsg(LOG_DEBUG, "ether/arp target address mismatch");
logmsg(LOG_ERR, "no interfaces");
logmsg(LOG_ERR, "BIOCGBLEN: %m");
logmsg(LOG_ERR, "malloc: %m");
logmsg(LOG_ERR, "select: %m");
logmsg(LOG_ERR, "chdir: %s: %m", tftp_dir);
logmsg(LOG_ERR, "opendir: %m");
logmsg(LOG_ERR, "cannot map %s to name",
logmsg(LOG_ERR, "cannot map %s to IP address", ename);
logmsg(LOG_ERR, "cannot handle non IP addresses for %s",
logmsg(LOG_ERR, "cannot find %s on net %s",
logmsg(LOG_INFO, "%s %s at %s DENIED (not bootable)",
logmsg(LOG_ERR, "raw route socket: %m");
logmsg(LOG_ERR, "rtmsg get write: %m");
logmsg(LOG_ERR, "rtmsg get read: %m");
logmsg(LOG_ERR, "bogus link family (%d) wrong net for %08X?\n",
logmsg(LOG_ERR, "rtmsg add write: %m");
logmsg(LOG_ERR, "rtmsg add read: %m");
logmsg(LOG_ERR, "write: only %d of %d bytes written", n, len);
logmsg(LOG_INFO, "%s %s at %s REPLIED", ii->ii_ifname,
logmsg(LOG_DEBUG, "unknown IP address class: %08X", addr);
logmsg(LOG_SYSLOG|LOG_ERR, buf, LocalHostName, ADDDATE);
logmsg(LOG_SYSLOG|LOG_INFO, "syslogd: restart", LocalHostName, ADDDATE);
logmsg(LOG_SYSLOG|LOG_INFO, hostMsg, LocalHostName, ADDDATE);
logmsg(LOG_KERN|LOG_INFO, bootfileMsg, LocalHostName, ADDDATE);
logmsg(LOG_INFO, "-- MARK --",
static void logmsg(int, const char *, const char *, int);
logmsg(pri, line, hname, flags);
logmsg(pri, p, LocalHostName, flags);