Commit 5c9598fb0f3f020478de95dc3c693e95282afba9

Authored by Stéphane Raimbault
1 parent 2076d11f

Use accept4 in TCP PI if available

Showing 1 changed file with 6 additions and 1 deletions
src/modbus-tcp.c
... ... @@ -664,7 +664,12 @@ int modbus_tcp_pi_accept(modbus_t *ctx, int *s)
664 664 }
665 665  
666 666 addrlen = sizeof(addr);
667   - ctx->s = accept(*s, (void *)&addr, &addrlen);
  667 +#ifdef HAVE_ACCEPT4
  668 + /* Inherit socket flags and use accept4 call */
  669 + ctx->s = accept4(*s, (struct sockaddr *)&addr, &addrlen, SOCK_CLOEXEC);
  670 +#else
  671 + ctx->s = accept(*s, (struct sockaddr *)&addr, &addrlen);
  672 +#endif
668 673 if (ctx->s == -1) {
669 674 close(*s);
670 675 *s = -1;
... ...