bglibs
socket.h
1 #ifndef NET__SOCKET__H__
2 #define NET__SOCKET__H__
3 
4 #include "ipv4.h"
5 #include "ipv6.h"
6 
22 int socket_tcp4(void);
23 int socket_tcp6(void);
24 int socket_tcp(void);
25 int socket_udp4(void);
26 int socket_udp6(void);
27 int socket_udp(void);
28 int socket_connect4(int sock, const ipv4addr* ip, ipv4port port);
29 int socket_connect4_timeout(int sock, const ipv4addr* ip, ipv4port port,
30  int timeout);
31 int socket_connect6(int sock, const ipv6addr* ip, ipv6port port);
32 int socket_connect6_timeout(int sock, const ipv6addr* ip, ipv6port port,
33  int timeout);
34 int socket_bind4(int sock, const ipv4addr* ip, ipv4port port);
35 int socket_bind6(int sock, const ipv6addr* ip, ipv6port port);
36 int socket_accept4(int sock, ipv4addr* ip, ipv4port* port);
37 int socket_accept6(int sock, ipv6addr* ip, ipv6port* port);
38 int socket_recv4(int sock, char* buffer, unsigned buflen,
39  ipv4addr* ip, ipv4port* port);
40 int socket_recv6(int sock, char* buffer, unsigned buflen,
41  ipv6addr* ip, ipv6port* port);
42 int socket_send4(int sock, const char* buffer, unsigned buflen,
43  const ipv4addr* ip, ipv4port port);
44 int socket_send6(int sock, const char* buffer, unsigned buflen,
45  const ipv6addr* ip, ipv6port port);
46 int socket_getaddr4(int sock, ipv4addr* ip, ipv4port* port);
47 int socket_getaddr6(int sock, ipv6addr* ip, ipv6port* port);
48 int socket_cork(int sock);
49 int socket_uncork(int sock);
50 int socket_notcpdelay(int sock, int enable);
55 int socket_unixdgm(void);
56 int socket_unixstr(void);
57 int socket_connectu(int sock, const char* path);
58 int socket_connectu_timeout(int sock, const char* path, int timeout);
59 int socket_bindu(int sock, const char* path);
60 int socket_acceptu(int sock);
61 int socket_recvu(int sock, char* buffer, unsigned buflen);
62 int socket_sendu(int sock, const char* buffer, unsigned buflen);
63 
64 int socket_pairstr(int fd[2]);
65 int socket_pairdgm(int fd[2]);
70 int socket_broadcast(int sock);
71 int socket_connected(int sock);
72 int socket_linger(int fd, int onoff, int seconds);
73 int socket_listen(int sock, int backlog);
74 int socket_reuse(int sock);
75 int socket_shutdown(int sock, int shut_rd, int shut_wr);
76 
77 int socket_sendfd(int sock, int fd);
78 int socket_recvfd(int sock);
83 #endif
socket_getaddr6
int socket_getaddr6(int sock, ipv6addr *ip, ipv6port *port)
Definition: getaddr6.c:27
ipv6addr
Definition: ipv6.h:11
socket_accept4
int socket_accept4(int sock, ipv4addr *ip, ipv4port *port)
Definition: accept4.c:26
socket_cork
int socket_cork(int sock)
Definition: cork.c:35
socket_recvu
int socket_recvu(int sock, char *buffer, unsigned buflen)
Definition: recvu.c:24
obuf_putu
int obuf_putu(obuf *out, unsigned long data)
Definition: obuf_putunumw.c:21
fmt_sign_pad
unsigned fmt_sign_pad(char *buffer, int sign, unsigned width, char pad)
Definition: sign_pad.c:5
socket_tcp
int socket_tcp(void)
Definition: tcp4.c:32
socket_listen
int socket_listen(int sock, int backlog)
Definition: listen.c:25
socket_connected
int socket_connected(int sock)
Definition: connected.c:24
socket_pairstr
int socket_pairstr(int fd[2])
Definition: pairstr.c:26
socket_unixdgm
int socket_unixdgm(void)
Definition: unixdgm.c:26
socket_connect4
int socket_connect4(int sock, const ipv4addr *ip, ipv4port port)
Definition: connect4.c:28
socket_tcp4
int socket_tcp4(void)
Definition: tcp4.c:26
socket_accept6
int socket_accept6(int sock, ipv6addr *ip, ipv6port *port)
Definition: accept6.c:27
socket_bindu
int socket_bindu(int sock, const char *path)
Definition: bindu.c:27
FMT_ULONG_LEN
#define FMT_ULONG_LEN
Definition: fmt.h:54
socket_getaddr4
int socket_getaddr4(int sock, ipv4addr *ip, ipv4port *port)
Definition: getaddr4.c:26
obuf_puts
#define obuf_puts(out, str)
Definition: obuf.h:74
socket_sendfd
int socket_sendfd(int sock, int fd)
Definition: sendfd.c:25
socket_send4
int socket_send4(int sock, const char *buffer, unsigned buflen, const ipv4addr *ip, ipv4port port)
Definition: send4.c:26
socket_recvfd
int socket_recvfd(int sock)
Definition: recvfd.c:25
fmt_snumw
unsigned fmt_snumw(char *buffer, long num, unsigned width, char pad, unsigned base, const char *digits)
Definition: snum.c:35
socket_bind6
int socket_bind6(int sock, const ipv6addr *ip, ipv6port port)
Definition: bind6.c:27
ipv4addr
Definition: ipv4.h:11
socket_connectu_timeout
int socket_connectu_timeout(int sock, const char *path, int timeout)
Definition: connectu_timeout.c:27
socket_udp
int socket_udp(void)
Definition: udp4.c:32
socket_udp6
int socket_udp6(void)
Definition: udp6.c:27
socket_pairdgm
int socket_pairdgm(int fd[2])
Definition: pairdgm.c:26
fmt_sdecw
unsigned fmt_sdecw(char *buffer, long num, unsigned width, char pad)
Definition: sdec.c:4
socket_shutdown
int socket_shutdown(int sock, int shut_rd, int shut_wr)
Definition: shutdown.c:36
socket_notcpdelay
int socket_notcpdelay(int sock, int enable)
Definition: notcpdelay.c:35
socket_connectu
int socket_connectu(int sock, const char *path)
Definition: connectu.c:27
socket_udp4
int socket_udp4(void)
Definition: udp4.c:26
ipv4port
uint16 ipv4port
Definition: ipv4.h:16
fmt_slldec
unsigned fmt_slldec(char *buffer, long long num)
Definition: slldec.c:10
ipv6port
uint16 ipv6port
Definition: ipv6.h:16
socket_linger
int socket_linger(int fd, int onoff, int seconds)
Definition: linger.c:24
socket_recv4
int socket_recv4(int sock, char *buffer, unsigned buflen, ipv4addr *ip, ipv4port *port)
Definition: recv4.c:26
fmt_slldecw
unsigned fmt_slldecw(char *buffer, long long num, unsigned width, char pad)
Definition: slldec.c:4
outbuf
obuf outbuf
Definition: obuf_stdout.c:7
socket_connect4_timeout
int socket_connect4_timeout(int sock, const ipv4addr *ip, ipv4port port, int timeout)
Definition: connect4_timeout.c:27
socket_broadcast
int socket_broadcast(int sock)
Definition: broadcast.c:24
fmt_lcase_digits
const char fmt_lcase_digits[36]
Definition: lcase.c:4
socket_send6
int socket_send6(int sock, const char *buffer, unsigned buflen, const ipv6addr *ip, ipv6port port)
Definition: send6.c:27
socket_sendu
int socket_sendu(int sock, const char *buffer, unsigned buflen)
Definition: sendu.c:24
fmt_sllnumw
unsigned fmt_sllnumw(char *buffer, long long num, unsigned width, char pad, unsigned base, const char *digits)
Definition: sllnum.c:36
socket_connect6
int socket_connect6(int sock, const ipv6addr *ip, ipv6port port)
Definition: connect6.c:28
socket_recv6
int socket_recv6(int sock, char *buffer, unsigned buflen, ipv6addr *ip, ipv6port *port)
Definition: recv6.c:27
socket_unixstr
int socket_unixstr(void)
Definition: unixstr.c:26
socket_reuse
int socket_reuse(int sock)
Definition: reuse.c:24
socket_tcp6
int socket_tcp6(void)
Definition: tcp6.c:27
socket_connect6_timeout
int socket_connect6_timeout(int sock, const ipv6addr *ip, ipv6port port, int timeout)
Definition: connect6_timeout.c:27
socket_uncork
int socket_uncork(int sock)
Definition: uncork.c:26
socket_acceptu
int socket_acceptu(int sock)
Definition: acceptu.c:25
socket_bind4
int socket_bind4(int sock, const ipv4addr *ip, ipv4port port)
Definition: bind4.c:26
obuf_putc
int obuf_putc(obuf *out, char ch)
Definition: obuf_putc.c:4