[BusyBox] BTW syslogd

Nick Fedchik fnm at fusion.ukrsat.com
Thu Jan 23 11:23:03 UTC 2003


By the way of my prev message.

My Busybox:
~ # ps
...
  118 root        640 S   syslogd -L -C -R 192.168.168.2
...

~ # logger remote test 1
DEBUG: res[<13>], len[4]
DEBUG: msg[root: remote test 1], len[19]
~ # logger remote test 2
DEBUG: res[<13>], len[4]
DEBUG: msg[root: remote test 2], len[19]
writev: Connection refused
cannot write to remote file handle on 192.168.168.2:514 - Illegal
seek
~ # logger remote test 3
DEBUG: res[<13>], len[4]
DEBUG: msg[root: remote test 3], len[19]


So what I can see at remote host (192.168.168.2):
20:13:06.207852 192.168.168.1.32768 > 192.168.168.2.syslog: [udp
sum ok] udp 23 (DF) (ttl 64, id 55640, len 51)
0x0000   4500 0033 d958 4000 4011 900c c0a8 a801     E..3.X at .@.......
0x0010   c0a8 a802 8000 0202 001f a1a2 3c31 333e     ............<13>
0x0020   726f 6f74 3a20 7265 6d6f 7465 2074 6573     root:.remote.tes
0x0030   7420 31                                     t.1
20:13:17.645662 192.168.168.1.32768 > 192.168.168.2.syslog: [bad
udp cksum 1f00!] udp 54 (DF) (ttl 64, id 55641, len 51)
0x0000   4500 0033 d959 4000 4011 900b c0a8 a801     E..3.Y at .@.......
0x0010   c0a8 a802 8000 0202 003e 9f64 3c31 333e     .........>.d<13>
0x0020   726f 6f74 3a20 7265 6d6f 7465 2074 6573     root:.remote.tes
0x0030   7420 33                                     t.3


Here the syslogd.c code changes for debug:
static void logMessage(int pri, char *msg)
...
#ifdef CONFIG_FEATURE_REMOTE_LOG
        /* send message to remote logger */
        if (-1 != remotefd) {
                static const int IOV_COUNT = 2;
                struct iovec iov[IOV_COUNT];
                struct iovec *v = iov;

                memset(&res, 0, sizeof(res)+2);
                snprintf(res, sizeof(res), "<%d>", pri);
                v->iov_base = res;
                v->iov_len = strlen(res);
                printf("DEBUG: res[%s], len[%d]\n", v->iov_base,
				(size_t)v->iov_len);
                v++;
                v->iov_base = msg;
                v->iov_len = strlen(msg);
                printf("DEBUG: msg[%s], len[%d]\n", v->iov_base, (int)v->iov_len);
          writev_retry:
                if (-1 == writev(remotefd, iov, IOV_COUNT)) {
                        if (errno == EINTR) {
                                perror("writev EINTR");
                                goto writev_retry;
                        }
/*                      error_msg_and_die("cannot write to remote file handle on %s:%d",
					RemoteHost, RemotePort);
*/
                        perror("writev");
                        printf("cannot write to remote file handle on %s:%d - %s\n",
					RemoteHost, RemotePort,
					strerror(errno));
                }
...


~ # netstat -aun
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address
State
udp        0      0 192.168.168.1:32768     192.168.168.2:514  ESTABLISHED

???

-- 
Nick Fedchik, FNM3-RIPE(UANIC)
Internet Dept./ISP UkrSat, Kiev, Ukraine



More information about the busybox mailing list