summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortrawick <trawick@13f79535-47bb-0310-9956-ffa450edef68>2005-06-14 10:55:07 +0000
committertrawick <trawick@13f79535-47bb-0310-9956-ffa450edef68>2005-06-14 10:55:07 +0000
commit9d3614342844c1b813470b5f2dbc75a54c63a94a (patch)
treefe3dba23603a505984ce7d661be28772e75b68b4
parenta765804ff46caac780e10a883f0d31addeb173f2 (diff)
downloadlibapr-9d3614342844c1b813470b5f2dbc75a54c63a94a.tar.gz
Support APR_SO_SNDBUF and APR_SO_RCVBUF on Windows.
PR: 32177 Submitted by: Sim <sgobbi datamanagement.it>, Jeff Trawick git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.0.x@190580 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--CHANGES3
-rw-r--r--network_io/win32/sockopt.c12
2 files changed, 15 insertions, 0 deletions
diff --git a/CHANGES b/CHANGES
index f5f71e866..4096f7a12 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,5 +1,8 @@
Changes for APR 1.0.2
+ *) Support APR_SO_SNDBUF and APR_SO_RCVBUF on Windows. PR 32177.
+ [Sim <sgobbi datamanagement.it>, Jeff Trawick]
+
*) Make install passed a shell expanded list of header files to the
build/install.sh script, which can only install one file at a time.
Changed to install one header file at a time. [Justin Erenkrantz,
diff --git a/network_io/win32/sockopt.c b/network_io/win32/sockopt.c
index 05f32b81e..a282c2263 100644
--- a/network_io/win32/sockopt.c
+++ b/network_io/win32/sockopt.c
@@ -112,6 +112,18 @@ APR_DECLARE(apr_status_t) apr_socket_opt_set(apr_socket_t *sock,
apr_set_option(sock, APR_SO_DEBUG, on);
}
break;
+ case APR_SO_SNDBUF:
+ if (setsockopt(sock->socketdes, SOL_SOCKET, SO_SNDBUF,
+ (void *)&on, sizeof(int)) == -1) {
+ return apr_get_netos_error();
+ }
+ break;
+ case APR_SO_RCVBUF:
+ if (setsockopt(sock->socketdes, SOL_SOCKET, SO_RCVBUF,
+ (void *)&on, sizeof(int)) == -1) {
+ return apr_get_netos_error();
+ }
+ break;
case APR_SO_REUSEADDR:
if (on != apr_is_option_set(sock, APR_SO_REUSEADDR)) {
if (setsockopt(sock->socketdes, SOL_SOCKET, SO_REUSEADDR,