1*8b26181fSAndroid Build Coastguard Worker /* 2*8b26181fSAndroid Build Coastguard Worker * Copyright (c) 1989, 1990, 1993, 1994, 1995, 1996 3*8b26181fSAndroid Build Coastguard Worker * The Regents of the University of California. All rights reserved. 4*8b26181fSAndroid Build Coastguard Worker * 5*8b26181fSAndroid Build Coastguard Worker * Redistribution and use in source and binary forms, with or without 6*8b26181fSAndroid Build Coastguard Worker * modification, are permitted provided that: (1) source code distributions 7*8b26181fSAndroid Build Coastguard Worker * retain the above copyright notice and this paragraph in its entirety, (2) 8*8b26181fSAndroid Build Coastguard Worker * distributions including binary code include the above copyright notice and 9*8b26181fSAndroid Build Coastguard Worker * this paragraph in its entirety in the documentation or other materials 10*8b26181fSAndroid Build Coastguard Worker * provided with the distribution, and (3) all advertising materials mentioning 11*8b26181fSAndroid Build Coastguard Worker * features or use of this software display the following acknowledgement: 12*8b26181fSAndroid Build Coastguard Worker * ``This product includes software developed by the University of California, 13*8b26181fSAndroid Build Coastguard Worker * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of 14*8b26181fSAndroid Build Coastguard Worker * the University nor the names of its contributors may be used to endorse 15*8b26181fSAndroid Build Coastguard Worker * or promote products derived from this software without specific prior 16*8b26181fSAndroid Build Coastguard Worker * written permission. 17*8b26181fSAndroid Build Coastguard Worker * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED 18*8b26181fSAndroid Build Coastguard Worker * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF 19*8b26181fSAndroid Build Coastguard Worker * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 20*8b26181fSAndroid Build Coastguard Worker */ 21*8b26181fSAndroid Build Coastguard Worker 22*8b26181fSAndroid Build Coastguard Worker /* Prototypes missing in SunOS 4 */ 23*8b26181fSAndroid Build Coastguard Worker #ifdef FILE 24*8b26181fSAndroid Build Coastguard Worker int _filbuf(FILE *); 25*8b26181fSAndroid Build Coastguard Worker int _flsbuf(u_char, FILE *); 26*8b26181fSAndroid Build Coastguard Worker int fclose(FILE *); 27*8b26181fSAndroid Build Coastguard Worker int fflush(FILE *); 28*8b26181fSAndroid Build Coastguard Worker int fgetc(FILE *); 29*8b26181fSAndroid Build Coastguard Worker int fprintf(FILE *, const char *, ...); 30*8b26181fSAndroid Build Coastguard Worker int fputc(int, FILE *); 31*8b26181fSAndroid Build Coastguard Worker int fputs(const char *, FILE *); 32*8b26181fSAndroid Build Coastguard Worker u_int fread(void *, u_int, u_int, FILE *); 33*8b26181fSAndroid Build Coastguard Worker int fseek(FILE *, long, int); 34*8b26181fSAndroid Build Coastguard Worker u_int fwrite(const void *, u_int, u_int, FILE *); 35*8b26181fSAndroid Build Coastguard Worker int pclose(FILE *); 36*8b26181fSAndroid Build Coastguard Worker void rewind(FILE *); 37*8b26181fSAndroid Build Coastguard Worker void setbuf(FILE *, char *); 38*8b26181fSAndroid Build Coastguard Worker int setlinebuf(FILE *); 39*8b26181fSAndroid Build Coastguard Worker int ungetc(int, FILE *); 40*8b26181fSAndroid Build Coastguard Worker int vfprintf(FILE *, const char *, ...); 41*8b26181fSAndroid Build Coastguard Worker int vprintf(const char *, ...); 42*8b26181fSAndroid Build Coastguard Worker #endif 43*8b26181fSAndroid Build Coastguard Worker 44*8b26181fSAndroid Build Coastguard Worker #if __GNUC__ <= 1 45*8b26181fSAndroid Build Coastguard Worker int read(int, char *, u_int); 46*8b26181fSAndroid Build Coastguard Worker int write(int, char *, u_int); 47*8b26181fSAndroid Build Coastguard Worker #endif 48*8b26181fSAndroid Build Coastguard Worker 49*8b26181fSAndroid Build Coastguard Worker long a64l(const char *); 50*8b26181fSAndroid Build Coastguard Worker #ifdef __STDC__ 51*8b26181fSAndroid Build Coastguard Worker struct sockaddr; 52*8b26181fSAndroid Build Coastguard Worker #endif 53*8b26181fSAndroid Build Coastguard Worker int accept(int, struct sockaddr *, int *); 54*8b26181fSAndroid Build Coastguard Worker int bind(int, struct sockaddr *, int); 55*8b26181fSAndroid Build Coastguard Worker int bcmp(const void *, const void *, u_int); 56*8b26181fSAndroid Build Coastguard Worker void bcopy(const void *, void *, u_int); 57*8b26181fSAndroid Build Coastguard Worker void bzero(void *, int); 58*8b26181fSAndroid Build Coastguard Worker int chroot(const char *); 59*8b26181fSAndroid Build Coastguard Worker int close(int); 60*8b26181fSAndroid Build Coastguard Worker void closelog(void); 61*8b26181fSAndroid Build Coastguard Worker int connect(int, struct sockaddr *, int); 62*8b26181fSAndroid Build Coastguard Worker char *crypt(const char *, const char *); 63*8b26181fSAndroid Build Coastguard Worker int daemon(int, int); 64*8b26181fSAndroid Build Coastguard Worker int fchmod(int, int); 65*8b26181fSAndroid Build Coastguard Worker int fchown(int, int, int); 66*8b26181fSAndroid Build Coastguard Worker void endgrent(void); 67*8b26181fSAndroid Build Coastguard Worker void endpwent(void); 68*8b26181fSAndroid Build Coastguard Worker #ifdef __STDC__ 69*8b26181fSAndroid Build Coastguard Worker struct ether_addr; 70*8b26181fSAndroid Build Coastguard Worker #endif 71*8b26181fSAndroid Build Coastguard Worker struct ether_addr *ether_aton(const char *); 72*8b26181fSAndroid Build Coastguard Worker int flock(int, int); 73*8b26181fSAndroid Build Coastguard Worker #ifdef __STDC__ 74*8b26181fSAndroid Build Coastguard Worker struct stat; 75*8b26181fSAndroid Build Coastguard Worker #endif 76*8b26181fSAndroid Build Coastguard Worker int fstat(int, struct stat *); 77*8b26181fSAndroid Build Coastguard Worker #ifdef __STDC__ 78*8b26181fSAndroid Build Coastguard Worker struct statfs; 79*8b26181fSAndroid Build Coastguard Worker #endif 80*8b26181fSAndroid Build Coastguard Worker int fstatfs(int, struct statfs *); 81*8b26181fSAndroid Build Coastguard Worker int fsync(int); 82*8b26181fSAndroid Build Coastguard Worker #ifdef __STDC__ 83*8b26181fSAndroid Build Coastguard Worker struct timeb; 84*8b26181fSAndroid Build Coastguard Worker #endif 85*8b26181fSAndroid Build Coastguard Worker int ftime(struct timeb *); 86*8b26181fSAndroid Build Coastguard Worker int ftruncate(int, off_t); 87*8b26181fSAndroid Build Coastguard Worker int getdtablesize(void); 88*8b26181fSAndroid Build Coastguard Worker long gethostid(void); 89*8b26181fSAndroid Build Coastguard Worker int gethostname(char *, int); 90*8b26181fSAndroid Build Coastguard Worker int getopt(int, char * const *, const char *); 91*8b26181fSAndroid Build Coastguard Worker int getpagesize(void); 92*8b26181fSAndroid Build Coastguard Worker char *getpass(char *); 93*8b26181fSAndroid Build Coastguard Worker int getpeername(int, struct sockaddr *, int *); 94*8b26181fSAndroid Build Coastguard Worker int getpriority(int, int); 95*8b26181fSAndroid Build Coastguard Worker #ifdef __STDC__ 96*8b26181fSAndroid Build Coastguard Worker struct rlimit; 97*8b26181fSAndroid Build Coastguard Worker #endif 98*8b26181fSAndroid Build Coastguard Worker int getrlimit(int, struct rlimit *); 99*8b26181fSAndroid Build Coastguard Worker int getsockname(int, struct sockaddr *, int *); 100*8b26181fSAndroid Build Coastguard Worker int getsockopt(int, int, int, char *, int *); 101*8b26181fSAndroid Build Coastguard Worker #ifdef __STDC__ 102*8b26181fSAndroid Build Coastguard Worker struct timeval; 103*8b26181fSAndroid Build Coastguard Worker struct timezone; 104*8b26181fSAndroid Build Coastguard Worker #endif 105*8b26181fSAndroid Build Coastguard Worker int gettimeofday(struct timeval *, struct timezone *); 106*8b26181fSAndroid Build Coastguard Worker char *getusershell(void); 107*8b26181fSAndroid Build Coastguard Worker char *getwd(char *); 108*8b26181fSAndroid Build Coastguard Worker int initgroups(const char *, int); 109*8b26181fSAndroid Build Coastguard Worker int ioctl(int, int, caddr_t); 110*8b26181fSAndroid Build Coastguard Worker int iruserok(u_long, int, char *, char *); 111*8b26181fSAndroid Build Coastguard Worker int isatty(int); 112*8b26181fSAndroid Build Coastguard Worker int killpg(int, int); 113*8b26181fSAndroid Build Coastguard Worker int listen(int, int); 114*8b26181fSAndroid Build Coastguard Worker #ifdef __STDC__ 115*8b26181fSAndroid Build Coastguard Worker struct utmp; 116*8b26181fSAndroid Build Coastguard Worker #endif 117*8b26181fSAndroid Build Coastguard Worker void login(struct utmp *); 118*8b26181fSAndroid Build Coastguard Worker int logout(const char *); 119*8b26181fSAndroid Build Coastguard Worker off_t lseek(int, off_t, int); 120*8b26181fSAndroid Build Coastguard Worker int lstat(const char *, struct stat *); 121*8b26181fSAndroid Build Coastguard Worker int mkstemp(char *); 122*8b26181fSAndroid Build Coastguard Worker char *mktemp(char *); 123*8b26181fSAndroid Build Coastguard Worker int munmap(caddr_t, int); 124*8b26181fSAndroid Build Coastguard Worker void openlog(const char *, int, int); 125*8b26181fSAndroid Build Coastguard Worker void perror(const char *); 126*8b26181fSAndroid Build Coastguard Worker int printf(const char *, ...); 127*8b26181fSAndroid Build Coastguard Worker int puts(const char *); 128*8b26181fSAndroid Build Coastguard Worker long random(void); 129*8b26181fSAndroid Build Coastguard Worker int readlink(const char *, char *, int); 130*8b26181fSAndroid Build Coastguard Worker #ifdef __STDC__ 131*8b26181fSAndroid Build Coastguard Worker struct iovec; 132*8b26181fSAndroid Build Coastguard Worker #endif 133*8b26181fSAndroid Build Coastguard Worker int readv(int, struct iovec *, int); 134*8b26181fSAndroid Build Coastguard Worker int recv(int, char *, u_int, int); 135*8b26181fSAndroid Build Coastguard Worker int recvfrom(int, char *, u_int, int, struct sockaddr *, int *); 136*8b26181fSAndroid Build Coastguard Worker int rename(const char *, const char *); 137*8b26181fSAndroid Build Coastguard Worker int rcmd(char **, u_short, char *, char *, char *, int *); 138*8b26181fSAndroid Build Coastguard Worker int rresvport(int *); 139*8b26181fSAndroid Build Coastguard Worker int send(int, char *, u_int, int); 140*8b26181fSAndroid Build Coastguard Worker int sendto(int, char *, u_int, int, struct sockaddr *, int); 141*8b26181fSAndroid Build Coastguard Worker int setenv(const char *, const char *, int); 142*8b26181fSAndroid Build Coastguard Worker int seteuid(int); 143*8b26181fSAndroid Build Coastguard Worker int setpriority(int, int, int); 144*8b26181fSAndroid Build Coastguard Worker int select(int, fd_set *, fd_set *, fd_set *, struct timeval *); 145*8b26181fSAndroid Build Coastguard Worker int setpgrp(int, int); 146*8b26181fSAndroid Build Coastguard Worker void setpwent(void); 147*8b26181fSAndroid Build Coastguard Worker int setrlimit(int, struct rlimit *); 148*8b26181fSAndroid Build Coastguard Worker int setsockopt(int, int, int, char *, int); 149*8b26181fSAndroid Build Coastguard Worker int shutdown(int, int); 150*8b26181fSAndroid Build Coastguard Worker int sigblock(int); 151*8b26181fSAndroid Build Coastguard Worker void (*signal (int, void (*) (int))) (int); 152*8b26181fSAndroid Build Coastguard Worker int sigpause(int); 153*8b26181fSAndroid Build Coastguard Worker int sigsetmask(int); 154*8b26181fSAndroid Build Coastguard Worker #ifdef __STDC__ 155*8b26181fSAndroid Build Coastguard Worker struct sigvec; 156*8b26181fSAndroid Build Coastguard Worker #endif 157*8b26181fSAndroid Build Coastguard Worker int sigvec(int, struct sigvec *, struct sigvec*); 158*8b26181fSAndroid Build Coastguard Worker int snprintf(char *, size_t, const char *, ...); 159*8b26181fSAndroid Build Coastguard Worker int socket(int, int, int); 160*8b26181fSAndroid Build Coastguard Worker int socketpair(int, int, int, int *); 161*8b26181fSAndroid Build Coastguard Worker int symlink(const char *, const char *); 162*8b26181fSAndroid Build Coastguard Worker void srandom(int); 163*8b26181fSAndroid Build Coastguard Worker int sscanf(char *, const char *, ...); 164*8b26181fSAndroid Build Coastguard Worker int stat(const char *, struct stat *); 165*8b26181fSAndroid Build Coastguard Worker int statfs(char *, struct statfs *); 166*8b26181fSAndroid Build Coastguard Worker char *strerror(int); 167*8b26181fSAndroid Build Coastguard Worker int strcasecmp(const char *, const char *); 168*8b26181fSAndroid Build Coastguard Worker #ifdef __STDC__ 169*8b26181fSAndroid Build Coastguard Worker struct tm; 170*8b26181fSAndroid Build Coastguard Worker #endif 171*8b26181fSAndroid Build Coastguard Worker int strftime(char *, int, char *, struct tm *); 172*8b26181fSAndroid Build Coastguard Worker int strncasecmp(const char *, const char *, int); 173*8b26181fSAndroid Build Coastguard Worker long strtol(const char *, char **, int); 174*8b26181fSAndroid Build Coastguard Worker void sync(void); 175*8b26181fSAndroid Build Coastguard Worker void syslog(int, const char *, ...); 176*8b26181fSAndroid Build Coastguard Worker int system(const char *); 177*8b26181fSAndroid Build Coastguard Worker long tell(int); 178*8b26181fSAndroid Build Coastguard Worker time_t time(time_t *); 179*8b26181fSAndroid Build Coastguard Worker char *timezone(int, int); 180*8b26181fSAndroid Build Coastguard Worker int tolower(int); 181*8b26181fSAndroid Build Coastguard Worker int toupper(int); 182*8b26181fSAndroid Build Coastguard Worker int truncate(char *, off_t); 183*8b26181fSAndroid Build Coastguard Worker void unsetenv(const char *); 184*8b26181fSAndroid Build Coastguard Worker int vfork(void); 185*8b26181fSAndroid Build Coastguard Worker int vsprintf(char *, const char *, ...); 186*8b26181fSAndroid Build Coastguard Worker int writev(int, struct iovec *, int); 187*8b26181fSAndroid Build Coastguard Worker #ifdef __STDC__ 188*8b26181fSAndroid Build Coastguard Worker struct rusage; 189*8b26181fSAndroid Build Coastguard Worker #endif 190*8b26181fSAndroid Build Coastguard Worker int utimes(const char *, struct timeval *); 191*8b26181fSAndroid Build Coastguard Worker #if __GNUC__ <= 1 192*8b26181fSAndroid Build Coastguard Worker int wait(int *); 193*8b26181fSAndroid Build Coastguard Worker pid_t wait3(int *, int, struct rusage *); 194*8b26181fSAndroid Build Coastguard Worker #endif 195*8b26181fSAndroid Build Coastguard Worker 196*8b26181fSAndroid Build Coastguard Worker /* Ugly signal hacking */ 197*8b26181fSAndroid Build Coastguard Worker #ifdef SIG_ERR 198*8b26181fSAndroid Build Coastguard Worker #undef SIG_ERR 199*8b26181fSAndroid Build Coastguard Worker #define SIG_ERR (void (*)(int))-1 200*8b26181fSAndroid Build Coastguard Worker #undef SIG_DFL 201*8b26181fSAndroid Build Coastguard Worker #define SIG_DFL (void (*)(int))0 202*8b26181fSAndroid Build Coastguard Worker #undef SIG_IGN 203*8b26181fSAndroid Build Coastguard Worker #define SIG_IGN (void (*)(int))1 204*8b26181fSAndroid Build Coastguard Worker 205*8b26181fSAndroid Build Coastguard Worker #ifdef KERNEL 206*8b26181fSAndroid Build Coastguard Worker #undef SIG_CATCH 207*8b26181fSAndroid Build Coastguard Worker #define SIG_CATCH (void (*)(int))2 208*8b26181fSAndroid Build Coastguard Worker #endif 209*8b26181fSAndroid Build Coastguard Worker #undef SIG_HOLD 210*8b26181fSAndroid Build Coastguard Worker #define SIG_HOLD (void (*)(int))3 211*8b26181fSAndroid Build Coastguard Worker #endif 212