svn commit: samba r20326 - in branches/SAMBA_4_0/source/librpc/rpc: .

metze at samba.org metze at samba.org
Fri Dec 22 19:38:32 GMT 2006


Author: metze
Date: 2006-12-22 19:38:32 +0000 (Fri, 22 Dec 2006)
New Revision: 20326

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20326

Log:
always set the binding->target_hostname!
we crashed before trying ncacn_np: for frsrpc
as frsrpc doesn't have a ncacn_np endpoint listed
in the idl header and the endpoint mapping code
was trying our smbcli lib with a
NULL target_hostname -> called_name 

metze
Modified:
   branches/SAMBA_4_0/source/librpc/rpc/dcerpc_util.c


Changeset:
Modified: branches/SAMBA_4_0/source/librpc/rpc/dcerpc_util.c
===================================================================
--- branches/SAMBA_4_0/source/librpc/rpc/dcerpc_util.c	2006-12-22 18:53:39 UTC (rev 20325)
+++ branches/SAMBA_4_0/source/librpc/rpc/dcerpc_util.c	2006-12-22 19:38:32 UTC (rev 20326)
@@ -648,6 +648,7 @@
 	ZERO_STRUCT(binding->object);
 	binding->options = NULL;
 	binding->host = NULL;
+	binding->target_hostname = NULL;
 	binding->flags = 0;
 
 	binding->transport = dcerpc_transport_by_tower(tower);
@@ -682,6 +683,8 @@
 	/* Set network address */
 	if (tower->num_floors >= 5) {
 		binding->host = dcerpc_floor_get_rhs_data(mem_ctx, &tower->floors[4]);
+		NT_STATUS_HAVE_NO_MEMORY(binding->host);
+		binding->target_hostname = binding->host;
 	}
 	*b_out = binding;
 	return NT_STATUS_OK;
@@ -942,11 +945,12 @@
 	if (composite_nomem(epmapper_binding, c)) return c;
 
 	/* basic endpoint mapping data */
-	epmapper_binding->transport  = binding->transport;
-	epmapper_binding->host       = talloc_reference(epmapper_binding, binding->host);
-	epmapper_binding->options    = NULL;
-	epmapper_binding->flags      = 0;
-	epmapper_binding->endpoint   = NULL;
+	epmapper_binding->transport		= binding->transport;
+	epmapper_binding->host			= talloc_reference(epmapper_binding, binding->host);
+	epmapper_binding->target_hostname       = epmapper_binding->host;
+	epmapper_binding->options		= NULL;
+	epmapper_binding->flags			= 0;
+	epmapper_binding->endpoint		= NULL;
 
 	/* initiate rpc pipe connection */
 	pipe_connect_req = dcerpc_pipe_connect_b_send(c, epmapper_binding, &dcerpc_table_epmapper,



More information about the samba-cvs mailing list