diff options
| author | Pablo Neira Ayuso <pablo@gnumonks.org> | 2011-06-09 15:04:30 +0200 | 
|---|---|---|
| committer | Pablo Neira Ayuso <pablo@gnumonks.org> | 2011-06-13 19:15:59 +0200 | 
| commit | 0849c9af2a5637da5ce24118e2f4b9ab9da9c6d9 (patch) | |
| tree | be1811304975dcd416bba82217e4dbf3e9456957 /include | |
| parent | 139e12782c5cbbcb31ac89a1c59d8d5b4215ebf5 (diff) | |
socket: add OSMO_SOCK_F_[CONNECT|BIND|NON_BLOCK] flags
This extends the socket infrastructure in libosmocore to allow
to create non-blocking sockets.
Basically, it replaces the connect0_bind1 parameter by one
flags parameter.
Diffstat (limited to 'include')
| -rw-r--r-- | include/osmocom/core/socket.h | 11 | 
1 files changed, 8 insertions, 3 deletions
diff --git a/include/osmocom/core/socket.h b/include/osmocom/core/socket.h index b2601c76..612b12c8 100644 --- a/include/osmocom/core/socket.h +++ b/include/osmocom/core/socket.h @@ -5,14 +5,19 @@  struct sockaddr; +/* flags for osmo_sock_init. */ +#define OSMO_SOCK_F_CONNECT	(1 << 0) +#define OSMO_SOCK_F_BIND	(1 << 1) +#define OSMO_SOCK_F_NONBLOCK	(1 << 2) +  int osmo_sock_init(uint16_t family, uint16_t type, uint8_t proto, -		   const char *host, uint16_t port, int connect0_bind1); +		   const char *host, uint16_t port, unsigned int flags);  int osmo_sock_init_ofd(struct osmo_fd *ofd, int family, int type, int proto, -			const char *host, uint16_t port, int connect0_bind1); +			const char *host, uint16_t port, unsigned int flags);  int osmo_sock_init_sa(struct sockaddr *ss, uint16_t type, -		      uint8_t proto, int connect0_bind1); +		      uint8_t proto, unsigned int flags);  /* determine if the given address is a local address */  int osmo_sockaddr_is_local(struct sockaddr *addr, unsigned int addrlen);  | 
