aboutsummaryrefslogtreecommitdiff
path: root/networking/udhcp/socket.c
diff options
context:
space:
mode:
authorDenis Vlasenko <vda.linux@googlemail.com>2007-07-01 17:05:57 +0000
committerDenis Vlasenko <vda.linux@googlemail.com>2007-07-01 17:05:57 +0000
commitc82b5108e1a40f3b299043770e01d7d7db35de04 (patch)
tree35039a36868df644b8e5ffc766c1b0c921c88ab5 /networking/udhcp/socket.c
parentdc7a5eae36d31f5cfc301de2499329b8a03ea660 (diff)
downloadbusybox-w32-c82b5108e1a40f3b299043770e01d7d7db35de04.tar.gz
busybox-w32-c82b5108e1a40f3b299043770e01d7d7db35de04.tar.bz2
busybox-w32-c82b5108e1a40f3b299043770e01d7d7db35de04.zip
udhcp: new config option "Rewrite the lease file at every new acknowledge"
(Mats Erik Andersson <mats@blue2net.com> (Blue2Net AB)) udhcp: consistently treat server_config.start/end IPs as host-order fix IP parsing for 64bit machines fix unsafe hton macro usage in read_opt() do not chdir("/") when daemonizing fix help text
Diffstat (limited to 'networking/udhcp/socket.c')
-rw-r--r--networking/udhcp/socket.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/networking/udhcp/socket.c b/networking/udhcp/socket.c
index d294fb259..be5985f88 100644
--- a/networking/udhcp/socket.c
+++ b/networking/udhcp/socket.c
@@ -43,7 +43,7 @@ int read_interface(const char *interface, int *ifindex, uint32_t *addr, uint8_t
43 struct ifreq ifr; 43 struct ifreq ifr;
44 struct sockaddr_in *our_ip; 44 struct sockaddr_in *our_ip;
45 45
46 memset(&ifr, 0, sizeof(struct ifreq)); 46 memset(&ifr, 0, sizeof(ifr));
47 fd = socket(AF_INET, SOCK_RAW, IPPROTO_RAW); 47 fd = socket(AF_INET, SOCK_RAW, IPPROTO_RAW);
48 if (fd < 0) { 48 if (fd < 0) {
49 bb_perror_msg("socket failed"); 49 bb_perror_msg("socket failed");
@@ -54,7 +54,8 @@ int read_interface(const char *interface, int *ifindex, uint32_t *addr, uint8_t
54 strncpy(ifr.ifr_name, interface, sizeof(ifr.ifr_name)); 54 strncpy(ifr.ifr_name, interface, sizeof(ifr.ifr_name));
55 if (addr) { 55 if (addr) {
56 if (ioctl(fd, SIOCGIFADDR, &ifr) != 0) { 56 if (ioctl(fd, SIOCGIFADDR, &ifr) != 0) {
57 bb_perror_msg("SIOCGIFADDR failed, is the interface up and configured?"); 57 bb_perror_msg("SIOCGIFADDR failed (is interface %s "
58 "up and configured?)", interface);
58 close(fd); 59 close(fd);
59 return -1; 60 return -1;
60 } 61 }
@@ -117,7 +118,7 @@ int listen_socket(uint32_t ip, int port, const char *inf)
117 return -1; 118 return -1;
118 } 119 }
119 120
120 if (bind(fd, (struct sockaddr *)&addr, sizeof(struct sockaddr)) == -1) { 121 if (bind(fd, (struct sockaddr *)&addr, sizeof(addr)) == -1) {
121 close(fd); 122 close(fd);
122 return -1; 123 return -1;
123 } 124 }