diff --git a/srslte/lib/io/netsink.c b/srslte/lib/io/netsink.c index bedb5fc92..39bd885a9 100644 --- a/srslte/lib/io/netsink.c +++ b/srslte/lib/io/netsink.c @@ -48,10 +48,14 @@ int srslte_netsink_init(srslte_netsink_t *q, char *address, int port, srslte_net } int enable = 1; +#if defined (SO_REUSEADDR) if (setsockopt(q->sockfd, SOL_SOCKET, SO_REUSEADDR, &enable, sizeof(int)) < 0) perror("setsockopt(SO_REUSEADDR) failed"); +#endif +#if defined (SO_REUSEPORT) if (setsockopt(q->sockfd, SOL_SOCKET, SO_REUSEPORT, &enable, sizeof(int)) < 0) perror("setsockopt(SO_REUSEPORT) failed"); +#endif q->servaddr.sin_family = AF_INET; q->servaddr.sin_addr.s_addr=inet_addr(address); diff --git a/srslte/lib/io/netsource.c b/srslte/lib/io/netsource.c index f41296c3c..0e9c804c0 100644 --- a/srslte/lib/io/netsource.c +++ b/srslte/lib/io/netsource.c @@ -48,11 +48,14 @@ int srslte_netsource_init(srslte_netsource_t *q, char *address, int port, srslte // Make sockets reusable int enable = 1; +#if defined (SO_REUSEADDR) if (setsockopt(q->sockfd, SOL_SOCKET, SO_REUSEADDR, &enable, sizeof(int)) < 0) perror("setsockopt(SO_REUSEADDR) failed"); +#endif +#if defined (SO_REUSEPORT) if (setsockopt(q->sockfd, SOL_SOCKET, SO_REUSEPORT, &enable, sizeof(int)) < 0) perror("setsockopt(SO_REUSEPORT) failed"); - +#endif q->type = type; q->servaddr.sin_family = AF_INET;