summaryrefslogtreecommitdiff
path: root/libguile/socket.c
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2012-03-26 00:25:03 +0200
committerAndy Wingo <wingo@pobox.com>2016-06-04 12:49:47 +0200
commitd7f39a36b1fb02bd7900eaad0c2f951d6f20b2ff (patch)
tree0c2fe32eb5422eaf1e0e77929a519a8f7b6d8e77 /libguile/socket.c
parent9454068a54a4e9e84db61dc42d9a5d7a544a7ece (diff)
downloadguile-d7f39a36b1fb02bd7900eaad0c2f951d6f20b2ff.tar.gz
socket: TCP_CORK, TCP_NODELAY
* libguile/socket.c (scm_init_socket): Define TCP_NODELAY and TCP_CORK if they are available. * doc/ref/posix.texi (Network Sockets and Communication): Add documentation. * NEWS: Add entry.
Diffstat (limited to 'libguile/socket.c')
-rw-r--r--libguile/socket.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/libguile/socket.c b/libguile/socket.c
index a6f1e5fca..1c4f2ae36 100644
--- a/libguile/socket.c
+++ b/libguile/socket.c
@@ -40,6 +40,7 @@
#include <sys/un.h>
#endif
#include <netinet/in.h>
+#include <netinet/tcp.h>
#include <netdb.h>
#include <arpa/inet.h>
@@ -1713,6 +1714,14 @@ scm_init_socket ()
scm_c_define ("MSG_DONTROUTE", scm_from_int (MSG_DONTROUTE));
#endif
+ /* TCP options. */
+#ifdef TCP_NODELAY
+ scm_c_define ("TCP_NODELAY", scm_from_int (TCP_NODELAY));
+#endif
+#ifdef TCP_CORK
+ scm_c_define ("TCP_CORK", scm_from_int (TCP_CORK));
+#endif
+
#ifdef IP_ADD_MEMBERSHIP
scm_c_define ("IP_ADD_MEMBERSHIP", scm_from_int (IP_ADD_MEMBERSHIP));
scm_c_define ("IP_DROP_MEMBERSHIP", scm_from_int (IP_DROP_MEMBERSHIP));