[SCM] Samba Shared Repository - branch master updated -
release-4-0-0alpha7-2270-gddce3b5
Andrew Tridgell
tridge at samba.org
Fri Jun 12 02:24:32 GMT 2009
The branch, master has been updated
via ddce3b5ac8a5d308c276f05750ee111b8e429e46 (commit)
via f5a47dc4bf2793ab328c8b0e35adace497819e7d (commit)
via bbe758d55b58a28ae2585de07fde835b14445843 (commit)
from 3938d1e5fa1996f64e92d33d6893bab620d16b23 (commit)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit ddce3b5ac8a5d308c276f05750ee111b8e429e46
Author: Andrew Tridgell <tridge at samba.org>
Date: Fri Jun 12 12:22:53 2009 +1000
two more NT status codes that we get on DRS with w2k8-R2
commit f5a47dc4bf2793ab328c8b0e35adace497819e7d
Author: Andrew Tridgell <tridge at samba.org>
Date: Fri Jun 12 12:22:25 2009 +1000
avoid crashes in ndr_print_*() calls
This is a hackish fix, but it will do for now
commit bbe758d55b58a28ae2585de07fde835b14445843
Author: Andrew Tridgell <tridge at samba.org>
Date: Thu Jun 11 15:21:29 2009 +1000
always enable RPC debugging with a debug level >= 100.
This helps with tools where setting the binding string is not
possible, such as net
-----------------------------------------------------------------------
Summary of changes:
libcli/util/ntstatus.h | 3 ++-
librpc/ndr/ndr.c | 5 +++++
source4/libcli/util/nterr.c | 2 ++
source4/librpc/rpc/dcerpc.c | 4 ++++
source4/librpc/rpc/dcerpc_util.c | 4 ++++
5 files changed, 17 insertions(+), 1 deletions(-)
Changeset truncated at 500 lines:
diff --git a/libcli/util/ntstatus.h b/libcli/util/ntstatus.h
index dc1fcc4..5f05f9a 100644
--- a/libcli/util/ntstatus.h
+++ b/libcli/util/ntstatus.h
@@ -606,7 +606,8 @@ typedef uint32_t NTSTATUS;
#define NT_STATUS_RPC_PROTSEQ_NOT_SUPPORTED NT_STATUS(0xC0000000 | 0x20004)
#define NT_STATUS_RPC_UNSUPPORTED_NAME_SYNTAX NT_STATUS(0xC0000000 | 0x20026)
#define NT_STATUS_RPC_NT_CALL_FAILED NT_STATUS(0xC0000000 | 0x2001B)
-
+#define NT_STATUS_ERROR_DS_OBJ_STRING_NAME_EXISTS NT_STATUS(0xC0000000 | 0x2071)
+#define NT_STATUS_ERROR_DS_INCOMPATIBLE_VERSION NT_STATUS(0xC0000000 | 0x00002177)
/* I use NT_STATUS_FOOBAR when I have no idea what error code to use -
* this means we need a torture test */
diff --git a/librpc/ndr/ndr.c b/librpc/ndr/ndr.c
index 8188ec9..f253bcb 100644
--- a/librpc/ndr/ndr.c
+++ b/librpc/ndr/ndr.c
@@ -218,6 +218,7 @@ _PUBLIC_ void ndr_print_debug(ndr_print_fn_t fn, const char *name, void *ptr)
ndr->print = ndr_print_debug_helper;
ndr->depth = 1;
ndr->flags = 0;
+ ndr->iconv_convenience = global_iconv_convenience;
fn(ndr, name, ptr);
talloc_free(ndr);
}
@@ -236,6 +237,7 @@ _PUBLIC_ void ndr_print_union_debug(ndr_print_fn_t fn, const char *name, uint32_
ndr->print = ndr_print_debug_helper;
ndr->depth = 1;
ndr->flags = 0;
+ ndr->iconv_convenience = global_iconv_convenience;
ndr_print_set_switch_value(ndr, ptr, level);
fn(ndr, name, ptr);
talloc_free(ndr);
@@ -255,6 +257,7 @@ _PUBLIC_ void ndr_print_function_debug(ndr_print_function_t fn, const char *name
ndr->print = ndr_print_debug_helper;
ndr->depth = 1;
ndr->flags = 0;
+ ndr->iconv_convenience = global_iconv_convenience;
fn(ndr, name, flags, ptr);
talloc_free(ndr);
}
@@ -276,6 +279,7 @@ _PUBLIC_ char *ndr_print_struct_string(TALLOC_CTX *mem_ctx, ndr_print_fn_t fn, c
ndr->print = ndr_print_string_helper;
ndr->depth = 1;
ndr->flags = 0;
+ ndr->iconv_convenience = global_iconv_convenience;
fn(ndr, name, ptr);
ret = talloc_steal(mem_ctx, (char *)ndr->private_data);
failed:
@@ -300,6 +304,7 @@ _PUBLIC_ char *ndr_print_union_string(TALLOC_CTX *mem_ctx, ndr_print_fn_t fn, co
ndr->print = ndr_print_string_helper;
ndr->depth = 1;
ndr->flags = 0;
+ ndr->iconv_convenience = global_iconv_convenience;
ndr_print_set_switch_value(ndr, ptr, level);
fn(ndr, name, ptr);
ret = talloc_steal(mem_ctx, (char *)ndr->private_data);
diff --git a/source4/libcli/util/nterr.c b/source4/libcli/util/nterr.c
index c196433..e9db904 100644
--- a/source4/libcli/util/nterr.c
+++ b/source4/libcli/util/nterr.c
@@ -550,6 +550,8 @@ static const nt_err_code_struct nt_errs[] =
{ "NT_STATUS_DOWNGRADE_DETECTED", NT_STATUS_DOWNGRADE_DETECTED },
{ "NT_STATUS_DS_BUSY", NT_STATUS_DS_BUSY },
{ "NT_STATUS_INVALID_LOCK_RANGE", NT_STATUS_INVALID_LOCK_RANGE },
+ { "NT_STATUS_ERROR_DS_OBJ_STRING_NAME_EXISTS", NT_STATUS_ERROR_DS_OBJ_STRING_NAME_EXISTS },
+ { "NT_STATUS_ERROR_DS_INCOMPATIBLE_VERSION", NT_STATUS_ERROR_DS_INCOMPATIBLE_VERSION },
{ "STATUS_MORE_ENTRIES", STATUS_MORE_ENTRIES },
{ "STATUS_SOME_UNMAPPED", STATUS_SOME_UNMAPPED },
{ "STATUS_NOTIFY_CLEANUP", STATUS_NOTIFY_CLEANUP },
diff --git a/source4/librpc/rpc/dcerpc.c b/source4/librpc/rpc/dcerpc.c
index c8add30..13f649c 100644
--- a/source4/librpc/rpc/dcerpc.c
+++ b/source4/librpc/rpc/dcerpc.c
@@ -114,6 +114,10 @@ _PUBLIC_ struct dcerpc_pipe *dcerpc_pipe_init(TALLOC_CTX *mem_ctx, struct tevent
ZERO_STRUCT(p->syntax);
ZERO_STRUCT(p->transfer_syntax);
+ if (DEBUGLVL(100)) {
+ p->conn->flags |= DCERPC_DEBUG_PRINT_BOTH;
+ }
+
return p;
}
diff --git a/source4/librpc/rpc/dcerpc_util.c b/source4/librpc/rpc/dcerpc_util.c
index d57cc57..4524673 100644
--- a/source4/librpc/rpc/dcerpc_util.c
+++ b/source4/librpc/rpc/dcerpc_util.c
@@ -513,6 +513,10 @@ struct composite_context *dcerpc_pipe_auth_send(struct dcerpc_pipe *p,
conn = s->pipe->conn;
conn->flags = binding->flags;
+
+ if (DEBUGLVL(100)) {
+ conn->flags |= DCERPC_DEBUG_PRINT_BOTH;
+ }
/* remember the binding string for possible secondary connections */
conn->binding_string = dcerpc_binding_string(p, binding);
--
Samba Shared Repository
More information about the samba-cvs
mailing list