summaryrefslogtreecommitdiffstats
path: root/usr.sbin/syslogd/syslogd.c
diff options
context:
space:
mode:
authorps <ps@FreeBSD.org>2000-07-29 01:37:37 +0000
committerps <ps@FreeBSD.org>2000-07-29 01:37:37 +0000
commitfd6c9310b63fb28e54cd8270201ea81e9380d3e1 (patch)
treee77c55393048c84ac5f13c3fd141db6cac7cf675 /usr.sbin/syslogd/syslogd.c
parentbce65d4ea4ec80d3e1190ec97a003ecbe3ef6a95 (diff)
downloadFreeBSD-src-fd6c9310b63fb28e54cd8270201ea81e9380d3e1.zip
FreeBSD-src-fd6c9310b63fb28e54cd8270201ea81e9380d3e1.tar.gz
Add option 'r' to syslogd which will disable dns queries for every
request. This is useful when you have a large site pointed at a single syslog server. Submitted by: Jan Koum <jkb@yahoo-inc.com>
Diffstat (limited to 'usr.sbin/syslogd/syslogd.c')
-rw-r--r--usr.sbin/syslogd/syslogd.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/usr.sbin/syslogd/syslogd.c b/usr.sbin/syslogd/syslogd.c
index 4c67aa9..96a92d1 100644
--- a/usr.sbin/syslogd/syslogd.c
+++ b/usr.sbin/syslogd/syslogd.c
@@ -250,6 +250,7 @@ struct filed *Files;
struct filed consfile;
int Debug; /* debug flag */
+int resolve = 1; /* resolve hostname */
char LocalHostName[MAXHOSTNAMELEN+1]; /* our hostname */
char *LocalDomain; /* our local domain name */
int finet = -1; /* Internet datagram socket */
@@ -310,7 +311,7 @@ main(argc, argv)
pid_t ppid = 1;
socklen_t len;
- while ((ch = getopt(argc, argv, "a:dl:f:m:p:suv")) != -1)
+ while ((ch = getopt(argc, argv, "a:dl:f:m:p:rsuv")) != -1)
switch(ch) {
case 'd': /* debug */
Debug++;
@@ -328,6 +329,9 @@ main(argc, argv)
case 'p': /* path */
funixn[0] = optarg;
break;
+ case 'r':
+ resolve = 0;
+ break;
case 's': /* no network mode */
SecureMode++;
break;
@@ -515,7 +519,10 @@ main(argc, argv)
(struct sockaddr *)&frominet, &len);
if (l > 0) {
line[l] = '\0';
- hname = cvthname(&frominet);
+ if (resolve)
+ hname = cvthname(&frominet);
+ else
+ hname = inet_ntoa(frominet.sin_addr);
if (validate(&frominet, hname))
printline(hname, line);
} else if (l < 0 && errno != EINTR)
@@ -541,7 +548,7 @@ usage()
{
fprintf(stderr, "%s\n%s\n%s\n",
- "usage: syslogd [-dsuv] [-a allowed_peer] [-f config_file]",
+ "usage: syslogd [-drsuv] [-a allowed_peer] [-f config_file]",
" [-m mark_interval] [-p log_socket]",
" [-l log_socket]");
exit(1);
OpenPOWER on IntegriCloud