]> git.decadent.org.uk Git - nfs-utils.git/blobdiff - support/misc/tcpwrapper.c
2005-08-26 Kevin Coffman <kwc@citi.umich.edu>
[nfs-utils.git] / support / misc / tcpwrapper.c
index ba76864cb84a19adf5005c378f9f68d3feb4bd01..d8a742f49da0af6c9fec8a0262bcf89c8f28606f 100644 (file)
@@ -25,9 +25,7 @@
   * authorized by the /etc/hosts.{allow,deny} files. The local system is
   * always treated as an authorized host. The access control tables are never
   * consulted for requests from the local system, and are always consulted
-  * for requests from other hosts. Access control is based on IP addresses
-  * only; attempts to map an address to a host name might cause the
-  * portmapper to hang.
+  * for requests from other hosts.
   * 
   * Author: Wietse Venema (wietse@wzv.win.tue.nl), dept. of Mathematics and
   * Computing Science, Eindhoven University of Technology, The Netherlands.
@@ -221,9 +219,9 @@ u_long  prognum;
 char   *text;
 {
     char   *procname;
-    char    procbuf[4 * sizeof(u_long)];
+    char    procbuf[16 + 4 * sizeof(u_long)];
     char   *progname;
-    char    progbuf[4 * sizeof(u_long)];
+    char    progbuf[16 + 4 * sizeof(u_long)];
     struct rpcent *rpc;
 
     /*
@@ -242,16 +240,18 @@ char   *text;
        } else if ((rpc = getrpcbynumber((int) prognum))) {
            progname = rpc->r_name;
        } else {
-           sprintf(progname = progbuf, "%lu", prognum);
+           snprintf(progname = progbuf, sizeof (progbuf),
+                    "prog (%lu)", prognum);
        }
 
        /* Try to map procedure number to name. */
 
-       sprintf(procname = procbuf, "%lu", (u_long) procnum);
+       snprintf(procname = procbuf, sizeof (procbuf),
+                "proc (%lu)", (u_long) procnum);
 
        /* Write syslog record. */
 
-       syslog(severity, "connect from %s to %s(%s)%s",
+       syslog(severity, "connect from %s to %s in %s%s",
               inet_ntoa(addr->sin_addr), procname, progname, text);
        exit(0);
     }