libndr: add ndr_push_relative_ptr2_start and ndr_push_relative_ptr2_end.
authorGünther Deschner <gd@samba.org>
Mon, 14 Dec 2009 13:08:34 +0000 (14:08 +0100)
committerKarolin Seeger <kseeger@samba.org>
Fri, 19 Feb 2010 11:30:22 +0000 (12:30 +0100)
Guenther

librpc/ndr/libndr.h
librpc/ndr/ndr.c

index 7109b73d2a962f395e3dbf6a61de2d48b6802378..9b71efb83f558e466b4f8931c92e36237c8d4195 100644 (file)
@@ -370,6 +370,8 @@ enum ndr_err_code ndr_push_setup_relative_base_offset1(struct ndr_push *ndr, con
 enum ndr_err_code ndr_push_setup_relative_base_offset2(struct ndr_push *ndr, const void *p);
 enum ndr_err_code ndr_push_relative_ptr1(struct ndr_push *ndr, const void *p);
 enum ndr_err_code ndr_push_relative_ptr2(struct ndr_push *ndr, const void *p);
+enum ndr_err_code ndr_push_relative_ptr2_start(struct ndr_push *ndr, const void *p);
+enum ndr_err_code ndr_push_relative_ptr2_end(struct ndr_push *ndr, const void *p);
 uint32_t ndr_pull_get_relative_base_offset(struct ndr_pull *ndr);
 void ndr_pull_restore_relative_base_offset(struct ndr_pull *ndr, uint32_t offset);
 enum ndr_err_code ndr_pull_setup_relative_base_offset1(struct ndr_pull *ndr, const void *p, uint32_t offset);
index 8188ec998fe28e4b233a8e594a1a3cae6be3f1b7..9b4edacd9dfc09d2e4ba7f4161856dfdd990909b 100644 (file)
@@ -1062,6 +1062,30 @@ _PUBLIC_ enum ndr_err_code ndr_push_relative_ptr2(struct ndr_push *ndr, const vo
        return NDR_ERR_SUCCESS;
 }
 
+/*
+  push a relative object - stage2 start
+  this is called during buffers processing
+*/
+_PUBLIC_ enum ndr_err_code ndr_push_relative_ptr2_start(struct ndr_push *ndr, const void *p)
+{
+       if (p == NULL) {
+               return NDR_ERR_SUCCESS;
+       }
+       return ndr_push_relative_ptr2(ndr, p);
+}
+
+/*
+  push a relative object - stage2 end
+  this is called during buffers processing
+*/
+_PUBLIC_ enum ndr_err_code ndr_push_relative_ptr2_end(struct ndr_push *ndr, const void *p)
+{
+       if (p == NULL) {
+               return NDR_ERR_SUCCESS;
+       }
+       return NDR_ERR_SUCCESS;
+}
+
 /*
   get the current base for relative pointers for the pull
 */