/* DNS_RECORD_TYPE is defined in dnsp.idl as dns_record_type */
/* DNS_RPC_NODE_FLAGS is defined in dnsp.idl as dns_rpc_node_flags */
- typedef [gensize] struct {
+ typedef [public,gensize] struct {
[value(strlen(str))] uint8 len;
[charset(UTF8)] uint8 str[len];
}
}
DNS_RPC_RECORD_NAME_PREFERENCE;
+ typedef [gensize,nopull,nopush] struct {
+ uint8 count;
+ DNS_RPC_NAME str[count];
+ }
+ DNS_RPC_RECORD_STRING;
+
typedef struct {
uint16 wPriority;
uint16 wWeight;
[case(DNS_TYPE_PTR)] DNS_RPC_NAME ptr;
[case(DNS_TYPE_HINFO)] DNS_RPC_NAME hinfo;
[case(DNS_TYPE_MX)] DNS_RPC_RECORD_NAME_PREFERENCE mx;
- [case(DNS_TYPE_TXT)] DNS_RPC_NAME name;
+ [case(DNS_TYPE_TXT)] DNS_RPC_RECORD_STRING txt;
[case(DNS_TYPE_AAAA)] ipv6address ipv6;
[case(DNS_TYPE_SRV)] DNS_RPC_RECORD_SRV srv;
[case(DNS_TYPE_DNAME)] DNS_RPC_NAME name;
DNS_RPC_DP_REPLICA;
#define PDNS_RPC_DP_REPLICA DNS_RPC_DP_REPLICA*
+ typedef [v1_enum] enum {
+ DNS_DP_OKAY = 0x00,
+ DNS_DP_STATE_REPL_INCOMING = 0x01,
+ DNS_DP_STATE_REPL_OUTGOING = 0x02,
+ DNS_DP_STATE_UNKNOWN = 0x03
+ } DNS_DP_STATE;
+
typedef struct {
DWORD dwRpcStructureVersion;
DWORD dwReserved0;
[string, charset(UTF16)] wchar_t * pszCrDn;
DWORD dwFlags;
DWORD dwZoneCount;
- DWORD dwState;
+ DNS_DP_STATE dwState;
DWORD dwReserved[ 3 ];
DNS_EXTENSION pwszReserved[ 3 ];
DNS_RPC_ZONE_CREATE_INFO_LONGHORN;
#define DNS_RPC_ZONE_CREATE_INFO DNS_RPC_ZONE_CREATE_INFO_LONGHORN
- // Zone export
+ /* Zone export */
typedef struct {
DWORD dwRpcStructureVersion;
DWORD dwReserved0;