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