File: socket_accept4_setcloseonexec.3

package info (click to toggle)
libowfat 0.34-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 5,288 kB
  • sloc: ansic: 20,181; makefile: 16
file content (30 lines) | stat: -rw-r--r-- 860 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
.TH socket_accept4_setcloseonexec 3
.SH NAME
socket_accept4_setcloseonexec \- accept an IPv4 TCP connection on a socket and set it to close on exec
.SH SYNTAX
.B #include <libowfat/socket.h>

int \fBsocket_accept4_setcloseonexec\fP(int \fIs\fR,char \fIip\fR[4],uint16 *\fIport\fR);
.SH DESCRIPTION
This is functionally equivalent to calling \fIsocket_accept4\fR and then
calling \fIio_closeonexec\fR on the returned socket.

However, if may save a syscall or two and in the process avoid a race
condition.

.SH EXAMPLE
  #include <libowfat/socket.h>

  int \fIs\fR;
  char \fIip\fR[4];
  uint16 \fIp\fR;

  \fIs\fR = socket_tcp4();
  socket_bind4(s,ip,p);
  socket_listen(s,16);
  socket_accept4_setcloseonexec(s,ip,&p);

.SH "SEE ALSO"
socket_accept4(3), socket_connected(3),
socket_accept6_setcloseonexec(3),
socket_accept4_makenonblocking_setcloseonexec(3)