rely on standard POSIX headers to fix globs of warnings --- a/tcprulescheck.c +++ b/tcprulescheck.c @@ -1,3 +1,5 @@ +#include + #include "byte.h" #include "buffer.h" #include "strerr.h" --- a/buffer.c +++ b/buffer.c @@ -1,6 +1,6 @@ #include "buffer.h" -void buffer_init(buffer *s,int (*op)(),int fd,char *buf,unsigned int len) +void buffer_init(buffer *s,ssize_t (*op)(),int fd,char *buf,unsigned int len) { s->x = buf; s->fd = fd; --- a/buffer.h +++ b/buffer.h @@ -1,6 +1,8 @@ #ifndef BUFFER_H #define BUFFER_H +#include + typedef struct buffer { char *x; unsigned int p; @@ -13,7 +15,7 @@ typedef struct buffer { #define BUFFER_INSIZE 8192 #define BUFFER_OUTSIZE 8192 -extern void buffer_init(buffer *,int (*)(),int,char *,unsigned int); +extern void buffer_init(buffer *,ssize_t (*)(),int,char *,unsigned int); extern int buffer_flush(buffer *); extern int buffer_put(buffer *,char *,unsigned int); --- a/exit.h +++ b/exit.h @@ -1,6 +1,6 @@ #ifndef EXIT_H #define EXIT_H -extern void _exit(); +#include #endif --- a/install.c +++ b/install.c @@ -1,3 +1,4 @@ +#include #include "buffer.h" #include "strerr.h" #include "error.h" --- a/readwrite.h +++ b/readwrite.h @@ -1,7 +1,6 @@ #ifndef READWRITE_H #define READWRITE_H -extern int read(); -extern int write(); +#include #endif --- a/auto-str.c +++ b/auto-str.c @@ -5,6 +5,7 @@ char bspace[256]; buffer b = BUFFER_INIT(write,1,bspace,sizeof bspace); +#define puts _puts void puts(char *s) { if (buffer_puts(&b,s) == -1) _exit(111); --- a/buffer.h +++ b/buffer.h @@ -8,7 +8,7 @@ typedef struct buffer { unsigned int p; unsigned int n; int fd; - int (*op)(); + ssize_t (*op)(); } buffer; #define BUFFER_INIT(op,fd,buf,len) { (buf), 0, (len), (fd), (op) } --- a/fd_copy.c +++ b/fd_copy.c @@ -1,4 +1,5 @@ #include +#include #include "fd.h" int fd_copy(int to,int from) --- a/fd_move.c +++ b/fd_move.c @@ -1,3 +1,4 @@ +#include #include "fd.h" int fd_move(int to,int from) --- a/socket_tcp.c +++ b/socket_tcp.c @@ -1,3 +1,4 @@ +#include #include #include #include --- a/chkshsgr.c +++ b/chkshsgr.c @@ -1,8 +1,9 @@ +#include #include "exit.h" main() { - short x[4]; + gid_t x[4]; x[0] = x[1] = 0; if (getgroups(1,x) == 0) if (setgroups(1,x) == -1) _exit(1); --- a/prot.c +++ b/prot.c @@ -1,10 +1,10 @@ #include "hasshsgr.h" #include "prot.h" -int prot_gid(int gid) +int prot_gid(gid_t gid) { #ifdef HASSHORTSETGROUPS - short x[2]; + gid_t x[2]; x[0] = gid; x[1] = 73; /* catch errors */ if (setgroups(1,x) == -1) return -1; #else @@ -13,7 +13,7 @@ int prot_gid(int gid) return setgid(gid); /* _should_ be redundant, but on some systems it isn't */ } -int prot_uid(int uid) +int prot_uid(uid_t uid) { return setuid(uid); } --- a/prot.h +++ b/prot.h @@ -1,7 +1,10 @@ #ifndef PROT_H #define PROT_H -extern int prot_gid(int); -extern int prot_uid(int); +#include +#include + +extern int prot_gid(gid_t); +extern int prot_uid(uid_t); #endif --- a/fixcrio.c +++ b/fixcrio.c @@ -6,6 +6,7 @@ #include "exit.h" #include "iopause.h" #include "pathexec.h" +#include "fd.h" #define FATAL "fixcrio: fatal: " --- a/hier.c +++ b/hier.c @@ -1,5 +1,9 @@ #include "auto_home.h" +extern void h(char *, int, int, int); +extern void d(char *, char *, int, int, int); +extern void c(char *, char *, char *, int, int, int); + void hier() { h(auto_home,-1,-1,02755); --- a/mconnect-io.c +++ b/mconnect-io.c @@ -1,3 +1,4 @@ +#include #include "sig.h" #include "wait.h" #include "fork.h" @@ -12,7 +13,7 @@ buffer bout; char inbuf[512]; buffer bin; -int myread(int fd,char *buf,int len) +ssize_t myread(int fd,char *buf,int len) { buffer_flush(&bout); return read(fd,buf,len); --- a/tcprules.c +++ b/tcprules.c @@ -1,3 +1,4 @@ +#include #include "strerr.h" #include "stralloc.h" #include "getln.h" @@ -6,6 +7,8 @@ #include "fmt.h" #include "byte.h" #include "cdb_make.h" +#include "open.h" +#include "scan.h" #define FATAL "tcprules: fatal: " --- a/pathexec_run.c +++ b/pathexec_run.c @@ -1,3 +1,4 @@ +#include #include "error.h" #include "stralloc.h" #include "str.h" --- a/recordio.c +++ b/recordio.c @@ -8,6 +8,7 @@ #include "fmt.h" #include "iopause.h" #include "pathexec.h" +#include "fd.h" #define FATAL "recordio: fatal: " --- a/seek_set.c +++ b/seek_set.c @@ -1,7 +1,6 @@ +#include #include #include "seek.h" -#define SET 0 /* sigh */ - int seek_set(int fd,seek_pos pos) -{ if (lseek(fd,(off_t) pos,SET) == -1) return -1; return 0; } +{ if (lseek(fd,(off_t) pos,SEEK_SET) == -1) return -1; return 0; } --- a/socket_udp.c +++ b/socket_udp.c @@ -2,6 +2,7 @@ #include #include #include +#include #include "ndelay.h" #include "socket.h" --- a/tcprulescheck.c +++ b/tcprulescheck.c @@ -5,6 +5,7 @@ #include "strerr.h" #include "env.h" #include "rules.h" +#include "open.h" void found(char *data,unsigned int datalen) { the prototypes are added near the top to avoid conflicts w/ipv6 patch --- a/socket.h +++ b/socket.h @@ -3,6 +3,9 @@ #ifndef SOCKET_H #define SOCKET_H +extern int socket_tcpnodelay(int); +extern int socket_ipoptionskill(int); + #include "uint16.h" extern int socket_tcp(void); --- a/remoteinfo.c +++ b/remoteinfo.c @@ -1,3 +1,4 @@ +#include #include "fmt.h" #include "buffer.h" #include "socket.h" @@ -5,11 +6,12 @@ #include "iopause.h" #include "timeoutconn.h" #include "remoteinfo.h" +#include "readwrite.h" static struct taia now; static struct taia deadline; -static int mywrite(int fd,char *buf,int len) +static ssize_t mywrite(int fd,char *buf,int len) { iopause_fd x; @@ -27,7 +29,7 @@ static int mywrite(int fd,char *buf,int len) return write(fd,buf,len); } -static int myread(int fd,char *buf,int len) +static ssize_t myread(int fd,char *buf,int len) { iopause_fd x; --- a/alloc.c +++ b/alloc.c @@ -1,7 +1,5 @@ #include "alloc.h" #include "error.h" -extern char *malloc(); -extern void free(); #define ALIGNMENT 16 /* XXX: assuming that this alignment is enough */ #define SPACE 2048 /* must be multiple of ALIGNMENT */ --- a/alloc.h +++ b/alloc.h @@ -1,8 +1,10 @@ #ifndef ALLOC_H #define ALLOC_H -extern /*@null@*//*@out@*/char *alloc(); -extern void alloc_free(); +#include + +extern /*@null@*//*@out@*/char *alloc(unsigned int); +extern void alloc_free(char *); extern int alloc_re(); #endif --- a/buffer_0.c +++ b/buffer_0.c @@ -1,7 +1,7 @@ #include "readwrite.h" #include "buffer.h" -int buffer_0_read(fd,buf,len) int fd; char *buf; int len; +ssize_t buffer_0_read(fd,buf,len) int fd; char *buf; int len; { if (buffer_flush(buffer_1) == -1) return -1; return read(fd,buf,len); --- a/buffer_get.c +++ b/buffer_get.c @@ -2,7 +2,7 @@ #include "byte.h" #include "error.h" -static int oneread(int (*op)(),int fd,char *buf,unsigned int len) +static int oneread(ssize_t (*op)(),int fd,char *buf,unsigned int len) { int r; --- a/buffer_put.c +++ b/buffer_put.c @@ -3,7 +3,7 @@ #include "byte.h" #include "error.h" -static int allwrite(int (*op)(),int fd,char *buf,unsigned int len) +static int allwrite(ssize_t (*op)(),int fd,char *buf,unsigned int len) { int w; --- a/case.h +++ b/case.h @@ -4,7 +4,7 @@ extern void case_lowers(char *); extern void case_lowerb(char *,unsigned int); extern int case_diffs(char *,char *); -extern int case_diffb(char *,unsigned int,char *); +extern int case_diffb(const char *,unsigned int,const char *); extern int case_starts(char *,char *); extern int case_startb(char *,unsigned int,char *); --- a/case_diffb.c +++ b/case_diffb.c @@ -1,6 +1,6 @@ #include "case.h" -int case_diffb(register char *s,register unsigned int len,register char *t) +int case_diffb(register const char *s,register unsigned int len,const register char *t) { register unsigned char x; register unsigned char y; --- a/open.h +++ b/open.h @@ -1,10 +1,10 @@ #ifndef OPEN_H #define OPEN_H -extern int open_read(char *); -extern int open_excl(char *); -extern int open_append(char *); -extern int open_trunc(char *); -extern int open_write(char *); +extern int open_read(const char *); +extern int open_excl(const char *); +extern int open_append(const char *); +extern int open_trunc(const char *); +extern int open_write(const char *); #endif --- a/open_read.c +++ b/open_read.c @@ -2,5 +2,5 @@ #include #include "open.h" -int open_read(char *fn) +int open_read(const char *fn) { return open(fn,O_RDONLY | O_NDELAY); } --- a/open_trunc.c +++ b/open_trunc.c @@ -2,5 +2,5 @@ #include #include "open.h" -int open_trunc(char *fn) +int open_trunc(const char *fn) { return open(fn,O_WRONLY | O_NDELAY | O_TRUNC | O_CREAT,0644); } --- a/open_write.c +++ b/open_write.c @@ -2,5 +2,5 @@ #include #include "open.h" -int open_write(char *fn) +int open_write(const char *fn) { return open(fn,O_WRONLY | O_NDELAY); } --- a/openreadclose.c +++ b/openreadclose.c @@ -3,7 +3,7 @@ #include "readclose.h" #include "openreadclose.h" -int openreadclose(char *fn,stralloc *sa,unsigned int bufsize) +int openreadclose(const char *fn,stralloc *sa,unsigned int bufsize) { int fd; fd = open_read(fn); --- a/openreadclose.h +++ b/openreadclose.h @@ -3,6 +3,6 @@ #include "stralloc.h" -extern int openreadclose(char *,stralloc *,unsigned int); +extern int openreadclose(const char *,stralloc *,unsigned int); #endif --- a/stralloc.h +++ b/stralloc.h @@ -7,7 +7,7 @@ GEN_ALLOC_typedef(stralloc,char,s,len,a) extern int stralloc_ready(stralloc *,unsigned int); extern int stralloc_readyplus(stralloc *,unsigned int); -extern int stralloc_copy(stralloc *,stralloc *); +extern int stralloc_copy(stralloc *,const stralloc *); extern int stralloc_cat(stralloc *,stralloc *); extern int stralloc_copys(stralloc *,const char *); extern int stralloc_cats(stralloc *,const char *); --- a/stralloc_copy.c +++ b/stralloc_copy.c @@ -1,7 +1,7 @@ #include "byte.h" #include "stralloc.h" -int stralloc_copy(stralloc *sato,stralloc *safrom) +int stralloc_copy(stralloc *sato,const stralloc *safrom) { return stralloc_copyb(sato,safrom->s,safrom->len); } --- a/taia.h +++ b/taia.h @@ -19,7 +19,7 @@ extern double taia_frac(struct taia *); extern void taia_add(struct taia *,struct taia *,struct taia *); extern void taia_sub(struct taia *,struct taia *,struct taia *); extern void taia_half(struct taia *,struct taia *); -extern int taia_less(struct taia *,struct taia *); +extern int taia_less(const struct taia *,const struct taia *); #define TAIA_PACK 16 extern void taia_pack(char *,struct taia *); --- a/taia_less.c +++ b/taia_less.c @@ -2,7 +2,7 @@ /* XXX: breaks tai encapsulation */ -int taia_less(struct taia *t,struct taia *u) +int taia_less(const struct taia *t,const struct taia *u) { if (t->sec.x < u->sec.x) return 1; if (t->sec.x > u->sec.x) return 0; --- a/uint32.h1 +++ b/uint32.h1 @@ -5,7 +5,7 @@ typedef unsigned int uint32; extern void uint32_pack(char *,uint32); extern void uint32_pack_big(char *,uint32); -extern void uint32_unpack(char *,uint32 *); -extern void uint32_unpack_big(char *,uint32 *); +extern void uint32_unpack(const char *,uint32 *); +extern void uint32_unpack_big(const char *,uint32 *); #endif --- a/uint32.h2 +++ b/uint32.h2 @@ -5,7 +5,7 @@ typedef unsigned long uint32; extern void uint32_pack(char *,uint32); extern void uint32_pack_big(char *,uint32); -extern void uint32_unpack(char *,uint32 *); -extern void uint32_unpack_big(char *,uint32 *); +extern void uint32_unpack(const char *,uint32 *); +extern void uint32_unpack_big(const char *,uint32 *); #endif --- a/uint32_unpack.c +++ b/uint32_unpack.c @@ -1,6 +1,6 @@ #include "uint32.h" -void uint32_unpack(char s[4],uint32 *u) +void uint32_unpack(const char s[4],uint32 *u) { uint32 result; @@ -15,7 +15,7 @@ void uint32_unpack(char s[4],uint32 *u) *u = result; } -void uint32_unpack_big(char s[4],uint32 *u) +void uint32_unpack_big(const char s[4],uint32 *u) { uint32 result;