Browse Source

Fix #626

pull/628/head
Max Lv 9 years ago
parent
commit
41d93b126a
4 changed files with 12 additions and 6 deletions
  1. 3
      src/local.c
  2. 3
      src/server.c
  3. 3
      src/tunnel.c
  4. 9
      src/udprelay.c

3
src/local.c

@ -919,7 +919,8 @@ static remote_t *create_remote(listen_ctx_t *listener,
setnonblocking(remotefd);
#ifdef SET_INTERFACE
if (listener->iface) {
setinterface(remotefd, listener->iface);
if (setinterface(remotefd, listener->iface) == -1)
ERROR("setinterface");
}
#endif

3
src/server.c

@ -431,7 +431,8 @@ static remote_t *connect_to_remote(struct addrinfo *res,
setnonblocking(sockfd);
#ifdef SET_INTERFACE
if (iface) {
setinterface(sockfd, iface);
if (setinterface(sockfd, iface) == -1)
ERROR("setinterface");
}
#endif

3
src/tunnel.c

@ -660,7 +660,8 @@ static void accept_cb(EV_P_ ev_io *w, int revents)
setnonblocking(remotefd);
#ifdef SET_INTERFACE
if (listener->iface) {
setinterface(remotefd, listener->iface);
if (setinterface(remotefd, listener->iface) == -1)
ERROR("setinterface");
}
#endif

9
src/udprelay.c

@ -589,7 +589,8 @@ static void query_resolve_cb(struct sockaddr *addr, void *data)
#endif
#ifdef SET_INTERFACE
if (query_ctx->server_ctx->iface) {
setinterface(remotefd, query_ctx->server_ctx->iface);
if (setinterface(remotefd, query_ctx->server_ctx->iface) == -1)
ERROR("setinterface");
}
#endif
remote_ctx = new_remote(remotefd, query_ctx->server_ctx);
@ -1089,7 +1090,8 @@ static void server_recv_cb(EV_P_ ev_io *w, int revents)
#endif
#ifdef SET_INTERFACE
if (server_ctx->iface) {
setinterface(remotefd, server_ctx->iface);
if (setinterface(remotefd, server_ctx->iface) == -1)
ERROR("setinterface");
}
#endif
@ -1169,7 +1171,8 @@ static void server_recv_cb(EV_P_ ev_io *w, int revents)
#endif
#ifdef SET_INTERFACE
if (server_ctx->iface) {
setinterface(remotefd, server_ctx->iface);
if (setinterface(remotefd, server_ctx->iface) == -1);
ERROR("setinterface");
}
#endif
remote_ctx = new_remote(remotefd, server_ctx);

Loading…
Cancel
Save