diff options
author | Vsevolod Stakhov <vsevolod@rambler-co.ru> | 2009-08-25 15:13:24 +0400 |
---|---|---|
committer | Vsevolod Stakhov <vsevolod@rambler-co.ru> | 2009-08-25 15:13:24 +0400 |
commit | ab8f97db48ceefef5fdf47ea8a5954da635ffa31 (patch) | |
tree | 41fcd689903bbc215f168d0db7ff3ca697197da4 /src/util.c | |
parent | 034d3a91d5c60328bd99fc279f2a0ffa89d258d1 (diff) | |
download | rspamd-ab8f97db48ceefef5fdf47ea8a5954da635ffa31.tar.gz rspamd-ab8f97db48ceefef5fdf47ea8a5954da635ffa31.zip |
* Migrate fuzzy storage to use UDP instead of TCP
Diffstat (limited to 'src/util.c')
-rw-r--r-- | src/util.c | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/src/util.c b/src/util.c index 5fe99d051..bbe7ff666 100644 --- a/src/util.c +++ b/src/util.c @@ -50,15 +50,15 @@ make_socket_nonblocking (int fd) return 0; } -int -make_tcp_socket (struct in_addr *addr, u_short port, gboolean is_server, gboolean async) +static int +make_inet_socket (int family, struct in_addr *addr, u_short port, gboolean is_server, gboolean async) { int fd, r, optlen, on = 1, s_error; int serrno; struct sockaddr_in sin; /* Create socket */ - fd = socket (AF_INET, SOCK_STREAM, 0); + fd = socket (AF_INET, family, 0); if (fd == -1) { msg_warn ("make_tcp_socket: socket failed: %d, '%s'", errno, strerror (errno)); return -1; @@ -114,6 +114,18 @@ make_tcp_socket (struct in_addr *addr, u_short port, gboolean is_server, gboolea } int +make_tcp_socket (struct in_addr *addr, u_short port, gboolean is_server, gboolean async) +{ + return make_inet_socket (SOCK_STREAM, addr, port, is_server, async); +} + +int +make_udp_socket (struct in_addr *addr, u_short port, gboolean is_server, gboolean async) +{ + return make_inet_socket (SOCK_DGRAM, addr, port, is_server, async); +} + +int accept_from_socket (int listen_sock, struct sockaddr *addr, socklen_t *len) { int nfd; |