4 rap interface definition
8 pointer_default(unique)
12 const int RAP_WshareEnum
= 0;
13 const int RAP_WshareGetInfo
= 1;
14 const int RAP_WshareSetInfo
= 2;
15 const int RAP_WshareAdd
= 3;
16 const int RAP_WshareDel
= 4;
17 const int RAP_NetShareCheck
= 5;
18 const int RAP_WsessionEnum
= 6;
19 const int RAP_WsessionGetInfo
= 7;
20 const int RAP_WsessionDel
= 8;
21 const int RAP_WconnectionEnum
= 9;
22 const int RAP_WfileEnum
= 10;
23 const int RAP_WfileGetInfo
= 11;
24 const int RAP_WfileClose
= 12;
25 const int RAP_WserverGetInfo
= 13;
26 const int RAP_WserverSetInfo
= 14;
27 const int RAP_WserverDiskEnum
= 15;
28 const int RAP_WserverAdminCommand
= 16;
29 const int RAP_NetAuditOpen
= 17;
30 const int RAP_WauditClear
= 18;
31 const int RAP_NetErrorLogOpen
= 19;
32 const int RAP_WerrorLogClear
= 20;
33 const int RAP_NetCharDevEnum
= 21;
34 const int RAP_NetCharDevGetInfo
= 22;
35 const int RAP_WCharDevControl
= 23;
36 const int RAP_NetCharDevQEnum
= 24;
37 const int RAP_NetCharDevQGetInfo
= 25;
38 const int RAP_WCharDevQSetInfo
= 26;
39 const int RAP_WCharDevQPurge
= 27;
40 const int RAP_WCharDevQPurgeSelf
= 28;
41 const int RAP_WMessageNameEnum
= 29;
42 const int RAP_WMessageNameGetInfo
= 30;
43 const int RAP_WMessageNameAdd
= 31;
44 const int RAP_WMessageNameDel
= 32;
45 const int RAP_WMessageNameFwd
= 33;
46 const int RAP_WMessageNameUnFwd
= 34;
47 const int RAP_WMessageBufferSend
= 35;
48 const int RAP_WMessageFileSend
= 36;
49 const int RAP_WMessageLogFileSet
= 37;
50 const int RAP_WMessageLogFileGet
= 38;
51 const int RAP_WServiceEnum
= 39;
52 const int RAP_WServiceInstall
= 40;
53 const int RAP_WServiceControl
= 41;
54 const int RAP_WAccessEnum
= 42;
55 const int RAP_WAccessGetInfo
= 43;
56 const int RAP_WAccessSetInfo
= 44;
57 const int RAP_WAccessAdd
= 45;
58 const int RAP_WAccessDel
= 46;
59 const int RAP_WGroupEnum
= 47;
60 const int RAP_WGroupAdd
= 48;
61 const int RAP_WGroupDel
= 49;
62 const int RAP_WGroupAddUser
= 50;
63 const int RAP_WGroupDelUser
= 51;
64 const int RAP_WGroupGetUsers
= 52;
65 const int RAP_WUserEnum
= 53;
66 const int RAP_WUserAdd
= 54;
67 const int RAP_WUserDel
= 55;
68 const int RAP_WUserGetInfo
= 56;
69 const int RAP_WUserSetInfo
= 57;
70 const int RAP_WUserPasswordSet
= 58;
71 const int RAP_WUserGetGroups
= 59;
72 const int RAP_WWkstaSetUID
= 62;
73 const int RAP_WWkstaGetInfo
= 63;
74 const int RAP_WWkstaSetInfo
= 64;
75 const int RAP_WUseEnum
= 65;
76 const int RAP_WUseAdd
= 66;
77 const int RAP_WUseDel
= 67;
78 const int RAP_WUseGetInfo
= 68;
79 const int RAP_WPrintQEnum
= 69;
80 const int RAP_WPrintQGetInfo
= 70;
81 const int RAP_WPrintQSetInfo
= 71;
82 const int RAP_WPrintQAdd
= 72;
83 const int RAP_WPrintQDel
= 73;
84 const int RAP_WPrintQPause
= 74;
85 const int RAP_WPrintQContinue
= 75;
86 const int RAP_WPrintJobEnum
= 76;
87 const int RAP_WPrintJobGetInfo
= 77;
88 const int RAP_WPrintJobSetInfo_OLD
= 78;
89 const int RAP_WPrintJobDel
= 81;
90 const int RAP_WPrintJobPause
= 82;
91 const int RAP_WPrintJobContinue
= 83;
92 const int RAP_WPrintDestEnum
= 84;
93 const int RAP_WPrintDestGetInfo
= 85;
94 const int RAP_WPrintDestControl
= 86;
95 const int RAP_WProfileSave
= 87;
96 const int RAP_WProfileLoad
= 88;
97 const int RAP_WStatisticsGet
= 89;
98 const int RAP_WStatisticsClear
= 90;
99 const int RAP_NetRemoteTOD
= 91;
100 const int RAP_WNetBiosEnum
= 92;
101 const int RAP_WNetBiosGetInfo
= 93;
102 const int RAP_NetServerEnum
= 94;
103 const int RAP_I_NetServerEnum
= 95;
104 const int RAP_WServiceGetInfo
= 96;
105 const int RAP_WPrintQPurge
= 103;
106 const int RAP_NetServerEnum2
= 104;
107 const int RAP_WAccessGetUserPerms
= 105;
108 const int RAP_WGroupGetInfo
= 106;
109 const int RAP_WGroupSetInfo
= 107;
110 const int RAP_WGroupSetUsers
= 108;
111 const int RAP_WUserSetGroups
= 109;
112 const int RAP_WUserModalsGet
= 110;
113 const int RAP_WUserModalsSet
= 111;
114 const int RAP_WFileEnum2
= 112;
115 const int RAP_WUserAdd2
= 113;
116 const int RAP_WUserSetInfo2
= 114;
117 const int RAP_WUserPasswordSet2
= 115;
118 const int RAP_I_NetServerEnum2
= 116;
119 const int RAP_WConfigGet2
= 117;
120 const int RAP_WConfigGetAll2
= 118;
121 const int RAP_WGetDCName
= 119;
122 const int RAP_NetHandleGetInfo
= 120;
123 const int RAP_NetHandleSetInfo
= 121;
124 const int RAP_WStatisticsGet2
= 122;
125 const int RAP_WBuildGetInfo
= 123;
126 const int RAP_WFileGetInfo2
= 124;
127 const int RAP_WFileClose2
= 125;
128 const int RAP_WNetServerReqChallenge
= 126;
129 const int RAP_WNetServerAuthenticate
= 127;
130 const int RAP_WNetServerPasswordSet
= 128;
131 const int RAP_WNetAccountDeltas
= 129;
132 const int RAP_WNetAccountSync
= 130;
133 const int RAP_WUserEnum2
= 131;
134 const int RAP_WWkstaUserLogon
= 132;
135 const int RAP_WWkstaUserLogoff
= 133;
136 const int RAP_WLogonEnum
= 134;
137 const int RAP_WErrorLogRead
= 135;
138 const int RAP_NetPathType
= 136;
139 const int RAP_NetPathCanonicalize
= 137;
140 const int RAP_NetPathCompare
= 138;
141 const int RAP_NetNameValidate
= 139;
142 const int RAP_NetNameCanonicalize
= 140;
143 const int RAP_NetNameCompare
= 141;
144 const int RAP_WAuditRead
= 142;
145 const int RAP_WPrintDestAdd
= 143;
146 const int RAP_WPrintDestSetInfo
= 144;
147 const int RAP_WPrintDestDel
= 145;
148 const int RAP_WUserValidate2
= 146;
149 const int RAP_WPrintJobSetInfo
= 147;
150 const int RAP_TI_NetServerDiskEnum
= 148;
151 const int RAP_TI_NetServerDiskGetInfo
= 149;
152 const int RAP_TI_FTVerifyMirror
= 150;
153 const int RAP_TI_FTAbortVerify
= 151;
154 const int RAP_TI_FTGetInfo
= 152;
155 const int RAP_TI_FTSetInfo
= 153;
156 const int RAP_TI_FTLockDisk
= 154;
157 const int RAP_TI_FTFixError
= 155;
158 const int RAP_TI_FTAbortFix
= 156;
159 const int RAP_TI_FTDiagnoseError
= 157;
160 const int RAP_TI_FTGetDriveStats
= 158;
161 const int RAP_TI_FTErrorGetInfo
= 160;
162 const int RAP_NetAccessCheck
= 163;
163 const int RAP_NetAlertRaise
= 164;
164 const int RAP_NetAlertStart
= 165;
165 const int RAP_NetAlertStop
= 166;
166 const int RAP_NetAuditWrite
= 167;
167 const int RAP_NetIRemoteAPI
= 168;
168 const int RAP_NetServiceStatus
= 169;
169 const int RAP_NetServerRegister
= 170;
170 const int RAP_NetServerDeregister
= 171;
171 const int RAP_NetSessionEntryMake
= 172;
172 const int RAP_NetSessionEntryClear
= 173;
173 const int RAP_NetSessionEntryGetInfo
= 174;
174 const int RAP_NetSessionEntrySetInfo
= 175;
175 const int RAP_NetConnectionEntryMake
= 176;
176 const int RAP_NetConnectionEntryClear
= 177;
177 const int RAP_NetConnectionEntrySetInfo
= 178;
178 const int RAP_NetConnectionEntryGetInfo
= 179;
179 const int RAP_NetFileEntryMake
= 180;
180 const int RAP_NetFileEntryClear
= 181;
181 const int RAP_NetFileEntrySetInfo
= 182;
182 const int RAP_NetFileEntryGetInfo
= 183;
183 const int RAP_AltSrvMessageBufferSend
= 184;
184 const int RAP_AltSrvMessageFileSend
= 185;
185 const int RAP_wI_NetRplWkstaEnum
= 186;
186 const int RAP_wI_NetRplWkstaGetInfo
= 187;
187 const int RAP_wI_NetRplWkstaSetInfo
= 188;
188 const int RAP_wI_NetRplWkstaAdd
= 189;
189 const int RAP_wI_NetRplWkstaDel
= 190;
190 const int RAP_wI_NetRplProfileEnum
= 191;
191 const int RAP_wI_NetRplProfileGetInfo
= 192;
192 const int RAP_wI_NetRplProfileSetInfo
= 193;
193 const int RAP_wI_NetRplProfileAdd
= 194;
194 const int RAP_wI_NetRplProfileDel
= 195;
195 const int RAP_wI_NetRplProfileClone
= 196;
196 const int RAP_wI_NetRplBaseProfileEnum
= 197;
197 const int RAP_WIServerSetInfo
= 201;
198 const int RAP_WPrintDriverEnum
= 205;
199 const int RAP_WPrintQProcessorEnum
= 206;
200 const int RAP_WPrintPortEnum
= 207;
201 const int RAP_WNetWriteUpdateLog
= 208;
202 const int RAP_WNetAccountUpdate
= 209;
203 const int RAP_WNetAccountConfirmUpdate
= 210;
204 const int RAP_WConfigSet
= 211;
205 const int RAP_WAccountsReplicate
= 212;
206 const int RAP_SamOEMChgPasswordUser2_P
= 214;
207 const int RAP_NetServerEnum3
= 215;
208 const int RAP_WprintDriverGetInfo
= 250;
209 const int RAP_WprintDriverSetInfo
= 251;
210 const int RAP_WaliasAdd
= 252;
211 const int RAP_WaliasDel
= 253;
212 const int RAP_WaliasGetInfo
= 254;
213 const int RAP_WaliasSetInfo
= 255;
214 const int RAP_WaliasEnum
= 256;
215 const int RAP_WuserGetLogonAsn
= 257;
216 const int RAP_WuserSetLogonAsn
= 258;
217 const int RAP_WuserGetAppSel
= 259;
218 const int RAP_WuserSetAppSel
= 260;
219 const int RAP_WappAdd
= 261;
220 const int RAP_WappDel
= 262;
221 const int RAP_WappGetInfo
= 263;
222 const int RAP_WappSetInfo
= 264;
223 const int RAP_WappEnum
= 265;
224 const int RAP_WUserDCDBInit
= 266;
225 const int RAP_WDASDAdd
= 267;
226 const int RAP_WDASDDel
= 268;
227 const int RAP_WDASDGetInfo
= 269;
228 const int RAP_WDASDSetInfo
= 270;
229 const int RAP_WDASDEnum
= 271;
230 const int RAP_WDASDCheck
= 272;
231 const int RAP_WDASDCtl
= 273;
232 const int RAP_WuserRemoteLogonCheck
= 274;
233 const int RAP_WUserPasswordSet3
= 275;
234 const int RAP_WCreateRIPLMachine
= 276;
235 const int RAP_WDeleteRIPLMachine
= 277;
236 const int RAP_WGetRIPLMachineInfo
= 278;
237 const int RAP_WSetRIPLMachineInfo
= 279;
238 const int RAP_WEnumRIPLMachine
= 280;
239 const int RAP_I_ShareAdd
= 281;
240 const int RAP_AliasEnum
= 282;
241 const int RAP_WaccessApply
= 283;
242 const int RAP_WPrt16Query
= 284;
243 const int RAP_WPrt16Set
= 285;
244 const int RAP_WUserDel100
= 286;
245 const int RAP_WUserRemoteLogonCheck2
= 287;
246 const int RAP_WRemoteTODSet
= 294;
247 const int RAP_WprintJobMoveAll
= 295;
248 const int RAP_W16AppParmAdd
= 296;
249 const int RAP_W16AppParmDel
= 297;
250 const int RAP_W16AppParmGet
= 298;
251 const int RAP_W16AppParmSet
= 299;
252 const int RAP_W16RIPLMachineCreate
= 300;
253 const int RAP_W16RIPLMachineGetInfo
= 301;
254 const int RAP_W16RIPLMachineSetInfo
= 302;
255 const int RAP_W16RIPLMachineEnum
= 303;
256 const int RAP_W16RIPLMachineListParmEnum
= 304;
257 const int RAP_W16RIPLMachClassGetInfo
= 305;
258 const int RAP_W16RIPLMachClassEnum
= 306;
259 const int RAP_W16RIPLMachClassCreate
= 307;
260 const int RAP_W16RIPLMachClassSetInfo
= 308;
261 const int RAP_W16RIPLMachClassDelete
= 309;
262 const int RAP_W16RIPLMachClassLPEnum
= 310;
263 const int RAP_W16RIPLMachineDelete
= 311;
264 const int RAP_W16WSLevelGetInfo
= 312;
265 const int RAP_WserverNameAdd
= 313;
266 const int RAP_WserverNameDel
= 314;
267 const int RAP_WserverNameEnum
= 315;
268 const int RAP_I_WDASDEnum
= 316;
269 const int RAP_WDASDEnumTerminate
= 317;
270 const int RAP_WDASDSetInfo2
= 318;
271 const int MAX_API
= 318;
273 /* sizes of fixed-length fields, including null terminator */
274 const int RAP_GROUPNAME_LEN
= 21;
275 const int RAP_USERNAME_LEN
= 21;
276 const int RAP_SHARENAME_LEN
= 13;
277 const int RAP_UPASSWD_LEN
= 16; /* user password */
278 const int RAP_SPASSWD_LEN
= 9; /* share password */
279 const int RAP_MACHNAME_LEN
= 16;
280 const int RAP_SRVCNAME_LEN
= 16;
281 const int RAP_SRVCCMNT_LEN
= 64;
282 const int RAP_DATATYPE_LEN
= 10;
285 uint8 group_name
[21];
287 [string,charset
(DOS
)] uint8
*comment
;
296 [string,charset
(DOS
)] uint8
*home_dir
;
297 [string,charset
(DOS
)] uint8
*comment
;
299 [string,charset
(DOS
)] uint8
*logon_script
;
303 uint8 service_name
[16];
307 [string,charset
(DOS
)] uint8
*comment
;
308 } rap_service_info_2
;
311 uint8 share_name
[13];
315 uint8 share_name
[13];
318 [string,charset
(DOS
)] uint8
*comment
;
322 uint8 share_name
[13];
325 [string,charset
(DOS
)] uint8
*comment
;
327 uint16 maximum_users
;
329 [string,charset
(DOS
)] uint8
*path
;
334 typedef [nodiscriminant
] union {
335 [case(0)] rap_share_info_0 info0
;
336 [case(1)] rap_share_info_1 info1
;
337 [case(2)] rap_share_info_2 info2
;
340 [public] void rap_NetShareEnum
(
344 [out] uint16 convert
,
346 [out] uint16 available
,
347 [out,switch_is(level
)] rap_share_info
*info
359 [string,charset
(DOS
)] uint8
*comment
;
362 typedef [nodiscriminant
] union {
363 [case(0)] rap_server_info_0 info0
;
364 [case(1)] rap_server_info_1 info1
;
367 [public] void rap_NetServerEnum2
(
370 [in] uint32 servertype
,
371 [in] [string,charset
(DOS
)] uint8
*domain
,
373 [out] uint16 convert
,
375 [out] uint16 available
,
376 [out,switch_is(level
)] rap_server_info
*info
379 [public] void rap_WserverGetInfo
(
383 [out] uint16 convert
,
384 [out] uint16 available
,
385 [out,switch_is(level
)] rap_server_info info
388 /* Parameter description strings for RAP calls */
389 /* Names are defined name for RAP call with _REQ */
390 /* appended to end. */
392 const string RAP_WFileEnum2_REQ
= "zzWrLehb8g8";
393 const string RAP_WFileGetInfo2_REQ
= "DWrLh";
394 const string RAP_WFileClose2_REQ
= "D";
396 const string RAP_NetGroupEnum_REQ
= "WrLeh";
397 const string RAP_NetGroupAdd_REQ
= "WsT";
398 const string RAP_NetGroupDel_REQ
= "z";
399 const string RAP_NetGroupAddUser_REQ
= "zz";
400 const string RAP_NetGroupDelUser_REQ
= "zz";
401 const string RAP_NetGroupGetUsers_REQ
= "zWrLeh";
402 const string RAP_NetGroupSetUsers_REQ
= "zWsTW";
404 const string RAP_NetUserAdd2_REQ
= "WsTWW";
405 const string RAP_NetUserEnum_REQ
= "WrLeh";
406 const string RAP_NetUserEnum2_REQ
= "WrLDieh";
407 const string RAP_NetUserGetGroups_REQ
= "zWrLeh";
408 const string RAP_NetUserSetGroups_REQ
= "zWsTW";
409 const string RAP_NetUserPasswordSet_REQ
= "zb16b16w";
410 const string RAP_NetUserPasswordSet2_REQ
= "zb16b16WW";
411 const string RAP_SAMOEMChgPasswordUser2_REQ
= "B516B16";
412 const string RAP_NetUserValidate2_REQ
= "Wb62WWrLhWW";
414 const string RAP_NetServerEnum2_REQ
= "WrLehDz";
415 const string RAP_WserverGetInfo_REQ
= "WrLh";
416 const string RAP_NetWkstatGetInfo
= "WrLh";
418 const string RAP_WShareAdd_REQ
= "WsT";
419 const string RAP_WShareEnum_REQ
= "WrLeh";
420 const string RAP_WShareDel_REQ
= "zW";
421 const string RAP_WWkstaGetInfo_REQ
= "WrLh";
423 const string RAP_NetPrintQEnum_REQ
= "WrLeh";
424 const string RAP_NetPrintQGetInfo_REQ
= "zWrLh";
426 const string RAP_NetServerAdminCommand_REQ
= "zhrLeh";
427 const string RAP_NetServiceEnum_REQ
= "WrLeh";
428 const string RAP_NetServiceControl_REQ
= "zWWrL";
429 const string RAP_NetServiceInstall_REQ
= "zF88sg88T";
430 const string RAP_NetServiceGetInfo_REQ
= "zWrLh";
431 const string RAP_NetSessionEnum_REQ
= "WrLeh";
432 const string RAP_NetSessionGetInfo_REQ
= "zWrLh";
433 const string RAP_NetSessionDel_REQ
= "zW";
435 const string RAP_NetConnectionEnum_REQ
= "zWrLeh";
437 const string RAP_NetWkstaUserLogoff_REQ
= "zzWb38WrLh";
439 /* Description strings for returned data in RAP calls */
440 /* I use all caps here in part to avoid accidental */
441 /* name collisions */
443 const string RAP_FILE_INFO_L2
= "D";
444 const string RAP_FILE_INFO_L3
= "DWWzz";
445 const string RAP_GROUP_INFO_L0
= "B21";
446 const string RAP_GROUP_INFO_L1
= "B21Bz";
447 const string RAP_GROUP_USERS_INFO_0
= "B21";
448 const string RAP_GROUP_USERS_INFO_1
= "B21BN";
450 const string RAP_USER_INFO_L0
= "B21";
451 const string RAP_USER_INFO_L1
= "B21BB16DWzzWz";
453 const string RAP_SERVER_INFO_L0
= "B16";
454 const string RAP_SERVER_INFO_L1
= "B16BBDz";
455 const string RAP_SERVER_INFO_L2
= "B16BBDzDDDWWzWWWWWWWB21BzWWWWWWWWWWWWWWWWWWWWWWz";
456 const string RAP_SERVER_INFO_L3
= "B16BBDzDDDWWzWWWWWWWB21BzWWWWWWWWWWWWWWWWWWWWWWzDWz";
457 const string RAP_SERVICE_INFO_L0
= "B16";
458 const string RAP_SERVICE_INFO_L2
= "B16WDWB64";
459 const string RAP_SHARE_INFO_L0
= "B13";
460 const string RAP_SHARE_INFO_L1
= "B13BWz";
461 const string RAP_SHARE_INFO_L2
= "B13BWzWWWzB9B";
463 const string RAP_PRINTQ_INFO_L2
= "B13BWWWzzzzzWN";
464 const string RAP_SMB_PRINT_JOB_L1
= "WB21BB16B10zWWzDDz";
466 const string RAP_SESSION_INFO_L2
= "zzWWWDDDz";
467 const string RAP_CONNECTION_INFO_L1
= "WWWWDzz";
469 const string RAP_USER_LOGOFF_INFO_L1
= "WDW";
471 const string RAP_WKSTA_INFO_L1
= "WDzzzzBBDWDWWWWWWWWWWWWWWWWWWWzzWzzW";
472 const string RAP_WKSTA_INFO_L10
= "zzzBBzz";