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 31
|
.TH socket_accept6_setcloseonexec 3
.SH NAME
socket_accept6_setcloseonexec \- accept an IPv6 TCP connection on a socket
.SH SYNTAX
.B #include <libowfat/socket.h>
int \fBsocket_accept6_setcloseonexec\fP(int \fIs\fR,char \fIip\fR[16],uint16 *\fIport\fR,uint32 *\fIscope_id\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[16];
uint16 \fIport\fR;
uint32 \fIscope_id\fR;
\fIs\fR = socket_tcp6();
socket_bind6(s,ip,port,scope_id);
socket_listen(s,16);
socket_accept6_setcloseonexec(s,ip,&port,&scope_id);
.SH "SEE ALSO"
socket_accept6(3), socket_connected(3),
socket_accept4_setcloseonexec(3),
socket_accept6_makenonblocking_setcloseonexec(3)
|