svn commit: samba r3209 - in branches/SAMBA_4_0/source: librpc/rpc
rpc_server
jelmer at samba.org
jelmer at samba.org
Mon Oct 25 10:21:41 GMT 2004
Author: jelmer
Date: 2004-10-25 10:21:41 +0000 (Mon, 25 Oct 2004)
New Revision: 3209
WebSVN: http://websvn.samba.org/websvn/changeset.php?rep=samba&path=/branches/SAMBA_4_0/source&rev=3209&nolog=1
Log:
- Create directory for ncalrpc with correct mode
- Support binding strings like :
ncacn_np:[sign]
ncacn_np:myhost[seal,sign,endpoint]
again
Modified:
branches/SAMBA_4_0/source/librpc/rpc/dcerpc_sock.c
branches/SAMBA_4_0/source/librpc/rpc/dcerpc_util.c
branches/SAMBA_4_0/source/rpc_server/dcerpc_sock.c
Changeset:
Modified: branches/SAMBA_4_0/source/librpc/rpc/dcerpc_sock.c
===================================================================
--- branches/SAMBA_4_0/source/librpc/rpc/dcerpc_sock.c 2004-10-25 09:41:24 UTC (rev 3208)
+++ branches/SAMBA_4_0/source/librpc/rpc/dcerpc_sock.c 2004-10-25 10:21:41 UTC (rev 3209)
@@ -403,6 +403,7 @@
strncpy(sa.sun_path, path, sizeof(sa.sun_path));
if (connect(fd, &sa, sizeof(sa)) < 0) {
+ DEBUG(0, ("Unable to connect to unix socket %s: %s\n", path, strerror(errno)));
return NT_STATUS_BAD_NETWORK_NAME;
}
@@ -487,6 +488,7 @@
strncpy(sa.sun_path, full_path, sizeof(sa.sun_path));
if (connect(fd, &sa, sizeof(sa)) < 0) {
+ DEBUG(0, ("Unable to connect to unix socket %s (%s): %s\n", full_path, identifier, strerror(errno)));
return NT_STATUS_BAD_NETWORK_NAME;
}
Modified: branches/SAMBA_4_0/source/librpc/rpc/dcerpc_util.c
===================================================================
--- branches/SAMBA_4_0/source/librpc/rpc/dcerpc_util.c 2004-10-25 09:41:24 UTC (rev 3208)
+++ branches/SAMBA_4_0/source/librpc/rpc/dcerpc_util.c 2004-10-25 10:21:41 UTC (rev 3209)
@@ -220,6 +220,7 @@
s = talloc_asprintf_append(s, ",%s", b->options[i]);
if (!s) return NULL;
}
+
for (i=0;i<ARRAY_SIZE(ncacn_options);i++) {
if (b->flags & ncacn_options[i].flag) {
s = talloc_asprintf_append(s, ",%s", ncacn_options[i].name);
@@ -325,14 +326,6 @@
b->options[i] = options;
b->options[i+1] = NULL;
- /* Endpoint is first option */
- b->endpoint = b->options[0];
- if (strlen(b->endpoint) == 0) b->endpoint = NULL;
-
- for (i=0;b->options[i];i++) {
- b->options[i] = b->options[i+1];
- }
-
/* some options are pre-parsed for convenience */
for (i=0;b->options[i];i++) {
for (j=0;j<ARRAY_SIZE(ncacn_options);j++) {
@@ -348,6 +341,16 @@
}
}
+ if (b->options[0]) {
+ /* Endpoint is first option */
+ b->endpoint = b->options[0];
+ if (strlen(b->endpoint) == 0) b->endpoint = NULL;
+
+ for (i=0;b->options[i];i++) {
+ b->options[i] = b->options[i+1];
+ }
+ }
+
if (b->options[0] == NULL)
b->options = NULL;
Modified: branches/SAMBA_4_0/source/rpc_server/dcerpc_sock.c
===================================================================
--- branches/SAMBA_4_0/source/rpc_server/dcerpc_sock.c 2004-10-25 09:41:24 UTC (rev 3208)
+++ branches/SAMBA_4_0/source/rpc_server/dcerpc_sock.c 2004-10-25 10:21:41 UTC (rev 3209)
@@ -90,8 +90,10 @@
char *full_path;
if (!e->ep_description.endpoint) {
- /* No identifier specified: generate one */
- e->ep_description.endpoint = generate_random_str(dce_ctx, 10);
+ /* No identifier specified: use DEFAULT.
+ * DO NOT hardcode this value anywhere else. Rather, specify
+ * no endpoint and let the epmapper worry about it. */
+ e->ep_description.endpoint = talloc_strdup(dce_ctx, "DEFAULT");
}
full_path = talloc_asprintf(dce_ctx, "%s/%s", lp_ncalrpc_dir(), e->ep_description.endpoint);
More information about the samba-cvs
mailing list