Revert "[Feature][T8TSK-189] fix multi init in one process"
This reverts commit e92d9485fe77eab3b8cf6bacd47953307384d1c1.
Reason for revert: <INSERT REASONING HERE>
Change-Id: I167aa138fd92c78c9d2e259e1a08fa776eeba80a
diff --git a/src/lynq/lib/liblynq-call/lynq_module_socket.cpp b/src/lynq/lib/liblynq-call/lynq_module_socket.cpp
index 792b312..2d5b0e8 100755
--- a/src/lynq/lib/liblynq-call/lynq_module_socket.cpp
+++ b/src/lynq/lib/liblynq-call/lynq_module_socket.cpp
@@ -55,7 +55,7 @@
struct sockaddr_in module_rc_addr_serv;
//struct sockaddr_in module_urc_addr_serv;
static int module_rc_sock_fd = -1;
-static int module_urc_sock_fd = -1;
+//static int module_urc_sock_fd = -1;
int module_urc_status = 1;
int module_rc_status = 1;
pthread_t module_urc_tid = -1;
@@ -328,7 +328,7 @@
{
bzero(urc_data,LYNQ_REC_BUF);
//res = recvfrom(module_urc_sock_fd,urc_data,sizeof(urc_data),0,(struct sockaddr *)&module_urc_addr_serv,(socklen_t*)&module_len_urc_addr_serv);
- res = lynq_recv_urc_msg(module_urc_sock_fd, urc_data,sizeof(urc_data));
+ res = lynq_recv_urc_msg(urc_data,sizeof(urc_data));
if(res<sizeof(int32_t)*2)
{
LYERRLOG("thread_urc_recv step2 fail: res is %d",res);
@@ -492,13 +492,7 @@
// }
// return RESULT_OK;
- module_urc_sock_fd = lynq_register_urc_socket();
- if (module_urc_sock_fd <= 0)
- {
- module_urc_sock_fd = -1;
- return RESULT_ERROR;
- }
- return RESULT_OK;
+ return lynq_register_urc_socket() > 0 ? RESULT_OK : RESULT_ERROR;
}
void lynq_close_urc_socket()
@@ -508,8 +502,6 @@
// close(module_urc_sock_fd);
// module_urc_sock_fd =-1;
// }
- lynq_unregister_urc_socket(module_urc_sock_fd);
- module_urc_sock_fd = -1;
}
int lynq_start_all_urc_socket_thread()
diff --git a/src/lynq/lib/liblynq-data/lynq_data_urc.cpp b/src/lynq/lib/liblynq-data/lynq_data_urc.cpp
index 9c6ad71..d527ed2 100755
--- a/src/lynq/lib/liblynq-data/lynq_data_urc.cpp
+++ b/src/lynq/lib/liblynq-data/lynq_data_urc.cpp
@@ -78,7 +78,7 @@
{
bzero(urc_data,LYNQ_REC_BUF);
// res = recvfrom(lynq_urc_sockfd,urc_data,sizeof(urc_data),0,(struct sockaddr *)&urc_local_addr,(socklen_t*)&lynq_len_urc_addr_serv);
- res = lynq_recv_urc_msg(lynq_urc_sockfd, urc_data,sizeof(urc_data));
+ res = lynq_recv_urc_msg(urc_data,sizeof(urc_data));
if(res<sizeof(int32_t)*2)
{
@@ -198,24 +198,16 @@
// return -1;
// }
// return 0;
- lynq_urc_sockfd = lynq_register_urc_socket();
- if (lynq_urc_sockfd <= 0)
- {
- lynq_urc_sockfd = -1;
- return -1;
- }
- return 0;
+ return lynq_register_urc_socket() > 0 ? 0 : -1;
}
int lynq_socket_recv_stop()
{
-// if (lynq_urc_sockfd >=0)
-// {
-// close(lynq_urc_sockfd);
-// lynq_urc_sockfd = -1;
-// }
- lynq_unregister_urc_socket(lynq_urc_sockfd);
- lynq_urc_sockfd = -1;
+ if (lynq_urc_sockfd >=0)
+ {
+ close(lynq_urc_sockfd);
+ lynq_urc_sockfd = -1;
+ }
return 0;
}
diff --git a/src/lynq/lib/liblynq-network/lynq_module_socket.cpp b/src/lynq/lib/liblynq-network/lynq_module_socket.cpp
index de76578..48353dc 100755
--- a/src/lynq/lib/liblynq-network/lynq_module_socket.cpp
+++ b/src/lynq/lib/liblynq-network/lynq_module_socket.cpp
@@ -55,7 +55,7 @@
struct sockaddr_in module_rc_addr_serv;
//struct sockaddr_in module_urc_addr_serv;
static int module_rc_sock_fd = -1;
-static int module_urc_sock_fd = -1;
+//static int module_urc_sock_fd = -1;
int module_urc_status = 1;
int module_rc_status = 1;
pthread_t module_urc_tid = -1;
@@ -328,7 +328,7 @@
{
bzero(urc_data,LYNQ_REC_BUF);
//res = recvfrom(module_urc_sock_fd,urc_data,sizeof(urc_data),0,(struct sockaddr *)&module_urc_addr_serv,(socklen_t*)&module_len_urc_addr_serv);
- res = lynq_recv_urc_msg(module_urc_sock_fd, urc_data,sizeof(urc_data));
+ res = lynq_recv_urc_msg(urc_data,sizeof(urc_data));
if(res<sizeof(int32_t)*2)
{
LYERRLOG("thread_urc_recv step2 fail: res is %d",res);
@@ -491,13 +491,7 @@
// return RESULT_ERROR;
// }
// return RESULT_OK;
- module_urc_sock_fd = lynq_register_urc_socket();
- if (module_urc_sock_fd <= 0)
- {
- module_urc_sock_fd = -1;
- return RESULT_ERROR;
- }
- return RESULT_OK;
+ return lynq_register_urc_socket() > 0 ? RESULT_OK : RESULT_ERROR;
}
void lynq_close_urc_socket()
@@ -507,8 +501,6 @@
// close(module_urc_sock_fd);
// module_urc_sock_fd =-1;
// }
- lynq_unregister_urc_socket(module_urc_sock_fd);
- module_urc_sock_fd = -1;
}
int lynq_start_all_urc_socket_thread()
diff --git a/src/lynq/lib/liblynq-shm/include/lynq_urc_socket.h b/src/lynq/lib/liblynq-shm/include/lynq_urc_socket.h
index 1bd12bb..866d5c2 100755
--- a/src/lynq/lib/liblynq-shm/include/lynq_urc_socket.h
+++ b/src/lynq/lib/liblynq-shm/include/lynq_urc_socket.h
@@ -17,8 +17,7 @@
int lynq_open_broadcast_urc_socket();
int lynq_broadcast_urc_msg(void * msg, int size);
int lynq_register_urc_socket();
-int lynq_unregister_urc_socket(int fd);
-int lynq_recv_urc_msg(int fd, void * buffer, int size);
+int lynq_recv_urc_msg(void * buffer, int size);
#ifdef __cplusplus
}
#endif
diff --git a/src/lynq/lib/liblynq-shm/lynq_urc_socket.cpp b/src/lynq/lib/liblynq-shm/lynq_urc_socket.cpp
index acc7459..2ebf85f 100755
--- a/src/lynq/lib/liblynq-shm/lynq_urc_socket.cpp
+++ b/src/lynq/lib/liblynq-shm/lynq_urc_socket.cpp
@@ -12,15 +12,14 @@
#include "lynq_urc_socket.h"
#include "log/log.h"
#include <list>
-#include <map>
static int lynq_urc_socket_fd = 0;
+static int registered_urc_socket_port = 0;
+static int registered_urc_socket_fd = 0;
static pthread_mutex_t s_urc_broadcast_mtx = PTHREAD_MUTEX_INITIALIZER;
static std::list<struct sockaddr*> s_urc_broadcast_clients;
-static std::map<int ,int> s_socket_port_map;
-
static pthread_mutex_t s_urc_register_mtx = PTHREAD_MUTEX_INITIALIZER;
#define LYNQ_URC_SERVER_LISTEN_PORT 8086
@@ -96,8 +95,6 @@
int ret = 0;
int len_s;
struct sockaddr_in addr_serv;
- int registered_urc_socket_fd = -1;
- int registered_urc_socket_port = -1;
//Creating a Socket object
pthread_mutex_lock(&s_urc_register_mtx);
registered_urc_socket_fd=socket(AF_INET,SOCK_DGRAM,0);
@@ -131,57 +128,32 @@
len_s = sendto(registered_urc_socket_fd, ®istered_urc_socket_port, sizeof(registered_urc_socket_port), 0, (struct sockaddr *)&addr_serv,sizeof(addr_serv));
printf("send result %d %d\n", len_s, errno);
register_socket_exit:
- s_socket_port_map.insert(registered_urc_socket_fd, registered_urc_socket_port);
pthread_mutex_unlock(&s_urc_register_mtx);
printf("init result %d\n", ret);
return ret ==0 ? registered_urc_socket_fd : -1;
}
-int lynq_unregister_urc_socket(int fd)
-{
- pthread_mutex_lock(&s_urc_register_mtx);
- auto it = s_socket_port_map.find(fd);
- if (it != s_socket_port_map.end())
- {
- s_socket_port_map.erase(it);
- }
- pthread_mutex_unlock(&s_urc_register_mtx);
- close(fd);
- return 0;
-}
-
-int lynq_recv_urc_msg(int fd, void * buffer, int size)
+int lynq_recv_urc_msg(void * buffer, int size)
{
int ret = 0;
struct sockaddr_in addr_serv;
socklen_t len_addr_serv = sizeof(addr_serv);
- int registered_urc_socket_port = -1;
memset(&addr_serv, 0, sizeof(addr_serv));
- if (fd <= 0) {
- return -1;
- }
printf("client %ul to recv now\n", pthread_self());
pthread_mutex_lock(&s_urc_register_mtx);
- auto it = s_socket_port_map.find(fd);
- if (it != s_socket_port_map.end())
- {
- registered_urc_socket_port = it->second;
- }
- pthread_mutex_unlock(&s_urc_register_mtx);
- if (registered_urc_socket_port == -1)
- {
+ if (registered_urc_socket_fd <= 0) {
+ pthread_mutex_unlock(&s_urc_register_mtx);
return -1;
}
-
while(1)
{
memset(buffer, 0, 4);
- ret = recvfrom(fd, buffer, size,0,(struct sockaddr *)&addr_serv,(socklen_t*)&len_addr_serv);
+ ret = recvfrom(registered_urc_socket_fd, buffer, size,0,(struct sockaddr *)&addr_serv,(socklen_t*)&len_addr_serv);
if (ret > 0 && LYNQ_URC_SERVER_LISTEN_PORT == ntohs(addr_serv.sin_port))
{
- if (ret == 4 && LYNQ_URC_SERVER_LISTEN_PORT == *((int*)buffer) && registered_urc_socket_port != -1)
+ if (ret == 4 && LYNQ_URC_SERVER_LISTEN_PORT == *((int*)buffer))
{
- sendto(fd, ®istered_urc_socket_port, sizeof(registered_urc_socket_port), 0, (struct sockaddr *)&addr_serv,sizeof(addr_serv));
+ sendto(registered_urc_socket_fd, ®istered_urc_socket_port, sizeof(registered_urc_socket_port), 0, (struct sockaddr *)&addr_serv,sizeof(addr_serv));
printf("to send ack of headbeat\n");
continue;
}
@@ -193,6 +165,7 @@
}
break;
}
+ pthread_mutex_unlock(&s_urc_register_mtx);
printf("client %ul recv %d\n", pthread_self(), ret);
return ret;
}
diff --git a/src/lynq/lib/liblynq-sms/lynq_module_socket.cpp b/src/lynq/lib/liblynq-sms/lynq_module_socket.cpp
index 7aeae34..2f06cb4 100755
--- a/src/lynq/lib/liblynq-sms/lynq_module_socket.cpp
+++ b/src/lynq/lib/liblynq-sms/lynq_module_socket.cpp
@@ -55,7 +55,7 @@
struct sockaddr_in module_rc_addr_serv;
//struct sockaddr_in module_urc_addr_serv;
static int module_rc_sock_fd = -1;
-static int module_urc_sock_fd = -1;
+//static int module_urc_sock_fd = -1;
int module_urc_status = 1;
int module_rc_status = 1;
pthread_t module_urc_tid = -1;
@@ -326,7 +326,7 @@
{
bzero(urc_data,LYNQ_REC_BUF);
//res = recvfrom(module_urc_sock_fd,urc_data,sizeof(urc_data),0,(struct sockaddr *)&module_urc_addr_serv,(socklen_t*)&module_len_urc_addr_serv);
- res = lynq_recv_urc_msg(module_urc_sock_fd, urc_data,sizeof(urc_data));
+ res = lynq_recv_urc_msg(urc_data,sizeof(urc_data));
if(res<sizeof(int32_t)*2)
{
LYERRLOG("thread_urc_recv step2 fail: res is %d",res);
@@ -496,13 +496,7 @@
// return RESULT_ERROR;
// }
// return RESULT_OK;
- module_urc_sock_fd = lynq_register_urc_socket();
- if (module_urc_sock_fd <= 0)
- {
- module_urc_sock_fd = -1;
- return RESULT_ERROR;
- }
- return RESULT_OK;
+ return lynq_register_urc_socket() > 0 ? RESULT_OK : RESULT_ERROR;
}
void lynq_close_urc_socket()
@@ -512,8 +506,6 @@
// close(module_urc_sock_fd);
// module_urc_sock_fd =-1;
// }
- lynq_unregister_urc_socket(module_urc_sock_fd);
- module_urc_sock_fd = -1;
}
int lynq_start_all_urc_socket_thread()