Home | History | Annotate | Line # | Download | only in libwrap
hosts_ctl.c revision 1.3
      1 /*	$NetBSD: hosts_ctl.c,v 1.3 1999/07/02 16:15:33 simonb Exp $	*/
      2 
      3  /*
      4   * hosts_ctl() combines common applications of the host access control
      5   * library routines. It bundles its arguments then calls the hosts_access()
      6   * access control checker. The host name and user name arguments should be
      7   * empty strings, STRING_UNKNOWN or real data. If a match is found, the
      8   * optional shell command is executed.
      9   *
     10   * Restriction: this interface does not pass enough information to support
     11   * selective remote username lookups or selective hostname double checks.
     12   *
     13   * Author: Wietse Venema, Eindhoven University of Technology, The Netherlands.
     14   */
     15 
     16 #include <sys/cdefs.h>
     17 #ifndef lint
     18 #if 0
     19 static char sccsid[] = "@(#) hosts_ctl.c 1.4 94/12/28 17:42:27";
     20 #else
     21 __RCSID("$NetBSD: hosts_ctl.c,v 1.3 1999/07/02 16:15:33 simonb Exp $");
     22 #endif
     23 #endif
     24 
     25 #include <stdio.h>
     26 
     27 #include "tcpd.h"
     28 
     29 /* hosts_ctl - limited interface to the hosts_access() routine */
     30 
     31 int     hosts_ctl(daemon, name, addr, user)
     32 char   *daemon;
     33 char   *name;
     34 char   *addr;
     35 char   *user;
     36 {
     37     struct request_info request;
     38 
     39     return (hosts_access(request_init(&request,
     40 				      RQ_DAEMON, daemon,
     41 				      RQ_CLIENT_NAME, name,
     42 				      RQ_CLIENT_ADDR, addr,
     43 				      RQ_USER, user,
     44 				      0)));
     45 }
     46