summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2010-04-26 13:19:56 +0200
committerGünther Deschner <gd@samba.org>2010-04-26 22:52:59 +0200
commit8b287b92fda1ad7439191edd9b417e31e90a9230 (patch)
tree890d956bfc65de609ace678dcb0f4988e7778be8
parent1ede2a0577fa85100f95526386bc5298b565da8c (diff)
downloadsamba-8b287b92fda1ad7439191edd9b417e31e90a9230.tar.gz
samba-8b287b92fda1ad7439191edd9b417e31e90a9230.tar.bz2
samba-8b287b92fda1ad7439191edd9b417e31e90a9230.zip
rap: add rap idl.
Guenther
-rw-r--r--librpc/idl/rap.idl473
1 files changed, 473 insertions, 0 deletions
diff --git a/librpc/idl/rap.idl b/librpc/idl/rap.idl
new file mode 100644
index 0000000000..3ba1ad544f
--- /dev/null
+++ b/librpc/idl/rap.idl
@@ -0,0 +1,473 @@
+#include "idl_types.h"
+
+/*
+ rap interface definition
+*/
+
+[
+ pointer_default(unique)
+]
+interface rap
+{
+ const int RAP_WshareEnum = 0;
+ const int RAP_WshareGetInfo = 1;
+ const int RAP_WshareSetInfo = 2;
+ const int RAP_WshareAdd = 3;
+ const int RAP_WshareDel = 4;
+ const int RAP_NetShareCheck = 5;
+ const int RAP_WsessionEnum = 6;
+ const int RAP_WsessionGetInfo = 7;
+ const int RAP_WsessionDel = 8;
+ const int RAP_WconnectionEnum = 9;
+ const int RAP_WfileEnum = 10;
+ const int RAP_WfileGetInfo = 11;
+ const int RAP_WfileClose = 12;
+ const int RAP_WserverGetInfo = 13;
+ const int RAP_WserverSetInfo = 14;
+ const int RAP_WserverDiskEnum = 15;
+ const int RAP_WserverAdminCommand = 16;
+ const int RAP_NetAuditOpen = 17;
+ const int RAP_WauditClear = 18;
+ const int RAP_NetErrorLogOpen = 19;
+ const int RAP_WerrorLogClear = 20;
+ const int RAP_NetCharDevEnum = 21;
+ const int RAP_NetCharDevGetInfo = 22;
+ const int RAP_WCharDevControl = 23;
+ const int RAP_NetCharDevQEnum = 24;
+ const int RAP_NetCharDevQGetInfo = 25;
+ const int RAP_WCharDevQSetInfo = 26;
+ const int RAP_WCharDevQPurge = 27;
+ const int RAP_WCharDevQPurgeSelf = 28;
+ const int RAP_WMessageNameEnum = 29;
+ const int RAP_WMessageNameGetInfo = 30;
+ const int RAP_WMessageNameAdd = 31;
+ const int RAP_WMessageNameDel = 32;
+ const int RAP_WMessageNameFwd = 33;
+ const int RAP_WMessageNameUnFwd = 34;
+ const int RAP_WMessageBufferSend = 35;
+ const int RAP_WMessageFileSend = 36;
+ const int RAP_WMessageLogFileSet = 37;
+ const int RAP_WMessageLogFileGet = 38;
+ const int RAP_WServiceEnum = 39;
+ const int RAP_WServiceInstall = 40;
+ const int RAP_WServiceControl = 41;
+ const int RAP_WAccessEnum = 42;
+ const int RAP_WAccessGetInfo = 43;
+ const int RAP_WAccessSetInfo = 44;
+ const int RAP_WAccessAdd = 45;
+ const int RAP_WAccessDel = 46;
+ const int RAP_WGroupEnum = 47;
+ const int RAP_WGroupAdd = 48;
+ const int RAP_WGroupDel = 49;
+ const int RAP_WGroupAddUser = 50;
+ const int RAP_WGroupDelUser = 51;
+ const int RAP_WGroupGetUsers = 52;
+ const int RAP_WUserEnum = 53;
+ const int RAP_WUserAdd = 54;
+ const int RAP_WUserDel = 55;
+ const int RAP_WUserGetInfo = 56;
+ const int RAP_WUserSetInfo = 57;
+ const int RAP_WUserPasswordSet = 58;
+ const int RAP_WUserGetGroups = 59;
+ const int RAP_WWkstaSetUID = 62;
+ const int RAP_WWkstaGetInfo = 63;
+ const int RAP_WWkstaSetInfo = 64;
+ const int RAP_WUseEnum = 65;
+ const int RAP_WUseAdd = 66;
+ const int RAP_WUseDel = 67;
+ const int RAP_WUseGetInfo = 68;
+ const int RAP_WPrintQEnum = 69;
+ const int RAP_WPrintQGetInfo = 70;
+ const int RAP_WPrintQSetInfo = 71;
+ const int RAP_WPrintQAdd = 72;
+ const int RAP_WPrintQDel = 73;
+ const int RAP_WPrintQPause = 74;
+ const int RAP_WPrintQContinue = 75;
+ const int RAP_WPrintJobEnum = 76;
+ const int RAP_WPrintJobGetInfo = 77;
+ const int RAP_WPrintJobSetInfo_OLD = 78;
+ const int RAP_WPrintJobDel = 81;
+ const int RAP_WPrintJobPause = 82;
+ const int RAP_WPrintJobContinue = 83;
+ const int RAP_WPrintDestEnum = 84;
+ const int RAP_WPrintDestGetInfo = 85;
+ const int RAP_WPrintDestControl = 86;
+ const int RAP_WProfileSave = 87;
+ const int RAP_WProfileLoad = 88;
+ const int RAP_WStatisticsGet = 89;
+ const int RAP_WStatisticsClear = 90;
+ const int RAP_NetRemoteTOD = 91;
+ const int RAP_WNetBiosEnum = 92;
+ const int RAP_WNetBiosGetInfo = 93;
+ const int RAP_NetServerEnum = 94;
+ const int RAP_I_NetServerEnum = 95;
+ const int RAP_WServiceGetInfo = 96;
+ const int RAP_WPrintQPurge = 103;
+ const int RAP_NetServerEnum2 = 104;
+ const int RAP_WAccessGetUserPerms = 105;
+ const int RAP_WGroupGetInfo = 106;
+ const int RAP_WGroupSetInfo = 107;
+ const int RAP_WGroupSetUsers = 108;
+ const int RAP_WUserSetGroups = 109;
+ const int RAP_WUserModalsGet = 110;
+ const int RAP_WUserModalsSet = 111;
+ const int RAP_WFileEnum2 = 112;
+ const int RAP_WUserAdd2 = 113;
+ const int RAP_WUserSetInfo2 = 114;
+ const int RAP_WUserPasswordSet2 = 115;
+ const int RAP_I_NetServerEnum2 = 116;
+ const int RAP_WConfigGet2 = 117;
+ const int RAP_WConfigGetAll2 = 118;
+ const int RAP_WGetDCName = 119;
+ const int RAP_NetHandleGetInfo = 120;
+ const int RAP_NetHandleSetInfo = 121;
+ const int RAP_WStatisticsGet2 = 122;
+ const int RAP_WBuildGetInfo = 123;
+ const int RAP_WFileGetInfo2 = 124;
+ const int RAP_WFileClose2 = 125;
+ const int RAP_WNetServerReqChallenge = 126;
+ const int RAP_WNetServerAuthenticate = 127;
+ const int RAP_WNetServerPasswordSet = 128;
+ const int RAP_WNetAccountDeltas = 129;
+ const int RAP_WNetAccountSync = 130;
+ const int RAP_WUserEnum2 = 131;
+ const int RAP_WWkstaUserLogon = 132;
+ const int RAP_WWkstaUserLogoff = 133;
+ const int RAP_WLogonEnum = 134;
+ const int RAP_WErrorLogRead = 135;
+ const int RAP_NetPathType = 136;
+ const int RAP_NetPathCanonicalize = 137;
+ const int RAP_NetPathCompare = 138;
+ const int RAP_NetNameValidate = 139;
+ const int RAP_NetNameCanonicalize = 140;
+ const int RAP_NetNameCompare = 141;
+ const int RAP_WAuditRead = 142;
+ const int RAP_WPrintDestAdd = 143;
+ const int RAP_WPrintDestSetInfo = 144;
+ const int RAP_WPrintDestDel = 145;
+ const int RAP_WUserValidate2 = 146;
+ const int RAP_WPrintJobSetInfo = 147;
+ const int RAP_TI_NetServerDiskEnum = 148;
+ const int RAP_TI_NetServerDiskGetInfo = 149;
+ const int RAP_TI_FTVerifyMirror = 150;
+ const int RAP_TI_FTAbortVerify = 151;
+ const int RAP_TI_FTGetInfo = 152;
+ const int RAP_TI_FTSetInfo = 153;
+ const int RAP_TI_FTLockDisk = 154;
+ const int RAP_TI_FTFixError = 155;
+ const int RAP_TI_FTAbortFix = 156;
+ const int RAP_TI_FTDiagnoseError = 157;
+ const int RAP_TI_FTGetDriveStats = 158;
+ const int RAP_TI_FTErrorGetInfo = 160;
+ const int RAP_NetAccessCheck = 163;
+ const int RAP_NetAlertRaise = 164;
+ const int RAP_NetAlertStart = 165;
+ const int RAP_NetAlertStop = 166;
+ const int RAP_NetAuditWrite = 167;
+ const int RAP_NetIRemoteAPI = 168;
+ const int RAP_NetServiceStatus = 169;
+ const int RAP_NetServerRegister = 170;
+ const int RAP_NetServerDeregister = 171;
+ const int RAP_NetSessionEntryMake = 172;
+ const int RAP_NetSessionEntryClear = 173;
+ const int RAP_NetSessionEntryGetInfo = 174;
+ const int RAP_NetSessionEntrySetInfo = 175;
+ const int RAP_NetConnectionEntryMake = 176;
+ const int RAP_NetConnectionEntryClear = 177;
+ const int RAP_NetConnectionEntrySetInfo = 178;
+ const int RAP_NetConnectionEntryGetInfo = 179;
+ const int RAP_NetFileEntryMake = 180;
+ const int RAP_NetFileEntryClear = 181;
+ const int RAP_NetFileEntrySetInfo = 182;
+ const int RAP_NetFileEntryGetInfo = 183;
+ const int RAP_AltSrvMessageBufferSend = 184;
+ const int RAP_AltSrvMessageFileSend = 185;
+ const int RAP_wI_NetRplWkstaEnum = 186;
+ const int RAP_wI_NetRplWkstaGetInfo = 187;
+ const int RAP_wI_NetRplWkstaSetInfo = 188;
+ const int RAP_wI_NetRplWkstaAdd = 189;
+ const int RAP_wI_NetRplWkstaDel = 190;
+ const int RAP_wI_NetRplProfileEnum = 191;
+ const int RAP_wI_NetRplProfileGetInfo = 192;
+ const int RAP_wI_NetRplProfileSetInfo = 193;
+ const int RAP_wI_NetRplProfileAdd = 194;
+ const int RAP_wI_NetRplProfileDel = 195;
+ const int RAP_wI_NetRplProfileClone = 196;
+ const int RAP_wI_NetRplBaseProfileEnum = 197;
+ const int RAP_WIServerSetInfo = 201;
+ const int RAP_WPrintDriverEnum = 205;
+ const int RAP_WPrintQProcessorEnum = 206;
+ const int RAP_WPrintPortEnum = 207;
+ const int RAP_WNetWriteUpdateLog = 208;
+ const int RAP_WNetAccountUpdate = 209;
+ const int RAP_WNetAccountConfirmUpdate = 210;
+ const int RAP_WConfigSet = 211;
+ const int RAP_WAccountsReplicate = 212;
+ const int RAP_SamOEMChgPasswordUser2_P = 214;
+ const int RAP_NetServerEnum3 = 215;
+ const int RAP_WprintDriverGetInfo = 250;
+ const int RAP_WprintDriverSetInfo = 251;
+ const int RAP_WaliasAdd = 252;
+ const int RAP_WaliasDel = 253;
+ const int RAP_WaliasGetInfo = 254;
+ const int RAP_WaliasSetInfo = 255;
+ const int RAP_WaliasEnum = 256;
+ const int RAP_WuserGetLogonAsn = 257;
+ const int RAP_WuserSetLogonAsn = 258;
+ const int RAP_WuserGetAppSel = 259;
+ const int RAP_WuserSetAppSel = 260;
+ const int RAP_WappAdd = 261;
+ const int RAP_WappDel = 262;
+ const int RAP_WappGetInfo = 263;
+ const int RAP_WappSetInfo = 264;
+ const int RAP_WappEnum = 265;
+ const int RAP_WUserDCDBInit = 266;
+ const int RAP_WDASDAdd = 267;
+ const int RAP_WDASDDel = 268;
+ const int RAP_WDASDGetInfo = 269;
+ const int RAP_WDASDSetInfo = 270;
+ const int RAP_WDASDEnum = 271;
+ const int RAP_WDASDCheck = 272;
+ const int RAP_WDASDCtl = 273;
+ const int RAP_WuserRemoteLogonCheck = 274;
+ const int RAP_WUserPasswordSet3 = 275;
+ const int RAP_WCreateRIPLMachine = 276;
+ const int RAP_WDeleteRIPLMachine = 277;
+ const int RAP_WGetRIPLMachineInfo = 278;
+ const int RAP_WSetRIPLMachineInfo = 279;
+ const int RAP_WEnumRIPLMachine = 280;
+ const int RAP_I_ShareAdd = 281;
+ const int RAP_AliasEnum = 282;
+ const int RAP_WaccessApply = 283;
+ const int RAP_WPrt16Query = 284;
+ const int RAP_WPrt16Set = 285;
+ const int RAP_WUserDel100 = 286;
+ const int RAP_WUserRemoteLogonCheck2 = 287;
+ const int RAP_WRemoteTODSet = 294;
+ const int RAP_WprintJobMoveAll = 295;
+ const int RAP_W16AppParmAdd = 296;
+ const int RAP_W16AppParmDel = 297;
+ const int RAP_W16AppParmGet = 298;
+ const int RAP_W16AppParmSet = 299;
+ const int RAP_W16RIPLMachineCreate = 300;
+ const int RAP_W16RIPLMachineGetInfo = 301;
+ const int RAP_W16RIPLMachineSetInfo = 302;
+ const int RAP_W16RIPLMachineEnum = 303;
+ const int RAP_W16RIPLMachineListParmEnum = 304;
+ const int RAP_W16RIPLMachClassGetInfo = 305;
+ const int RAP_W16RIPLMachClassEnum = 306;
+ const int RAP_W16RIPLMachClassCreate = 307;
+ const int RAP_W16RIPLMachClassSetInfo = 308;
+ const int RAP_W16RIPLMachClassDelete = 309;
+ const int RAP_W16RIPLMachClassLPEnum = 310;
+ const int RAP_W16RIPLMachineDelete = 311;
+ const int RAP_W16WSLevelGetInfo = 312;
+ const int RAP_WserverNameAdd = 313;
+ const int RAP_WserverNameDel = 314;
+ const int RAP_WserverNameEnum = 315;
+ const int RAP_I_WDASDEnum = 316;
+ const int RAP_WDASDEnumTerminate = 317;
+ const int RAP_WDASDSetInfo2 = 318;
+ const int MAX_API = 318;
+
+ /* sizes of fixed-length fields, including null terminator */
+ const int RAP_GROUPNAME_LEN = 21;
+ const int RAP_USERNAME_LEN = 21;
+ const int RAP_SHARENAME_LEN = 13;
+ const int RAP_UPASSWD_LEN = 16; /* user password */
+ const int RAP_SPASSWD_LEN = 9; /* share password */
+ const int RAP_MACHNAME_LEN = 16;
+ const int RAP_SRVCNAME_LEN = 16;
+ const int RAP_SRVCCMNT_LEN = 64;
+ const int RAP_DATATYPE_LEN = 10;
+
+ typedef struct {
+ uint8 group_name[21];
+ char reserved1;
+ [string,charset(DOS)] uint8 *comment;
+ } rap_group_info_1;
+
+ typedef struct {
+ uint8 user_name[21];
+ char reserved1;
+ uint8 passwrd[16];
+ uint32 pwage;
+ uint16 priv;
+ [string,charset(DOS)] uint8 *home_dir;
+ [string,charset(DOS)] uint8 *comment;
+ uint16 userflags;
+ [string,charset(DOS)] uint8 *logon_script;
+ } rap_user_info_1;
+
+ typedef struct {
+ uint8 service_name[16];
+ uint16 status;
+ uint32 installcode;
+ uint16 process_num;
+ [string,charset(DOS)] uint8 *comment;
+ } rap_service_info_2;
+
+ typedef struct {
+ uint8 share_name[13];
+ } rap_share_info_0;
+
+ typedef struct {
+ uint8 share_name[13];
+ char reserved1;
+ uint16 share_type;
+ [string,charset(DOS)] uint8 *comment;
+ } rap_share_info_1;
+
+ typedef struct {
+ uint8 share_name[13];
+ char reserved1;
+ uint16 share_type;
+ [string,charset(DOS)] uint8 *comment;
+ uint16 perms;
+ uint16 maximum_users;
+ uint16 active_users;
+ [string,charset(DOS)] uint8 *path;
+ uint8 password[9];
+ char reserved2;
+ } rap_share_info_2;
+
+ typedef [nodiscriminant] union {
+ [case(0)] rap_share_info_0 info0;
+ [case(1)] rap_share_info_1 info1;
+ [case(2)] rap_share_info_2 info2;
+ } rap_share_info;
+
+ [public] void rap_NetShareEnum(
+ [in] uint16 level,
+ [in] uint16 bufsize,
+ [out] uint16 status,
+ [out] uint16 convert,
+ [out] uint16 count,
+ [out] uint16 available,
+ [out,switch_is(level)] rap_share_info *info
+ );
+
+ typedef struct {
+ uint8 name[16];
+ } rap_server_info_0;
+
+ typedef struct {
+ uint8 name[16];
+ uint8 version_major;
+ uint8 version_minor;
+ uint32 servertype;
+ [string,charset(DOS)] uint8 *comment;
+ } rap_server_info_1;
+
+ typedef [nodiscriminant] union {
+ [case(0)] rap_server_info_0 info0;
+ [case(1)] rap_server_info_1 info1;
+ } rap_server_info;
+
+ [public] void rap_NetServerEnum2(
+ [in] uint16 level,
+ [in] uint16 bufsize,
+ [in] uint32 servertype,
+ [in] [string,charset(DOS)] uint8 *domain,
+ [out] uint16 status,
+ [out] uint16 convert,
+ [out] uint16 count,
+ [out] uint16 available,
+ [out,switch_is(level)] rap_server_info *info
+ );
+
+ [public] void rap_WserverGetInfo(
+ [in] uint16 level,
+ [in] uint16 bufsize,
+ [out] uint16 status,
+ [out] uint16 convert,
+ [out] uint16 available,
+ [out,switch_is(level)] rap_server_info info
+ );
+
+ /* Parameter description strings for RAP calls */
+ /* Names are defined name for RAP call with _REQ */
+ /* appended to end. */
+
+ const string RAP_WFileEnum2_REQ = "zzWrLehb8g8";
+ const string RAP_WFileGetInfo2_REQ = "DWrLh";
+ const string RAP_WFileClose2_REQ = "D";
+
+ const string RAP_NetGroupEnum_REQ = "WrLeh";
+ const string RAP_NetGroupAdd_REQ = "WsT";
+ const string RAP_NetGroupDel_REQ = "z";
+ const string RAP_NetGroupAddUser_REQ = "zz";
+ const string RAP_NetGroupDelUser_REQ = "zz";
+ const string RAP_NetGroupGetUsers_REQ = "zWrLeh";
+ const string RAP_NetGroupSetUsers_REQ = "zWsTW";
+
+ const string RAP_NetUserAdd2_REQ = "WsTWW";
+ const string RAP_NetUserEnum_REQ = "WrLeh";
+ const string RAP_NetUserEnum2_REQ = "WrLDieh";
+ const string RAP_NetUserGetGroups_REQ = "zWrLeh";
+ const string RAP_NetUserSetGroups_REQ = "zWsTW";
+ const string RAP_NetUserPasswordSet_REQ = "zb16b16w";
+ const string RAP_NetUserPasswordSet2_REQ = "zb16b16WW";
+ const string RAP_SAMOEMChgPasswordUser2_REQ = "B516B16";
+ const string RAP_NetUserValidate2_REQ = "Wb62WWrLhWW";
+
+ const string RAP_NetServerEnum2_REQ = "WrLehDz";
+ const string RAP_WserverGetInfo_REQ = "WrLh";
+ const string RAP_NetWkstatGetInfo = "WrLh";
+
+ const string RAP_WShareAdd_REQ = "WsT";
+ const string RAP_WShareEnum_REQ = "WrLeh";
+ const string RAP_WShareDel_REQ = "zW";
+ const string RAP_WWkstaGetInfo_REQ = "WrLh";
+
+ const string RAP_NetPrintQEnum_REQ = "WrLeh";
+ const string RAP_NetPrintQGetInfo_REQ = "zWrLh";
+
+ const string RAP_NetServerAdminCommand_REQ = "zhrLeh";
+ const string RAP_NetServiceEnum_REQ = "WrLeh";
+ const string RAP_NetServiceControl_REQ = "zWWrL";
+ const string RAP_NetServiceInstall_REQ = "zF88sg88T";
+ const string RAP_NetServiceGetInfo_REQ = "zWrLh";
+ const string RAP_NetSessionEnum_REQ = "WrLeh";
+ const string RAP_NetSessionGetInfo_REQ = "zWrLh";
+ const string RAP_NetSessionDel_REQ = "zW";
+
+ const string RAP_NetConnectionEnum_REQ = "zWrLeh";
+
+ const string RAP_NetWkstaUserLogoff_REQ = "zzWb38WrLh";
+
+ /* Description strings for returned data in RAP calls */
+ /* I use all caps here in part to avoid accidental */
+ /* name collisions */
+
+ const string RAP_FILE_INFO_L2 = "D";
+ const string RAP_FILE_INFO_L3 = "DWWzz";
+ const string RAP_GROUP_INFO_L0 = "B21";
+ const string RAP_GROUP_INFO_L1 = "B21Bz";
+ const string RAP_GROUP_USERS_INFO_0 = "B21";
+ const string RAP_GROUP_USERS_INFO_1 = "B21BN";
+
+ const string RAP_USER_INFO_L0 = "B21";
+ const string RAP_USER_INFO_L1 = "B21BB16DWzzWz";
+
+ const string RAP_SERVER_INFO_L0 = "B16";
+ const string RAP_SERVER_INFO_L1 = "B16BBDz";
+ const string RAP_SERVER_INFO_L2 = "B16BBDzDDDWWzWWWWWWWB21BzWWWWWWWWWWWWWWWWWWWWWWz";
+ const string RAP_SERVER_INFO_L3 = "B16BBDzDDDWWzWWWWWWWB21BzWWWWWWWWWWWWWWWWWWWWWWzDWz";
+ const string RAP_SERVICE_INFO_L0 = "B16";
+ const string RAP_SERVICE_INFO_L2 = "B16WDWB64";
+ const string RAP_SHARE_INFO_L0 = "B13";
+ const string RAP_SHARE_INFO_L1 = "B13BWz";
+ const string RAP_SHARE_INFO_L2 = "B13BWzWWWzB9B";
+
+ const string RAP_PRINTQ_INFO_L2 = "B13BWWWzzzzzWN";
+ const string RAP_SMB_PRINT_JOB_L1 = "WB21BB16B10zWWzDDz";
+
+ const string RAP_SESSION_INFO_L2 = "zzWWWDDDz";
+ const string RAP_CONNECTION_INFO_L1 = "WWWWDzz";
+
+ const string RAP_USER_LOGOFF_INFO_L1 = "WDW";
+
+ const string RAP_WKSTA_INFO_L1 = "WDzzzzBBDWDWWWWWWWWWWWWWWWWWWWzzWzzW";
+ const string RAP_WKSTA_INFO_L10 = "zzzBBzz";
+};