diff options
author | ps <ps@FreeBSD.org> | 2000-07-29 01:37:37 +0000 |
---|---|---|
committer | ps <ps@FreeBSD.org> | 2000-07-29 01:37:37 +0000 |
commit | fd6c9310b63fb28e54cd8270201ea81e9380d3e1 (patch) | |
tree | e77c55393048c84ac5f13c3fd141db6cac7cf675 /usr.sbin/syslogd/syslogd.c | |
parent | bce65d4ea4ec80d3e1190ec97a003ecbe3ef6a95 (diff) | |
download | FreeBSD-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.c | 13 |
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); |