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