]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
librpc: Remove last callers of ndr_pull_get_switch_value()
authorAndrew Bartlett <abartlet@samba.org>
Tue, 26 Nov 2019 05:35:36 +0000 (18:35 +1300)
committerAndrew Bartlett <abartlet@samba.org>
Thu, 12 Dec 2019 02:30:40 +0000 (02:30 +0000)
By removing this we know we do not need to worry about this list
growing without bounds.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=13876

Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Gary Lockyer <gary@catalyst.net.nz>
librpc/ndr/ndr_drsuapi.c

index 084057231d0f94b1c6d60ee25d985d0bbf9e5464..81d7112d691c13d292d479c56274e4dfdbd24132 100644 (file)
@@ -496,12 +496,11 @@ enum ndr_err_code ndr_push_drsuapi_DsBindInfo(struct ndr_push *ndr, int ndr_flag
 
 enum ndr_err_code ndr_pull_drsuapi_DsBindInfo(struct ndr_pull *ndr, int ndr_flags, union drsuapi_DsBindInfo *r)
 {
-       uint32_t level;
        uint32_t _flags_save = ndr->flags;
        ndr->flags = ndr->flags & ~LIBNDR_FLAG_NDR64;
-       level = ndr_pull_get_switch_value(ndr, r);
        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
        if (ndr_flags & NDR_SCALARS) {
+               uint32_t level = ndr_pull_steal_switch_value(ndr, r);
                NDR_CHECK(ndr_pull_union_align(ndr, 4));
                switch (level) {
                        case 24: {
@@ -551,25 +550,6 @@ enum ndr_err_code ndr_pull_drsuapi_DsBindInfo(struct ndr_pull *ndr, int ndr_flag
 
                }
        }
-       if (ndr_flags & NDR_BUFFERS) {
-               switch (level) {
-                       case 24:
-                       break;
-
-                       case 28:
-                       break;
-
-                       case 48:
-                       break;
-
-                       case 52:
-                       break;
-
-                       default:
-                       break;
-
-               }
-       }
        ndr->flags = _flags_save;
        return NDR_ERR_SUCCESS;
 }