Alexandre Julliard : rpcrt4: Disable TCP/IP connection support if we don' t have socketpair.
Alexandre Julliard
julliard at winehq.org
Tue Dec 23 13:40:38 CST 2008
Module: wine
Branch: master
Commit: 8e1b59cb9abd7fc2c54bf02db35e90705f3051de
URL: http://source.winehq.org/git/wine.git/?a=commit;h=8e1b59cb9abd7fc2c54bf02db35e90705f3051de
Author: Alexandre Julliard <julliard at winehq.org>
Date: Mon Dec 22 19:55:05 2008 +0100
rpcrt4: Disable TCP/IP connection support if we don't have socketpair.
---
configure | 2 ++
configure.ac | 1 +
dlls/rpcrt4/rpc_transport.c | 8 ++++++++
include/config.h.in | 3 +++
4 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/configure b/configure
index 2cc3711..ab27b58 100755
--- a/configure
+++ b/configure
@@ -17793,6 +17793,7 @@ esac
+
for ac_func in \
_pclose \
_popen \
@@ -17848,6 +17849,7 @@ for ac_func in \
sigaltstack \
sigprocmask \
snprintf \
+ socketpair \
spawnvp \
statfs \
statvfs \
diff --git a/configure.ac b/configure.ac
index 8ace1cb..be295a4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1410,6 +1410,7 @@ AC_CHECK_FUNCS(\
sigaltstack \
sigprocmask \
snprintf \
+ socketpair \
spawnvp \
statfs \
statvfs \
diff --git a/dlls/rpcrt4/rpc_transport.c b/dlls/rpcrt4/rpc_transport.c
index 815ed64..d635d49 100644
--- a/dlls/rpcrt4/rpc_transport.c
+++ b/dlls/rpcrt4/rpc_transport.c
@@ -732,6 +732,8 @@ static RPC_STATUS rpcrt4_ncalrpc_parse_top_of_tower(const unsigned char *tower_d
/**** ncacn_ip_tcp support ****/
+#ifdef HAVE_SOCKETPAIR
+
typedef struct _RpcConnection_tcp
{
RpcConnection common;
@@ -1372,6 +1374,8 @@ static int rpcrt4_protseq_sock_wait_for_new_connection(RpcServerProtseq *protseq
return 1;
}
+#endif /* HAVE_SOCKETPAIR */
+
static const struct connection_ops conn_protseq_list[] = {
{ "ncacn_np",
{ EPM_PROTOCOL_NCACN, EPM_PROTOCOL_SMB },
@@ -1399,6 +1403,7 @@ static const struct connection_ops conn_protseq_list[] = {
rpcrt4_ncalrpc_get_top_of_tower,
rpcrt4_ncalrpc_parse_top_of_tower,
},
+#ifdef HAVE_SOCKETPAIR
{ "ncacn_ip_tcp",
{ EPM_PROTOCOL_NCACN, EPM_PROTOCOL_TCP },
rpcrt4_conn_tcp_alloc,
@@ -1412,6 +1417,7 @@ static const struct connection_ops conn_protseq_list[] = {
rpcrt4_ncacn_ip_tcp_get_top_of_tower,
rpcrt4_ncacn_ip_tcp_parse_top_of_tower,
}
+#endif
};
@@ -1435,6 +1441,7 @@ static const struct protseq_ops protseq_list[] =
rpcrt4_protseq_np_wait_for_new_connection,
rpcrt4_protseq_ncalrpc_open_endpoint,
},
+#ifdef HAVE_SOCKETPAIR
{
"ncacn_ip_tcp",
rpcrt4_protseq_sock_alloc,
@@ -1444,6 +1451,7 @@ static const struct protseq_ops protseq_list[] =
rpcrt4_protseq_sock_wait_for_new_connection,
rpcrt4_protseq_ncacn_ip_tcp_open_endpoint,
},
+#endif
};
#define ARRAYSIZE(a) (sizeof((a)) / sizeof((a)[0]))
diff --git a/include/config.h.in b/include/config.h.in
index 1753e41..7f3b888 100644
--- a/include/config.h.in
+++ b/include/config.h.in
@@ -663,6 +663,9 @@
/* Define to 1 if you have the `snprintf' function. */
#undef HAVE_SNPRINTF
+/* Define to 1 if you have the `socketpair' function. */
+#undef HAVE_SOCKETPAIR
+
/* Define to 1 if you have the <soundcard.h> header file. */
#undef HAVE_SOUNDCARD_H
More information about the wine-cvs
mailing list