summaryrefslogtreecommitdiff
path: root/source4/build/pidl/eparser.h
diff options
context:
space:
mode:
authorTim Potter <tpot@samba.org>2004-08-16 04:08:36 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 12:58:00 -0500
commit644200235a7c8dc7259e13c536f75735674f80de (patch)
tree12f5dafc75daf248d977339337450ff4bebcdee8 /source4/build/pidl/eparser.h
parent39686072d5539003f8a2e2679311c5057ee82041 (diff)
downloadsamba-644200235a7c8dc7259e13c536f75735674f80de.tar.gz
samba-644200235a7c8dc7259e13c536f75735674f80de.tar.bz2
samba-644200235a7c8dc7259e13c536f75735674f80de.zip
r1826: Implement some stub functions: ndr_pull_{save,restore,set_offset}()
Implement ndr_pull_relative() Call ndr_pull_uintX() for ndr_pull_intX() Generate warnings for unimplemented functions pulling NTTIME and HYPER_T. Implement ndr_pull_dom_sid2() We now dissect a lot more of the samr torture test without errors. (This used to be commit 197fb3a264536ee84d4b02a8a349c6b21e91b1f5)
Diffstat (limited to 'source4/build/pidl/eparser.h')
-rw-r--r--source4/build/pidl/eparser.h17
1 files changed, 14 insertions, 3 deletions
diff --git a/source4/build/pidl/eparser.h b/source4/build/pidl/eparser.h
index 93aaddff38..fad0de5680 100644
--- a/source4/build/pidl/eparser.h
+++ b/source4/build/pidl/eparser.h
@@ -73,6 +73,11 @@ struct ndr_pull {
int flags;
};
+struct ndr_pull_save {
+ guint32 offset;
+ struct ndr_pull_save *next;
+};
+
typedef int NTSTATUS;
typedef guint64 uint64;
typedef guint32 uint32;
@@ -116,9 +121,15 @@ void ndr_pull_array(struct ndr_pull *ndr, int ndr_flags, proto_tree *tree,
void (*pull_fn)(struct ndr_pull *, int ndr_flags,
proto_tree *tree, void *data));
-void ndr_pull_relative(struct ndr_pull *ndr, void *data, int size,
- void (*fn)(struct ndr_pull *, int ndr_flags,
- char *name));
+void ndr_pull_save(struct ndr_pull *ndr, struct ndr_pull_save *save);
+
+void ndr_pull_restore(struct ndr_pull *ndr, struct ndr_pull_save *save);
+
+void ndr_pull_set_offset(struct ndr_pull *ndr, guint32 ofs);
+
+void ndr_pull_relative(struct ndr_pull *ndr, proto_tree *tree, void *data,
+ int size, void (*fn)(struct ndr_pull *, int ndr_flags,
+ char *name));
void ndr_pull_ptr(struct ndr_pull *ndr, proto_tree *tree, int hf, guint32 *ptr);