r4139: 2nd attempt at fixing the null ptr in size_is() problem.
[samba.git] / source4 / librpc / ndr / ndr.c
index 7b55f4efb7b3fc5222de413d958c76a8175312b6..0543fbf0d36125384e9162aff499750ac39c8d2e 100644 (file)
@@ -700,12 +700,9 @@ uint32_t ndr_get_array_size(struct ndr_pull *ndr, const void *p)
 /*
   check the stored array size field
 */
-NTSTATUS ndr_check_array_size(struct ndr_pull *ndr, const void **p, uint32_t size)
+NTSTATUS ndr_check_array_size(struct ndr_pull *ndr, void *p, uint32_t size)
 {
-       uint32 stored;
-       if (*p == NULL) {
-               return NT_STATUS_OK;
-       }
+       uint32_t stored;
        NDR_CHECK(ndr_token_retrieve(&ndr->array_size_list, p, &stored));
        if (stored != size) {
                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, 
@@ -744,9 +741,6 @@ uint32_t ndr_get_array_length(struct ndr_pull *ndr, const void *p)
 NTSTATUS ndr_check_array_length(struct ndr_pull *ndr, void *p, uint32_t length)
 {
        uint32_t stored;
-       if (*(void **)p == NULL) {
-               return NT_STATUS_OK;
-       }
        NDR_CHECK(ndr_token_retrieve(&ndr->array_length_list, p, &stored));
        if (stored != length) {
                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE,