atftp: fix invalid read in tftp_send_request.
authorDaniel Danzberger <redacted>
Wed, 4 Nov 2015 15:28:50 +0000 (16:28 +0100)
committerDaniel Danzberger <redacted>
Wed, 4 Nov 2015 15:28:50 +0000 (16:28 +0100)
This invalid read of 1 byte caused a segfault
on some arm platforms.

Signed-off-by: Daniel Danzberger <redacted>
net/atftp/Makefile
net/atftp/patches/02-fix-invalid-read-in-tftp_send_request.patch [new file with mode: 0644]

index d456edb5e718d4f7dace2eef5292d7dee3373b84..f538ba2a90f1c0d0a5ec04e38f6e996f24936641 100644 (file)
@@ -1,5 +1,5 @@
 #
-# Copyright (C) 2006-2014 OpenWrt.org
+# Copyright (C) 2006-2015 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=atftp
 PKG_VERSION:=0.7.1
-PKG_RELEASE:=3
+PKG_RELEASE:=4
 PKG_MAINTAINER:=Daniel Danzberger <daniel@dd-wrt.com>
 PKG_LICENSE:=GPL-2.0
 
diff --git a/net/atftp/patches/02-fix-invalid-read-in-tftp_send_request.patch b/net/atftp/patches/02-fix-invalid-read-in-tftp_send_request.patch
new file mode 100644 (file)
index 0000000..679af5c
--- /dev/null
@@ -0,0 +1,13 @@
+diff --git a/tftp_io.c b/tftp_io.c
+index 605a9c2..6cce1f4 100644
+--- a/tftp_io.c
++++ b/tftp_io.c
+@@ -64,7 +64,7 @@ int tftp_send_request(int socket, struct sockaddr_storage *sa, short type,
+      buf_index += strlen(mode);
+      buf_index++;
+      
+-     for (i = 2; ; i++)
++     for (i = 2; i < OPT_NUMBER; i++)
+      {
+           if (strlen(tftp_options[i].option) == 0)
+                break;
git clone https://git.99rst.org/PROJECT