summaryrefslogtreecommitdiff
path: root/source3/rpc_server/epmapper
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2014-01-31 21:10:41 +0100
committerGünther Deschner <gd@samba.org>2014-02-11 16:20:30 +0100
commitab32b67bbb86ef487bd1faa8120314a2418ab144 (patch)
tree419180353d225130e4f822819653256c03fc593f /source3/rpc_server/epmapper
parent4f344f3b80505f47549d933e3a66d5a9b5dd85bb (diff)
downloadsamba-ab32b67bbb86ef487bd1faa8120314a2418ab144.tar.gz
s3:srv_epmapper: only replace ipv4 addresses in _epm_Lookup() and _epm_Map()
The floor data for EPM_PROTOCOL_IP only handles a 4 byte ipv4 address. "0.0.0.0" is used for ipv6 and hostnames. Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Guenther Deschner <gd@samba.org>
Diffstat (limited to 'source3/rpc_server/epmapper')
-rw-r--r--source3/rpc_server/epmapper/srv_epmapper.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/source3/rpc_server/epmapper/srv_epmapper.c b/source3/rpc_server/epmapper/srv_epmapper.c
index 758a48bee15..55474c0da7a 100644
--- a/source3/rpc_server/epmapper/srv_epmapper.c
+++ b/source3/rpc_server/epmapper/srv_epmapper.c
@@ -560,7 +560,9 @@ error_status_t _epm_Lookup(struct pipes_struct *p,
goto done;
}
- if (p->local_address != NULL) {
+ if (p->local_address != NULL &&
+ tsocket_address_is_inet(p->local_address, "ipv4"))
+ {
srv_addr = tsocket_address_inet_addr_string(p->local_address,
tmp_ctx);
}
@@ -957,7 +959,9 @@ error_status_t _epm_Map(struct pipes_struct *p,
obj = r->in.object;
}
- if (p->local_address != NULL) {
+ if (p->local_address != NULL &&
+ tsocket_address_is_inet(p->local_address, "ipv4"))
+ {
srv_addr = tsocket_address_inet_addr_string(p->local_address,
tmp_ctx);
}