From 62ccddbe4abfea9883737d79772d4e8d1084f6b5 Mon Sep 17 00:00:00 2001
From: wangzhengquan <wangzhengquan85@126.com>
Date: 星期三, 03 二月 2021 17:12:51 +0800
Subject: [PATCH] update

---
 test_net_socket/CMakeLists.txt          |    5 +-
 test_net_socket/test_recvandsend.cpp    |   49 ++++++++++++++++++++++++
 test_net_socket/test_net_mod_socket.cpp |    4 --
 src/socket/shm_socket.cpp               |    7 +--
 4 files changed, 55 insertions(+), 10 deletions(-)

diff --git a/src/socket/shm_socket.cpp b/src/socket/shm_socket.cpp
index bddcec0..bee4622 100644
--- a/src/socket/shm_socket.cpp
+++ b/src/socket/shm_socket.cpp
@@ -262,10 +262,9 @@
   if (rv != 0) {
     if(rv == ETIMEDOUT)
       return EBUS_TIMEOUT;
-    else {
-      logger->debug("%d shm_recvfrom failed %s", shm_socket_get_key(sockt), bus_strerror(rv));
-      return rv;
-    }
+    
+    logger->debug("%d shm_recvfrom failed %s", shm_socket_get_key(sockt), bus_strerror(rv));
+    return rv;
   }
    
   if(recvbuf != NULL) {
diff --git a/test_net_socket/CMakeLists.txt b/test_net_socket/CMakeLists.txt
index 0c543ef..54e13e9 100644
--- a/test_net_socket/CMakeLists.txt
+++ b/test_net_socket/CMakeLists.txt
@@ -11,8 +11,6 @@
 target_link_libraries(test_net_mod_socket PRIVATE shm_queue  ${EXTRA_LIBS} )
 
 
-
-
 add_executable(test_bus_stop test_bus_stop.cpp)
 target_link_libraries(test_bus_stop PRIVATE shm_queue  ${EXTRA_LIBS} )
 
@@ -26,6 +24,9 @@
                             )
 
 
+add_executable(test_recvandsend test_recvandsend.cpp)
+target_link_libraries(test_recvandsend PRIVATE shm_queue  ${EXTRA_LIBS} )
+
 
 target_include_directories(test_net_mod_socket PRIVATE
                             "${PROJECT_BINARY_DIR}"
diff --git a/test_net_socket/test_net_mod_socket.cpp b/test_net_socket/test_net_mod_socket.cpp
index 568392d..2c69151 100644
--- a/test_net_socket/test_net_mod_socket.cpp
+++ b/test_net_socket/test_net_mod_socket.cpp
@@ -506,10 +506,6 @@
 }
 
 
-
-
-
-
 int main(int argc, char *argv[]) {
 	shm_mm_wrapper_init(512);
  
diff --git a/test_net_socket/test_recvandsend.cpp b/test_net_socket/test_recvandsend.cpp
new file mode 100644
index 0000000..2211a4e
--- /dev/null
+++ b/test_net_socket/test_recvandsend.cpp
@@ -0,0 +1,49 @@
+#include <assert.h>
+#include "net_mod_server_socket_wrapper.h"
+#include "net_mod_socket_wrapper.h"
+#include "bus_server_socket_wrapper.h"
+
+#include "shm_mm_wrapper.h"
+#include "usg_common.h"
+#include <getopt.h>
+#include "logger_factory.h"
+
+
+
+void sendback(void ** buf, int *size){
+	  char sendbuf[512];
+    printf( "server: RECEIVED REQUEST FROM \n ");
+    sprintf(sendbuf, "RECEIVED REQUEST \n");
+    // buf 鍜� size鏄繑鍥炲��
+    *buf = sendbuf;
+    *size = strlen(sendbuf) + 1;
+    return;
+}
+
+void start_reply(int mkey) {
+  printf("start reply\n");
+  void *ser = net_mod_socket_open();
+  net_mod_socket_bind(ser, mkey);
+  int recvsize;
+  void *recvbuf;
+ 
+  int rv;
+  int key;
+  while(true) {
+    rv = net_mod_socket_recvandsend_timeout(ser, &recvbuf, &recvsize, &key, sendback, 2, 2000000 );
+    if(rv == 0)
+    	free(recvbuf);
+  }
+  // while ( (rv = net_mod_socket_recvfrom(ser, &recvbuf, &size, &key) ) == 0) {
+  //  // printf( "server: RECEIVED REQUEST FROM  %d NAME %s\n", key, recvbuf);
+  //   sprintf(sendbuf, "%d RECEIVED %s", net_mod_socket_get_key(ser), (char *)recvbuf);
+  //   net_mod_socket_sendto(ser, sendbuf, strlen(sendbuf) + 1, key);
+  //   free(recvbuf);
+  // }
+}
+
+
+int main() {
+	shm_mm_wrapper_init(512);
+	start_reply(100);
+}
\ No newline at end of file

--
Gitblit v1.8.0