diff options
author | Andrew Tridgell <tridge@samba.org> | 2010-12-22 12:13:44 +1100 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 2010-12-22 04:45:46 +0100 |
commit | 987b49c8e201310a563a21d05412d92dbf7b1beb (patch) | |
tree | c9c52c0af7cac10317eecc3c5561c8e97ee13f9f /librpc | |
parent | 88c3e505e997cbb97fdcecbeea241238b2e48f70 (diff) | |
download | samba-987b49c8e201310a563a21d05412d92dbf7b1beb.tar.gz samba-987b49c8e201310a563a21d05412d92dbf7b1beb.tar.bz2 samba-987b49c8e201310a563a21d05412d92dbf7b1beb.zip |
dns: fixed dns record format
based on new WSPP docs from Bryan Burgin
Autobuild-User: Andrew Tridgell <tridge@samba.org>
Autobuild-Date: Wed Dec 22 04:45:46 CET 2010 on sn-devel-104
Diffstat (limited to 'librpc')
-rw-r--r-- | librpc/idl/dnsp.idl | 32 |
1 files changed, 25 insertions, 7 deletions
diff --git a/librpc/idl/dnsp.idl b/librpc/idl/dnsp.idl index eed0c478fb..495a3e2af2 100644 --- a/librpc/idl/dnsp.idl +++ b/librpc/idl/dnsp.idl @@ -23,7 +23,7 @@ import "misc.idl"; interface dnsp { - typedef enum { + typedef [enum16bit] enum { DNS_TYPE_ZERO = 0x0, DNS_TYPE_A = 0x1, DNS_TYPE_NS = 0x2, @@ -65,6 +65,22 @@ interface dnsp DNS_TYPE_WINSR = 0xFF02 } dns_record_type; + typedef [enum8bit] enum { + DNS_RANK_NONE = 0x00, + DNS_RANK_CACHE_BIT = 0x01, + DNS_RANK_ROOT_HINT = 0x08, + DNS_RANK_OUTSIDE_GLUE = 0x20, + DNS_RANK_CACHE_NA_ADDITIONAL = 0x31, + DNS_RANK_CACHE_NA_AUTHORITY = 0x41, + DNS_RANK_CACHE_A_ADDITIONAL = 0x51, + DNS_RANK_CACHE_NA_ANSWER = 0x61, + DNS_RANK_CACHE_A_AUTHORITY = 0x71, + DNS_RANK_GLUE = 0x80, + DNS_RANK_NS_GLUE = 0x82, + DNS_RANK_CACHE_A_ANSWER = 0xc1, + DNS_RANK_ZONE = 0xf0 + } dns_record_rank; + typedef [public] struct { uint32 serial; uint32 refresh; @@ -110,12 +126,14 @@ interface dnsp partitions in AD */ typedef [public] struct { [value(ndr_size_dnsRecordData(&data,wType,ndr->flags))] uint16 wDataLength; - dns_record_type wType; - uint32 dwFlags; - uint32 dwSerial; - [flag(NDR_BIG_ENDIAN)] uint32 dwTtlSeconds; - uint32 dwTimeStamp; - uint32 dwReserved; + dns_record_type wType; + [value(5)] uint8 version; + dns_record_rank rank; + uint16 flags; + uint32 dwSerial; + [flag(NDR_BIG_ENDIAN)] uint32 dwTtlSeconds; + uint32 dwReserved; + uint32 dwTimeStamp; [switch_is(wType)] dnsRecordData data; } dnsp_DnssrvRpcRecord; |