Skip to content

Commit

Permalink
Merge pull request #50 from mikoto2000/fix_ros_server_port_open_error
Browse files Browse the repository at this point in the history
ROSサーバーポートをオープンする際に、タイミングによってはオープンエラーになる問題を修正
  • Loading branch information
tmori committed Jun 16, 2021
2 parents 345ef72 + d02dbb8 commit 96ecf07
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,7 @@ int lwip_getsockopt (int s, int level, int optname, void *optval, socklen_t *opt

int lwip_setsockopt (int s, int level, int optname, const void *optval, socklen_t optlen)
{
//TODO
return 0;
return setsockopt(s, level, optname, optval, optlen);
}

int lwip_close(int s)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,14 @@ mRosReturnType mros_comm_tcp_server_bind(mRosCommTcpServerType *server, mros_int
mRosSockAddrInType addr;

mros_comm_inet_local_sockaddr_init(&addr, port);

int yes = 1;
ret = mros_comm_setsockopt(server->socket.sock_fd, SOL_SOCKET, SO_REUSEADDR, (const char *)&yes, sizeof(yes));
if (ret != MROS_E_OK) {
ROS_ERROR("%s %s() %u ret=%d", __FILE__, __FUNCTION__, __LINE__, ret);
return MROS_E_SYSERR;
}

ret = mros_comm_bind(server->socket.sock_fd, (mRosSockAddrType*)&addr, sizeof(mRosSockAddrInType));
if (ret != MROS_E_OK) {
ROS_ERROR("%s %s() %u ret=%d", __FILE__, __FUNCTION__, __LINE__, ret);
Expand Down

0 comments on commit 96ecf07

Please sign in to comment.