Commit Graph

63 Commits

Author SHA1 Message Date
lukem
fdffaa3fe5 Implement -r, which prevents syslogd from compressing multiple messages with
the same string into "last message repeated N times", and instead forces
syslogd to write out every message.

Based on '-c' in FreeBSD's syslogd, although a different option letter was
chosen because their syslogd requires '-c -c' to get this functionality,
and we don't have the support for logging to pipes which is what FreeBSD's
syslogd with a single '-c' is related to.
2003-10-17 01:39:25 +00:00
itojun
686afb7f65 safer use of realloc 2003-10-16 06:22:09 +00:00
itojun
4a7fa92f21 no need for explicit '?'; openbsd 2003-09-19 08:24:07 +00:00
agc
326b2259b7 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22366, verified by myself.
2003-08-07 11:25:11 +00:00
itojun
b2189acdb8 whitespace fix 2003-05-14 23:58:23 +00:00
itojun
4b641df88a strlcpy audit 2003-05-14 23:53:09 +00:00
itojun
343d3d8f80 die if out-of-range uid/gid is specified. 2002-11-16 03:59:36 +00:00
itojun
b5c1ff7fae set IPV6_V6ONLY to 1 to avoid complicated access control issue
(libwrap takes care of it, but just to be sure)
2002-09-24 13:53:54 +00:00
christos
d116a0bbd3 add utmpx support; 2002-08-02 02:23:49 +00:00
itojun
6ed8672880 no need for KAME_SCOPEID any longer 2002-06-09 19:59:55 +00:00
wiz
0df8aade00 ANSIfy, and some KNF. Sort options in getopt-switch. Drop some unneeded
include files.
2002-05-25 14:46:01 +00:00
wiz
a16dbed217 Sort options in man page, don't mention non-existing '-S' option,
use some more markup and improve existing one.
Sync usage() with man page.
2002-05-25 14:21:02 +00:00
lukem
6206a1d7eb remove commented out debug printf() accidentally committed in the last rev.
noted by YAMAMOTO Takashi<yamt@mwd.biglobe.ne.jp> in private email.
2002-05-02 13:53:10 +00:00
lukem
f3c2d5334e logpath_add(): store pointer to strdup(3)ed copy of path provided.
fixes -P /some/file.
2002-01-18 10:27:50 +00:00
kim
d561c70b4b None of the other calls to logerror() include a newline at the end of the
message, and it causes an unnecessary empty line in the syslog output.
2001-11-06 05:39:27 +00:00
taca
6e662bb75d Put pidfile after daemonize. This would fix newsyslog(8) error. 2001-07-19 00:15:32 +00:00
manu
764096179a - No more lost error messages during syslogd startup, they now all appear on
stdout before syslogd becomes a daemon.
- Flags for setuid/setgid/chroot syslogd after initialization is completed
- Warning instead of silent ignoring for malformed lines (with spaces instead
of tags)
Approved by Christos
2001-07-16 05:04:47 +00:00
itojun
338aa1c650 -DLIBWRAP will enable libwrap-based filtering on UDP socket messages.
PR 13348
2001-07-01 16:23:42 +00:00
mrg
5d9bc91556 new `-n' switch to avoid looking up hostnames. 2001-06-08 04:16:28 +00:00
itojun
bbde910f4e plug memory leak. PR 12444. 2001-03-21 17:02:43 +00:00
cgd
25bdbb661e convert to use getprogname() 2001-02-19 23:22:40 +00:00
sommerfeld
5ac29b83b7 Don't prematurely terminate log message on a 0x80 character 2000-09-18 13:04:53 +00:00
tron
20084585ac Use setlocale(3) to activate support for international characters.
This should fix PR bin/11007 by Bill Sommerfeld.
2000-09-13 21:20:21 +00:00
sommerfeld
b6f7dd7187 prevent one byte overrun in printline() 2000-09-13 15:46:32 +00:00
jwise
ea7e9f5176 Fix minor thinko in previous. Make sure we close and keep closed all
sockets in the situation where all of the following are true:

	* /etc/syslogd.conf contained forwarding actions when we were
	  started up or when we last received a HUP

	* /etc/syslogd.conf has had all forwarding actions removed

	* we are running with -s

and we receive a HUP.
2000-07-02 02:15:34 +00:00
jwise
9b22831fbc Fix opening/closing of sockets when receiving a HUP, and /etc/syslog.conf
has been changed from having forwarding actions to having none, or vice versa.
2000-06-30 18:45:04 +00:00
jwise
ccb04760be Improve behavior of `syslogd -s'.
Even if we are forwarding, don't bind to udp/514 if running with `-s'.
2000-06-30 18:22:54 +00:00
jwise
20abf1785a Back out and redo previous at Bill Sommerfeld's <sommerfeld@netbsd.org>
request:

	instead of the -S flag, fix the -s flag to not open a socket
	if there are no forwarding rules in /etc/syslog.conf

The behavior of syslogd when -s is specified and there are forwarding rules
should still be made cleaner.
2000-06-30 18:03:50 +00:00
jwise
3258a51b03 1.) bring usage text up to date, and clarify description of `-s' option
in man page and comments -- for some time it has no longer prevents
    an inet socket from being opened, just caused it to be ignored

2.) Fix this problem with `-s' -- syslogd always opens an inet socket, even if
    -s is specified and it has nowhere to send to.  This socket is then
    shutdown(), but there is no way to not have this socket open.

    Users setting up paranoid installations can now specify `-S' which
    prevents any non-unix-domain sockets from being opened, even if
    forwarding is specified in /etc/syslogd.conf.

    As per the previous fix, this is not made the default for `-s', as it
    also prevents syslogd from forwarding log messages.

3.) document the above in the man page and usage.

Justification:  in light of the possibility of future DoS attacks, or the
desire to set up a machine which is relatively uninformative in the face
of port scans, users may quite legitimately want to control what sockets
are open on their machine.  Telling such users that they cannot run
syslogd is non-ideal.
2000-06-30 17:32:43 +00:00
lukem
315a29d6de * in secure mode (-s), still open the inet sockets but do a shutdown(,SHUT_RD)
on each of them, and don't bother listening on them. this allows messages
  to be forwarded even with -s enabled.

  XXX: not 100% sure if this is susceptable to a DoS, e.g someone filling
  up kernel buffers with a backlog of packets not being read, but shutdown(2)
  should prevent that even if it possibly doesn't at this time.

* minor KNF
2000-02-18 09:44:46 +00:00
itojun
af2a74fdec use sizeof(foo) instead of hardcoded value, to help synchronizing
variable def and function parameter.
1999-12-13 04:25:08 +00:00
ad
8ad73e9274 RCSID police. 1999-12-07 11:30:27 +00:00
itojun
4ba0077ac0 be more friendly with non-IPv6 kernel. 1999-12-06 01:26:26 +00:00
itojun
9d1c5f0b5c IPv6 support in syslogd. actually we need library update as well.
NetBSD PR #8934 from Feico Dillema <dillema@acm.org> (with memory leak fix).
1999-12-02 16:17:29 +00:00
mrg
6663793e96 add some debug messages. 1999-11-27 14:51:49 +00:00
lukem
b04ab05ddd save/restore errno as necessary (printf() et al might have modified it...) 1999-06-07 15:34:07 +00:00
thorpej
78688ba793 Use pidfile(3). 1999-06-06 01:50:23 +00:00
tron
f41d893cec Because the old bound check is used at several places we need to make
sure that the array is really NULL terminated. Fixes PR bin/7062.
1999-02-28 11:46:26 +00:00
pk
4bcb8b3a48 Correct precedence in calculation of storage for pollfds. 1999-02-28 11:30:18 +00:00
tron
925f506372 - Don't use static array hack if neither "-p" nor "-P" are used.
- Because the logsocket array is not NULL terminated use the entry number
  for bound checks.
1999-02-28 11:16:18 +00:00
tron
c87ec3954b Use correct expression "sizeof(char *)" instead of "sizeof(char **)"
to calculate memory size.
1999-02-28 11:03:35 +00:00
mrg
19ef5d758f - allow -p /log/socket to appear more than once (and work as expected
if given this).  this is extremely useful for chrooted daemons that
  still want to create log entries via a local mechanism.

- create a new -P option that takes a filename of log sockets (equiv.
  of calling syslogd which -p <each line of file>.  this is useful
  for the case of many chroot areas and keeping this information in
  one place rather than having to remember it all.

if no -p options are given, the default (_PATH_LOG) is used as normal.
1999-02-21 13:30:15 +00:00
tron
0ffcc8e911 Use "[host]: " as prefix for forwarded messages to distinguish them
from message originated by the forwarding host, fixes PR bin/5860 by
Greg A. Woods.
1998-07-30 23:29:29 +00:00
lukem
786b86d71b use AF_LOCAL instead of AF_UNIX 1998-07-18 05:04:35 +00:00
mrg
32f519716b - use an array MAXHOSTNAMELEN+1 size to hold hostnames
- ensure hostname from gethostname() is nul-terminated in all cases
- minor KNF
- use MAXHOSTNAMELEN over various other values/defines
- be safe will buffers that hold hostnames
1998-07-06 06:56:06 +00:00
kleink
f6c179f10e Fix arithmetics lossage on typeless pointers. 1998-05-08 19:03:41 +00:00
mrg
bc13fc9251 prefer snprintf() to sprintf() 1997-10-24 01:41:47 +00:00
lukem
47852f1f67 getopt returns -1 not EOF 1997-10-17 13:49:37 +00:00
leo
a539aec784 Commit userland part of pr-1891. 1997-09-19 19:17:17 +00:00
enami
241ba6ead1 If f->f_type is F_FORW, don't close f->file. 1997-09-15 03:25:42 +00:00