Author: metze
Date: 2007-11-09 19:24:25 +0000 (Fri, 09 Nov 2007)
New Revision: 25919

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

Log:
ndr: change NTSTAUS into enum ndr_err_code (ndrdump)

librpc/tools/ndrdump.c

metze

Modified:
   branches/SAMBA_4_0/source/librpc/tools/ndrdump.c


Changeset:
Modified: branches/SAMBA_4_0/source/librpc/tools/ndrdump.c
===================================================================
--- branches/SAMBA_4_0/source/librpc/tools/ndrdump.c    2007-11-09 19:24:10 UTC 
(rev 25918)
+++ branches/SAMBA_4_0/source/librpc/tools/ndrdump.c    2007-11-09 19:24:25 UTC 
(rev 25919)
@@ -153,6 +153,7 @@
        int flags;
        poptContext pc;
        NTSTATUS status;
+       enum ndr_err_code ndr_err;
        void *st;
        void *v_st;
        const char *ctx_filename = NULL;
@@ -305,13 +306,14 @@
                ndr_pull = ndr_pull_init_blob(&blob, mem_ctx);
                ndr_pull->flags |= LIBNDR_FLAG_REF_ALLOC;
 
-               status = f->ndr_pull(ndr_pull, NDR_IN, st);
+               ndr_err = f->ndr_pull(ndr_pull, NDR_IN, st);
 
                if (ndr_pull->offset != ndr_pull->data_size) {
                        printf("WARNING! %d unread bytes while parsing context 
file\n", ndr_pull->data_size - ndr_pull->offset);
                }
 
-               if (!NT_STATUS_IS_OK(status)) {
+               if (!NDR_ERR_CODE_IS_SUCCESS(ndr_err)) {
+                       status = ndr_map_error2ntstatus(ndr_err);
                        printf("pull for context file returned %s\n", 
nt_errstr(status));
                        exit(1);
                }
@@ -341,7 +343,8 @@
        ndr_pull = ndr_pull_init_blob(&blob, mem_ctx);
        ndr_pull->flags |= LIBNDR_FLAG_REF_ALLOC;
 
-       status = f->ndr_pull(ndr_pull, flags, st);
+       ndr_err = f->ndr_pull(ndr_pull, flags, st);
+       status = ndr_map_error2ntstatus(ndr_err);
 
        printf("pull returned %s\n", nt_errstr(status));
 
@@ -378,8 +381,10 @@
 
                ndr_v_push = ndr_push_init_ctx(mem_ctx);
                
-               status = f->ndr_push(ndr_v_push, flags, st);
-               if (!NT_STATUS_IS_OK(status)) {
+               ndr_err = f->ndr_push(ndr_v_push, flags, st);
+               status = ndr_map_error2ntstatus(ndr_err);
+               printf("push returned %s\n", nt_errstr(status));
+               if (!NDR_ERR_CODE_IS_SUCCESS(ndr_err)) {
                        printf("validate push FAILED\n");
                        exit(1);
                }
@@ -394,13 +399,14 @@
                ndr_v_pull = ndr_pull_init_blob(&v_blob, mem_ctx);
                ndr_v_pull->flags |= LIBNDR_FLAG_REF_ALLOC;
 
-               status = f->ndr_pull(ndr_v_pull, flags, v_st);
-               if (!NT_STATUS_IS_OK(status)) {
+               ndr_err = f->ndr_pull(ndr_v_pull, flags, v_st);
+               status = ndr_map_error2ntstatus(ndr_err);
+               printf("pull returned %s\n", nt_errstr(status));
+               if (!NDR_ERR_CODE_IS_SUCCESS(ndr_err)) {
                        printf("validate pull FAILED\n");
                        exit(1);
                }
 
-               printf("pull returned %s\n", nt_errstr(status));
 
                if (ndr_v_pull->offset != ndr_v_pull->data_size) {
                        printf("WARNING! %d unread bytes in validation\n", 
ndr_v_pull->data_size - ndr_v_pull->offset);

Reply via email to