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