Commit Graph

42 Commits

Author SHA1 Message Date
a09b9865cc Adjust the size of a variable to prevent a buffer overflow
should _PATH_DEV ever contain something different than "/dev/".
2004-05-04 14:52:56 +00:00
4205dbebda Minor corrections 2004-05-04 14:50:18 +00:00
3ee89e2c0b Patch: sysklogd-1.4.1-owl-longjmp.diff from Openwall
From: Solar Designer <solar@openwall.com>

1. Ensures that "len" is not placed in a register and as such can't be
clobbered by longjmp().  With the particular code, it does not really
matter whether it is clobbered or not, but this avoids the gcc warning.

2. Makes endtty() the signal handler only after the variable that
function uses is initialized.  In the original code, the signal
handler was setup too early and if there would be SIGALRM before
control reaches setjmp(), syslogd would segfault (if not worse).

Basically, this is a minor correctness patch.
2004-05-04 14:49:23 +00:00
e9c3de7bfd From Openwalls: needs to be a USER_PROCESS 2004-04-29 10:58:40 +00:00
669d9991b7 Applied Openwall paranoia patches to improve crunch_list(). 2004-04-29 10:39:55 +00:00
2961c7b794 Patch by Steve Grubb <linux_4ever@yahoo.com> to correct memory calculation 2004-04-17 16:06:16 +00:00
ae499acae2 Moved the installation of the signal handler up a little bit so it
guaranteed to be available when the child is forked, hence, fixing a
race condition.  This used to create problems with UML and fast
machines.  Thanks to Jon Burgess <Jon_Burgess@eur.3com.com>
2003-09-28 10:26:22 +00:00
0f9873bed4 On heavily loaded systems, some which are probably receiving a lot of
syslog traffic through the network, there's a (not well researched)
problem with receiving messages on the syslog UDP port.  For some
reason recvfrom() results in EAGAIN.  See
http://bugs.debian.org/188194 and
http://www.ussg.iu.edu/hypermail/linux/kernel/0209.1/0218.html
2003-09-27 23:29:02 +00:00
8b02038df4 . Bumped patchlevel
. Changed versioning scheme to version.patchlevel (like 1.4.1)
2001-03-11 19:40:10 +00:00
c6edf85cd6 . Removed kernel.patch since it is no longer required
. Changed SOCK_STREAM to SOCK_DGRAM in syslog.c

 . klogd will only change the console log level if `-c' is supplied

 . syslogd.c by Bill Nottingham <notting@redhat.com>

   Um, if the directory is invalid, the bind() call in
   create_unix_socket fails. Without the return -1, we return the
   invalid fd that we just closed.  When syslogd then starts
   listening, select goes into a hard loop getting EBADF, IIRC.

 . klogd.c by Troels Walsted Hansen <troels@thule.no>

   I found a bug in the sysklogd package version 1.4. When it
   encounters a zero byte in the kernel logging output, the text
   parser enters a busy loop. I came upon it when the 3c59x driver
   from kernel 2.4.0 started outputting two zero bytes for the product
   code of my laptop's 3Com card. It could be argued that the kernel
   should never output zero bytes in the logging info, but obviously
   that will happen from time to time.

   I fear this bug might be considered a security issue as well, if
   the kernel can be coerced to output a zero byte somehow, all kernel
   logging will stop.

   Wolfgang Oertl <Wolfgang.Oertl@uibk.ac.at> had a similar bugfix
   idea

 . klogd.c by Thomas Roessler <roessler@does-not-exist.org>

   Additionally, the patch prevents LogLine from being invoked with a
   negative counter as an argument.
2001-03-11 19:35:52 +00:00
728d79d925 Mon Sep 18 15:33:26 CEST 2000: Martin Schulze <joey@infodrom.ffis.de>
Removed unixm/unix domain sockets and switch to Datagram Unix
    Sockets.  This should remove one possibility to play DoS with
    syslogd.  Thanks to Olaf Kirch <okir@caldera.de> for the patch.
2000-09-18 13:41:33 +00:00
5433c6018b Mon Sep 18 09:10:47 CEST 2000: Martin Schulze <joey@infodrom.ffis.de>
Fixed bug in printchopped() that caused syslogd to emit
      kern.emerg messages when splitting long lines.  Thanks to
      Daniel Jacobowitz <dan@debian.org> for the fix.
2000-09-18 07:13:08 +00:00
a1775f1d8c Sun Sep 17 21:26:16 CEST 2000: Martin Schulze <joey@infodrom.ffis.de>
Don't close open sockets upon reload.  Thanks to Bill Nottingham.
2000-09-17 19:30:50 +00:00
afcd97602f Sun Sep 17 20:45:33 CEST 2000: Martin Schulze <joey@infodrom.ffis.de>
Fixed some bugs in printline() code that did not escape
      control characters '\177' through '\237' and contained a
      single-byte buffer overflow.  Thanks to Solar Designer
      <solar@false.com>.
2000-09-17 18:49:39 +00:00
c762d84561 * Fixed typo in syslogd-listfiles (closes: Bug#35408)
* Removed superflous call to utmpname() (closes: Bug#34733)
  * Added --ignore-size and limit for rotating log files at 2MB to
    syslogd-listfiles (closes: Bug#36198)
1999-05-23 08:41:06 +00:00
64ce6b452e Args, the last commit contained some mistakes. 1999-01-19 11:31:58 +00:00
68b50092c7 * ``-m 0'' turns off -- MARK -- now. (closes: Bug#28629, Bug#31494)
* Changed Greg's e-mail address to represent his current one.
  * Shortened line length for kernel logging slightly.
  * Corrected return value of AddModule (closes: Bug#30093)
  * Finally fixed an error with `-a' processing, thanks to Topi Miettinen
    <tom@medialab.sonera.net> (closes: Bug#30462)
1999-01-19 00:09:12 +00:00
7d36dc9402 * Contains more patches from Topi Miettinen.
* Fixed two mistakes from the most recent version
  * Fixed fd leak problem.  Thanks to Topi for detecting it
  * Ouch!  Looks like the released package again is broken.  It worked
    locally.
1998-10-18 18:43:18 +00:00
2b70a699f1 * Re-Applied patch provided vom Topi Miettinen with regard to the people
from OpenBSD.  This provides the additional '-a' argument used for
    specifying additional UNIX domain sockets to listen to.  This is been
    used with chroot()'ed named's for example.  An example is described at
    http://www.psionic.com/papers/dns.html.  This time the patch doesn't
    stall syslogd.  Thanks to Topi Miettinen <tom@medialab.sonera.net>
    (closes: Bug#24893)
1998-10-17 18:23:19 +00:00
3acc6c3a40 * Reverted support for multiple Unix domain sockets since it caused
syslogd to not accept more sockets after a certain (undefinitve)
    time.  (opens: Bug#24893)
  * The complete code is still present, search for `Bug#24893'
  * Commented out `-a' in the syslogd.8 manpage
1998-10-15 17:35:38 +00:00
4f30ea0acd Mon Oct 12 20:49:18 MET DST 1998: Martin Schulze <joey@infodrom.north.de>
Avoid logging of SIGCHLD when syslogd is in the process of
      exiting and closing its files.  Again thanks to Topi.

  Mon Oct 12 22:18:34 CEST 1998: Martin Schulze <joey@infodrom.north.de>
      Modified printline() to support 8bit characters - such as
      russion letters.  Thanks to Vladas Lapinskas <lapinskas@mail.iae.lt>.
1998-10-12 20:20:25 +00:00
8e054c5f41 * Code cleanups with regard to bsd -> posix transition and stronger
security (buffer length checking).  Thanks to Topi Miettinen
    <tom@medialab.sonera.net> (closes: Bug#24894)
    . index() --> strchr()
    . sprintf() --> snprintf()
    . bcopy() --> memcpy()
    . bzero() --> memset()
    . UNAMESZ --> UT_NAMESIZE
    . sys_errlist --> strerror()
  * Added support for setutent()/getutent()/endutend() instead of binary
    reading the UTMP file.  This is the the most portable way.  Thanks to
    Topi Miettinen <tom@medialab.sonera.net>.
1998-10-12 18:24:48 +00:00
b1b46e241f Changed the define. 1998-10-12 16:47:05 +00:00
f03fe8ea2c Added URL. 1998-10-12 16:43:28 +00:00
0e4915d405 Mon Oct 12 13:30:35 CEST 1998: Martin Schulze <joey@infodrom.north.de>
Redirected some error output with regard to argument parsing to
      stderr.

  Mon Oct 12 14:02:51 CEST 1998: Martin Schulze <joey@infodrom.north.de>
      Applied patch provided vom Topi Miettinen with regard to the
      people from OpenBSD.  This provides the additional '-a'
      argument used for specifying additional UNIX domain sockets to
      listen to.  This is been used with chroot()'ed named's for
      example.

  Mon Oct 12 18:29:44 CEST 1998: Martin Schulze <joey@infodrom.north.de>
      Added `ftp' facility which was introduced in glibc version 2.
      It's #ifdef'ed so won't harm with older libraries.
1998-10-12 16:36:18 +00:00
cf7e986344 . Added support for TESTING define which will turn syslogd into
stdio-mode used for debugging.

 . Reworked the initialization/fork code.  Now the parent process
   activates a signal handler which the daughter process will raise if
   it is initialized.  Only after that one the parent process may
   exit.  Otherwise klogd might try to flush its log cache while
   syslogd can't receive the messages yet.
1998-10-12 11:35:02 +00:00
c924428cb7 * The code now is compilable without SYSLOG_INET again. Thanks to
Enrik Berkhan <enrik@rzstud1.akk.org>.
1998-07-10 23:56:53 +00:00
7326d197dd * Postinst will create files with correct file modes (closes: Bug#21212)
* Made /dev/xconsole mode 0640 and root.adm (closes: Bug#11917)
  * Changed priority of exit message from LOG_ERR to LOG_INFO (closes
    Bug#21606)
1998-06-12 23:43:39 +00:00
1f3d627188 * Fixed typos in syslogd-listfiles(1), thanks to Francesco Potorti`
<F.Potorti@cnuce.cnr.it> (closes: Bug#20903)
  * Corrected email address for Shane Alderton (closes: Bug#20765)
  * Fixed manpage to not reflect reverse implementated SIGALRM signal
    handler (closes: Bug#20647)
  * Modified behaviour with including <sys/module.h> (closes: Bug#20556)
  * Added correct prototype for llseek() (closes: Bug#20507, Bug#20220)
  * Added more log information if problems occurr while reading a system
    map file.
  * Modified System.map read function to try all possible map files until
    a file with matching version is found.
  * Added Debian release to klogd
  * Switched to fgets() as gets() is not buffer overrun secure.
  * Modified loop for detecting the correct system map.
1998-04-13 23:27:37 +00:00
69331684e1 * Corrected Topi's patch as it prevented forwarding during startup due
to an unknown LogPort.
  * Finalized it
1998-02-25 12:20:58 +00:00
de54a7e0c7 Fixed little comparison mistake that prevented the MARK
feature to work properly.
1998-02-25 09:53:47 +00:00
d9d28b60d0 * Applied patch from Topi Miettinen <Topi.Miettinen@ml.tele.fi> to open
the UDP socket only if it is really needed.
  * Updated sysklogd(8) manpage
  * Added note to mailing list
1998-02-23 23:41:00 +00:00
e7509db5e3 * Removed killall-statement from postinst. Thanks to James Troup for
reporting it.
  * Added chdir("/") to both daemons (fixes: Bug#17601)
1998-01-29 20:40:48 +00:00
5a279c7af7 * Fixed small typo in syslogd-listfiles
* Corrected debug output concerning remote receiption
  * Removed race condition in syslogd-listfiles
  * Modified logfile detection routine to take care of double listed
    logfiles.  Thanks to Roman Hodek <roman@debian.org> for providing an
    appropriate patch.  (Bug#17000)
1998-01-13 01:30:28 +00:00
e9b180bb9b * Corrected some code that caused klogd to dump core when receiving some
special messages from 2.1.78.  Thanks to Chu-yeon Park
    <kokids@doit.ajou.ac.kr> for informing me.
  * Fixed bug that caused klogd to die if there is no System.map
    available.
  * Added -x switch to omit EIP translation and System.map evaluation.
    Thanks to Florian La Roche <florian@knorke.saar.de>.
  * Fixed small bugs in F_FORW_UNKN meachanism.  Thanks to Torsten Neumann
    <torsten@londo.rhein-main.de> for pointing me to it.
  * Fixed problem with klogd not being able to be built on a kernel newer
    than 2.1.18.  Worked in a patch from Alessandro Suardi <asuardi@uninetcom.it>
1998-01-10 18:02:57 +00:00
f1bddb54ec * Corrected Standards-Version to 2.3.0.1 (Bug#16769)
* Reworked one line of an older patch because it prevented syslogd from
    binding the socket with the result that no messages were forwarded to
    other hosts.
  * Changed the behaviour of klogd when receiving a terminate signal. Now
    the program terminates immediately instead of completing the receipt of
    a kernel message.  (Bug#16796, Bug#16828, Bug#16148)
  * Noticed a bug which was closed by 1.3-18 (Bug#14776)
  * Changed Maintainer address to joey@debian.org
1998-01-09 00:03:55 +00:00
05c061eaa5 * Added test in postinst if user and group exist. Christoph Lameter run
into trouble upgrading a RedHat system.
  * Fixed little mistake which prevented klogd from accepting a console
    log level of 8 to get <7> alias KERN_DEBUG displayed.
  * Linked against libc6 (Bug#11731)
  * Added SHELL=/bin/bash to rules as Herbert Xu suggested
  * Corrected syslog.conf(5) manpage
  * syslogd resets the ignore priority flag now.  Thanks to Herbert
    Thielen. (Bug#12009)
  * Fixed bug that caused syslogd to write into wrong files under some
    race conditions.  Thanks to Herbet Xu. (Bug#13506)
  * /var/log/auth.log will only be touch if needed (Bug#14329)
  * debian/conffiles is treated like a document (Bug#14521)
  * Added script for generic logfile detection and rotation and included
    that in cron scripts, included also its manpage (Bug#14610)
  * Modified restart messages in /etc/init.d/sysklogd (Bug#15840)
  * klogd will first try to load /boot/System.map-$ver, then
    /boot/System.map, then /System.map-$ver and after that /System.map
  * Modified ExpandKadds() because there were some problems accessing
    memory r/w.  (Bug#15336)
1998-01-02 03:07:16 +00:00
af05ec876f Some more glibc patches made by Michael Alan Dorman <mdorman@debian.org>. 1997-06-15 17:14:04 +00:00
c05f39c39c Included upstream patches for 1.3.1 to 1.3.3 and modified debian/rules
to support better debugging by including a patch to the modules package.
1997-06-13 07:42:20 +00:00
8947ba8d2f Included improvements and bugfixes 1997-06-10 21:06:52 +00:00
251da95efb Upgrading to version 1.3-15 from the archive 1997-06-02 17:42:34 +00:00
7834544c60 Import of bare source for 1.3 1997-06-02 17:21:41 +00:00