diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2008-12-16 15:36:18 +0100 |
---|---|---|
committer | Jelmer Vernooij <jelmer@samba.org> | 2008-12-16 15:36:18 +0100 |
commit | 0f04beff337a936a66c86272ff79defd9e8ae173 (patch) | |
tree | bc5627c455fc1fcafcda95f8848df687e5d3275a /source3/librpc/idl | |
parent | f28b52ede346bbc44511d36f1714d72f7fa8abce (diff) | |
download | samba-0f04beff337a936a66c86272ff79defd9e8ae173.tar.gz samba-0f04beff337a936a66c86272ff79defd9e8ae173.tar.bz2 samba-0f04beff337a936a66c86272ff79defd9e8ae173.zip |
Rename dom_sid.idl -> server_id.idl (since it no longer actually contains the dom_sid). No longer include it from security.idl.
Diffstat (limited to 'source3/librpc/idl')
-rw-r--r-- | source3/librpc/idl/dom_sid.idl | 29 | ||||
-rw-r--r-- | source3/librpc/idl/notify.idl | 56 |
2 files changed, 56 insertions, 29 deletions
diff --git a/source3/librpc/idl/dom_sid.idl b/source3/librpc/idl/dom_sid.idl deleted file mode 100644 index c405c18726..0000000000 --- a/source3/librpc/idl/dom_sid.idl +++ /dev/null @@ -1,29 +0,0 @@ -/* - use the same structure for dom_sid2 as dom_sid. A dom_sid2 is really - just a dom sid, but with the sub_auths represented as a conformant - array. As with all in-structure conformant arrays, the array length - is placed before the start of the structure. That's what gives rise - to the extra num_auths elemenent. We don't want the Samba code to - have to bother with such esoteric NDR details, so its easier to just - define it as a dom_sid and use pidl magic to make it all work. It - just means you need to mark a sid as a "dom_sid2" in the IDL when you - know it is of the conformant array variety -*/ -cpp_quote("#define dom_sid2 dom_sid") - -/* same struct as dom_sid but inside a 28 bytes fixed buffer in NDR */ -cpp_quote("#define dom_sid28 dom_sid") - -/* same struct as dom_sid but in a variable byte buffer, which is maybe empty in NDR */ -cpp_quote("#define dom_sid0 dom_sid") - -[ - pointer_default(unique) -] -interface dom_sid -{ - struct _dummy_domsid { - uint8 dummy; - }; -} - diff --git a/source3/librpc/idl/notify.idl b/source3/librpc/idl/notify.idl new file mode 100644 index 0000000000..c4e633c254 --- /dev/null +++ b/source3/librpc/idl/notify.idl @@ -0,0 +1,56 @@ +#include "idl_types.h" + +/* + IDL structures for notify change code + + this defines the structures used in the notify database code, and + the change notify buffers +*/ + +[ + pointer_default(unique) +] +interface notify +{ + + /* structure used in the notify database */ + typedef [public] struct { + server_id server; + uint32 filter; /* filter to apply in this directory */ + uint32 subdir_filter; /* filter to apply in child directories */ + utf8string path; + uint32 path_len; /* saves some computation on search */ + pointer private_data; + } notify_entry; + + /* + to allow for efficient search for matching entries, we + divide them by the directory depth, with a separate array + per depth. The entries within each depth are sorted by path, + allowing for a bisection search. + + The max_mask and max_mask_subdir at each depth is the + bitwise or of the filters and subdir filters for all entries + at that depth. This allows a depth to be quickly skipped if + no entries will match the target filter + */ + typedef struct { + uint32 max_mask; + uint32 max_mask_subdir; + uint32 num_entries; + notify_entry entries[num_entries]; + } notify_depth; + + typedef [public] struct { + uint32 num_depths; + notify_depth depth[num_depths]; + } notify_array; + + /* structure sent between servers in notify messages */ + typedef [public] struct { + uint32 action; + utf8string path; + pointer private_data; + } notify_event; + +} |