diff options
Diffstat (limited to 'openwrt/package/busybox/patches/110-telnetd.patch')
-rw-r--r-- | openwrt/package/busybox/patches/110-telnetd.patch | 51 |
1 files changed, 0 insertions, 51 deletions
diff --git a/openwrt/package/busybox/patches/110-telnetd.patch b/openwrt/package/busybox/patches/110-telnetd.patch deleted file mode 100644 index f14143aa62..0000000000 --- a/openwrt/package/busybox/patches/110-telnetd.patch +++ /dev/null @@ -1,51 +0,0 @@ -diff -ur busybox-1.1.0/networking/telnetd.c busybox-1.1.0-owrt/networking/telnetd.c ---- busybox-1.1.0/networking/telnetd.c 2006-01-11 06:43:51.000000000 +0100 -+++ busybox-1.1.0-owrt/networking/telnetd.c 2006-01-14 17:41:20.000000000 +0100 -@@ -45,6 +45,7 @@ - #include <arpa/telnet.h> - #include <ctype.h> - #include <sys/syslog.h> -+#include <net/if.h> - - #include "busybox.h" - -@@ -394,11 +395,13 @@ - struct in_addr bind_addr = { .s_addr = 0x0 }; - #endif /* CONFIG_FEATURE_TELNETD_INETD */ - int c; -+ char *interface_name = NULL; -+ struct ifreq interface; - static const char options[] = - #ifdef CONFIG_FEATURE_TELNETD_INETD -- "f:l:"; -+ "i:f:l:"; - #else /* CONFIG_EATURE_TELNETD_INETD */ -- "f:l:p:b:"; -+ "i:f:l:p:b:"; - #endif /* CONFIG_FEATURE_TELNETD_INETD */ - int maxlen, w, r; - -@@ -413,6 +416,9 @@ - case 'f': - issuefile = optarg; - break; -+ case 'i': -+ interface_name = strdup(optarg); -+ break; - case 'l': - loginpath = optarg; - break; -@@ -465,6 +471,13 @@ - sa.sin_addr = bind_addr; - #endif - -+ /* Set it to listen on the specified interface */ -+ if (interface_name) { -+ strncpy(interface.ifr_ifrn.ifrn_name, interface_name, IFNAMSIZ); -+ (void)setsockopt(master_fd, SOL_SOCKET, -+ SO_BINDTODEVICE, &interface, sizeof(interface)); -+ } -+ - if (bind(master_fd, (struct sockaddr *) &sa, sizeof(sa)) < 0) { - bb_perror_msg_and_die("bind"); - } |