src/socket/shm_socket.cpp | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
test_net_socket/CMakeLists.txt | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
test_net_socket/test_net_mod_socket.cpp | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
test_net_socket/test_recvandsend.cpp | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
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) { 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}" test_net_socket/test_net_mod_socket.cpp
@@ -506,10 +506,6 @@ } int main(int argc, char *argv[]) { shm_mm_wrapper_init(512); test_net_socket/test_recvandsend.cpp
New file @@ -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); }