Always cleanup winsock

This commit is contained in:
Joseph C. Lehner 2016-02-08 14:06:04 +01:00
parent e0cec73349
commit 8dc5b3164b

17
main.c
View file

@ -132,25 +132,30 @@ int main(int argc, char **argv)
break; break;
case 'V': case 'V':
printf("nmrp-flash v%s\n", NMRPD_VERSION); printf("nmrp-flash v%s\n", NMRPD_VERSION);
return 0; val = 0;
goto out;
case 'v': case 'v':
++verbosity; ++verbosity;
break; break;
case 'L': case 'L':
return ethsock_list_all(); val = ethsock_list_all();
goto out;
case 'h': case 'h':
usage(stdout); usage(stdout);
return 0; val = 0;
goto out;
#ifdef NMRPFLASH_TFTP_TEST #ifdef NMRPFLASH_TFTP_TEST
case 'U': case 'U':
if (args.ipaddr && args.filename) { if (args.ipaddr && args.filename) {
return tftp_put(&args); val = tftp_put(&args);
goto out;
} }
/* fall through */ /* fall through */
#endif #endif
default: default:
usage(stderr); usage(stderr);
return 1; val = 1;
goto out;
} }
} }
@ -167,6 +172,8 @@ int main(int argc, char **argv)
#endif #endif
val = nmrp_do(&args); val = nmrp_do(&args);
out:
#ifdef NMRPFLASH_WINDOWS #ifdef NMRPFLASH_WINDOWS
WSACleanup(); WSACleanup();
#endif #endif