diff options
author | Andrew Bartlett <abartlet@samba.org> | 2008-07-15 15:10:29 +1000 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2008-07-15 15:10:29 +1000 |
commit | 403f4f94ffec28d1c1dc910e1960531f4c14534b (patch) | |
tree | 34fd0b184fcc15898f8c60e8a4f9bd8135b524bf /source4/libcli/ldap | |
parent | 2b1f2712f18a6fa7dcd60e2ed54ac157e9c54889 (diff) | |
download | samba-403f4f94ffec28d1c1dc910e1960531f4c14534b.tar.gz samba-403f4f94ffec28d1c1dc910e1960531f4c14534b.tar.bz2 samba-403f4f94ffec28d1c1dc910e1960531f4c14534b.zip |
Make up a full hostname for ldapi connections.
The DIGEST-MD5 SASL method requires a hostname, so provide one.
Andrew Bartlett
(This used to be commit edfb2ed1f22bc735af5a0c3d3ae6ab6771d28f2c)
Diffstat (limited to 'source4/libcli/ldap')
-rw-r--r-- | source4/libcli/ldap/ldap_client.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/source4/libcli/ldap/ldap_client.c b/source4/libcli/ldap/ldap_client.c index bca867b033..844238afdb 100644 --- a/source4/libcli/ldap/ldap_client.c +++ b/source4/libcli/ldap/ldap_client.c @@ -38,7 +38,6 @@ #include "param/param.h" #include "libcli/resolve/resolve.h" - /** create a new ldap_connection stucture. The event context is optional */ @@ -298,7 +297,7 @@ _PUBLIC_ struct composite_context *ldap_connect_send(struct ldap_connection *con char protocol[11]; int ret; - result = talloc_zero(NULL, struct composite_context); + result = talloc_zero(conn, struct composite_context); if (result == NULL) goto failed; result->state = COMPOSITE_STATE_IN_PROGRESS; result->async.fn = NULL; @@ -336,6 +335,12 @@ _PUBLIC_ struct composite_context *ldap_connect_send(struct ldap_connection *con SMB_ASSERT(sizeof(protocol)>10); SMB_ASSERT(sizeof(path)>1024); + /* LDAPI connections are to localhost, so give the local host name as the target for gensec */ + conn->host = talloc_asprintf(conn, "%s.%s", lp_netbios_name(conn->lp_ctx), lp_realm(conn->lp_ctx)); + if (composite_nomem(conn->host, state->ctx)) { + return result; + } + /* The %c specifier doesn't null terminate :-( */ ZERO_STRUCT(path); ret = sscanf(url, "%10[^:]://%1025c", protocol, path); |