aboutsummaryrefslogtreecommitdiff
path: root/src/transport
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2011-11-04 13:50:14 +0000
committerChristian Grothoff <christian@grothoff.org>2011-11-04 13:50:14 +0000
commitacac5d115545c45196f27077769b9d84e75926f1 (patch)
tree0c68c4ca9a88b192e727f80db351ac4b882cf2e0 /src/transport
parent306ad1155edd9e459273a9fe23e4993f5d59e796 (diff)
downloadgnunet-acac5d115545c45196f27077769b9d84e75926f1.tar.gz
gnunet-acac5d115545c45196f27077769b9d84e75926f1.zip
parse earlier, check sscanf return value
Diffstat (limited to 'src/transport')
-rw-r--r--src/transport/gnunet_wlan_sender.c30
1 files changed, 21 insertions, 9 deletions
diff --git a/src/transport/gnunet_wlan_sender.c b/src/transport/gnunet_wlan_sender.c
index 2cac02cd8..89bfa0820 100644
--- a/src/transport/gnunet_wlan_sender.c
+++ b/src/transport/gnunet_wlan_sender.c
@@ -143,7 +143,27 @@ int main(int argc, char *argv[]){
143 fprintf(stderr, "Usage: interface-name mac-target mac-source\n" "e.g. mon0 11-22-33-44-55-66 12-34-56-78-90-ab\n"); 143 fprintf(stderr, "Usage: interface-name mac-target mac-source\n" "e.g. mon0 11-22-33-44-55-66 12-34-56-78-90-ab\n");
144 return 1; 144 return 1;
145 } 145 }
146 146 if (6 !=
147 sscanf(argv[3], "%x-%x-%x-%x-%x-%x", &temp[0],&temp[1],&temp[2],&temp[3],&temp[4],&temp[5]))
148 {
149 fprintf(stderr, "Usage: interface-name mac-target mac-source\n" "e.g. mon0 11-22-33-44-55-66 12-34-56-78-90-ab\n");
150 return 1;
151 }
152 if (6 !=
153 sscanf(argv[2], "%x-%x-%x-%x-%x-%x", &temp[0],&temp[1],&temp[2],&temp[3],&temp[4],&temp[5]))
154 {
155 fprintf(stderr, "Usage: interface-name mac-target mac-source\n" "e.g. mon0 11-22-33-44-55-66 12-34-56-78-90-ab\n");
156 return 1;
157 }
158 for (i = 0; i < 6; i++)
159 {
160 inmac[i] = temp[i];
161 }
162 for (i = 0; i < 6; i++)
163 {
164 outmac[i] = temp[i];
165 }
166
147 167
148 pid_t pid; 168 pid_t pid;
149 int commpipe[2]; /* This holds the fd for the input & output of the pipe */ 169 int commpipe[2]; /* This holds the fd for the input & output of the pipe */
@@ -165,14 +185,6 @@ int main(int argc, char *argv[]){
165 close(commpipe[0]); /* Close unused side of pipe (in side) */ 185 close(commpipe[0]); /* Close unused side of pipe (in side) */
166 setvbuf(stdout,(char*)NULL,_IONBF,0); /* Set non-buffered output on stdout */ 186 setvbuf(stdout,(char*)NULL,_IONBF,0); /* Set non-buffered output on stdout */
167 187
168 sscanf(argv[3], "%x-%x-%x-%x-%x-%x", &temp[0],&temp[1],&temp[2],&temp[3],&temp[4],&temp[5]);
169 for (i = 0; i < 6; i++){
170 inmac[i] = temp[i];
171 }
172 sscanf(argv[2], "%x-%x-%x-%x-%x-%x", &temp[0],&temp[1],&temp[2],&temp[3],&temp[4],&temp[5]);
173 for (i = 0; i < 6; i++){
174 outmac[i] = temp[i];
175 }
176 188
177 msg = (struct GNUNET_MessageHeader*) msg_buf; 189 msg = (struct GNUNET_MessageHeader*) msg_buf;
178 msg->type = htons (GNUNET_MESSAGE_TYPE_WLAN_HELPER_DATA); 190 msg->type = htons (GNUNET_MESSAGE_TYPE_WLAN_HELPER_DATA);