include/rap.h

説明を見る。
00001 /* 
00002    Samba Unix/Linux SMB client library 
00003    RAP (SMB Remote Procedure Calls) defines and structures
00004    Copyright (C) Steve French 2001  (sfrench@us.ibm.com)
00005    Copyright (C) Jim McDonough 2001 (jmcd@us.ibm.com)
00006    
00007    This program is free software; you can redistribute it and/or modify
00008    it under the terms of the GNU General Public License as published by
00009    the Free Software Foundation; either version 2 of the License, or
00010    (at your option) any later version.
00011    
00012    This program is distributed in the hope that it will be useful,
00013    but WITHOUT ANY WARRANTY; without even the implied warranty of
00014    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015    GNU General Public License for more details.
00016    
00017    You should have received a copy of the GNU General Public License
00018    along with this program; if not, write to the Free Software
00019    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00020 */
00021 
00022 #ifndef _RAP_H_
00023 #define _RAP_H_
00024 
00025 /*****************************************************/
00026 /*                                                   */
00027 /*   Additional RAP functionality                    */
00028 /*                                                   */
00029 /*   RAP is the original SMB RPC, documented         */
00030 /*   by Microsoft and X/Open in the 1990s and        */
00031 /*   supported by most SMB/CIFS servers although     */
00032 /*   it is unlikely that any one implementation      */
00033 /*   supports all RAP command codes since some       */
00034 /*   are quite obsolete and a few are specific       */
00035 /*   to a particular network operating system        */
00036 /*                                                   */ 
00037 /*   Although it has largely been replaced           */ 
00038 /*   for complex remote admistration and management  */
00039 /*   (of servers) by the relatively newer            */
00040 /*   DCE/RPC based remote API (which better handles  */
00041 /*   large >64K data structures), there are many     */
00042 /*   important administrative and resource location  */
00043 /*   tasks and user tasks (e.g. password change)     */
00044 /*   that are performed via RAP.                     */
00045 /*                                                   */
00046 /*   Although a few of the RAP calls are implemented */
00047 /*   in the Samba client library already (clirap.c)  */
00048 /*   the new ones are in clirap2.c for easy patching */
00049 /*   and integration and a corresponding header      */
00050 /*   file, rap.h, has been created.                  */
00051 /*                                                   */
00052 /*   This is based on data from the CIFS spec        */
00053 /*   and the LAN Server and LAN Manager              */
00054 /*   Programming Reference books and published       */
00055 /*   RAP document and CIFS forum postings and        */
00056 /*   lots of trial and error.  Additional            */
00057 /*   background information is available from the    */
00058 /*   X/Open reference book in their PC Interworking  */
00059 /*   series "IPC for SMB" and also from the          */
00060 /*   interoperability documentation in               */
00061 /*   ftp://ftp.microsoft.com/developr/drg/cifs       */
00062 /*                                                   */
00063 /*   Function names changed from API_ (as they are   */
00064 /*   in the CIFS specification to RAP_ in order      */
00065 /*   to avoid confusion with other API calls         */
00066 /*   sent via DCE RPC                                */
00067 /*                                                   */
00068 /*****************************************************/
00069 
00070 /*****************************************************/
00071 /*                                                   */
00072 /* Although without pound defines (of this header)   */
00073 /* cifsrap.c already includes support for:           */
00074 /*                                                   */
00075 /* WshareEnum (API number 0, level 1)                */
00076 /* NetServerEnum2 (API num 104, level 1)             */
00077 /* WWkstaUserLogon (132)                             */
00078 /* SamOEMchgPasswordUser2_P (214)                    */
00079 /*                                                   */
00080 /* and cifsprint.c already includes support for:     */
00081 /*                                                   */
00082 /* WPrintJobEnum (API num 76, level 2)               */
00083 /* WPrintJobDel  (API num 81)                        */
00084 /*                                                   */
00085 /*****************************************************/ 
00086 
00087 #define RAP_WshareEnum                          0
00088 #define RAP_WshareGetInfo                       1
00089 #define RAP_WshareSetInfo                       2
00090 #define RAP_WshareAdd                           3
00091 #define RAP_WshareDel                           4
00092 #define RAP_NetShareCheck                       5
00093 #define RAP_WsessionEnum                        6
00094 #define RAP_WsessionGetInfo                     7
00095 #define RAP_WsessionDel                         8
00096 #define RAP_WconnectionEnum                     9
00097 #define RAP_WfileEnum                           10
00098 #define RAP_WfileGetInfo                        11
00099 #define RAP_WfileClose                          12
00100 #define RAP_WserverGetInfo                      13
00101 #define RAP_WserverSetInfo                      14
00102 #define RAP_WserverDiskEnum                     15
00103 #define RAP_WserverAdminCommand                 16
00104 #define RAP_NetAuditOpen                        17
00105 #define RAP_WauditClear                         18
00106 #define RAP_NetErrorLogOpen                     19
00107 #define RAP_WerrorLogClear                      20
00108 #define RAP_NetCharDevEnum                      21
00109 #define RAP_NetCharDevGetInfo                   22
00110 #define RAP_WCharDevControl                     23
00111 #define RAP_NetCharDevQEnum                     24
00112 #define RAP_NetCharDevQGetInfo                  25
00113 #define RAP_WCharDevQSetInfo                    26
00114 #define RAP_WCharDevQPurge                      27
00115 #define RAP_WCharDevQPurgeSelf                  28
00116 #define RAP_WMessageNameEnum                    29
00117 #define RAP_WMessageNameGetInfo                 30
00118 #define RAP_WMessageNameAdd                     31
00119 #define RAP_WMessageNameDel                     32
00120 #define RAP_WMessageNameFwd                     33
00121 #define RAP_WMessageNameUnFwd                   34
00122 #define RAP_WMessageBufferSend                  35
00123 #define RAP_WMessageFileSend                    36
00124 #define RAP_WMessageLogFileSet                  37
00125 #define RAP_WMessageLogFileGet                  38
00126 #define RAP_WServiceEnum                        39
00127 #define RAP_WServiceInstall                     40
00128 #define RAP_WServiceControl                     41
00129 #define RAP_WAccessEnum                         42
00130 #define RAP_WAccessGetInfo                      43
00131 #define RAP_WAccessSetInfo                      44
00132 #define RAP_WAccessAdd                          45
00133 #define RAP_WAccessDel                          46
00134 #define RAP_WGroupEnum                          47
00135 #define RAP_WGroupAdd                           48
00136 #define RAP_WGroupDel                           49
00137 #define RAP_WGroupAddUser                       50
00138 #define RAP_WGroupDelUser                       51
00139 #define RAP_WGroupGetUsers                      52
00140 #define RAP_WUserEnum                           53
00141 #define RAP_WUserAdd                            54
00142 #define RAP_WUserDel                            55
00143 #define RAP_WUserGetInfo                        56
00144 #define RAP_WUserSetInfo                        57
00145 #define RAP_WUserPasswordSet                    58
00146 #define RAP_WUserGetGroups                      59
00147 #define RAP_WWkstaSetUID                        62
00148 #define RAP_WWkstaGetInfo                       63
00149 #define RAP_WWkstaSetInfo                       64
00150 #define RAP_WUseEnum                            65
00151 #define RAP_WUseAdd                             66
00152 #define RAP_WUseDel                             67
00153 #define RAP_WUseGetInfo                         68
00154 #define RAP_WPrintQEnum                         69
00155 #define RAP_WPrintQGetInfo                      70
00156 #define RAP_WPrintQSetInfo                      71
00157 #define RAP_WPrintQAdd                          72
00158 #define RAP_WPrintQDel                          73
00159 #define RAP_WPrintQPause                        74
00160 #define RAP_WPrintQContinue                     75
00161 #define RAP_WPrintJobEnum                       76
00162 #define RAP_WPrintJobGetInfo                    77
00163 #define RAP_WPrintJobSetInfo_OLD                78
00164 #define RAP_WPrintJobDel                        81
00165 #define RAP_WPrintJobPause                      82
00166 #define RAP_WPrintJobContinue                   83
00167 #define RAP_WPrintDestEnum                      84
00168 #define RAP_WPrintDestGetInfo                   85
00169 #define RAP_WPrintDestControl                   86
00170 #define RAP_WProfileSave                        87
00171 #define RAP_WProfileLoad                        88
00172 #define RAP_WStatisticsGet                      89
00173 #define RAP_WStatisticsClear                    90
00174 #define RAP_NetRemoteTOD                        91
00175 #define RAP_WNetBiosEnum                        92
00176 #define RAP_WNetBiosGetInfo                     93
00177 #define RAP_NetServerEnum                       94
00178 #define RAP_I_NetServerEnum                     95
00179 #define RAP_WServiceGetInfo                     96
00180 #define RAP_WPrintQPurge                        103
00181 #define RAP_NetServerEnum2                      104
00182 #define RAP_WAccessGetUserPerms                 105
00183 #define RAP_WGroupGetInfo                       106
00184 #define RAP_WGroupSetInfo                       107
00185 #define RAP_WGroupSetUsers                      108
00186 #define RAP_WUserSetGroups                      109
00187 #define RAP_WUserModalsGet                      110
00188 #define RAP_WUserModalsSet                      111
00189 #define RAP_WFileEnum2                          112
00190 #define RAP_WUserAdd2                           113
00191 #define RAP_WUserSetInfo2                       114
00192 #define RAP_WUserPasswordSet2                   115
00193 #define RAP_I_NetServerEnum2                    116
00194 #define RAP_WConfigGet2                         117
00195 #define RAP_WConfigGetAll2                      118
00196 #define RAP_WGetDCName                          119
00197 #define RAP_NetHandleGetInfo                    120
00198 #define RAP_NetHandleSetInfo                    121
00199 #define RAP_WStatisticsGet2                     122
00200 #define RAP_WBuildGetInfo                       123
00201 #define RAP_WFileGetInfo2                       124
00202 #define RAP_WFileClose2                         125
00203 #define RAP_WNetServerReqChallenge              126
00204 #define RAP_WNetServerAuthenticate              127
00205 #define RAP_WNetServerPasswordSet               128
00206 #define RAP_WNetAccountDeltas                   129
00207 #define RAP_WNetAccountSync                     130
00208 #define RAP_WUserEnum2                          131
00209 #define RAP_WWkstaUserLogon                     132
00210 #define RAP_WWkstaUserLogoff                    133
00211 #define RAP_WLogonEnum                          134
00212 #define RAP_WErrorLogRead                       135
00213 #define RAP_NetPathType                         136
00214 #define RAP_NetPathCanonicalize                 137
00215 #define RAP_NetPathCompare                      138
00216 #define RAP_NetNameValidate                     139
00217 #define RAP_NetNameCanonicalize                 140
00218 #define RAP_NetNameCompare                      141
00219 #define RAP_WAuditRead                          142
00220 #define RAP_WPrintDestAdd                       143
00221 #define RAP_WPrintDestSetInfo                   144
00222 #define RAP_WPrintDestDel                       145
00223 #define RAP_WUserValidate2                      146
00224 #define RAP_WPrintJobSetInfo                    147
00225 #define RAP_TI_NetServerDiskEnum                148
00226 #define RAP_TI_NetServerDiskGetInfo             149
00227 #define RAP_TI_FTVerifyMirror                   150
00228 #define RAP_TI_FTAbortVerify                    151
00229 #define RAP_TI_FTGetInfo                        152
00230 #define RAP_TI_FTSetInfo                        153
00231 #define RAP_TI_FTLockDisk                       154
00232 #define RAP_TI_FTFixError                       155
00233 #define RAP_TI_FTAbortFix                       156
00234 #define RAP_TI_FTDiagnoseError                  157
00235 #define RAP_TI_FTGetDriveStats                  158
00236 #define RAP_TI_FTErrorGetInfo                   160
00237 #define RAP_NetAccessCheck                      163
00238 #define RAP_NetAlertRaise                       164
00239 #define RAP_NetAlertStart                       165
00240 #define RAP_NetAlertStop                        166
00241 #define RAP_NetAuditWrite                       167
00242 #define RAP_NetIRemoteAPI                       168
00243 #define RAP_NetServiceStatus                    169
00244 #define RAP_NetServerRegister                   170
00245 #define RAP_NetServerDeregister                 171
00246 #define RAP_NetSessionEntryMake                 172
00247 #define RAP_NetSessionEntryClear                173
00248 #define RAP_NetSessionEntryGetInfo              174
00249 #define RAP_NetSessionEntrySetInfo              175
00250 #define RAP_NetConnectionEntryMake              176
00251 #define RAP_NetConnectionEntryClear             177
00252 #define RAP_NetConnectionEntrySetInfo           178
00253 #define RAP_NetConnectionEntryGetInfo           179
00254 #define RAP_NetFileEntryMake                    180
00255 #define RAP_NetFileEntryClear                   181
00256 #define RAP_NetFileEntrySetInfo                 182
00257 #define RAP_NetFileEntryGetInfo                 183
00258 #define RAP_AltSrvMessageBufferSend             184
00259 #define RAP_AltSrvMessageFileSend               185
00260 #define RAP_wI_NetRplWkstaEnum                  186
00261 #define RAP_wI_NetRplWkstaGetInfo               187
00262 #define RAP_wI_NetRplWkstaSetInfo               188
00263 #define RAP_wI_NetRplWkstaAdd                   189
00264 #define RAP_wI_NetRplWkstaDel                   190
00265 #define RAP_wI_NetRplProfileEnum                191
00266 #define RAP_wI_NetRplProfileGetInfo             192
00267 #define RAP_wI_NetRplProfileSetInfo             193
00268 #define RAP_wI_NetRplProfileAdd                 194
00269 #define RAP_wI_NetRplProfileDel                 195
00270 #define RAP_wI_NetRplProfileClone               196
00271 #define RAP_wI_NetRplBaseProfileEnum            197
00272 #define RAP_WIServerSetInfo                     201
00273 #define RAP_WPrintDriverEnum                    205
00274 #define RAP_WPrintQProcessorEnum                206
00275 #define RAP_WPrintPortEnum                      207
00276 #define RAP_WNetWriteUpdateLog                  208
00277 #define RAP_WNetAccountUpdate                   209
00278 #define RAP_WNetAccountConfirmUpdate            210
00279 #define RAP_WConfigSet                          211
00280 #define RAP_WAccountsReplicate                  212                      
00281 #define RAP_SamOEMChgPasswordUser2_P            214
00282 #define RAP_NetServerEnum3                      215
00283 #define RAP_WprintDriverGetInfo                 250
00284 #define RAP_WprintDriverSetInfo                 251
00285 #define RAP_WaliasAdd                           252
00286 #define RAP_WaliasDel                           253
00287 #define RAP_WaliasGetInfo                       254
00288 #define RAP_WaliasSetInfo                       255
00289 #define RAP_WaliasEnum                          256
00290 #define RAP_WuserGetLogonAsn                    257
00291 #define RAP_WuserSetLogonAsn                    258
00292 #define RAP_WuserGetAppSel                      259
00293 #define RAP_WuserSetAppSel                      260
00294 #define RAP_WappAdd                             261
00295 #define RAP_WappDel                             262
00296 #define RAP_WappGetInfo                         263
00297 #define RAP_WappSetInfo                         264
00298 #define RAP_WappEnum                            265
00299 #define RAP_WUserDCDBInit                       266
00300 #define RAP_WDASDAdd                            267
00301 #define RAP_WDASDDel                            268
00302 #define RAP_WDASDGetInfo                        269
00303 #define RAP_WDASDSetInfo                        270
00304 #define RAP_WDASDEnum                           271
00305 #define RAP_WDASDCheck                          272
00306 #define RAP_WDASDCtl                            273
00307 #define RAP_WuserRemoteLogonCheck               274
00308 #define RAP_WUserPasswordSet3                   275
00309 #define RAP_WCreateRIPLMachine                  276
00310 #define RAP_WDeleteRIPLMachine                  277
00311 #define RAP_WGetRIPLMachineInfo                 278
00312 #define RAP_WSetRIPLMachineInfo                 279
00313 #define RAP_WEnumRIPLMachine                    280
00314 #define RAP_I_ShareAdd                          281
00315 #define RAP_AliasEnum                           282
00316 #define RAP_WaccessApply                        283
00317 #define RAP_WPrt16Query                         284
00318 #define RAP_WPrt16Set                           285
00319 #define RAP_WUserDel100                         286
00320 #define RAP_WUserRemoteLogonCheck2              287
00321 #define RAP_WRemoteTODSet                       294
00322 #define RAP_WprintJobMoveAll                    295
00323 #define RAP_W16AppParmAdd                       296
00324 #define RAP_W16AppParmDel                       297
00325 #define RAP_W16AppParmGet                       298
00326 #define RAP_W16AppParmSet                       299
00327 #define RAP_W16RIPLMachineCreate                300
00328 #define RAP_W16RIPLMachineGetInfo               301
00329 #define RAP_W16RIPLMachineSetInfo               302
00330 #define RAP_W16RIPLMachineEnum                  303
00331 #define RAP_W16RIPLMachineListParmEnum          304
00332 #define RAP_W16RIPLMachClassGetInfo             305
00333 #define RAP_W16RIPLMachClassEnum                306
00334 #define RAP_W16RIPLMachClassCreate              307
00335 #define RAP_W16RIPLMachClassSetInfo             308
00336 #define RAP_W16RIPLMachClassDelete              309
00337 #define RAP_W16RIPLMachClassLPEnum              310
00338 #define RAP_W16RIPLMachineDelete                311
00339 #define RAP_W16WSLevelGetInfo                   312
00340 #define RAP_WserverNameAdd                      313
00341 #define RAP_WserverNameDel                      314
00342 #define RAP_WserverNameEnum                     315
00343 #define RAP_I_WDASDEnum                         316
00344 #define RAP_WDASDEnumTerminate                  317
00345 #define RAP_WDASDSetInfo2                       318
00346 #define MAX_API                                 318
00347 
00348 
00349 /* Parameter description strings for RAP calls   */
00350 /* Names are defined name for RAP call with _REQ */
00351 /* appended to end.                              */
00352 
00353 #define RAP_WFileEnum2_REQ      "zzWrLehb8g8"
00354 #define RAP_WFileGetInfo2_REQ   "DWrLh"
00355 #define RAP_WFileClose2_REQ     "D"     
00356 
00357 #define RAP_NetGroupEnum_REQ    "WrLeh"
00358 #define RAP_NetGroupAdd_REQ     "WsT"
00359 #define RAP_NetGroupDel_REQ     "z"
00360 #define RAP_NetGroupAddUser_REQ "zz"
00361 #define RAP_NetGroupDelUser_REQ "zz"
00362 #define RAP_NetGroupGetUsers_REQ "zWrLeh"
00363 #define RAP_NetGroupSetUsers_REQ "zWsTW"
00364 
00365 #define RAP_NetUserAdd2_REQ       "WsTWW"
00366 #define RAP_NetUserEnum_REQ       "WrLeh"
00367 #define RAP_NetUserEnum2_REQ      "WrLDieh"
00368 #define RAP_NetUserGetGroups_REQ  "zWrLeh"
00369 #define RAP_NetUserSetGroups_REQ  "zWsTW"
00370 #define RAP_NetUserPasswordSet_REQ "zb16b16w"
00371 #define RAP_NetUserPasswordSet2_REQ "zb16b16WW"
00372 #define RAP_SAMOEMChgPasswordUser2_REQ "B516B16"
00373 #define RAP_NetUserValidate2_REQ    "Wb62WWrLhWW"
00374 
00375 #define RAP_NetServerEnum2_REQ  "WrLehDz"
00376 #define RAP_WserverGetInfo_REQ  "WrLh"
00377 #define RAP_NetWkstatGetInfo    "WrLh"
00378 
00379 #define RAP_WShareAdd_REQ       "WsT"
00380 #define RAP_WShareEnum_REQ      "WrLeh"
00381 #define RAP_WShareDel_REQ       "zW"
00382 #define RAP_WWkstaGetInfo_REQ   "WrLh"
00383 
00384 #define RAP_NetPrintQEnum_REQ   "WrLeh"
00385 #define RAP_NetPrintQGetInfo_REQ "zWrLh"
00386 
00387 #define RAP_NetServerAdminCommand_REQ "zhrLeh"
00388 #define RAP_NetServiceEnum_REQ  "WrLeh"
00389 #define RAP_NetServiceControl_REQ "zWWrL"
00390 #define RAP_NetServiceInstall_REQ "zF88sg88T"
00391 #define RAP_NetServiceGetInfo_REQ "zWrLh"
00392 #define RAP_NetSessionEnum_REQ  "WrLeh"
00393 #define RAP_NetSessionGetInfo_REQ "zWrLh"
00394 #define RAP_NetSessionDel_REQ   "zW"
00395 
00396 #define RAP_NetConnectionEnum_REQ "zWrLeh"
00397 
00398 #define RAP_NetWkstaUserLogoff_REQ "zzWb38WrLh"
00399 
00400 /* Description strings for returned data in RAP calls */
00401 /* I use all caps here in part to avoid accidental    */
00402 /* name collisions */
00403 
00404 #define RAP_FILE_INFO_L2        "D"
00405 #define RAP_FILE_INFO_L3        "DWWzz"
00406 
00407 #define RAP_GROUP_INFO_L0       "B21"
00408 #define RAP_GROUP_INFO_L1       "B21Bz"
00409 #define RAP_GROUP_USERS_INFO_0  "B21"
00410 #define RAP_GROUP_USERS_INFO_1  "B21BN"
00411 
00412 #define RAP_USER_INFO_L0        "B21"
00413 #define RAP_USER_INFO_L1        "B21BB16DWzzWz"
00414 
00415 #define RAP_SERVER_INFO_L0      "B16"
00416 #define RAP_SERVER_INFO_L1      "B16BBDz"
00417 #define RAP_SERVER_INFO_L2 "B16BBDzDDDWWzWWWWWWWB21BzWWWWWWWWWWWWWWWWWWWWWWz"
00418 #define RAP_SERVER_INFO_L3 "B16BBDzDDDWWzWWWWWWWB21BzWWWWWWWWWWWWWWWWWWWWWWzDWz"
00419 #define RAP_SERVICE_INFO_L0     "B16"
00420 #define RAP_SERVICE_INFO_L2     "B16WDWB64"
00421 #define RAP_SHARE_INFO_L0       "B13"
00422 #define RAP_SHARE_INFO_L1       "B13BWz"
00423 #define RAP_SHARE_INFO_L2       "B13BWzWWWzB9B"
00424 
00425 #define RAP_PRINTQ_INFO_L2      "B13BWWWzzzzzWN"
00426 #define RAP_SMB_PRINT_JOB_L1    "WB21BB16B10zWWzDDz"
00427 
00428 #define RAP_SESSION_INFO_L2      "zzWWWDDDz"
00429 #define RAP_CONNECTION_INFO_L1   "WWWWDzz"
00430 
00431 #define RAP_USER_LOGOFF_INFO_L1     "WDW"
00432 
00433 #define RAP_WKSTA_INFO_L1       "WDzzzzBBDWDWWWWWWWWWWWWWWWWWWWzzWzzW"
00434 #define RAP_WKSTA_INFO_L10      "zzzBBzz"
00435 
00436 /* BB explicit packing would help in structs below */
00437 
00438 /* sizes of fixed-length fields, including null terminator */
00439 #define RAP_GROUPNAME_LEN 21
00440 #define RAP_USERNAME_LEN 21
00441 #define RAP_SHARENAME_LEN 13
00442 #define RAP_UPASSWD_LEN 16 /* user password */
00443 #define RAP_SPASSWD_LEN 9 /* share password */
00444 #define RAP_MACHNAME_LEN 16
00445 #define RAP_SRVCNAME_LEN 16
00446 #define RAP_SRVCCMNT_LEN 64
00447 #define RAP_DATATYPE_LEN 10
00448 
00449 
00450 typedef struct rap_group_info_1
00451 {
00452     char   group_name[RAP_GROUPNAME_LEN];
00453     char   reserved1;
00454     char * comment;
00455 } RAP_GROUP_INFO_1;
00456 
00457 typedef struct rap_user_info_1
00458 {
00459     char   user_name[RAP_USERNAME_LEN];
00460     char   reserved1;
00461     char   passwrd[RAP_UPASSWD_LEN];
00462     uint32 pwage;
00463     uint16 priv;
00464     char * home_dir;
00465     char * comment;
00466     uint16 userflags;
00467     char * logon_script;
00468 } RAP_USER_INFO_1;
00469 
00470 typedef struct rap_service_info_2
00471 {
00472     char   service_name[RAP_SRVCNAME_LEN];
00473     uint16 status;
00474     uint32 installcode;
00475     uint16 process_num;
00476     char * comment;
00477 } RAP_SERVICE_INFO_2;
00478 
00479 
00480 typedef struct rap_share_info_0
00481 {
00482     char   share_name[RAP_SHARENAME_LEN];
00483 } RAP_SHARE_INFO_0;
00484 
00485 typedef struct rap_share_info_1
00486 {
00487     char   share_name[RAP_SHARENAME_LEN];
00488     char   reserved1;
00489     uint16 share_type;
00490     char * comment;
00491 } RAP_SHARE_INFO_1;
00492 
00493 typedef struct rap_share_info_2
00494 {
00495     char   share_name[RAP_SHARENAME_LEN];
00496     char   reserved1;
00497     uint16 share_type;
00498     char * comment;
00499     uint16 perms;
00500     uint16 maximum_users;
00501     uint16 active_users;
00502     char * path;
00503     char   password[RAP_SPASSWD_LEN];
00504     char   reserved2;
00505 } RAP_SHARE_INFO_2;
00506 
00507 #endif /* _RAP_H_ */

Sambaに対してSat Aug 29 21:22:54 2009に生成されました。  doxygen 1.4.7