diff options
author | dwmalone <dwmalone@FreeBSD.org> | 2008-02-20 21:54:41 +0000 |
---|---|---|
committer | dwmalone <dwmalone@FreeBSD.org> | 2008-02-20 21:54:41 +0000 |
commit | 23dbe457bf5f99f80a46e3a2035970149d6cb024 (patch) | |
tree | 11d8fc81db3b09c2ccc6b4abc92cda6d35872d58 /usr.sbin/syslogd/syslogd.c | |
parent | e6487e006342a3b9ceff544939428eccf26d6601 (diff) | |
download | FreeBSD-src-23dbe457bf5f99f80a46e3a2035970149d6cb024.zip FreeBSD-src-23dbe457bf5f99f80a46e3a2035970149d6cb024.tar.gz |
Two no-op fixes to improve corretness of syslogd code:
1) Use [AP]F_LOCAL rather than [AP]F_UNIX.
2) When copying a pipe's name, use f->f_un.f_pipe.f_pname, not f->f_un.f_fname.
PR: 20889
Submitted by: Damieon Stark
PR: 116642
Submitted by: Jim Pirzyk
Reviewed by: md5
Diffstat (limited to 'usr.sbin/syslogd/syslogd.c')
-rw-r--r-- | usr.sbin/syslogd/syslogd.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/usr.sbin/syslogd/syslogd.c b/usr.sbin/syslogd/syslogd.c index e06afde..4212ed6 100644 --- a/usr.sbin/syslogd/syslogd.c +++ b/usr.sbin/syslogd/syslogd.c @@ -512,9 +512,9 @@ main(int argc, char *argv[]) STAILQ_FOREACH_SAFE(fx, &funixes, next, fx1) { (void)unlink(fx->name); memset(&sunx, 0, sizeof(sunx)); - sunx.sun_family = AF_UNIX; + sunx.sun_family = AF_LOCAL; (void)strlcpy(sunx.sun_path, fx->name, sizeof(sunx.sun_path)); - fx->s = socket(AF_UNIX, SOCK_DGRAM, 0); + fx->s = socket(PF_LOCAL, SOCK_DGRAM, 0); if (fx->s < 0 || bind(fx->s, (struct sockaddr *)&sunx, SUN_LEN(&sunx)) < 0 || chmod(fx->name, fx->mode) < 0) { @@ -1964,7 +1964,8 @@ cfline(const char *line, struct filed *f, const char *prog, const char *host) case '|': f->f_un.f_pipe.f_pid = 0; - (void)strlcpy(f->f_un.f_fname, p + 1, sizeof(f->f_un.f_fname)); + (void)strlcpy(f->f_un.f_pipe.f_pname, p + 1, + sizeof(f->f_un.f_pipe.f_pname)); f->f_type = F_PIPE; break; |