ndrdump: change behaviour of flags to operate as flags
authorAndrew Bartlett <abartlet@samba.org>
Fri, 12 Apr 2019 03:10:35 +0000 (15:10 +1200)
committerAndrew Bartlett <abartlet@samba.org>
Fri, 12 Apr 2019 04:38:14 +0000 (04:38 +0000)
These are called flags because that is what they become to the ndr_pull function,
but to avoid total confusion treat them as flags generally even if the values are
always exclusive (at the moment).

Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
librpc/tools/ndrdump.c

index b7eae70833e332c9f95359cb36c0acdce1d66d65..ef7f9c6613909816e12d3938d26d6c488c3bf60c 100644 (file)
@@ -201,7 +201,7 @@ static void ndr_print_dummy(struct ndr_print *ndr, const char *format, ...)
        struct ndr_pull *ndr_pull;
        struct ndr_print *ndr_print;
        TALLOC_CTX *mem_ctx;
-       int flags;
+       int flags = 0;
        poptContext pc;
        NTSTATUS status;
        enum ndr_err_code ndr_err;
@@ -316,10 +316,10 @@ static void ndr_print_dummy(struct ndr_print *ndr, const char *format, ...)
 
        if (strcmp(inout, "in") == 0 ||
            strcmp(inout, "request") == 0) {
-               flags = NDR_IN;
+               flags |= NDR_IN;
        } else if (strcmp(inout, "out") == 0 ||
                   strcmp(inout, "response") == 0) {
-               flags = NDR_OUT;
+               flags |= NDR_OUT;
        } else {
                printf("Bad inout value '%s'\n", inout);
                exit(1);
@@ -340,7 +340,7 @@ static void ndr_print_dummy(struct ndr_print *ndr, const char *format, ...)
        }
 
        if (ctx_filename) {
-               if (flags == NDR_IN) {
+               if (flags & NDR_IN) {
                        printf("Context file can only be used for \"out\" packages\n");
                        exit(1);
                }