Only in sysklogd-1.4.1.new/: klogd
Only in sysklogd-1.4.1.new/: klogd.o
Only in sysklogd-1.4.1.new/: ksym_mod.o
Only in sysklogd-1.4.1.new/: ksym.o
Only in sysklogd-1.4.1.new/: pidfile.o
diff -ru sysklogd-1.4.1.orig/sysklogd.8 sysklogd-1.4.1.new/sysklogd.8
--- sysklogd-1.4.1.orig/sysklogd.8	2001-03-11 21:35:51.000000000 +0200
+++ sysklogd-1.4.1.new/sysklogd.8	2007-06-23 11:58:26.358827799 +0300
@@ -10,6 +10,9 @@
 .RB [ " \-a "
 .I socket
 ]
+.RB [ " \-b "
+.I bind address
+]
 .RB [ " \-d " ]
 .RB [ " \-f "
 .I config file
@@ -86,6 +89,10 @@
 described by the people from OpenBSD at
 http://www.psionic.com/papers/dns.html.
 .TP
+.BI "\-b " "bind address"
+Set the address to listen to when using remote receiption.  The default
+is to listen to all addresses.
+.TP
 .B "\-d"
 Turns on debug mode.  Using this the daemon will not proceed a 
 .BR fork (2)
Only in sysklogd-1.4.1.new/: syslogd
diff -ru sysklogd-1.4.1.orig/syslogd.c sysklogd-1.4.1.new/syslogd.c
--- sysklogd-1.4.1.orig/syslogd.c	2007-06-23 11:46:46.000000000 +0300
+++ sysklogd-1.4.1.new/syslogd.c	2007-06-23 12:00:48.682115489 +0300
@@ -735,6 +735,7 @@
 char	**LocalHosts = NULL;	/* these hosts are logged with their hostname */
 int	NoHops = 1;		/* Can we bounce syslog messages through an
 				   intermediate host. */
+char	*BindAddress = NULL;	/* The address to bind to. */
 
 extern	int errno;
 
@@ -829,7 +830,7 @@
 		funix[i]  = -1;
 	}
 
-	while ((ch = getopt(argc, argv, "a:dhf:l:m:np:rs:v")) != EOF)
+	while ((ch = getopt(argc, argv, "a:b:dhf:l:m:np:rs:v")) != EOF)
 		switch((char)ch) {
 		case 'a':
 			if (nfunix < MAXFUNIX)
@@ -837,6 +838,9 @@
 			else
 				fprintf(stderr, "Out of descriptors, ignoring %s\n", optarg);
 			break;
+		case 'b':
+			BindAddress=strdup(optarg);
+			break;
 		case 'd':		/* debug */
 			Debug = 1;
 			break;
@@ -1175,7 +1179,7 @@
 int usage()
 {
 	fprintf(stderr, "usage: syslogd [-drvh] [-l hostlist] [-m markinterval] [-n] [-p path]\n" \
-		" [-s domainlist] [-f conffile]\n");
+		" [-s domainlist] [-f conffile] [-b bindaddress]\n");
 	exit(1);
 }
 
@@ -1260,6 +1264,11 @@
 		close(fd);
 		return -1;
 	}
+
+	/* Set the address to bind to */
+	if (BindAddress != NULL)
+		inet_aton(BindAddress, &sin.sin_addr);
+
 	if (bind(fd, (struct sockaddr *) &sin, sizeof(sin)) < 0) {
 		logerror("bind, suspending inet");
 		close(fd);
Only in sysklogd-1.4.1.new/: syslogd.o
Only in sysklogd-1.4.1.new/: syslog.o

