3 @@ -187,6 +187,17 @@ static void sighandler(int signum) {
4 signal(signum, SIG_DFL);
7 +// Waits for nonzero MAC
8 +static void get_nonzero_mac(u8_t mac[], u32_t timeout_ms) {
9 + u32_t wait_timeout = gettime_ms() + timeout_ms;
12 + if ((mac[0]+mac[1]+mac[2]+mac[3]+mac[4]+mac[5]) != 0) {
15 + }while(wait_timeout > gettime_ms());
18 int main(int argc, char **argv) {
20 char *output_device = "default";
21 @@ -240,7 +251,8 @@ int main(int argc, char **argv) {
22 #define MAXCMDLINE 512
23 char cmdline[MAXCMDLINE] = "";
26 + // Waits for nonzero MAC
27 + get_nonzero_mac(mac,10000);
29 for (i = 0; i < argc && (strlen(argv[i]) + strlen(cmdline) + 2 < MAXCMDLINE); i++) {
30 strcat(cmdline, argv[i]);