void Udpserverhandler(void *param) { /*here gives the udp demo code*/ vTaskDelay(1000); printf("\n\rUdp server test"); udpserver(); #if defined(INCLUDE_uxTaskGetStackHighWaterMark) && (INCLUDE_uxTaskGetStackHighWaterMark == 1) printf("\n\rMin available stack size of %s = %d * %d bytes", __FUNCTION__, uxTaskGetStackHighWaterMark(NULL), sizeof(portBASE_TYPE)); #endif printf("\n\rUDP: udp client stopped!"); udpserver_task = NULL; vTaskDelete(NULL); }
int main(int argc, char* argv[]) { int ret; int isserv = 0; #ifdef _WIN32 WSADATA wsa_data; ret = WSAStartup(MAKEWORD(2,0), &wsa_data); ERROR_GOTO(ret != 0, "WSAStartup() failed", error); #endif while((ret = getopt(argc, argv, "hscv6")) != EOF) { switch(ret) { case '6': ipver = SOCK_IPV6; break; case 's': isserv = 1; break; case 'c': isserv = 0; break; case 'v': if(debug_level < 3) debug_level++; break; case 'h': /* fall through */ default: goto error; } } ret = 0; if(isserv) { if(argc - optind < 0) goto error; ret = udpserver(argc - optind, argv + optind); } else { if(argc - optind != 5 && argc - optind != 6 && argc - optind != 4) goto error; ret = udpclient(argc - optind, argv + optind); } #ifdef _WIN32 WSACleanup(); #endif return ret; error: usage(argv[0]); exit(1); }