summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2003-12-16 10:15:21 +0000
committerAndrew Tridgell <tridge@samba.org>2003-12-16 10:15:21 +0000
commitecc25195945bdaa6d9ac20b7ac7bf2a1fb6c62f3 (patch)
tree1f6965d36da85ca413d4c4504dbad934609a7f10
parent68d84436a143d9180e3026a0b2c490e39f869a76 (diff)
downloadsamba-ecc25195945bdaa6d9ac20b7ac7bf2a1fb6c62f3.tar.gz
samba-ecc25195945bdaa6d9ac20b7ac7bf2a1fb6c62f3.tar.bz2
samba-ecc25195945bdaa6d9ac20b7ac7bf2a1fb6c62f3.zip
no longer require the pipe name or tcp port number to be the first
option in the ncacn_* syntax (This used to be commit 74f36d32bb14e94a80e1963cbc95f8fba3f23335)
-rw-r--r--prog_guide.txt7
-rw-r--r--source4/librpc/rpc/dcerpc_util.c4
2 files changed, 7 insertions, 4 deletions
diff --git a/prog_guide.txt b/prog_guide.txt
index df03ecac22..b604b8ee5f 100644
--- a/prog_guide.txt
+++ b/prog_guide.txt
@@ -564,10 +564,9 @@ where TRANSPORT is either ncacn_np for SMB or ncacn_ip_tcp for RPC/TCP
"host" is an IP or hostname or netbios name
-"flags" must start with the pipe name if using the ncacn_np transport
-
-The ncacn_ip_tcp can take an integer flag giving the TCP port
-number. It must be the first flag if given.
+"flags" can include a SMB pipe name if using the ncacn_np transport or
+a TCP port number if using the ncacn_ip_tcp transport, otherwise they
+will be auto-determined.
other recognised flags are:
diff --git a/source4/librpc/rpc/dcerpc_util.c b/source4/librpc/rpc/dcerpc_util.c
index fbc97f316d..f1b719e64a 100644
--- a/source4/librpc/rpc/dcerpc_util.c
+++ b/source4/librpc/rpc/dcerpc_util.c
@@ -364,7 +364,11 @@ NTSTATUS dcerpc_parse_binding(TALLOC_CTX *mem_ctx, const char *s, struct dcerpc_
for (i=0;b->options[i];i++) {
for (j=0;j<ARRAY_SIZE(options);j++) {
if (strcasecmp(options[j].name, b->options[i]) == 0) {
+ int k;
b->flags |= options[j].flag;
+ for (k=i;b->options[k];k++) {
+ b->options[k] = b->options[k+1];
+ }
break;
}
}