aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruss <russ@69ca8d6d-28ef-0310-b511-8ec308f3f277>2003-12-16 22:46:33 +0000
committerruss <russ@69ca8d6d-28ef-0310-b511-8ec308f3f277>2003-12-16 22:46:33 +0000
commitaa32f3591b34736256e312db6b8f7e54b70c7733 (patch)
tree0a0c71535cce58dd2b1091c8bdae3b88bd26555b
parent7167aaa0487a167e6e19d339d99949dc0d356b89 (diff)
downloadbusybox-w32-aa32f3591b34736256e312db6b8f7e54b70c7733.tar.gz
busybox-w32-aa32f3591b34736256e312db6b8f7e54b70c7733.tar.bz2
busybox-w32-aa32f3591b34736256e312db6b8f7e54b70c7733.zip
clean up some bad, bad formatting
git-svn-id: svn://busybox.net/trunk/busybox@8108 69ca8d6d-28ef-0310-b511-8ec308f3f277
-rw-r--r--networking/udhcp/files.c97
1 files changed, 49 insertions, 48 deletions
diff --git a/networking/udhcp/files.c b/networking/udhcp/files.c
index 5cb468378..f24f01cb6 100644
--- a/networking/udhcp/files.c
+++ b/networking/udhcp/files.c
@@ -71,83 +71,84 @@ static int read_yn(const char *line, void *arg)
71/* read a dhcp option and add it to opt_list */ 71/* read a dhcp option and add it to opt_list */
72static int read_opt(const char *const_line, void *arg) 72static int read_opt(const char *const_line, void *arg)
73{ 73{
74 char line[READ_CONFIG_BUF_SIZE]; 74 char line[READ_CONFIG_BUF_SIZE];
75 struct option_set **opt_list = arg; 75 struct option_set **opt_list = arg;
76 char *opt, *val, *endptr; 76 char *opt, *val, *endptr;
77 struct dhcp_option *option; 77 struct dhcp_option *option;
78 int retval = 0, length; 78 int retval = 0, length;
79 char buffer[256]; /* max opt length */ 79 char buffer[256]; /* max opt length */
80 u_int16_t result_u16; 80 u_int16_t result_u16;
81 u_int32_t result_u32; 81 u_int32_t result_u32;
82 void *valptr; 82 void *valptr;
83 83
84 if ((opt = strtok(strcpy(line, const_line), " \t="))) { 84 if (!(opt = strtok(strcpy(line, const_line), " \t="))) return 0;
85 85
86 for (option = dhcp_options; option->code; option++) 86 for (option = dhcp_options; option->code; option++)
87 if (!strcasecmp(option->name, opt)) 87 if (!strcasecmp(option->name, opt))
88 break; 88 break;
89 89
90 if (option->code) do { 90 if (!option->code) return 0;
91
92 do {
91 val = strtok(NULL, ", \t"); 93 val = strtok(NULL, ", \t");
92 if(!val) 94 if(!val)
93 break; 95 break;
94 length = option_lengths[option->flags & TYPE_MASK]; 96 length = option_lengths[option->flags & TYPE_MASK];
95 valptr = NULL; 97 valptr = NULL;
96 switch (option->flags & TYPE_MASK) { 98 switch (option->flags & TYPE_MASK) {
97 case OPTION_IP: 99 case OPTION_IP:
98 retval = read_ip(val, buffer); 100 retval = read_ip(val, buffer);
99 break; 101 break;
100 case OPTION_IP_PAIR: 102 case OPTION_IP_PAIR:
101 retval = read_ip(val, buffer); 103 retval = read_ip(val, buffer);
102 if (!(val = strtok(NULL, ", \t/-"))) retval = 0; 104 if (!(val = strtok(NULL, ", \t/-"))) retval = 0;
103 if (retval) retval = read_ip(val, buffer + 4); 105 if (retval) retval = read_ip(val, buffer + 4);
104 break; 106 break;
105 case OPTION_STRING: 107 case OPTION_STRING:
106 length = strlen(val); 108 length = strlen(val);
107 if (length > 0) { 109 if (length > 0) {
108 if (length > 254) length = 254; 110 if (length > 254) length = 254;
109 endptr = buffer + length; 111 endptr = buffer + length;
110 endptr[0] = 0; 112 endptr[0] = 0;
111 valptr = val; 113 valptr = val;
112 } 114 }
113 break; 115 break;
114 case OPTION_BOOLEAN: 116 case OPTION_BOOLEAN:
115 retval = read_yn(val, buffer); 117 retval = read_yn(val, buffer);
116 break; 118 break;
117 case OPTION_U8: 119 case OPTION_U8:
118 buffer[0] = strtoul(val, &endptr, 0); 120 buffer[0] = strtoul(val, &endptr, 0);
119 valptr = buffer; 121 valptr = buffer;
120 break; 122 break;
121 case OPTION_U16: 123 case OPTION_U16:
122 result_u16 = htons(strtoul(val, &endptr, 0)); 124 result_u16 = htons(strtoul(val, &endptr, 0));
123 valptr = &result_u16; 125 valptr = &result_u16;
124 break; 126 break;
125 case OPTION_S16: 127 case OPTION_S16:
126 result_u16 = htons(strtol(val, &endptr, 0)); 128 result_u16 = htons(strtol(val, &endptr, 0));
127 valptr = &result_u16; 129 valptr = &result_u16;
128 break; 130 break;
129 case OPTION_U32: 131 case OPTION_U32:
130 result_u32 = htonl(strtoul(val, &endptr, 0)); 132 result_u32 = htonl(strtoul(val, &endptr, 0));
131 valptr = &result_u32; 133 valptr = &result_u32;
132 break; 134 break;
133 case OPTION_S32: 135 case OPTION_S32:
134 result_u32 = htonl(strtol(val, &endptr, 0)); 136 result_u32 = htonl(strtol(val, &endptr, 0));
135 valptr = &result_u32; 137 valptr = &result_u32;
136 break; 138 break;
137 default: 139 default:
138 retval = 0; 140 retval = 0;
139 break; 141 break;
140 } 142 }
141 if(valptr) { 143 if (valptr) {
142 memcpy(buffer, valptr, length); 144 memcpy(buffer, valptr, length);
143 retval = (endptr[0] == '\0'); 145 retval = (endptr[0] == '\0');
144 } 146 }
145 if (retval) 147 if (retval)
146 attach_option(opt_list, option, buffer, length); 148 attach_option(opt_list, option, buffer, length);
147 else 149 else
148 break; 150 break;
149 } while (option->flags & OPTION_LIST); 151 } while (option->flags & OPTION_LIST);
150 }
151 return retval; 152 return retval;
152} 153}
153 154