summaryrefslogtreecommitdiff
path: root/source4/librpc/idl
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2005-03-06 17:02:14 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:10:58 -0500
commitffae01d432c715961c44e499258ee2a9f7e3d5f1 (patch)
tree46ba7f1e6fdfca93581c9426c0ab68068b1d1963 /source4/librpc/idl
parent5658167806a6fbe70288a22b0304a3cfd773c44f (diff)
downloadsamba-ffae01d432c715961c44e499258ee2a9f7e3d5f1.tar.gz
samba-ffae01d432c715961c44e499258ee2a9f7e3d5f1.tar.bz2
samba-ffae01d432c715961c44e499258ee2a9f7e3d5f1.zip
r5672: Use switch_type() and the token storage mechanism for unions:
- Makes union handling less special - Allows unions in arrays, etc - Compatible with midl - Pidl will warn about switch_type() and the type of the switch_is() variable being different (This used to be commit dc6b4ffc82a191631bc16a4b93a4916a39183ec6)
Diffstat (limited to 'source4/librpc/idl')
-rw-r--r--source4/librpc/idl/drsuapi.idl18
-rw-r--r--source4/librpc/idl/dssetup.idl2
-rw-r--r--source4/librpc/idl/echo.idl4
-rw-r--r--source4/librpc/idl/lsa.idl4
-rw-r--r--source4/librpc/idl/netlogon.idl8
-rw-r--r--source4/librpc/idl/samr.idl10
-rw-r--r--source4/librpc/idl/xattr.idl4
7 files changed, 25 insertions, 25 deletions
diff --git a/source4/librpc/idl/drsuapi.idl b/source4/librpc/idl/drsuapi.idl
index 72197aec16..759599e707 100644
--- a/source4/librpc/idl/drsuapi.idl
+++ b/source4/librpc/idl/drsuapi.idl
@@ -127,7 +127,7 @@ interface drsuapi
uint32 unknown1;
} drsuapi_DsReplicaSyncRequest1;
- typedef union {
+ typedef [switch_type(int32)] union {
[case(1)] drsuapi_DsReplicaSyncRequest1 req1;
} drsuapi_DsReplicaSyncRequest;
@@ -222,7 +222,7 @@ interface drsuapi
[size_is(count)] drsuapi_DsNameString *names[];
} drsuapi_DsNameRequest1;
- typedef union {
+ typedef [switch_type(int32)] union {
[case(1)] drsuapi_DsNameRequest1 req1;
} drsuapi_DsNameRequest;
@@ -237,7 +237,7 @@ interface drsuapi
[size_is(count)] drsuapi_DsNameInfo1 *array[];
} drsuapi_DsNameCtr1;
- typedef union {
+ typedef [switch_type(int32)] union {
[case(1)] drsuapi_DsNameCtr1 *ctr1;
} drsuapi_DsNameCtr;
@@ -264,7 +264,7 @@ interface drsuapi
[size_is(count)] drsuapi_DsNameString *spn_names[];
} drsuapi_DsWriteAccountSpnRequest1;
- typedef union {
+ typedef [switch_type(int32)] union {
[case(1)] drsuapi_DsWriteAccountSpnRequest1 req1;
} drsuapi_DsWriteAccountSpnRequest;
@@ -272,7 +272,7 @@ interface drsuapi
WERROR status;
} drsuapi_DsWriteAccountSpnResult1;
- typedef union {
+ typedef [switch_type(int32)] union {
[case(1)] drsuapi_DsWriteAccountSpnResult1 res1;
} drsuapi_DsWriteAccountSpnResult;
@@ -298,7 +298,7 @@ interface drsuapi
int32 level; /* specifies the switch level for the request */
} drsuapi_DsGetDCInfoRequest1;
- typedef union {
+ typedef [switch_type(int32)] union {
[case(1)] drsuapi_DsGetDCInfoRequest1 req1;
} drsuapi_DsGetDCInfoRequest;
@@ -354,7 +354,7 @@ interface drsuapi
[size_is(count)] drsuapi_DsGetDCInfo01 *array[];
} drsuapi_DsGetDCInfoCtr01;
- typedef union {
+ typedef [switch_type(int32)] union {
[case(1)] drsuapi_DsGetDCInfoCtr1 ctr1;
[case(2)] drsuapi_DsGetDCInfoCtr2 ctr2;
[case(-1)] drsuapi_DsGetDCInfoCtr01 ctr01;
@@ -416,7 +416,7 @@ interface drsuapi
uint32 unknown2;
} drsuapi_DsReplicaGetInfoRequest2;
- typedef union {
+ typedef [switch_type(drsuapi_DsReplicaGetInfoLevel)] union {
[case(DRSUAPI_DS_REPLICA_GET_INFO)] drsuapi_DsReplicaGetInfoRequest1 req1;
[case(DRSUAPI_DS_REPLICA_GET_INFO2)] drsuapi_DsReplicaGetInfoRequest2 req2;
} drsuapi_DsReplicaGetInfoRequest;
@@ -628,7 +628,7 @@ interface drsuapi
[size_is(count)] drsuapi_DsReplica06 array[];
} drsuapi_DsReplica06Ctr;
- typedef union {
+ typedef [switch_type(drsuapi_DsReplicaInfoType)] union {
[case(DRSUAPI_DS_REPLICA_INFO_NEIGHBORS)] drsuapi_DsReplicaNeighbourCtr *neighbours;
[case(DRSUAPI_DS_REPLICA_INFO_CURSORS)] drsuapi_DsReplicaCoursorCtr *coursors;
[case(DRSUAPI_DS_REPLICA_INFO_OBJ_METADATA)] drsuapi_DsReplicaObjMetaDataCtr *objmetadata;
diff --git a/source4/librpc/idl/dssetup.idl b/source4/librpc/idl/dssetup.idl
index 9a4fcafccc..098a148904 100644
--- a/source4/librpc/idl/dssetup.idl
+++ b/source4/librpc/idl/dssetup.idl
@@ -72,7 +72,7 @@
DS_ROLE_OP_STATUS = 3
} dssetup_DsRoleInfoLevel;
- typedef union {
+ typedef [switch_type(dssetup_DsRoleInfoLevel)] union {
[case(DS_ROLE_BASIC_INFORMATION)] dssetup_DsRolePrimaryDomInfoBasic basic;
[case(DS_ROLE_UPGRADE_STATUS)] dssetup_DsRoleUpgradeStatus upgrade;
[case(DS_ROLE_OP_STATUS)] dssetup_DsRoleOpStatus opstatus;
diff --git a/source4/librpc/idl/echo.idl b/source4/librpc/idl/echo.idl
index e7a2571235..86e16763c2 100644
--- a/source4/librpc/idl/echo.idl
+++ b/source4/librpc/idl/echo.idl
@@ -75,7 +75,7 @@ interface rpcecho
echo_info4 info4;
} echo_info7;
- typedef union {
+ typedef [switch_type(uint16)] union {
[case(1)] echo_info1 info1;
[case(2)] echo_info2 info2;
[case(3)] echo_info3 info3;
@@ -109,7 +109,7 @@ interface rpcecho
echo_Enum1_32 e2;
} echo_Enum2;
- typedef union {
+ typedef [switch_type(echo_Enum1)] union {
[case(ECHO_ENUM1)] echo_Enum1 e1;
[case(ECHO_ENUM2)] echo_Enum2 e2;
} echo_Enum3;
diff --git a/source4/librpc/idl/lsa.idl b/source4/librpc/idl/lsa.idl
index 8b20b6db90..68adcf1d9d 100644
--- a/source4/librpc/idl/lsa.idl
+++ b/source4/librpc/idl/lsa.idl
@@ -191,7 +191,7 @@
LSA_POLICY_INFO_DNS=12
} lsaPolicyInfo;
- typedef union {
+ typedef [switch_type(uint16)] union {
[case(LSA_POLICY_INFO_AUDIT_LOG)] lsa_AuditLogInfo audit_log;
[case(LSA_POLICY_INFO_AUDIT_EVENTS)] lsa_AuditEventsInfo audit_events;
[case(LSA_POLICY_INFO_DOMAIN)] lsa_DomainInfo domain;
@@ -515,7 +515,7 @@
lsa_TrustDomainInfoAuthInfo auth_info;
} lsa_TrustDomainInfoInfoAll;
- typedef union {
+ typedef [switch_type(lsa_TrustDomInfoEnum)] union {
[case(LSA_TRUSTED_DOMAIN_INFO_NAME)] lsa_TrustDomainInfoName name;
[case(LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET)] lsa_TrustDomainInfoPosixOffset posix_offset;
[case(LSA_TRUSTED_DOMAIN_INFO_PASSWORD)] lsa_TrustDomainInfoPassword password;
diff --git a/source4/librpc/idl/netlogon.idl b/source4/librpc/idl/netlogon.idl
index 5a7477bdfb..b99f13638d 100644
--- a/source4/librpc/idl/netlogon.idl
+++ b/source4/librpc/idl/netlogon.idl
@@ -118,7 +118,7 @@ interface netlogon
netr_ChallengeResponse lm;
} netr_NetworkInfo;
- typedef union {
+ typedef [switch_type(uint16)] union {
[case(1)] netr_PasswordInfo *password;
[case(2)] netr_NetworkInfo *network;
[case(3)] netr_PasswordInfo *password;
@@ -208,7 +208,7 @@ interface netlogon
netr_String unknown4;
} netr_PacInfo;
- typedef union {
+ typedef [switch_type(uint16)] union {
[case(2)] netr_SamInfo2 *sam2;
[case(3)] netr_SamInfo3 *sam3;
[case(4)] netr_PacInfo *pac;
@@ -613,7 +613,7 @@ interface netlogon
NETR_DELTA_MODIFY_COUNT = 22
} netr_DeltaEnum;
- typedef union {
+ typedef [switch_type(netr_DeltaEnum)] union {
[case(NETR_DELTA_DOMAIN)] netr_DELTA_DOMAIN *domain;
[case(NETR_DELTA_GROUP)] netr_DELTA_GROUP *group;
[case(NETR_DELTA_DELETE_GROUP)] ; /* rid only */
@@ -638,7 +638,7 @@ interface netlogon
[case(NETR_DELTA_MODIFY_COUNT)] udlong *modified_count;
} netr_DELTA_UNION;
- typedef union {
+ typedef [switch_type(netr_DeltaEnum)] union {
[case(NETR_DELTA_DOMAIN)] uint32 rid;
[case(NETR_DELTA_GROUP)] uint32 rid;
[case(NETR_DELTA_DELETE_GROUP)] uint32 rid;
diff --git a/source4/librpc/idl/samr.idl b/source4/librpc/idl/samr.idl
index 85f032c414..e8b269dc66 100644
--- a/source4/librpc/idl/samr.idl
+++ b/source4/librpc/idl/samr.idl
@@ -202,7 +202,7 @@
uint32 unknown2;
} samr_DomInfo13;
- typedef union {
+ typedef [switch_type(uint16)] union {
[case(1)] samr_DomInfo1 info1;
[case(2)] samr_DomInfo2 info2;
[case(3)] samr_DomInfo3 info3;
@@ -383,7 +383,7 @@
GROUPINFOALL2 = 5
} samr_GroupInfoEnum;
- typedef union {
+ typedef [switch_type(samr_GroupInfoEnum)] union {
[case(GROUPINFOALL)] samr_GroupInfoAll all;
[case(GROUPINFONAME)] samr_String name;
[case(GROUPINFOX)] samr_GroupInfoX unknown;
@@ -482,7 +482,7 @@
ALIASINFODESCRIPTION = 3
} samr_AliasInfoEnum;
- typedef union {
+ typedef [switch_type(samr_AliasInfoEnum)] union {
[case(ALIASINFOALL)] samr_AliasInfoAll all;
[case(ALIASINFONAME)] samr_String name;
[case(ALIASINFODESCRIPTION)] samr_String description;
@@ -745,7 +745,7 @@
uint8 pw_len;
} samr_UserInfo26;
- typedef union {
+ typedef [switch_type(uint16)] union {
[case(1)] samr_UserInfo1 info1;
[case(2)] samr_UserInfo2 info2;
[case(3)] samr_UserInfo3 info3;
@@ -873,7 +873,7 @@
[size_is(count)] samr_DispEntryAscii *entries[];
} samr_DispInfoAscii;
- typedef union {
+ typedef [switch_type(uint16)] union {
[case(1)] samr_DispInfoGeneral info1;/* users */
[case(2)] samr_DispInfoFull info2; /* trust accounts? */
[case(3)] samr_DispInfoFull info3; /* groups */
diff --git a/source4/librpc/idl/xattr.idl b/source4/librpc/idl/xattr.idl
index 84d055ea88..4aa92ca5b2 100644
--- a/source4/librpc/idl/xattr.idl
+++ b/source4/librpc/idl/xattr.idl
@@ -44,7 +44,7 @@ interface xattr
utf8string name; /* will be used for case-insensitive speedup */
} xattr_DosInfo2;
- typedef union {
+ typedef [switch_type(uint16)] union {
[case(1)] xattr_DosInfo1 info1;
[case(2)] xattr_DosInfo2 info2;
} xattr_DosInfo;
@@ -102,7 +102,7 @@ interface xattr
*/
const string XATTR_NTACL_NAME = "security.NTACL";
- typedef union {
+ typedef [switch_type(uint16)] union {
[case(1)] security_descriptor *sd;
} xattr_NTACL_Info;