diff options
Diffstat (limited to 'librpc')
-rw-r--r-- | librpc/idl/dnsp.idl | 45 | ||||
-rw-r--r-- | librpc/idl/wscript_build | 2 |
2 files changed, 46 insertions, 1 deletions
diff --git a/librpc/idl/dnsp.idl b/librpc/idl/dnsp.idl new file mode 100644 index 0000000000..23b1bef813 --- /dev/null +++ b/librpc/idl/dnsp.idl @@ -0,0 +1,45 @@ +#include "idl_types.h" + +/* + IDL structures for DNSP structures + + See [MS-DNSP].pdf in MCPP for details +*/ + +import "misc.idl"; + +/* + note that this is not a real RPC interface. We are just using PIDL + to save us a lot of tedious hand parsing of the dnsRecord + attribute. The uuid is randomly generated. + */ +[ + uuid("bdd66e9e-d45f-4202-85c0-6132edc4f30a"), + version(0.0), + pointer_default(unique), + helpstring("DNSP interfaces") +] + +interface dnsp +{ + /* this is the format for the dnsRecord attribute in the DNS + partitions in AD */ + typedef [public] struct { + uint16 wDataLength; + uint16 wType; + uint32 dwFlags; + uint32 dwSerial; + uint32 dwTtlSeconds; + uint32 dwTimeStamp; + uint32 dwReserved; + [flag(NDR_BIG_ENDIAN)] ipv4address ip; + } dnsp_DnssrvRpcRecord; + + + /* + this is a convenience hook for ndrdump + */ + void decode_DnssrvRpcRecord( + [in] dnsp_DnssrvRpcRecord blob + ); +} diff --git a/librpc/idl/wscript_build b/librpc/idl/wscript_build index c5be1b7447..89bd83e955 100644 --- a/librpc/idl/wscript_build +++ b/librpc/idl/wscript_build @@ -20,6 +20,6 @@ bld.SAMBA_PIDL_LIST('PIDL', output_dir='../gen_ndr') bld.SAMBA_PIDL_LIST('PIDL', - 'rap.idl idmap.idl', + 'rap.idl idmap.idl dnsp.idl', options='--header --ndr-parser', output_dir='../gen_ndr') |