1*b30d1939SAndy Fiddaman /***********************************************************************
2*b30d1939SAndy Fiddaman *                                                                      *
3*b30d1939SAndy Fiddaman *               This software is part of the ast package               *
4*b30d1939SAndy Fiddaman *          Copyright (c) 1985-2011 AT&T Intellectual Property          *
5*b30d1939SAndy Fiddaman *                      and is licensed under the                       *
6*b30d1939SAndy Fiddaman *                 Eclipse Public License, Version 1.0                  *
7*b30d1939SAndy Fiddaman *                    by AT&T Intellectual Property                     *
8*b30d1939SAndy Fiddaman *                                                                      *
9*b30d1939SAndy Fiddaman *                A copy of the License is available at                 *
10*b30d1939SAndy Fiddaman *          http://www.eclipse.org/org/documents/epl-v10.html           *
11*b30d1939SAndy Fiddaman *         (with md5 checksum b35adb5213ca9657e911e9befb180842)         *
12*b30d1939SAndy Fiddaman *                                                                      *
13*b30d1939SAndy Fiddaman *              Information and Software Systems Research               *
14*b30d1939SAndy Fiddaman *                            AT&T Research                             *
15*b30d1939SAndy Fiddaman *                           Florham Park NJ                            *
16*b30d1939SAndy Fiddaman *                                                                      *
17*b30d1939SAndy Fiddaman *                 Glenn Fowler <gsf@research.att.com>                  *
18*b30d1939SAndy Fiddaman *                  David Korn <dgk@research.att.com>                   *
19*b30d1939SAndy Fiddaman *                   Phong Vo <kpv@research.att.com>                    *
20*b30d1939SAndy Fiddaman *                                                                      *
21*b30d1939SAndy Fiddaman ***********************************************************************/
22*b30d1939SAndy Fiddaman #include <ast_std.h>
23*b30d1939SAndy Fiddaman #include <sys/types.h>
24*b30d1939SAndy Fiddaman #include <sys/uio.h>
25*b30d1939SAndy Fiddaman #include <string.h>
26*b30d1939SAndy Fiddaman #include <unistd.h>
27*b30d1939SAndy Fiddaman #include <stdlib.h>
28*b30d1939SAndy Fiddaman #include <signal.h>
29*b30d1939SAndy Fiddaman #include <sys/param.h>
30*b30d1939SAndy Fiddaman #include <sys/socket.h>
31*b30d1939SAndy Fiddaman #include <netinet/in.h>
32*b30d1939SAndy Fiddaman #include <ctype.h>
33*b30d1939SAndy Fiddaman #include <netdb.h>
34*b30d1939SAndy Fiddaman #include <stdio.h>
35*b30d1939SAndy Fiddaman #include <errno.h>
36*b30d1939SAndy Fiddaman #include <sys/time.h>
37*b30d1939SAndy Fiddaman 
38*b30d1939SAndy Fiddaman #if 0
39*b30d1939SAndy Fiddaman #include <arpa/inet.h>
40*b30d1939SAndy Fiddaman #include <arpa/nameser.h>
41*b30d1939SAndy Fiddaman #include <resolv.h>
42*b30d1939SAndy Fiddaman #include <net/if.h>
43*b30d1939SAndy Fiddaman #include <linux/sockios.h>
44*b30d1939SAndy Fiddaman #endif
45*b30d1939SAndy Fiddaman 
46*b30d1939SAndy Fiddaman #ifndef sigmask
47*b30d1939SAndy Fiddaman #define sigmask(n)	((unsigned long)1 << ((n) - 1))
48*b30d1939SAndy Fiddaman #endif
49*b30d1939SAndy Fiddaman 
50*b30d1939SAndy Fiddaman extern void _sethtent(int f);
51*b30d1939SAndy Fiddaman extern void _endhtent(void);
52*b30d1939SAndy Fiddaman extern struct hostent *_gethtent(void);
53*b30d1939SAndy Fiddaman extern struct hostent *_gethtbyname(const char *name);
54*b30d1939SAndy Fiddaman extern struct hostent *_gethtbyaddr(const char *addr, int len,
55*b30d1939SAndy Fiddaman 		 int type);
56*b30d1939SAndy Fiddaman extern int _validuser(FILE *hostf, const char *rhost,
57*b30d1939SAndy Fiddaman 		 const char *luser, const char *ruser, int baselen);
58*b30d1939SAndy Fiddaman extern int _checkhost(const char *rhost, const char *lhost, int len);
59*b30d1939SAndy Fiddaman 
60*b30d1939SAndy Fiddaman #if 0
61*b30d1939SAndy Fiddaman extern void putlong(u_long l, u_char *msgp);
62*b30d1939SAndy Fiddaman extern void putshort(u_short l, u_char *msgp);
63*b30d1939SAndy Fiddaman extern u_int32_t _getlong(register const u_char *msgp);
64*b30d1939SAndy Fiddaman extern u_int16_t _getshort(register const u_char *msgp);
65*b30d1939SAndy Fiddaman extern void p_query(char *msg);
66*b30d1939SAndy Fiddaman extern void fp_query(char *msg, FILE *file);
67*b30d1939SAndy Fiddaman extern char *p_cdname(char *cp, char *msg, FILE *file);
68*b30d1939SAndy Fiddaman extern char *p_rr(char *cp, char *msg, FILE *file);
69*b30d1939SAndy Fiddaman extern char *p_type(int type);
70*b30d1939SAndy Fiddaman extern char * p_class(int class);
71*b30d1939SAndy Fiddaman extern char *p_time(u_long value);
72*b30d1939SAndy Fiddaman #endif
73*b30d1939SAndy Fiddaman 
74*b30d1939SAndy Fiddaman extern char * hostalias(const char *name);
75*b30d1939SAndy Fiddaman extern void sethostfile(char *name);
76*b30d1939SAndy Fiddaman extern void _res_close (void);
77*b30d1939SAndy Fiddaman extern void ruserpass(const char *host, char **aname, char **apass);
78*b30d1939SAndy Fiddaman extern char* index(const char*, int);
79*b30d1939SAndy Fiddaman extern int strcasecmp(const char*, const char*);
80*b30d1939SAndy Fiddaman extern void bcopy(const void*, void*, size_t);
81