Commit Graph

91 Commits

Author SHA1 Message Date
julian
05f1251171 Allow syslogd to separate out kernel log messages with a known
category.
e.g. separate out ipfw entries to a separate file.

Reviewed by:	(briefly) phk
Submitted by:	archie@whistle.com
Obtained from:	Whistle source tree
1998-06-10 04:34:56 +00:00
phk
7afd6e7874 Remove a bogus dependency on the size of the inkernel msgbuf.
This change is likely to introduce a few linebreaks in the boot
messages, but that is not easy to solve without breaking syslogd
semantics.  Maybe the right  fix is to return an integral number
of lines from the kernel driver.

Noticed by:	dg
1998-05-19 12:02:41 +00:00
brian
263c5d047f Make syslogd function in non-secure mode.
Log the correct ^2 packet as per the last commit comment.
1998-05-07 00:39:56 +00:00
phk
43dda411a2 Augment the last change after some deliberation with rgrimes & peter.
It is important that we keep the ability to send packets to a remote
server and that the packets come from our well-known port, also in
that case.

Reviewed by:	peter, rgrimes.
1998-04-24 17:32:23 +00:00
phk
1f48b60e4d Even with '-s', syslogd still creates an AF_INET socket, although
it is not bind(2)ed.

PR:		6366
Reviewed by:	phk
Submitted by:	Soren S. Jorvang <soren@dt.dk>
1998-04-22 06:28:18 +00:00
jraynard
79b1f11ad6 Don't assume sigset_t and int are equivalent. Also, get
sigprocmask arguments the right way round.
1998-02-28 15:14:00 +00:00
charnier
c7eb7628d4 Cosmetic in usage string. 1997-10-20 12:55:49 +00:00
joerg
aba6b7aa82 Documentation for the LOG_NTP facility. While i was at it, added a
bit of a warning about not all systems providing for the same set of
syslog facilities.
1997-10-06 20:37:50 +00:00
brian
558e49db7e Use snprintf() instead of sprintf() most of the time.
Obtained from: OpenBSD

Make usage() consistent with man page.
1997-09-19 22:22:04 +00:00
joerg
1d71c0cf14 Explain a little more about the piping feature.
PR:		4122
1997-09-14 06:55:15 +00:00
joerg
37b148163d Nobody ever seemed to be interested in reviewing these changes, and i
found that my syslogd is now running them for several months...

Add an option to syslogd to restrict the IP addresses that are allowed
to log to this syslogd.  It's too late to develop the inter-syslogd
communications protocol mentioned in the BUGS section, some 10 years
too late.  Thus, restricting the IP address range is about the most
effective change we can do if we want to allow incoming syslog
messages at all.

IMHO, we should encourage the system administrators to use this option,
and thus provide a knob in /etc/rc.* for it, defaulting to -a 127.0.0.1/32
(just as a hint about the usage).

Please state opinions about whether to merge this change into 2.2 or
not (i've got it running on RELENG_2_2 anyway).
1997-05-03 22:17:43 +00:00
jmg
507c27bd75 add an Id line, minor mdoc fix ups
add ftp to list of facilities in syslog.conf
Closes PR#3389
Submitted-by: Pius Fischer
1997-04-29 09:09:40 +00:00
pst
b6d557b5cf Whoops -- code inspection showed I forgot to clean up getopt string 1997-04-26 00:03:21 +00:00
pst
73e0f123a8 Secure mode (-s) incorrectly disabled both sending and receiving of syslog
packets over UDP.  Secure boxes should still be able to send packets.
1997-04-26 00:00:33 +00:00
imp
15c4d207bc compare return value from getopt against -1 rather than EOF, per the final
posix standard on the topic.
1997-03-31 05:11:47 +00:00
joerg
554f89a427 Save and restore the state of the variable Initialized inside die().
Otherwise, the shutdown message will print out with 15 NUL bytes in
front, due to a missing timestamp.
1997-03-14 01:27:02 +00:00
mpp
033a9429df Typo police. 1997-02-22 18:57:36 +00:00
peter
32d6b795de Revert $FreeBSD$ to $Id$ 1997-02-22 16:15:28 +00:00
joerg
27e8ff0e1a The "burn-in" phase has finished: this set of patches seems to run
stable now at a customer's site.

Finally add the ability to syslogd to pipe particular messages through
an arbitrary filtering command.  Idea stolen from IRIX.

This code is courtesy of the interface business GmbH, Dresden.

Comment about whether to also merge this into 2.2 or not, please.

Reviewed by:	(long ago) peter
1997-02-22 12:59:36 +00:00
jkh
9c0cd3f9df Make the long-awaited change from $Id$ to $FreeBSD$
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore.  This update would have been
insane otherwise.
1997-01-14 07:20:47 +00:00
jkh
874227ad1b Unlink LogName before attempting to open it. Since we now have a lovely
bug in syslogd which causes it to die after random amounts of time (widely
reported), this at least allows the administrator to easily restart it
without wondering why it simply exits again each time.
1997-01-03 07:13:20 +00:00
peter
43751e4155 Revert part of the previous change. syslogd (when logging to ttys)
has always held an open file descriptor.  This allowed logging to
spare virtual consoles and being able to switch to them.

My previous change removed this since all writes were done with ttymsg()
which opens it's own fd, and hence syslogd didn't need it's own fd to
send messages on... but this caused an unexpected behavior change.

This should close PR#2176
1996-12-10 17:52:23 +00:00
peter
3095a2c04c Don't close f->f_file on F_TTY types on error returns from ttymsg() since
it wasn't open in the first place..
1996-11-26 02:35:08 +00:00
peter
fbef0e479a Make the handling of the /dev/ prefix for tty names more consistant.
ttymsg() insists on them not being there.

Also, since ttymsg() opens the tty "on demand", don't keep an fd open
ourselves.  This would interfere with HUPCL etc.

This should close PR#2103 from <xaa@stack.nl>
1996-11-26 02:24:42 +00:00
peter
b39cda8f71 put on my flame resistant suit and tempt fate by attempting to fix some of
the races in my previous commits here, and fix some other problems with
syslogd as well.

- if the child process exited early (eg: could not bind to the socket),
  the boot process would hang for 30 seconds.  The parent was not noticing
  that the child had exited.  (my fault)
- when writing to tty devices, instead of treating them like files that
  need \r\n instead of \n, actually use ttymsg() which has specific code
  intended to write to potentially blocking ttys safely.  I had a machine
  lock up last night because /dev/console on a serial port got flow control
  blocked.  Setting comcontrol drainwait fixed everything but syslogd which
  was going into a spin trying to write to the console and completely
  ignoreing everything else.
- fix a couple of nonsensical bits of code while here..  eg: wait3 takes
  a pointer to an int.  There is no sense in declaring it as 'union wait',
  then casting the pointer to (int *), then forgetting about it.
1996-11-18 21:48:29 +00:00
joerg
52158e4ed9 Back out the entire change from rev 1.11 of syslogd.c. It was bogus.
Correct the man page to reflect the new reality.
1996-10-28 08:25:13 +00:00
julian
c3fe52af1b Reviewed by: various (mailing list feedback)
Submitted by:	whistle communications

move the socket from /dev to /var/run by default
TRANSITIONALLY make syslog add a symlink..
I PROMISE I'll remove that as soon as I have the makefiles etc fixed as well.
1996-10-23 20:17:57 +00:00
peter
ddcbad03d0 syslogd has always bugged me with it's async startup at boot time.
For me, more often than not, the backgrounded syslogd daemon is not
yet ready to process log messages before other things (such as named)
want to log a heap of them.  It seems that it's the O_SYNC writes of
the stuff coming in from /dev/klog that's the slowdown.

Anyway, instead of using the libc daemon, roll a modified version.  This
one has a timeout.  The child will wait for either the timeout to expire
or the child process to signal it to let it know that it's "ready" and
the /dev/log socket is set up and active, so it's safe to continue the
boot.  It adds a small fraction of a second pause to the boot time, but on
the other hand the overall boot time is *quicker* since the disk is not
being thrashed while the log messages are getting written out synchronously
one by one while other daemons are loading in parallel.

The timeout is in case the child segfaults or something before becoming
fully operational.
1996-10-05 15:20:51 +00:00
pst
463283127b Add info field.
Closes pr docs/1679.
1996-09-27 20:31:26 +00:00
pst
8e3d7ded82 Bring in some fixes from NetBSD and re-hack our syslogd to be option-compatible
with theirs (change the -I option to -s (but leave -I in for backwards compat.)
Also eliminate an make sane some magic numbers, and fix a small bug where we'd
send to an unopened socket.

Reviewed by:	wollman
Obtained from:	NetBSD
1996-07-22 16:35:50 +00:00
wollman
01b29d5841 Correct synopsis (-d, -I options were missing because -mdoc mistook
the dI in `.Op Fl dI' for the name of an internal mdoc command).
1996-05-20 17:10:03 +00:00
peter
143281bc2a With the recent 'make install' change in the kernel build makefiles, an
`interesting' feature of syslogd turned up.  It calls getbootfile() for each
log entry.  Since the kernel makefile now changes kern.bootfile when doing
a 'make install', it's quite startling to see the syslog lines change.

This change makes it call getbootfile() once at startup and cache it,
saving a syscall per loop, and keeping something a little more asthetically
pleasing in /var/log/messages...
1995-11-14 23:39:39 +00:00
wollman
8ecfa575bd Add a command-line option `-I' to disable logging from UDP.
Document `-d' and `-I'.  Add a BUGS section noting that
logging from UDP is an unauthenticated remote disk-filling service,
and probably should be disabled by default in the absence of some sort
of authentication.
1995-10-12 17:18:39 +00:00
paul
9f32d1cf83 Remove unconditional unlink at startup and conditionalised the unlink at exit
so that it only unlinks the file if syslogd knows it created it.

If the path specified for the socket already exists then syslogd
will now exit with an "address already in use" error which is more
sensible than blindly unlinking the existing filename.  This stops
syslogd -d foo/bar from unlinking foo/bar if it's a real file.
1995-09-11 13:55:11 +00:00
pst
e4bd172f5e Fix up warning about const being lost. 1995-08-23 04:54:49 +00:00
rgrimes
5a145b5eb1 Remove trailing whitespace. 1995-05-30 03:57:47 +00:00
jkh
f4e544253a Updates from Peter da Silva to match the recent syslogd changes.
Submitted by:	pds
1995-01-04 00:40:38 +00:00
wollman
375b2265c3 Extend syslogd to allow selection of log destinations by program.
Use getbootfile() to determine the kernel name.

Submitted by: Peter da Silva
1994-12-29 22:02:25 +00:00
wollman
f19a26b912 Get rid of update. Make man page installation work with our scheme
(and rename a few in the process).
1994-08-05 16:31:05 +00:00
dg
17e7606224 Converted 'vmunix' to 'kernel'. 1994-08-05 09:14:37 +00:00
rgrimes
862fdf11a2 BSD 4.4 Lite usr.sbin Sources 1994-05-26 05:23:31 +00:00