summaryrefslogtreecommitdiffstats
path: root/network/linksys-tftp/linksys-tftp-1.2.1-stdc-main.patch
blob: ff27a1bfb660b7872a80bab3e18a5eec41cae66c (plain)
--- linksys-tftp-1.2.1/main.c	2024-04-16 08:27:50.327449884 -0700
+++ linksys-tftp-1.2.1/main.c	2024-04-15 21:36:43.035399534 -0700
@@ -33,6 +33,7 @@ static char sccsid[] = "@(#)main.c	5.8 (
 #include <sys/file.h>
 
 #include <netinet/in.h>
+#include <arpa/inet.h>
 
 #include <signal.h>
 #include <stdio.h>
@@ -43,7 +44,11 @@ static char sccsid[] = "@(#)main.c	5.8 (
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
-#include <sys/sendfile.h>
+/* #include <sys/sendfile.h> */
+
+/* routines from tftp.c */
+extern void sendfile(int fd, char *name, char *mode, char *linkpass);
+extern void recvfile(int fd, char *name, char *mode, char *linkpass);
 
 #define	TIMEOUT		5		/* secs between rexmt's */
 
@@ -64,9 +69,13 @@ struct	servent *sp;
 
 int	segsize = 512;
 
-int	quit(), help(), setverbose(), settrace(), status();
-int     get(), put(), setpeer(), modecmd(), setrexmt(), settimeout();
-int     setbinary(), banner(), setascii(), setblocksize();
+/* local routines */
+int     quit(), help(), setverbose(), settrace(), status(), command();
+int     get(), getusage(), put(), putusage();
+int     setpeer(), modecmd(), setrexmt(), settimeout(), status();
+int     setbinary(),  setascii(); 
+void    setmode(), makeargv();
+int     setblocksize(), banner(); 
 
 #define HELPINDENT (sizeof("connect"))
 
@@ -114,8 +123,7 @@ struct	cmd *getcmd();
 char	*index();
 char	*rindex();
 
-int main(argc, argv)
-	char *argv[];
+int main(int argc, char *argv[])
 {
 	struct sockaddr_in sin;
 	int top;
@@ -147,13 +155,12 @@ int main(argc, argv)
 	top = setjmp(toplevel) == 0;
 	for (;;)
 		command(top);
+        return 0;
 }
 
 char    hostname[100];
 
-setpeer(argc, argv)
-	int argc;
-	char *argv[];
+int setpeer(int argc, char *argv[])
 {
 	struct hostent *host;
 
@@ -187,6 +194,7 @@ setpeer(argc, argv)
 		port = htons(port);
 	}
 	connected = 1;
+        return 0;
 }
 
 struct	modes {
@@ -201,8 +209,7 @@ struct	modes {
 	{ 0,		0 }
 };
 
-modecmd(argc, argv)
-	char *argv[];
+int modecmd(int argc, char *argv[])
 {
 	register struct modes *p;
 	char *sep;
@@ -234,18 +241,17 @@ modecmd(argc, argv)
 	return 0;
 }
 
-setbinary(argc, argv)
-char *argv[];
-{       setmode("octet");
+int setbinary(int argc, char *argv[])
+{
+        setmode("octet");
 }
 
-setascii(argc, argv)
-char *argv[];
-{       setmode("netascii");
-}
+int setascii(int argc, char *argv[])
+{
+        setmode("netascii");
+ }
 
-setmode(newmode)
-char *newmode;
+void setmode(char *newmode)
 {
 	strcpy(mode, newmode);
 	if (verbose)
@@ -256,8 +262,7 @@ char *newmode;
  * Send file(s).
  */
 
-put(argc, argv)
-	char *argv[];
+int put(int argc, char *argv[])
 {
 	int fd;
 	register int n;
@@ -286,8 +291,7 @@ put(argc, argv)
 		return 0;
 }
 
-putusage(s)
-	char *s;
+int putusage(char *s)
 {
 	printf("usage: %s file [linksys pass] (you must be connected)\n", s);
 	return 0;
@@ -296,8 +300,7 @@ putusage(s)
 /*
  * Receive file(s).
  */
-get(argc, argv)
-	char *argv[];
+int get(int argc, char *argv[])
 {
 	int fd;
 	register int n;
@@ -327,16 +330,15 @@ get(argc, argv)
 		return 0;
 }
 
-getusage(s)
-char * s;
+int getusage(char *s)
 {
 	printf("usage: %s file [linksys pass] (you must be connected)\n", s);
+        return 0;
 }
 
 int	rexmtval = TIMEOUT;
 
-setrexmt(argc, argv)
-	char *argv[];
+int setrexmt(int argc, char *argv[])
 {
 	int t;
 
@@ -357,12 +359,12 @@ setrexmt(argc, argv)
 		printf("%d: bad value\n", t);
 	else
 		rexmtval = t;
+        return 0;
 }
 
 int	maxtimeout = 5 * TIMEOUT;
 
-settimeout(argc, argv)
-	char *argv[];
+int settimeout(int argc, char *argv[])
 {
 	int t;
 
@@ -383,10 +385,10 @@ settimeout(argc, argv)
 		printf("%d: bad value\n", t);
 	else
 		maxtimeout = t;
+        return 0;
 }
 
-status(argc, argv)
-	char *argv[];
+int status(int argc, char *argv[])
 {
 	if (connected)
 		printf("Connected to %s.\n", hostname);
@@ -396,6 +398,7 @@ status(argc, argv)
 		verbose ? "on" : "off", trace ? "on" : "off");
 	printf("Rexmt-interval: %d seconds, Max-timeout: %d seconds\n",
 		rexmtval, maxtimeout);
+	return 0;
 }
 
 void intr(int sig)
@@ -408,8 +411,7 @@ void intr(int sig)
 /*
  * Command parser.
  */
-command(top)
-	int top;
+int command(int top)
 {
 	register struct cmd *c;
 
@@ -438,11 +440,10 @@ command(top)
 		}
 		(*c->handler)(margc, margv);
 	}
+        return 0;
 }
 
-struct cmd *
-getcmd(name)
-	register char *name;
+struct cmd *getcmd(register char *name)
 {
 	register char *p, *q;
 	register struct cmd *c, *found;
@@ -473,7 +474,7 @@ getcmd(name)
 /*
  * Slice a string up into argc/argv.
  */
-makeargv()
+void makeargv()
 {
 	register char *cp;
 	register char **argp = margv;
@@ -496,7 +497,7 @@ makeargv()
 }
 
 /*VARARGS*/
-quit()
+int quit()
 {
 	exit(0);
 }
@@ -504,9 +505,7 @@ quit()
 /*
  * Help command.
  */
-help(argc, argv)
-	int argc;
-	char *argv[];
+int help(int argc, char *argv[])
 {
 	register struct cmd *c;
 
@@ -527,24 +526,26 @@ help(argc, argv)
 		else
 			printf("%s\n", c->help);
 	}
+        return 0;
 }
 
 /*VARARGS*/
-settrace()
+int settrace()
 {
 	trace = !trace;
 	printf("Packet tracing %s.\n", trace ? "on" : "off");
+        return 0;
 }
 
 /*VARARGS*/
-setverbose()
+int setverbose()
 {
 	verbose = !verbose;
 	printf("Verbose mode %s.\n", verbose ? "on" : "off");
+        return 0;
 }
 
-setblocksize(argc, argv)
-	char *argv[];
+int setblocksize(int argc, char *argv[])
 {
 	int t;
 
@@ -565,8 +566,9 @@ setblocksize(argc, argv)
 		printf("%d: bad value\n", t);
 	else
 		segsize = t;
+        return 0;
 }
-banner() {
+int banner() {
 	printf("TJ Shelton\tredsand [at] redsand.net\n");
 	printf("Mike Lynn\tabaddon [at] 802.11ninja.net\n");
 	printf("Linksys TFTP Client for *BSD/Linux\tThe Firmware gets sexier\n");