fujuntang
2021-11-10 c479ef57baaaa28964fc3ec8d80ff99dffa7d49f
src/socket/shm_mod_socket.cpp
@@ -38,10 +38,6 @@
   return shm_socket_force_bind(shm_socket, key);
}
int ShmModSocket::bind_proc_id(char *buf, int len) {
  return shm_socket_bind_proc_id(shm_socket, buf, len);
}
int ShmModSocket::reg(void *pData, int len, void **buf, int *size, const int timeout_ms, int flag)
{
  int ret;
@@ -72,6 +68,10 @@
  } else  if (flag == PROC_QUE_ATCS) {
    memcpy(head.action, "atcsque", sizeof(head.action));
  } else if (flag == PROC_REG_BUF) {
    memcpy(head.action, "bufreg", sizeof(head.action));
  } else {
@@ -119,7 +119,7 @@
    
    ts.tv_nsec = (timeout_ms - ts.tv_sec * 1000) * 1000 * 1000;
  
    if ((flag == PROC_REG) || (flag == PROC_UNREG) || (flag == PROC_REG_TCS)) {
    if ((flag == PROC_REG) || (flag == PROC_UNREG) || (flag == PROC_REG_TCS) || (flag == PROC_REG_BUF)) {
      ret = shm_sendto(shm_socket, buf_temp, buf_size, SHM_BUS_KEY, &ts, BUS_TIMEOUT_FLAG);
@@ -131,7 +131,7 @@
  
  } else if (timeout_ms == 0) {
  
    if ((flag == PROC_REG) || (flag == PROC_UNREG) || (flag == PROC_REG_TCS)) {
    if ((flag == PROC_REG) || (flag == PROC_UNREG) || (flag == PROC_REG_TCS) || (flag == PROC_REG_BUF)) {
      ret = shm_sendto(shm_socket, buf_temp, buf_size, SHM_BUS_KEY, &ts, BUS_NOWAIT_FLAG);
@@ -143,7 +143,7 @@
 
  } else {
    if ((flag == PROC_REG) || (flag == PROC_UNREG) || (flag == PROC_REG_TCS)) {
    if ((flag == PROC_REG) || (flag == PROC_UNREG) || (flag == PROC_REG_TCS) || (flag == PROC_REG_BUF)) {
    
      ret = shm_sendto(shm_socket, buf_temp, buf_size, SHM_BUS_KEY, &ts, -1);
@@ -166,10 +166,9 @@
 * @key 发送给谁
 * @return 0 成功, 其他值 失败的错误码
 */
int ShmModSocket::sendto(const void *buf, const int size, const int key, const struct timespec *timeout, int flag) {
   int rv = shm_sendto(shm_socket, buf, size, key, timeout, flag);
int ShmModSocket::sendto(const void *buf, const int size, const int key, const struct timespec *timeout, int flag, int reset, int data_set) {
   int rv = shm_sendto(shm_socket, buf, size, key, timeout, flag, reset, data_set);
  if(rv == 0) {
     logger->debug("ShmModSocket::sendto: %d sendto %d success.\n", get_key(), key);
     return 0;
  }
@@ -182,12 +181,11 @@
 * @key 从谁哪里收到的信息
 * @return 0 成功, 其他值 失败的错误码
*/
int ShmModSocket::recvfrom( void **buf, int *size, int *key, const struct timespec *timeout, int flag) {
int ShmModSocket::recvfrom( void **buf, int *size, int *key, const struct timespec *timeout, int flag, int reset, int data_set) {
  int rv =  shm_recvfrom(shm_socket, buf, size, key, timeout, flag);
  int rv =  shm_recvfrom(shm_socket, buf, size, key, timeout, flag, reset, data_set);
   if(rv == 0) {
    logger->debug("ShmModSocket::recvfrom: %d recvfrom %d success.\n", get_key(), *key);
    return 0;
  }
@@ -206,7 +204,6 @@
   int rv = shm_sendandrecv(shm_socket, send_buf, send_size, send_key, recv_buf, recv_size, timeout, flag);
   if(rv == 0) {
     logger->debug("ShmModSocket::sendandrecv:  sendandrecv to %d success.\n", send_key);
     return 0;
  }