--- linksys-tftp-1.2.1/main.c +++ linksys-tftp-1.2.1/main.c @@ -40,6 +40,10 @@ #include <setjmp.h> #include <ctype.h> #include <netdb.h> +#include <stdlib.h> +#include <string.h> +#include <unistd.h> +#include <sys/sendfile.h> #define TIMEOUT 5 /* secs between rexmt's */ @@ -110,7 +112,7 @@ char *index(); char *rindex(); -main(argc, argv) +int main(argc, argv) char *argv[]; { struct sockaddr_in sin; --- a/tftp.c +++ b/tftp.c @@ -36,8 +36,8 @@ #include <stdio.h> #include <errno.h> #include <setjmp.h> - -extern int errno; +#include <string.h> +#include <unistd.h> extern struct sockaddr_in sin; /* filled in by main */ extern int f; /* the opened socket */ @@ -69,16 +69,6 @@ void timer(int sig) longjmp(timeoutbuf, 1); } -strnlen(s, n) - char *s; - int n; -{ - int i = 0; - - while (n-- > 0 && *s++) i++; - return(i); -} - /* * Parse an OACK package and set blocksize accordingly */