From 23313e85678fa1f06277c49bad8aa116faa36bde Mon Sep 17 00:00:00 2001 From: David Lin Date: Sun, 12 Apr 2020 11:12:24 +0800 Subject: [PATCH] Update tcp_server.c Fixed a stackover flow bug. --- examples/tcp_udp_base_lwip/tcp_server/tcp_server.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/examples/tcp_udp_base_lwip/tcp_server/tcp_server.c b/examples/tcp_udp_base_lwip/tcp_server/tcp_server.c index a215d600..fe2f8427 100644 --- a/examples/tcp_udp_base_lwip/tcp_server/tcp_server.c +++ b/examples/tcp_udp_base_lwip/tcp_server/tcp_server.c @@ -46,10 +46,15 @@ void application_entry(void *arg) printf("accpet socket error: %s errno :%d\n",strerror(errno),errno); continue; } - + n = recv(connfd, buff, sizeof(buff), 0); - buff[n] = '\0'; - printf("recv(%d) msg from client:%s\n", ++cnt, buff); + if(n > 0) { + buff[n] = '\0'; + printf("recv(%d) msg from client:%s\n", ++cnt, buff); + } else { + printf("recv err(%d)\n", n); + } + if ((send(connfd, buff, strlen(buff), 0)) < 0) { printf("send msg error: %s errno : %d\n", strerror(errno), errno); break; @@ -59,4 +64,3 @@ void application_entry(void *arg) close(listenfd); } -