import tftp-5.2-35.el9
This commit is contained in:
		
						commit
						1f26df1779
					
				
							
								
								
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1 @@
 | 
			
		||||
SOURCES/tftp-hpa-5.2.tar.bz2
 | 
			
		||||
							
								
								
									
										1
									
								
								.tftp.metadata
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								.tftp.metadata
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1 @@
 | 
			
		||||
e7879f0bdab1fc6f226db6f6f848d58f50548de4 SOURCES/tftp-hpa-5.2.tar.bz2
 | 
			
		||||
							
								
								
									
										19
									
								
								SOURCES/tftp-0.40-remap.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								SOURCES/tftp-0.40-remap.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,19 @@
 | 
			
		||||
diff -up tftp-hpa-0.49/tftpd/remap.c.zero tftp-hpa-0.49/tftpd/remap.c
 | 
			
		||||
--- tftp-hpa-0.49/tftpd/remap.c.zero	2008-10-20 18:08:31.000000000 -0400
 | 
			
		||||
+++ tftp-hpa-0.49/tftpd/remap.c	2008-11-25 11:41:09.000000000 -0500
 | 
			
		||||
@@ -286,6 +286,7 @@ struct rule *parserulefile(FILE * f)
 | 
			
		||||
     int lineno = 0;
 | 
			
		||||
     int err = 0;
 | 
			
		||||
 
 | 
			
		||||
+    memset(this_rule, '\0', sizeof(struct rule));
 | 
			
		||||
     while (lineno++, fgets(line, MAXLINE, f)) {
 | 
			
		||||
         rv = parseline(line, this_rule, lineno);
 | 
			
		||||
         if (rv < 0)
 | 
			
		||||
@@ -294,6 +295,7 @@ struct rule *parserulefile(FILE * f)
 | 
			
		||||
             *last_rule = this_rule;
 | 
			
		||||
             last_rule = &this_rule->next;
 | 
			
		||||
             this_rule = tfmalloc(sizeof(struct rule));
 | 
			
		||||
+            memset(this_rule, '\0', sizeof(struct rule));
 | 
			
		||||
         }
 | 
			
		||||
     }
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										54
									
								
								SOURCES/tftp-0.42-tftpboot.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								SOURCES/tftp-0.42-tftpboot.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,54 @@
 | 
			
		||||
diff -up tftp-hpa-0.48/tftp-xinetd.tftpboot tftp-hpa-0.48/tftp-xinetd
 | 
			
		||||
--- tftp-hpa-0.48/tftp-xinetd.tftpboot	2007-01-31 00:51:05.000000000 +0100
 | 
			
		||||
+++ tftp-hpa-0.48/tftp-xinetd	2008-05-20 12:05:53.000000000 +0200
 | 
			
		||||
@@ -10,7 +10,7 @@ service tftp
 | 
			
		||||
 	wait			= yes
 | 
			
		||||
 	user			= root
 | 
			
		||||
 	server			= /usr/sbin/in.tftpd
 | 
			
		||||
-	server_args		= -s /tftpboot
 | 
			
		||||
+	server_args		= -s /var/lib/tftpboot
 | 
			
		||||
 	disable			= yes
 | 
			
		||||
 	per_source		= 11
 | 
			
		||||
 	cps			= 100 2
 | 
			
		||||
diff -up tftp-hpa-0.48/README.security.tftpboot tftp-hpa-0.48/README.security
 | 
			
		||||
--- tftp-hpa-0.48/README.security.tftpboot	2008-05-29 17:36:32.000000000 +0200
 | 
			
		||||
+++ tftp-hpa-0.48/README.security	2008-05-29 17:37:21.000000000 +0200
 | 
			
		||||
@@ -17,10 +17,10 @@ probably the following:
 | 
			
		||||
 
 | 
			
		||||
 1. Create a separate "tftpd" user and group only used for tftpd;
 | 
			
		||||
 2. Have all your boot files in a single directory tree (usually called 
 | 
			
		||||
-   /tftpboot).
 | 
			
		||||
-3. Specify "-p -u tftpd -s /tftpboot" on the tftpd command line; if
 | 
			
		||||
+   /var/lib/tftpboot).
 | 
			
		||||
+3. Specify "-p -u tftpd -s /var/lib/tftpboot" on the tftpd command line; if
 | 
			
		||||
    you want clients to be able to create files use
 | 
			
		||||
-   "-p -c -U 002 -u tftpd -s /tftpboot" (replace 002 with whatever
 | 
			
		||||
+   "-p -c -U 002 -u tftpd -s /var/lib/tftpboot" (replace 002 with whatever
 | 
			
		||||
    umask is appropriate for your setup.)
 | 
			
		||||
 
 | 
			
		||||
 	       =======================================
 | 
			
		||||
@@ -40,12 +40,12 @@ directly.  Thus, if your /etc/inetd.conf
 | 
			
		||||
 line):
 | 
			
		||||
 
 | 
			
		||||
 tftp	dgram	udp	wait	root	/usr/sbin/tcpd
 | 
			
		||||
-/usr/sbin/in.tftpd -s /tftpboot -r blksize
 | 
			
		||||
+/usr/sbin/in.tftpd -s /var/lib/tftpboot -r blksize
 | 
			
		||||
 
 | 
			
		||||
 ... it's better to change to ...
 | 
			
		||||
 
 | 
			
		||||
 tftp	dgram	udp	wait	root	/usr/sbin/in.tftpd
 | 
			
		||||
-in.tftpd -s /tftpboot -r blksize
 | 
			
		||||
+in.tftpd -s /var/lib/tftpboot -r blksize
 | 
			
		||||
 
 | 
			
		||||
 You should make sure that you are using "wait" option in tftpd; you
 | 
			
		||||
 also need to have tftpd spawned as root in order for chroot (-s) to
 | 
			
		||||
diff -up tftp-hpa-0.48/tftpd/sample.rules.tftpboot tftp-hpa-0.48/tftpd/sample.rules
 | 
			
		||||
--- tftp-hpa-0.48/tftpd/sample.rules.tftpboot	2008-05-29 17:38:46.000000000 +0200
 | 
			
		||||
+++ tftp-hpa-0.48/tftpd/sample.rules	2008-05-29 17:38:05.000000000 +0200
 | 
			
		||||
@@ -30,5 +30,5 @@ rg	\\		/		# Convert backslashes to slash
 | 
			
		||||
 rg	\#		@		# Convert hash marks to @ signs
 | 
			
		||||
 rg	/../		/..no../	# Convert /../ to /..no../
 | 
			
		||||
 e	^ok/				# These are always ok
 | 
			
		||||
-r	^[^/]		/tftpboot/\0	# Convert non-absolute files
 | 
			
		||||
+r	^[^/]		/var/lib/tftpboot/\0	# Convert non-absolute files
 | 
			
		||||
 a	\.pvt$				# Reject requests for private files
 | 
			
		||||
							
								
								
									
										15
									
								
								SOURCES/tftp-0.49-chk_retcodes.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								SOURCES/tftp-0.49-chk_retcodes.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,15 @@
 | 
			
		||||
diff -up tftp-hpa-0.49/tftpd/tftpd.c.chk_retcodes tftp-hpa-0.49/tftpd/tftpd.c
 | 
			
		||||
--- tftp-hpa-0.49/tftpd/tftpd.c.chk_retcodes	2009-01-15 15:28:50.000000000 +0100
 | 
			
		||||
+++ tftp-hpa-0.49/tftpd/tftpd.c	2009-01-15 15:31:36.000000000 +0100
 | 
			
		||||
@@ -932,7 +932,10 @@ int main(int argc, char **argv)
 | 
			
		||||
             exit(EX_OSERR);
 | 
			
		||||
         }
 | 
			
		||||
 #ifdef __CYGWIN__
 | 
			
		||||
-        chdir("/");             /* Cygwin chroot() bug workaround */
 | 
			
		||||
+				if (chdir("/") < 0) {			/* Cygwin chroot() bug workaround */
 | 
			
		||||
+					syslog(LOG_ERR, "chroot: %m");
 | 
			
		||||
+					exit(EX_OSERR);
 | 
			
		||||
+				}
 | 
			
		||||
 #endif
 | 
			
		||||
     }
 | 
			
		||||
 #ifdef HAVE_SETREGID
 | 
			
		||||
							
								
								
									
										159
									
								
								SOURCES/tftp-0.49-cmd_arg.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										159
									
								
								SOURCES/tftp-0.49-cmd_arg.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,159 @@
 | 
			
		||||
diff -up tftp-hpa-0.49/config.h.cmd_arg tftp-hpa-0.49/config.h
 | 
			
		||||
--- tftp-hpa-0.49/config.h.cmd_arg	2010-04-19 15:29:10.567331454 +0200
 | 
			
		||||
+++ tftp-hpa-0.49/config.h	2010-04-20 07:33:03.133232772 +0200
 | 
			
		||||
@@ -291,6 +291,7 @@ typedef int socklen_t;
 | 
			
		||||
 /* Prototypes for libxtra functions */
 | 
			
		||||
 
 | 
			
		||||
 void *xmalloc(size_t);
 | 
			
		||||
+void *xrealloc(void *, size_t);
 | 
			
		||||
 char *xstrdup(const char *);
 | 
			
		||||
 
 | 
			
		||||
 #ifndef HAVE_BSD_SIGNAL
 | 
			
		||||
diff -up tftp-hpa-0.49/configure.in.cmd_arg tftp-hpa-0.49/configure.in
 | 
			
		||||
--- tftp-hpa-0.49/configure.in.cmd_arg	2008-10-21 00:08:31.000000000 +0200
 | 
			
		||||
+++ tftp-hpa-0.49/configure.in	2010-04-19 11:05:12.387340698 +0200
 | 
			
		||||
@@ -152,6 +152,7 @@ OBJROOT=`pwd`
 | 
			
		||||
 
 | 
			
		||||
 XTRA=false
 | 
			
		||||
 PA_SEARCH_LIBS_AND_ADD(xmalloc, iberty)
 | 
			
		||||
+PA_SEARCH_LIBS_AND_ADD(xrealloc, iberty)
 | 
			
		||||
 PA_SEARCH_LIBS_AND_ADD(xstrdup, iberty)
 | 
			
		||||
 PA_SEARCH_LIBS_AND_ADD(bsd_signal, bsd, bsdsignal)
 | 
			
		||||
 PA_SEARCH_LIBS_AND_ADD(getopt_long, getopt, getopt_long)
 | 
			
		||||
diff -up tftp-hpa-0.49/lib/xrealloc.c.cmd_arg tftp-hpa-0.49/lib/xrealloc.c
 | 
			
		||||
--- tftp-hpa-0.49/lib/xrealloc.c.cmd_arg	2010-04-19 11:05:12.387340698 +0200
 | 
			
		||||
+++ tftp-hpa-0.49/lib/xrealloc.c	2010-04-19 11:05:12.387340698 +0200
 | 
			
		||||
@@ -0,0 +1,20 @@
 | 
			
		||||
+/*
 | 
			
		||||
+ * xrealloc.c
 | 
			
		||||
+ *
 | 
			
		||||
+ * Simple error-checking version of realloc()
 | 
			
		||||
+ *
 | 
			
		||||
+ */
 | 
			
		||||
+
 | 
			
		||||
+#include "config.h"
 | 
			
		||||
+
 | 
			
		||||
+void *xrealloc(void *ptr, size_t size)
 | 
			
		||||
+{
 | 
			
		||||
+    void *p = realloc(ptr, size);
 | 
			
		||||
+
 | 
			
		||||
+    if (!p) {
 | 
			
		||||
+        fprintf(stderr, "Out of memory!\n");
 | 
			
		||||
+        exit(128);
 | 
			
		||||
+    }
 | 
			
		||||
+
 | 
			
		||||
+    return p;
 | 
			
		||||
+}
 | 
			
		||||
diff -up tftp-hpa-0.49/tftp/main.c.cmd_arg tftp-hpa-0.49/tftp/main.c
 | 
			
		||||
--- tftp-hpa-0.49/tftp/main.c.cmd_arg	2008-10-21 00:08:31.000000000 +0200
 | 
			
		||||
+++ tftp-hpa-0.49/tftp/main.c	2010-04-19 11:05:12.389329337 +0200
 | 
			
		||||
@@ -89,11 +89,14 @@ int connected;
 | 
			
		||||
 const struct modes *mode;
 | 
			
		||||
 #ifdef WITH_READLINE
 | 
			
		||||
 char *line = NULL;
 | 
			
		||||
+char *remote_pth = NULL;
 | 
			
		||||
 #else
 | 
			
		||||
 char line[LBUFLEN];
 | 
			
		||||
+char remote_pth[LBUFLEN];
 | 
			
		||||
 #endif
 | 
			
		||||
 int margc;
 | 
			
		||||
-char *margv[20];
 | 
			
		||||
+char **margv;
 | 
			
		||||
+int sizeof_margv=0;
 | 
			
		||||
 const char *prompt = "tftp> ";
 | 
			
		||||
 sigjmp_buf toplevel;
 | 
			
		||||
 void intr(int);
 | 
			
		||||
@@ -379,6 +382,10 @@ static void getmoreargs(const char *part
 | 
			
		||||
         free(line);
 | 
			
		||||
         line = NULL;
 | 
			
		||||
     }
 | 
			
		||||
+    if (remote_pth) {
 | 
			
		||||
+        free(remote_pth);
 | 
			
		||||
+        remote_pth = NULL;
 | 
			
		||||
+    }
 | 
			
		||||
     line = xmalloc(len + elen + 1);
 | 
			
		||||
     strcpy(line, partial);
 | 
			
		||||
     strcpy(line + len, eline);
 | 
			
		||||
@@ -535,6 +542,7 @@ void put(int argc, char *argv[])
 | 
			
		||||
     int fd;
 | 
			
		||||
     int n, err;
 | 
			
		||||
     char *cp, *targ;
 | 
			
		||||
+    long dirlen, namelen, lastlen=0;
 | 
			
		||||
 
 | 
			
		||||
     if (argc < 2) {
 | 
			
		||||
         getmoreargs("send ", "(file) ");
 | 
			
		||||
@@ -588,9 +596,22 @@ void put(int argc, char *argv[])
 | 
			
		||||
     }
 | 
			
		||||
     /* this assumes the target is a directory */
 | 
			
		||||
     /* on a remote unix system.  hmmmm.  */
 | 
			
		||||
-    cp = strchr(targ, '\0');
 | 
			
		||||
-    *cp++ = '/';
 | 
			
		||||
+    dirlen = strlen(targ)+1;
 | 
			
		||||
+#ifdef WITH_READLINE
 | 
			
		||||
+    remote_pth = xmalloc(dirlen+1);
 | 
			
		||||
+#endif
 | 
			
		||||
+    strcpy(remote_pth, targ);
 | 
			
		||||
+    remote_pth[dirlen-1] = '/';
 | 
			
		||||
+    cp = remote_pth + dirlen;
 | 
			
		||||
     for (n = 1; n < argc - 1; n++) {
 | 
			
		||||
+#ifdef WITH_READLINE
 | 
			
		||||
+        namelen = strlen(tail(argv[n])) + 1;
 | 
			
		||||
+        if (namelen > lastlen) {
 | 
			
		||||
+            remote_pth = xrealloc(remote_pth, dirlen + namelen + 1);
 | 
			
		||||
+            cp = remote_pth + dirlen;
 | 
			
		||||
+            lastlen = namelen;
 | 
			
		||||
+        }
 | 
			
		||||
+#endif
 | 
			
		||||
         strcpy(cp, tail(argv[n]));
 | 
			
		||||
         fd = open(argv[n], O_RDONLY | mode->m_openflags);
 | 
			
		||||
         if (fd < 0) {
 | 
			
		||||
@@ -600,9 +621,9 @@ void put(int argc, char *argv[])
 | 
			
		||||
         }
 | 
			
		||||
         if (verbose)
 | 
			
		||||
             printf("putting %s to %s:%s [%s]\n",
 | 
			
		||||
-                   argv[n], hostname, targ, mode->m_mode);
 | 
			
		||||
+                   argv[n], hostname, remote_pth, mode->m_mode);
 | 
			
		||||
         sa_set_port(&peeraddr, port);
 | 
			
		||||
-        tftp_sendfile(fd, targ, mode->m_mode);
 | 
			
		||||
+        tftp_sendfile(fd, remote_pth, mode->m_mode);
 | 
			
		||||
     }
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
@@ -801,6 +822,10 @@ static void command(void)
 | 
			
		||||
             free(line);
 | 
			
		||||
             line = NULL;
 | 
			
		||||
         }
 | 
			
		||||
+        if (remote_pth) {
 | 
			
		||||
+            free(remote_pth);
 | 
			
		||||
+            remote_pth = NULL;
 | 
			
		||||
+        }
 | 
			
		||||
         line = readline(prompt);
 | 
			
		||||
         if (!line)
 | 
			
		||||
             exit(0);            /* EOF */
 | 
			
		||||
@@ -872,7 +897,13 @@ struct cmd *getcmd(char *name)
 | 
			
		||||
 static void makeargv(void)
 | 
			
		||||
 {
 | 
			
		||||
     char *cp;
 | 
			
		||||
-    char **argp = margv;
 | 
			
		||||
+    char **argp;
 | 
			
		||||
+
 | 
			
		||||
+    if (!sizeof_margv) {
 | 
			
		||||
+        sizeof_margv = 20;
 | 
			
		||||
+        margv = xmalloc(sizeof_margv * sizeof(char *));
 | 
			
		||||
+    }
 | 
			
		||||
+    argp = margv;
 | 
			
		||||
 
 | 
			
		||||
     margc = 0;
 | 
			
		||||
     for (cp = line; *cp;) {
 | 
			
		||||
@@ -882,6 +913,11 @@ static void makeargv(void)
 | 
			
		||||
             break;
 | 
			
		||||
         *argp++ = cp;
 | 
			
		||||
         margc += 1;
 | 
			
		||||
+        if (margc == sizeof_margv) {
 | 
			
		||||
+            sizeof_margv += 20;
 | 
			
		||||
+            margv = xrealloc(margv, sizeof_margv * sizeof(char *));
 | 
			
		||||
+            argp = margv + margc;
 | 
			
		||||
+        }
 | 
			
		||||
         while (*cp != '\0' && !isspace(*cp))
 | 
			
		||||
             cp++;
 | 
			
		||||
         if (*cp == '\0')
 | 
			
		||||
							
								
								
									
										27
									
								
								SOURCES/tftp-doc.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								SOURCES/tftp-doc.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,27 @@
 | 
			
		||||
--- tftp-hpa-5.2/tftp/main.c	2013-04-19 09:34:09.737410319 +0200
 | 
			
		||||
+++ tftp-hpa-5.2/tftp/main.c	2013-04-19 09:42:53.559946374 +0200
 | 
			
		||||
@@ -195,9 +195,11 @@
 | 
			
		||||
 {
 | 
			
		||||
     fprintf(stderr,
 | 
			
		||||
 #ifdef HAVE_IPV6
 | 
			
		||||
-            "Usage: %s [-4][-6][-v][-l][-m mode] [host [port]] [-c command]\n",
 | 
			
		||||
+            "Usage: %s [-4][-6][-v][-V][-l][-m mode] [-R port:port] "
 | 
			
		||||
+			"[host [port]] [-c command]\n",
 | 
			
		||||
 #else
 | 
			
		||||
-            "Usage: %s [-v][-l][-m mode] [host [port]] [-c command]\n",
 | 
			
		||||
+            "Usage: %s [-v][-V][-l][-m mode] [-R port:port] "
 | 
			
		||||
+			"[host [port]] [-c command]\n",
 | 
			
		||||
 #endif
 | 
			
		||||
             program);
 | 
			
		||||
     exit(errcode);
 | 
			
		||||
--- tftp-hpa-5.2/tftpd/tftpd.8.in	2012-11-20 09:43:46.000000000 +0100
 | 
			
		||||
+++ tftp-hpa-5.2/tftpd/tftpd.8.in	2013-04-19 09:44:37.399057279 +0200
 | 
			
		||||
@@ -155,7 +155,7 @@
 | 
			
		||||
 .B utimeout
 | 
			
		||||
 option is negotiated.  The default is 1000000 (1 second.)
 | 
			
		||||
 .TP
 | 
			
		||||
-\fB\-\-mapfile\fP \fIremap-file\fP, \fB\-m\fP \fIremap-file\fP
 | 
			
		||||
+\fB\-\-map\-file\fP \fIremap-file\fP, \fB\-m\fP \fIremap-file\fP
 | 
			
		||||
 Specify the use of filename remapping.  The
 | 
			
		||||
 .I remap-file
 | 
			
		||||
 is a file containing the remapping rules.  See the section on filename
 | 
			
		||||
							
								
								
									
										84
									
								
								SOURCES/tftp-enhanced-logging.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										84
									
								
								SOURCES/tftp-enhanced-logging.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,84 @@
 | 
			
		||||
--- a/tftpd/tftpd.c	2016-03-02 11:32:30.710775130 +0100
 | 
			
		||||
+++ b/tftpd/tftpd.c	2016-03-02 11:36:24.086541019 +0100
 | 
			
		||||
@@ -1056,14 +1056,14 @@ int main(int argc, char **argv)
 | 
			
		||||
 
 | 
			
		||||
 static char *rewrite_access(char *, int, const char **);
 | 
			
		||||
 static int validate_access(char *, int, const struct formats *, const char **);
 | 
			
		||||
-static void tftp_sendfile(const struct formats *, struct tftphdr *, int);
 | 
			
		||||
+static void tftp_sendfile(const struct formats *, struct tftphdr *, int, char *);
 | 
			
		||||
 static void tftp_recvfile(const struct formats *, struct tftphdr *, int);
 | 
			
		||||
 
 | 
			
		||||
 struct formats {
 | 
			
		||||
     const char *f_mode;
 | 
			
		||||
     char *(*f_rewrite) (char *, int, const char **);
 | 
			
		||||
     int (*f_validate) (char *, int, const struct formats *, const char **);
 | 
			
		||||
-    void (*f_send) (const struct formats *, struct tftphdr *, int);
 | 
			
		||||
+    void (*f_send) (const struct formats *, struct tftphdr *, int, char *);
 | 
			
		||||
     void (*f_recv) (const struct formats *, struct tftphdr *, int);
 | 
			
		||||
     int f_convert;
 | 
			
		||||
 };
 | 
			
		||||
@@ -1129,6 +1129,9 @@ int tftp(struct tftphdr *tp, int size)
 | 
			
		||||
                 nak(EACCESS, errmsgptr);        /* File denied by mapping rule */
 | 
			
		||||
                 exit(0);
 | 
			
		||||
             }
 | 
			
		||||
+	    ecode =
 | 
			
		||||
+                (*pf->f_validate) (filename, tp_opcode, pf, &errmsgptr);
 | 
			
		||||
+
 | 
			
		||||
             if (verbosity >= 1) {
 | 
			
		||||
                 tmp_p = (char *)inet_ntop(from.sa.sa_family, SOCKADDR_P(&from),
 | 
			
		||||
                                           tmpbuf, INET6_ADDRSTRLEN);
 | 
			
		||||
@@ -1147,9 +1150,14 @@ int tftp(struct tftphdr *tp, int size)
 | 
			
		||||
                            tp_opcode == WRQ ? "WRQ" : "RRQ",
 | 
			
		||||
                            tmp_p, origfilename,
 | 
			
		||||
                            filename);
 | 
			
		||||
+
 | 
			
		||||
+                if (ecode == 1) {
 | 
			
		||||
+                    syslog(LOG_NOTICE, "Client %s File not found %s\n",
 | 
			
		||||
+                    tmp_p,filename);
 | 
			
		||||
+                }
 | 
			
		||||
+
 | 
			
		||||
             }
 | 
			
		||||
-            ecode =
 | 
			
		||||
-                (*pf->f_validate) (filename, tp_opcode, pf, &errmsgptr);
 | 
			
		||||
+
 | 
			
		||||
             if (ecode) {
 | 
			
		||||
                 nak(ecode, errmsgptr);
 | 
			
		||||
                 exit(0);
 | 
			
		||||
@@ -1172,12 +1180,12 @@ int tftp(struct tftphdr *tp, int size)
 | 
			
		||||
         if (tp_opcode == WRQ)
 | 
			
		||||
             (*pf->f_recv) (pf, (struct tftphdr *)ackbuf, ap - ackbuf);
 | 
			
		||||
         else
 | 
			
		||||
-            (*pf->f_send) (pf, (struct tftphdr *)ackbuf, ap - ackbuf);
 | 
			
		||||
+            (*pf->f_send) (pf, (struct tftphdr *)ackbuf, ap - ackbuf, origfilename);
 | 
			
		||||
     } else {
 | 
			
		||||
         if (tp_opcode == WRQ)
 | 
			
		||||
             (*pf->f_recv) (pf, NULL, 0);
 | 
			
		||||
         else
 | 
			
		||||
-            (*pf->f_send) (pf, NULL, 0);
 | 
			
		||||
+            (*pf->f_send) (pf, NULL, 0, origfilename);
 | 
			
		||||
     }
 | 
			
		||||
     exit(0);                    /* Request completed */
 | 
			
		||||
 }
 | 
			
		||||
@@ -1557,7 +1565,7 @@ static int validate_access(char *filenam
 | 
			
		||||
 /*
 | 
			
		||||
  * Send the requested file.
 | 
			
		||||
  */
 | 
			
		||||
-static void tftp_sendfile(const struct formats *pf, struct tftphdr *oap, int oacklen)
 | 
			
		||||
+static void tftp_sendfile(const struct formats *pf, struct tftphdr *oap, int oacklen, char *filename)
 | 
			
		||||
 {
 | 
			
		||||
     struct tftphdr *dp;
 | 
			
		||||
     struct tftphdr *ap;         /* ack packet */
 | 
			
		||||
@@ -1648,6 +1656,13 @@ static void tftp_sendfile(const struct f
 | 
			
		||||
 	if (!++block)
 | 
			
		||||
 	  block = rollover_val;
 | 
			
		||||
     } while (size == segsize);
 | 
			
		||||
+    tmp_p = (char *)inet_ntop(from.sa.sa_family, SOCKADDR_P(&from),
 | 
			
		||||
+                                          tmpbuf, INET6_ADDRSTRLEN);
 | 
			
		||||
+    if (!tmp_p) {
 | 
			
		||||
+            tmp_p = tmpbuf;
 | 
			
		||||
+            strcpy(tmpbuf, "???");
 | 
			
		||||
+    }
 | 
			
		||||
+    syslog(LOG_NOTICE, "Client %s finished %s",tmp_p,filename);
 | 
			
		||||
   abort:
 | 
			
		||||
     (void)fclose(file);
 | 
			
		||||
 }
 | 
			
		||||
							
								
								
									
										18
									
								
								SOURCES/tftp-hpa-0.39-tzfix.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								SOURCES/tftp-hpa-0.39-tzfix.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,18 @@
 | 
			
		||||
diff -up tftp-hpa-0.49/tftpd/tftpd.c.tzfix tftp-hpa-0.49/tftpd/tftpd.c
 | 
			
		||||
--- tftp-hpa-0.49/tftpd/tftpd.c.tzfix	2008-10-20 18:08:31.000000000 -0400
 | 
			
		||||
+++ tftp-hpa-0.49/tftpd/tftpd.c	2008-11-25 11:45:27.000000000 -0500
 | 
			
		||||
@@ -350,6 +350,14 @@ int main(int argc, char **argv)
 | 
			
		||||
     const char *pidfile = NULL;
 | 
			
		||||
     u_short tp_opcode;
 | 
			
		||||
 
 | 
			
		||||
+    time_t my_time = 0;
 | 
			
		||||
+    struct tm* p_tm;
 | 
			
		||||
+    char envtz[10];
 | 
			
		||||
+    my_time = time(NULL);
 | 
			
		||||
+    p_tm = localtime(&my_time);
 | 
			
		||||
+    snprintf(envtz, sizeof(envtz) - 1, "UTC%+d", (p_tm->tm_gmtoff * -1)/3600);
 | 
			
		||||
+    setenv("TZ", envtz, 0);
 | 
			
		||||
+
 | 
			
		||||
     /* basename() is way too much of a pain from a portability standpoint */
 | 
			
		||||
 
 | 
			
		||||
     p = strrchr(argv[0], '/');
 | 
			
		||||
							
								
								
									
										26
									
								
								SOURCES/tftp-hpa-0.49-fortify-strcpy-crash.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								SOURCES/tftp-hpa-0.49-fortify-strcpy-crash.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,26 @@
 | 
			
		||||
diff -urN tftp-hpa-0.49.orig/tftp/tftp.c tftp-hpa-0.49/tftp/tftp.c
 | 
			
		||||
--- tftp-hpa-0.49.orig/tftp/tftp.c	2008-10-20 18:08:31.000000000 -0400
 | 
			
		||||
+++ tftp-hpa-0.49/tftp/tftp.c	2009-08-05 09:47:18.072585848 -0400
 | 
			
		||||
@@ -279,15 +279,16 @@
 | 
			
		||||
             struct tftphdr *tp, const char *mode)
 | 
			
		||||
 {
 | 
			
		||||
     char *cp;
 | 
			
		||||
+    size_t len;
 | 
			
		||||
 
 | 
			
		||||
     tp->th_opcode = htons((u_short) request);
 | 
			
		||||
     cp = (char *)&(tp->th_stuff);
 | 
			
		||||
-    strcpy(cp, name);
 | 
			
		||||
-    cp += strlen(name);
 | 
			
		||||
-    *cp++ = '\0';
 | 
			
		||||
-    strcpy(cp, mode);
 | 
			
		||||
-    cp += strlen(mode);
 | 
			
		||||
-    *cp++ = '\0';
 | 
			
		||||
+    len = strlen(name) + 1;
 | 
			
		||||
+    memcpy(cp, name, len);
 | 
			
		||||
+    cp += len;
 | 
			
		||||
+    len = strlen(mode) + 1;
 | 
			
		||||
+    memcpy(cp, mode, len);
 | 
			
		||||
+    cp += len;
 | 
			
		||||
     return (cp - (char *)tp);
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										14
									
								
								SOURCES/tftp-hpa-0.49-stats.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								SOURCES/tftp-hpa-0.49-stats.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,14 @@
 | 
			
		||||
diff -up tftp-hpa-0.49/tftp/tftp.c.stats tftp-hpa-0.49/tftp/tftp.c
 | 
			
		||||
--- tftp-hpa-0.49/tftp/tftp.c.stats	2011-01-03 15:38:34.217918067 +0100
 | 
			
		||||
+++ tftp-hpa-0.49/tftp/tftp.c	2011-01-03 15:38:37.498917014 +0100
 | 
			
		||||
@@ -400,8 +400,8 @@ static void printstats(const char *direc
 | 
			
		||||
 {
 | 
			
		||||
     double delta;
 | 
			
		||||
 
 | 
			
		||||
-    delta = (tstop.tv_sec + (tstop.tv_usec / 100000.0)) -
 | 
			
		||||
-        (tstart.tv_sec + (tstart.tv_usec / 100000.0));
 | 
			
		||||
+    delta = (tstop.tv_sec + (tstop.tv_usec / 1000000.0)) -
 | 
			
		||||
+        (tstart.tv_sec + (tstart.tv_usec / 1000000.0));
 | 
			
		||||
     if (verbose) {
 | 
			
		||||
         printf("%s %lu bytes in %.1f seconds", direction, amount, delta);
 | 
			
		||||
         printf(" [%.0f bit/s]", (amount * 8.) / delta);
 | 
			
		||||
							
								
								
									
										12
									
								
								SOURCES/tftp-hpa-5.2-gcc10.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								SOURCES/tftp-hpa-5.2-gcc10.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,12 @@
 | 
			
		||||
diff -up tftp-hpa-5.2/tftp/tftp.c.gcc10 tftp-hpa-5.2/tftp/tftp.c
 | 
			
		||||
--- tftp-hpa-5.2/tftp/tftp.c.gcc10	2020-05-04 00:56:28.787896509 +0200
 | 
			
		||||
+++ tftp-hpa-5.2/tftp/tftp.c	2020-05-04 00:58:42.502901005 +0200
 | 
			
		||||
@@ -48,7 +48,7 @@ extern int maxtimeout;
 | 
			
		||||
 #define PKTSIZE    SEGSIZE+4
 | 
			
		||||
 char ackbuf[PKTSIZE];
 | 
			
		||||
 int timeout;
 | 
			
		||||
-sigjmp_buf toplevel;
 | 
			
		||||
+extern sigjmp_buf toplevel;
 | 
			
		||||
 sigjmp_buf timeoutbuf;
 | 
			
		||||
 
 | 
			
		||||
 static void nak(int, const char *);
 | 
			
		||||
							
								
								
									
										23
									
								
								SOURCES/tftp-hpa-5.2-pktinfo.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								SOURCES/tftp-hpa-5.2-pktinfo.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,23 @@
 | 
			
		||||
diff -up tftp-hpa-5.2/tftpd/recvfrom.c.test tftp-hpa-5.2/tftpd/recvfrom.c
 | 
			
		||||
--- tftp-hpa-5.2/tftpd/recvfrom.c.test	2011-12-11 23:13:52.000000000 +0100
 | 
			
		||||
+++ tftp-hpa-5.2/tftpd/recvfrom.c	2012-01-04 10:05:17.852042256 +0100
 | 
			
		||||
@@ -149,16 +149,16 @@ myrecvfrom(int s, void *buf, int len, un
 | 
			
		||||
 
 | 
			
		||||
     /* Try to enable getting the return address */
 | 
			
		||||
 #ifdef IP_RECVDSTADDR
 | 
			
		||||
-    if (from->sa_family == AF_INET)
 | 
			
		||||
+    if (from->sa_family == AF_INET || !from->sa_family)
 | 
			
		||||
         setsockopt(s, IPPROTO_IP, IP_RECVDSTADDR, &on, sizeof(on));
 | 
			
		||||
 #endif
 | 
			
		||||
 #ifdef IP_PKTINFO
 | 
			
		||||
-    if (from->sa_family == AF_INET)
 | 
			
		||||
+    if (from->sa_family == AF_INET || !from->sa_family)
 | 
			
		||||
         setsockopt(s, IPPROTO_IP, IP_PKTINFO, &on, sizeof(on));
 | 
			
		||||
 #endif
 | 
			
		||||
 #ifdef HAVE_IPV6
 | 
			
		||||
 #ifdef IPV6_RECVPKTINFO
 | 
			
		||||
-    if (from->sa_family == AF_INET6)
 | 
			
		||||
+    if (from->sa_family == AF_INET6 || !from->sa_family)
 | 
			
		||||
         setsockopt(s, IPPROTO_IPV6, IPV6_RECVPKTINFO, &on, sizeof(on));
 | 
			
		||||
 #endif
 | 
			
		||||
 #endif
 | 
			
		||||
							
								
								
									
										11
									
								
								SOURCES/tftp.service
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								SOURCES/tftp.service
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,11 @@
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=Tftp Server
 | 
			
		||||
Requires=tftp.socket
 | 
			
		||||
Documentation=man:in.tftpd
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
ExecStart=/usr/sbin/in.tftpd -s /var/lib/tftpboot
 | 
			
		||||
StandardInput=socket
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
Also=tftp.socket
 | 
			
		||||
							
								
								
									
										8
									
								
								SOURCES/tftp.socket
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								SOURCES/tftp.socket
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,8 @@
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=Tftp Server Activation Socket
 | 
			
		||||
 | 
			
		||||
[Socket]
 | 
			
		||||
ListenDatagram=69
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=sockets.target
 | 
			
		||||
							
								
								
									
										488
									
								
								SPECS/tftp.spec
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										488
									
								
								SPECS/tftp.spec
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,488 @@
 | 
			
		||||
%global systemctl_bin /usr/bin/systemctl
 | 
			
		||||
%global _hardened_build 1
 | 
			
		||||
 | 
			
		||||
Summary: The client for the Trivial File Transfer Protocol (TFTP)
 | 
			
		||||
Name: tftp
 | 
			
		||||
Version: 5.2
 | 
			
		||||
Release: 35%{?dist}
 | 
			
		||||
License: BSD
 | 
			
		||||
URL: http://www.kernel.org/pub/software/network/tftp/
 | 
			
		||||
Source0: http://www.kernel.org/pub/software/network/tftp/tftp-hpa/tftp-hpa-%{version}.tar.bz2
 | 
			
		||||
Source1: tftp.socket
 | 
			
		||||
Source2: tftp.service
 | 
			
		||||
 | 
			
		||||
Patch0: tftp-0.40-remap.patch
 | 
			
		||||
Patch2: tftp-hpa-0.39-tzfix.patch
 | 
			
		||||
Patch3: tftp-0.42-tftpboot.patch
 | 
			
		||||
Patch4: tftp-0.49-chk_retcodes.patch
 | 
			
		||||
Patch5: tftp-hpa-0.49-fortify-strcpy-crash.patch
 | 
			
		||||
Patch6: tftp-0.49-cmd_arg.patch
 | 
			
		||||
Patch7: tftp-hpa-0.49-stats.patch
 | 
			
		||||
Patch8: tftp-hpa-5.2-pktinfo.patch
 | 
			
		||||
Patch9: tftp-doc.patch
 | 
			
		||||
Patch10: tftp-enhanced-logging.patch
 | 
			
		||||
Patch11: tftp-hpa-5.2-gcc10.patch
 | 
			
		||||
 | 
			
		||||
BuildRequires: make
 | 
			
		||||
BuildRequires:  gcc
 | 
			
		||||
BuildRequires: readline-devel autoconf systemd-units
 | 
			
		||||
 | 
			
		||||
%description
 | 
			
		||||
The Trivial File Transfer Protocol (TFTP) is normally used only for
 | 
			
		||||
booting diskless workstations.  The tftp package provides the user
 | 
			
		||||
interface for TFTP, which allows users to transfer files to and from a
 | 
			
		||||
remote machine.  This program and TFTP provide very little security,
 | 
			
		||||
and should not be enabled unless it is expressly needed.
 | 
			
		||||
 | 
			
		||||
%package server
 | 
			
		||||
Summary: The server for the Trivial File Transfer Protocol (TFTP)
 | 
			
		||||
Requires: systemd-units
 | 
			
		||||
Requires(post): systemd-units
 | 
			
		||||
Requires(postun): systemd-units
 | 
			
		||||
 | 
			
		||||
%description server
 | 
			
		||||
The Trivial File Transfer Protocol (TFTP) is normally used only for
 | 
			
		||||
booting diskless workstations.  The tftp-server package provides the
 | 
			
		||||
server for TFTP, which allows users to transfer files to and from a
 | 
			
		||||
remote machine. TFTP provides very little security, and should not be
 | 
			
		||||
enabled unless it is expressly needed.  The TFTP server is run by using
 | 
			
		||||
systemd socket activation, and is disabled by default.
 | 
			
		||||
 | 
			
		||||
%prep
 | 
			
		||||
%setup -q -n tftp-hpa-%{version}
 | 
			
		||||
%patch0 -p1 -b .zero
 | 
			
		||||
%patch2 -p1 -b .tzfix
 | 
			
		||||
%patch3 -p1 -b .tftpboot
 | 
			
		||||
%patch4 -p1 -b .chk_retcodes
 | 
			
		||||
%patch5 -p1 -b .fortify-strcpy-crash
 | 
			
		||||
%patch6 -p1 -b .cmd_arg
 | 
			
		||||
%patch7 -p1 -b .stats
 | 
			
		||||
%patch8 -p1 -b .pktinfo
 | 
			
		||||
%patch9 -p1 -b .doc
 | 
			
		||||
%patch10 -p1 -b .logging
 | 
			
		||||
%patch11 -p1 -b .gcc10
 | 
			
		||||
 | 
			
		||||
%build
 | 
			
		||||
autoreconf
 | 
			
		||||
%configure
 | 
			
		||||
make %{?_smp_mflags}
 | 
			
		||||
 | 
			
		||||
%install
 | 
			
		||||
rm -rf ${RPM_BUILD_ROOT}
 | 
			
		||||
mkdir -p ${RPM_BUILD_ROOT}%{_bindir}
 | 
			
		||||
mkdir -p ${RPM_BUILD_ROOT}%{_mandir}/man{1,8}
 | 
			
		||||
mkdir -p ${RPM_BUILD_ROOT}%{_sbindir}
 | 
			
		||||
mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/lib/tftpboot
 | 
			
		||||
mkdir -p ${RPM_BUILD_ROOT}%{_unitdir}
 | 
			
		||||
 | 
			
		||||
make INSTALLROOT=${RPM_BUILD_ROOT} SBINDIR=%{_sbindir} MANDIR=%{_mandir} INSTALL='install -p' install
 | 
			
		||||
 | 
			
		||||
install -p -m 644 %SOURCE1 ${RPM_BUILD_ROOT}%{_unitdir}
 | 
			
		||||
install -p -m 644 %SOURCE2 ${RPM_BUILD_ROOT}%{_unitdir}
 | 
			
		||||
 | 
			
		||||
%post server
 | 
			
		||||
%systemd_post tftp.socket
 | 
			
		||||
 | 
			
		||||
%preun server
 | 
			
		||||
%systemd_preun tftp.socket
 | 
			
		||||
 | 
			
		||||
%postun server
 | 
			
		||||
%systemd_postun_with_restart tftp.socket
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
%files
 | 
			
		||||
%doc README README.security CHANGES
 | 
			
		||||
%{_bindir}/tftp
 | 
			
		||||
%{_mandir}/man1/*
 | 
			
		||||
 | 
			
		||||
%files server
 | 
			
		||||
%doc README README.security CHANGES
 | 
			
		||||
%dir %{_localstatedir}/lib/tftpboot
 | 
			
		||||
%{_sbindir}/in.tftpd
 | 
			
		||||
%{_mandir}/man8/*
 | 
			
		||||
%{_unitdir}/*
 | 
			
		||||
 | 
			
		||||
%changelog
 | 
			
		||||
* Thu Jan 27 2022 Lukáš Zaoral <lzaoral@redhat.com> - 5.2-35
 | 
			
		||||
- Rebuilt for fixed gating.yaml. Related rhbz#2042975
 | 
			
		||||
 | 
			
		||||
* Thu Jan 27 2022 Lukáš Zaoral <lzaoral@redhat.com> - 5.2-34
 | 
			
		||||
- Rebuilt for added gating.yaml. Related rhbz#2042975
 | 
			
		||||
 | 
			
		||||
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 5.2-33
 | 
			
		||||
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
 | 
			
		||||
 | 
			
		||||
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 5.2-32
 | 
			
		||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
 | 
			
		||||
 | 
			
		||||
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 5.2-31
 | 
			
		||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
 | 
			
		||||
 | 
			
		||||
* Sun May 03 2020 Dominik Mierzejewski <rpm@greysector.net> - 5.2-30
 | 
			
		||||
- fix build with gcc 10 (#1800195)
 | 
			
		||||
 | 
			
		||||
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 5.2-29
 | 
			
		||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
 | 
			
		||||
 | 
			
		||||
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 5.2-28
 | 
			
		||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
 | 
			
		||||
 | 
			
		||||
* Sun Feb 17 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 5.2-27
 | 
			
		||||
- Rebuild for readline 8.0
 | 
			
		||||
 | 
			
		||||
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 5.2-26
 | 
			
		||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
 | 
			
		||||
 | 
			
		||||
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 5.2-25
 | 
			
		||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
 | 
			
		||||
 | 
			
		||||
* Fri Feb 09 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 5.2-24
 | 
			
		||||
- Escape macros in %%changelog
 | 
			
		||||
 | 
			
		||||
* Mon Dec  4 2017 Jan Synáček <jsynacek@redhat.com> - 5.2-23
 | 
			
		||||
- remove build dependency on tcp_wrappers (#1518793)
 | 
			
		||||
 | 
			
		||||
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 5.2-22
 | 
			
		||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
 | 
			
		||||
 | 
			
		||||
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 5.2-21
 | 
			
		||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
 | 
			
		||||
 | 
			
		||||
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 5.2-20
 | 
			
		||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
 | 
			
		||||
 | 
			
		||||
* Thu Jan 12 2017 Igor Gnatenko <ignatenko@redhat.com> - 5.2-19
 | 
			
		||||
- Rebuild for readline 7.x
 | 
			
		||||
 | 
			
		||||
* Thu Mar  3 2016 Jan Synáček <jsynacek@redhat.com> - 5.2-18
 | 
			
		||||
- enhance in.tftpd logging capabilities
 | 
			
		||||
 | 
			
		||||
* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 5.2-17
 | 
			
		||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
 | 
			
		||||
 | 
			
		||||
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.2-16
 | 
			
		||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
 | 
			
		||||
 | 
			
		||||
* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.2-15
 | 
			
		||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
 | 
			
		||||
 | 
			
		||||
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.2-14
 | 
			
		||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
 | 
			
		||||
 | 
			
		||||
* Mon Feb 24 2014 Jan Synáček <jsynacek@redhat.com> - 5.2-13
 | 
			
		||||
- add documentation reference to the service file
 | 
			
		||||
 | 
			
		||||
* Wed Feb 19 2014 Jan Synáček <jsynacek@redhat.com> - 5.2-12
 | 
			
		||||
- start socket as well when starting the service
 | 
			
		||||
 | 
			
		||||
* Thu Feb 13 2014 Jan Synáček <jsynacek@redhat.com> - 5.2-11
 | 
			
		||||
- don't depend on xinetd anymore (#1059641)
 | 
			
		||||
 | 
			
		||||
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.2-10
 | 
			
		||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
 | 
			
		||||
 | 
			
		||||
* Tue Apr 23 2013 Jan Synáček <jsynacek@redhat.com> - 5.2-9
 | 
			
		||||
- harden the package (#955197)
 | 
			
		||||
 | 
			
		||||
* Fri Apr 19 2013 Jan Synáček <jsynacek@redhat.com> - 5.2-8
 | 
			
		||||
- documentation fixes
 | 
			
		||||
 | 
			
		||||
* Fri Feb 15 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.2-7
 | 
			
		||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
 | 
			
		||||
 | 
			
		||||
* Wed Aug 22 2012 Jan Synáček <jsynacek@redhat.com> - 5.2-6
 | 
			
		||||
- add systemd-rpm macros
 | 
			
		||||
- Resolves: #850338
 | 
			
		||||
 | 
			
		||||
* Sat Jul 21 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.2-5
 | 
			
		||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
 | 
			
		||||
 | 
			
		||||
* Thu Jul 19 2012 Jan Synáček <jsynacek@redhat.com> - 5.2.4
 | 
			
		||||
- make fedora-review-friendly
 | 
			
		||||
 | 
			
		||||
* Wed Jul 18 2012 Jan Synáček <jsynacek@redhat.com> - 5.2-4
 | 
			
		||||
- update spec: fix Source0
 | 
			
		||||
 | 
			
		||||
* Wed May 30 2012 Jan Synáček <jsynacek@redhat.com> - 5.2-4
 | 
			
		||||
- use systemd instead of xinetd as a default
 | 
			
		||||
 | 
			
		||||
* Tue May 22 2012 Jan Synáček <jsynacek@redhat.com> - 5.2-3
 | 
			
		||||
- provide native systemd service files
 | 
			
		||||
- Resolves: #737212
 | 
			
		||||
 | 
			
		||||
* Wed Jan 04 2012 Jiri Skala <jskala@redhat.com> - 5.2-2
 | 
			
		||||
- fixes #739534 - TFTP to an IP alias of FC15 tftp server failed
 | 
			
		||||
 | 
			
		||||
* Wed Dec 14 2011 Jiri Skala <jskala@redhat.com> - 5.2-1
 | 
			
		||||
- updated to latest upstream - 5.2
 | 
			
		||||
 | 
			
		||||
* Thu Oct 06 2011 Jiri Skala <jskala@redhat.com> - 5.1-1
 | 
			
		||||
- updated to latest upstream - 5.1
 | 
			
		||||
 | 
			
		||||
* Mon Jun 20 2011 Jiri Skala <jskala@redhat.com> - 0.49-9
 | 
			
		||||
- fixes #714261 - CVE-2011-2199: buffer overflow when setting utimeout option
 | 
			
		||||
 | 
			
		||||
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.49-8
 | 
			
		||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
 | 
			
		||||
 | 
			
		||||
* Mon Jan 03 2011 Jiri Skala <jskala@redhat.com> - 0.49-7
 | 
			
		||||
- fixes #666746 - Packaging mistake: confusing %%doc files patched+unpatched
 | 
			
		||||
- fixes printing statistics using -v option
 | 
			
		||||
 | 
			
		||||
* Fri May 28 2010 Jiri Skala <jskala@redhat.com> - 0.49-6
 | 
			
		||||
- patched handling arguments of commands (put)
 | 
			
		||||
 | 
			
		||||
* Wed Aug 05 2009 Warren Togami <wtogami@redhat.com> - 0.49-5
 | 
			
		||||
- Bug #515361 tftp FORTIFY_SOURCE strcpy crash 
 | 
			
		||||
 | 
			
		||||
* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.49-4
 | 
			
		||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
 | 
			
		||||
 | 
			
		||||
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.49-3
 | 
			
		||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
 | 
			
		||||
 | 
			
		||||
* Thu Jan 15 2009 Jiri Skala <jskala@redhat.com> - 0.49-2
 | 
			
		||||
- #473487 - unchecked return values
 | 
			
		||||
 | 
			
		||||
* Tue Nov 25 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 0.49-1
 | 
			
		||||
- update to 0.49
 | 
			
		||||
 | 
			
		||||
* Wed May 21 2008 Warren Togami <wtogami@redhat.com. - 0.48-6
 | 
			
		||||
- undo symlink stuff completely because they are problematic
 | 
			
		||||
  See Bug #447135 for details.
 | 
			
		||||
 | 
			
		||||
* Wed May 21 2008 Martin Nagy <mnagy@redhat.com> - 0.48-5
 | 
			
		||||
- fix troubles caused by added symlink
 | 
			
		||||
 | 
			
		||||
* Tue May 20 2008 Martin Nagy <mnagy@redhat.com> - 0.48-4
 | 
			
		||||
- add symlink to /var/lib/tftpboot
 | 
			
		||||
 | 
			
		||||
* Mon Mar 03 2008 Martin Nagy <mnagy@redhat.com> - 0.48-3
 | 
			
		||||
- changed description (#234099)
 | 
			
		||||
 | 
			
		||||
* Mon Feb 11 2008 Martin Nagy <mnagy@redhat.com> - 0.48-2
 | 
			
		||||
- rebuild for gcc-4.3
 | 
			
		||||
 | 
			
		||||
* Tue Jan 22 2008 Martin Nagy <mnagy@redhat.com> - 0.48-1
 | 
			
		||||
- upgrade to 0.48
 | 
			
		||||
- remove the old sigjmp patch (fixed in upstream)
 | 
			
		||||
- make some changes in spec file (#226489)
 | 
			
		||||
 | 
			
		||||
* Tue Jan 22 2008 Martin Nagy <mnagy@redhat.com> - 0.42-6
 | 
			
		||||
- changed the location of tftpboot directory to /var/lib/
 | 
			
		||||
 | 
			
		||||
* Fri Aug 31 2007 Maros Barabas <mbarabas@redhat.com> - 0.42-5
 | 
			
		||||
- rebuild
 | 
			
		||||
 | 
			
		||||
* Mon Feb 19 2007 Maros Barabas <mbarabas@redhat.com> - 0.42-4
 | 
			
		||||
- make some changes in spec file (review)
 | 
			
		||||
- Resolves #226489
 | 
			
		||||
 | 
			
		||||
* Mon Dec 04 2006 Maros Barabas <mbarabas@redhat.com> - 0.42-3.2
 | 
			
		||||
- change BuildRequires from tcp_wrappers to tcp_wrappers-devel
 | 
			
		||||
 | 
			
		||||
* Wed Jul 12 2006 Jesse Keating <jkeating@redhat.com> - 0.42-3.1
 | 
			
		||||
- rebuild
 | 
			
		||||
 | 
			
		||||
* Mon Apr 10 2006 Radek Vokál <rvokal@redhat.com> 0.42-3
 | 
			
		||||
- show localtime instead of GMT (#172274)
 | 
			
		||||
 | 
			
		||||
* Wed Mar 22 2006 Radek Vokál <rvokal@redhat.com> 0.42-2
 | 
			
		||||
- fix double free error when hitting ^C (#186201)
 | 
			
		||||
 | 
			
		||||
* Wed Feb 22 2006 Radek Vokál <rvokal@redhat.com> 0.42-1
 | 
			
		||||
- upgrade to 0.42
 | 
			
		||||
 | 
			
		||||
* Fri Feb 10 2006 Jesse Keating <jkeating@redhat.com> - 0.41-1.2.1
 | 
			
		||||
- bump again for double-long bug on ppc(64)
 | 
			
		||||
 | 
			
		||||
* Tue Feb 07 2006 Jesse Keating <jkeating@redhat.com> - 0.41-1.2
 | 
			
		||||
- rebuilt for new gcc4.1 snapshot and glibc changes
 | 
			
		||||
 | 
			
		||||
* Fri Dec 09 2005 Jesse Keating <jkeating@redhat.com>
 | 
			
		||||
- rebuilt
 | 
			
		||||
 | 
			
		||||
* Thu Nov 03 2005 Radek Vokal <rvokal@redhat.com> 0.41-1
 | 
			
		||||
- upstream update (patterns fixes)
 | 
			
		||||
 | 
			
		||||
* Tue Apr 19 2005 Radek Vokal <rvokal@redhat.com> 0.40-6
 | 
			
		||||
- fix remap rules convert error <pjones@redhat.com>
 | 
			
		||||
 | 
			
		||||
* Wed Mar 23 2005 Radek Vokal <rvokal@redhat.com> 0.40-5
 | 
			
		||||
- use tftp-xinetd from tarball (#143589)
 | 
			
		||||
 | 
			
		||||
* Fri Mar 04 2005 Radek Vokal <rvokal@redhat.com> 0.40-4
 | 
			
		||||
- gcc4 rebuilt
 | 
			
		||||
 | 
			
		||||
* Sun Feb 27 2005 Florian La Roche <laroche@redhat.com>
 | 
			
		||||
- Copyright: -> License
 | 
			
		||||
 | 
			
		||||
* Wed Jan 12 2005 Tim Waugh <twaugh@redhat.com> 0.40-2
 | 
			
		||||
- Rebuilt for new readline.
 | 
			
		||||
 | 
			
		||||
* Mon Nov 15 2004 Radek Vokal <rvokal@redhat.com> 0.40-1
 | 
			
		||||
- Update to new upstream version, fixes #139328
 | 
			
		||||
 | 
			
		||||
* Mon Sep 13 2004 Elliot Lee <sopwith@redhat.com> 0.39-1
 | 
			
		||||
- Update to new version makes tftp work, says upstream.
 | 
			
		||||
- Remove malta patch
 | 
			
		||||
 | 
			
		||||
* Mon Sep 13 2004 Elliot Lee <sopwith@redhat.com> 0.38-1
 | 
			
		||||
- Update to new version fixes #131736
 | 
			
		||||
 | 
			
		||||
* Tue Jun 15 2004 Elliot Lee <sopwith@redhat.com>
 | 
			
		||||
- rebuilt
 | 
			
		||||
 | 
			
		||||
* Thu Jun 03 2004 Elliot Lee <sopwith@redhat.com> 0.36-1
 | 
			
		||||
- Update version
 | 
			
		||||
 | 
			
		||||
* Fri Feb 13 2004 Elliot Lee <sopwith@redhat.com>
 | 
			
		||||
- rebuilt
 | 
			
		||||
 | 
			
		||||
* Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com>
 | 
			
		||||
- rebuilt
 | 
			
		||||
 | 
			
		||||
* Fri Apr 11 2003 Elliot Lee <sopwith@redhat.com>
 | 
			
		||||
- 0.33
 | 
			
		||||
- Add /tftpboot directory (#88204)
 | 
			
		||||
 | 
			
		||||
* Mon Feb 24 2003 Elliot Lee <sopwith@redhat.com>
 | 
			
		||||
- rebuilt
 | 
			
		||||
 | 
			
		||||
* Sun Feb 23 2003 Tim Powers <timp@redhat.com>
 | 
			
		||||
- add BuildPreReq on tcp_wrappers
 | 
			
		||||
 | 
			
		||||
* Wed Jan 22 2003 Tim Powers <timp@redhat.com>
 | 
			
		||||
- rebuilt
 | 
			
		||||
 | 
			
		||||
* Mon Nov 11 2002 Elliot Lee <sopwith@redhat.com> 0.32-1
 | 
			
		||||
- Update to 0.32
 | 
			
		||||
 | 
			
		||||
* Wed Oct 23 2002 Elliot Lee <sopwith@redhat.com> 0.30-1
 | 
			
		||||
- Fix #55789
 | 
			
		||||
- Update to 0.30
 | 
			
		||||
 | 
			
		||||
* Thu Jun 27 2002 Elliot Lee <sopwith@redhat.com>
 | 
			
		||||
- Try applying HJ's patch from #65476
 | 
			
		||||
 | 
			
		||||
* Fri Jun 21 2002 Tim Powers <timp@redhat.com>
 | 
			
		||||
- automated rebuild
 | 
			
		||||
 | 
			
		||||
* Mon Jun 17 2002 Elliot Lee <sopwith@redhat.com>
 | 
			
		||||
- Update to 0.29
 | 
			
		||||
 | 
			
		||||
* Thu May 23 2002 Tim Powers <timp@redhat.com>
 | 
			
		||||
- automated rebuild
 | 
			
		||||
 | 
			
		||||
* Wed Jan 09 2002 Tim Powers <timp@redhat.com>
 | 
			
		||||
- automated rebuild
 | 
			
		||||
 | 
			
		||||
* Tue Dec 18 2001 Elliot Lee <sopwith@redhat.com> 0.17-15
 | 
			
		||||
- Add patch4: netkit-tftp-0.17-defaultport.patch for bug #57562
 | 
			
		||||
- Update to tftp-hpa-0.28 (bug #56131)
 | 
			
		||||
- Remove include/arpa/tftp.h to fix #57259
 | 
			
		||||
- Add resource limits in tftp-xinetd (#56722)
 | 
			
		||||
 | 
			
		||||
* Sun Jun 24 2001 Elliot Lee <sopwith@redhat.com>
 | 
			
		||||
- Bump release + rebuild.
 | 
			
		||||
 | 
			
		||||
* Tue Jun 12 2001 Helge Deller <hdeller@redhat.de> (0.17-13)
 | 
			
		||||
- updated tftp-hpa source to tftp-hpa-0.17
 | 
			
		||||
- tweaked specfile with different defines for tftp-netkit and tftp-hpa version
 | 
			
		||||
- use hpa's tftpd.8 man page instead of the netkits one
 | 
			
		||||
 | 
			
		||||
* Mon May 07 2001 Helge Deller <hdeller@redhat.de>
 | 
			
		||||
- rebuilt in 7.1.x
 | 
			
		||||
 | 
			
		||||
* Wed Apr 18 2001 Helge Deller <hdeller@redhat.de>
 | 
			
		||||
- fix tftp client's put problems (#29529)
 | 
			
		||||
- update to tftp-hpa-0.16
 | 
			
		||||
 | 
			
		||||
* Wed Apr  4 2001 Jakub Jelinek <jakub@redhat.com>
 | 
			
		||||
- don't let configure to guess compiler, it can pick up egcs
 | 
			
		||||
 | 
			
		||||
* Thu Feb 08 2001 Helge Deller <hdeller@redhat.de>
 | 
			
		||||
- changed "wait" in xinetd file to "yes" (hpa-tftpd forks and exits) (#26467)
 | 
			
		||||
- fixed hpa-tftpd to handle files greater than 32MB (#23725)
 | 
			
		||||
- added "-l" flag to hpa-tftpd for file-logging (#26467)
 | 
			
		||||
- added description for "-l" to the man-page 
 | 
			
		||||
 | 
			
		||||
* Thu Feb 08 2001 Helge Deller <hdeller@redhat.de>
 | 
			
		||||
- updated tftp client to 0.17 stable (#19640),
 | 
			
		||||
- drop dependency on xinetd for tftp client (#25051),
 | 
			
		||||
 | 
			
		||||
* Wed Jan 17 2001 Jeff Johnson <jbj@redhat.com>
 | 
			
		||||
- xinetd shouldn't wait on tftp (which forks) (#23923).
 | 
			
		||||
 | 
			
		||||
* Sat Jan  6 2001 Jeff Johnson <jbj@redhat.com>
 | 
			
		||||
- fix to permit tftp put's (#18128).
 | 
			
		||||
- startup as root with chroot to /tftpboot with early reversion to nobody
 | 
			
		||||
  is preferable to starting as nobody w/o ability to chroot.
 | 
			
		||||
- %%post is needed by server, not client. Add %%postun for erasure as well.
 | 
			
		||||
 | 
			
		||||
* Wed Aug 23 2000 Nalin Dahyabhai <nalin@redhat.com>
 | 
			
		||||
- default to being disabled
 | 
			
		||||
 | 
			
		||||
* Thu Aug 17 2000 Jeff Johnson <jbj@redhat.com>
 | 
			
		||||
- correct group.
 | 
			
		||||
 | 
			
		||||
* Tue Jul 25 2000 Nalin Dahyabhai <nalin@redhat.com>
 | 
			
		||||
- change user from root to nobody
 | 
			
		||||
 | 
			
		||||
* Sat Jul 22 2000 Jeff Johnson <jbj@redhat.com>
 | 
			
		||||
- update to tftp-hpa-0.14 (#14003).
 | 
			
		||||
- add server_args (#14003).
 | 
			
		||||
- remove -D_BSD_SOURCE (#14003).
 | 
			
		||||
 | 
			
		||||
* Fri Jul 21 2000 Nalin Dahyabhai <nalin@redhat.com>
 | 
			
		||||
- cook up an xinetd config file for tftpd
 | 
			
		||||
 | 
			
		||||
* Wed Jul 12 2000 Prospector <bugzilla@redhat.com>
 | 
			
		||||
- automatic rebuild
 | 
			
		||||
 | 
			
		||||
* Sun Jun 18 2000 Jeff Johnson <jbj@redhat.com>
 | 
			
		||||
- FHS packaging.
 | 
			
		||||
- update to 0.17.
 | 
			
		||||
 | 
			
		||||
* Fri May  5 2000 Matt Wilson <msw@redhat.com>
 | 
			
		||||
- use _BSD_SOURCE for hpa's tftpd so we get BSD signal semantics.
 | 
			
		||||
 | 
			
		||||
* Fri Feb 11 2000 Bill Nottingham <notting@redhat.com>
 | 
			
		||||
- fix description
 | 
			
		||||
 | 
			
		||||
* Wed Feb  9 2000 Jeff Johnson <jbj@redhat.com>
 | 
			
		||||
- compress man pages (again).
 | 
			
		||||
 | 
			
		||||
* Wed Feb 02 2000 Cristian Gafton <gafton@redhat.com>
 | 
			
		||||
- man pages are compressed
 | 
			
		||||
- fix description and summary
 | 
			
		||||
 | 
			
		||||
* Tue Jan  4 2000 Bill Nottingham <notting@redhat.com>
 | 
			
		||||
- split client and server
 | 
			
		||||
 | 
			
		||||
* Tue Dec 21 1999 Jeff Johnson <jbj@redhat.com>
 | 
			
		||||
- update to 0.16.
 | 
			
		||||
 | 
			
		||||
* Sat Aug 28 1999 Jeff Johnson <jbj@redhat.com>
 | 
			
		||||
- update to 0.15.
 | 
			
		||||
 | 
			
		||||
* Wed Apr  7 1999 Jeff Johnson <jbj@redhat.com>
 | 
			
		||||
- tftpd should truncate file when overwriting (#412)
 | 
			
		||||
 | 
			
		||||
* Sun Mar 21 1999 Cristian Gafton <gafton@redhat.com> 
 | 
			
		||||
- auto rebuild in the new build environment (release 22)
 | 
			
		||||
 | 
			
		||||
* Mon Mar 15 1999 Jeff Johnson <jbj@redhat.com>
 | 
			
		||||
- compile for 6.0.
 | 
			
		||||
 | 
			
		||||
* Fri Aug  7 1998 Jeff Johnson <jbj@redhat.com>
 | 
			
		||||
- build root
 | 
			
		||||
 | 
			
		||||
* Mon Apr 27 1998 Prospector System <bugs@redhat.com>
 | 
			
		||||
- translations modified for de, fr, tr
 | 
			
		||||
 | 
			
		||||
* Mon Sep 22 1997 Erik Troan <ewt@redhat.com>
 | 
			
		||||
- added check for getpwnam() failure
 | 
			
		||||
 | 
			
		||||
* Tue Jul 15 1997 Erik Troan <ewt@redhat.com>
 | 
			
		||||
- initial build
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user