Ignore:
Timestamp:
Nov 27, 2012, 4:43:17 PM (13 years ago)
Author:
Silvan Scherrer
Message:

Samba Server: updated trunk to 3.6.0

Location:
trunk/server
Files:
2 edited
2 copied

Legend:

Unmodified
Added
Removed
  • trunk/server

  • trunk/server/source4/libcli/rap/rap.h

    r414 r745  
    1 /* 
     1/*
    22   Unix SMB/CIFS implementation.
    3    RAP operations
     3   RAP client
    44   Copyright (C) Volker Lendecke 2004
    5    
     5   Copyright (C) Tim Potter 2005
     6   Copyright (C) Jelmer Vernooij 2007
     7   Copyright (C) Guenther Deschner 2010
     8
    69   This program is free software; you can redistribute it and/or modify
    710   it under the terms of the GNU General Public License as published by
    811   the Free Software Foundation; either version 3 of the License, or
    912   (at your option) any later version.
    10    
     13
    1114   This program is distributed in the hope that it will be useful,
    1215   but WITHOUT ANY WARRANTY; without even the implied warranty of
    1316   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    1417   GNU General Public License for more details.
    15    
     18
    1619   You should have received a copy of the GNU General Public License
    1720   along with this program.  If not, see <http://www.gnu.org/licenses/>.
    1821*/
    1922
    20 #define RAP_WshareEnum                          0
    21 #define RAP_WshareGetInfo                       1
    22 #define RAP_WshareSetInfo                       2
    23 #define RAP_WshareAdd                           3
    24 #define RAP_WshareDel                           4
    25 #define RAP_NetShareCheck                       5
    26 #define RAP_WsessionEnum                        6
    27 #define RAP_WsessionGetInfo                     7
    28 #define RAP_WsessionDel                         8
    29 #define RAP_WconnectionEnum                     9
    30 #define RAP_WfileEnum                           10
    31 #define RAP_WfileGetInfo                        11
    32 #define RAP_WfileClose                          12
    33 #define RAP_WserverGetInfo                      13
    34 #define RAP_WserverSetInfo                      14
    35 #define RAP_WserverDiskEnum                     15
    36 #define RAP_WserverAdminCommand                 16
    37 #define RAP_NetAuditOpen                        17
    38 #define RAP_WauditClear                         18
    39 #define RAP_NetErrorLogOpen                     19
    40 #define RAP_WerrorLogClear                      20
    41 #define RAP_NetCharDevEnum                      21
    42 #define RAP_NetCharDevGetInfo                   22
    43 #define RAP_WCharDevControl                     23
    44 #define RAP_NetCharDevQEnum                     24
    45 #define RAP_NetCharDevQGetInfo                  25
    46 #define RAP_WCharDevQSetInfo                    26
    47 #define RAP_WCharDevQPurge                      27
    48 #define RAP_WCharDevQPurgeSelf                  28
    49 #define RAP_WMessageNameEnum                    29
    50 #define RAP_WMessageNameGetInfo                 30
    51 #define RAP_WMessageNameAdd                     31
    52 #define RAP_WMessageNameDel                     32
    53 #define RAP_WMessageNameFwd                     33
    54 #define RAP_WMessageNameUnFwd                   34
    55 #define RAP_WMessageBufferSend                  35
    56 #define RAP_WMessageFileSend                    36
    57 #define RAP_WMessageLogFileSet                  37
    58 #define RAP_WMessageLogFileGet                  38
    59 #define RAP_WServiceEnum                        39
    60 #define RAP_WServiceInstall                     40
    61 #define RAP_WServiceControl                     41
    62 #define RAP_WAccessEnum                         42
    63 #define RAP_WAccessGetInfo                      43
    64 #define RAP_WAccessSetInfo                      44
    65 #define RAP_WAccessAdd                          45
    66 #define RAP_WAccessDel                          46
    67 #define RAP_WGroupEnum                          47
    68 #define RAP_WGroupAdd                           48
    69 #define RAP_WGroupDel                           49
    70 #define RAP_WGroupAddUser                       50
    71 #define RAP_WGroupDelUser                       51
    72 #define RAP_WGroupGetUsers                      52
    73 #define RAP_WUserEnum                           53
    74 #define RAP_WUserAdd                            54
    75 #define RAP_WUserDel                            55
    76 #define RAP_WUserGetInfo                        56
    77 #define RAP_WUserSetInfo                        57
    78 #define RAP_WUserPasswordSet                    58
    79 #define RAP_WUserGetGroups                      59
    80 #define RAP_WWkstaSetUID                        62
    81 #define RAP_WWkstaGetInfo                       63
    82 #define RAP_WWkstaSetInfo                       64
    83 #define RAP_WUseEnum                            65
    84 #define RAP_WUseAdd                             66
    85 #define RAP_WUseDel                             67
    86 #define RAP_WUseGetInfo                         68
    87 #define RAP_WPrintQEnum                         69
    88 #define RAP_WPrintQGetInfo                      70
    89 #define RAP_WPrintQSetInfo                      71
    90 #define RAP_WPrintQAdd                          72
    91 #define RAP_WPrintQDel                          73
    92 #define RAP_WPrintQPause                        74
    93 #define RAP_WPrintQContinue                     75
    94 #define RAP_WPrintJobEnum                       76
    95 #define RAP_WPrintJobGetInfo                    77
    96 #define RAP_WPrintJobSetInfo_OLD                78
    97 #define RAP_WPrintJobDel                        81
    98 #define RAP_WPrintJobPause                      82
    99 #define RAP_WPrintJobContinue                   83
    100 #define RAP_WPrintDestEnum                      84
    101 #define RAP_WPrintDestGetInfo                   85
    102 #define RAP_WPrintDestControl                   86
    103 #define RAP_WProfileSave                        87
    104 #define RAP_WProfileLoad                        88
    105 #define RAP_WStatisticsGet                      89
    106 #define RAP_WStatisticsClear                    90
    107 #define RAP_NetRemoteTOD                        91
    108 #define RAP_WNetBiosEnum                        92
    109 #define RAP_WNetBiosGetInfo                     93
    110 #define RAP_NetServerEnum                       94
    111 #define RAP_I_NetServerEnum                     95
    112 #define RAP_WServiceGetInfo                     96
    113 #define RAP_WPrintQPurge                        103
    114 #define RAP_NetServerEnum2                      104
    115 #define RAP_WAccessGetUserPerms                 105
    116 #define RAP_WGroupGetInfo                       106
    117 #define RAP_WGroupSetInfo                       107
    118 #define RAP_WGroupSetUsers                      108
    119 #define RAP_WUserSetGroups                      109
    120 #define RAP_WUserModalsGet                      110
    121 #define RAP_WUserModalsSet                      111
    122 #define RAP_WFileEnum2                          112
    123 #define RAP_WUserAdd2                           113
    124 #define RAP_WUserSetInfo2                       114
    125 #define RAP_WUserPasswordSet2                   115
    126 #define RAP_I_NetServerEnum2                    116
    127 #define RAP_WConfigGet2                         117
    128 #define RAP_WConfigGetAll2                      118
    129 #define RAP_WGetDCName                          119
    130 #define RAP_NetHandleGetInfo                    120
    131 #define RAP_NetHandleSetInfo                    121
    132 #define RAP_WStatisticsGet2                     122
    133 #define RAP_WBuildGetInfo                       123
    134 #define RAP_WFileGetInfo2                       124
    135 #define RAP_WFileClose2                         125
    136 #define RAP_WNetServerReqChallenge              126
    137 #define RAP_WNetServerAuthenticate              127
    138 #define RAP_WNetServerPasswordSet               128
    139 #define RAP_WNetAccountDeltas                   129
    140 #define RAP_WNetAccountSync                     130
    141 #define RAP_WUserEnum2                          131
    142 #define RAP_WWkstaUserLogon                     132
    143 #define RAP_WWkstaUserLogoff                    133
    144 #define RAP_WLogonEnum                          134
    145 #define RAP_WErrorLogRead                       135
    146 #define RAP_NetPathType                         136
    147 #define RAP_NetPathCanonicalize                 137
    148 #define RAP_NetPathCompare                      138
    149 #define RAP_NetNameValidate                     139
    150 #define RAP_NetNameCanonicalize                 140
    151 #define RAP_NetNameCompare                      141
    152 #define RAP_WAuditRead                          142
    153 #define RAP_WPrintDestAdd                       143
    154 #define RAP_WPrintDestSetInfo                   144
    155 #define RAP_WPrintDestDel                       145
    156 #define RAP_WUserValidate2                      146
    157 #define RAP_WPrintJobSetInfo                    147
    158 #define RAP_TI_NetServerDiskEnum                148
    159 #define RAP_TI_NetServerDiskGetInfo             149
    160 #define RAP_TI_FTVerifyMirror                   150
    161 #define RAP_TI_FTAbortVerify                    151
    162 #define RAP_TI_FTGetInfo                        152
    163 #define RAP_TI_FTSetInfo                        153
    164 #define RAP_TI_FTLockDisk                       154
    165 #define RAP_TI_FTFixError                       155
    166 #define RAP_TI_FTAbortFix                       156
    167 #define RAP_TI_FTDiagnoseError                  157
    168 #define RAP_TI_FTGetDriveStats                  158
    169 #define RAP_TI_FTErrorGetInfo                   160
    170 #define RAP_NetAccessCheck                      163
    171 #define RAP_NetAlertRaise                       164
    172 #define RAP_NetAlertStart                       165
    173 #define RAP_NetAlertStop                        166
    174 #define RAP_NetAuditWrite                       167
    175 #define RAP_NetIRemoteAPI                       168
    176 #define RAP_NetServiceStatus                    169
    177 #define RAP_NetServerRegister                   170
    178 #define RAP_NetServerDeregister                 171
    179 #define RAP_NetSessionEntryMake                 172
    180 #define RAP_NetSessionEntryClear                173
    181 #define RAP_NetSessionEntryGetInfo              174
    182 #define RAP_NetSessionEntrySetInfo              175
    183 #define RAP_NetConnectionEntryMake              176
    184 #define RAP_NetConnectionEntryClear             177
    185 #define RAP_NetConnectionEntrySetInfo           178
    186 #define RAP_NetConnectionEntryGetInfo           179
    187 #define RAP_NetFileEntryMake                    180
    188 #define RAP_NetFileEntryClear                   181
    189 #define RAP_NetFileEntrySetInfo                 182
    190 #define RAP_NetFileEntryGetInfo                 183
    191 #define RAP_AltSrvMessageBufferSend             184
    192 #define RAP_AltSrvMessageFileSend               185
    193 #define RAP_wI_NetRplWkstaEnum                  186
    194 #define RAP_wI_NetRplWkstaGetInfo               187
    195 #define RAP_wI_NetRplWkstaSetInfo               188
    196 #define RAP_wI_NetRplWkstaAdd                   189
    197 #define RAP_wI_NetRplWkstaDel                   190
    198 #define RAP_wI_NetRplProfileEnum                191
    199 #define RAP_wI_NetRplProfileGetInfo             192
    200 #define RAP_wI_NetRplProfileSetInfo             193
    201 #define RAP_wI_NetRplProfileAdd                 194
    202 #define RAP_wI_NetRplProfileDel                 195
    203 #define RAP_wI_NetRplProfileClone               196
    204 #define RAP_wI_NetRplBaseProfileEnum            197
    205 #define RAP_WIServerSetInfo                     201
    206 #define RAP_WPrintDriverEnum                    205
    207 #define RAP_WPrintQProcessorEnum                206
    208 #define RAP_WPrintPortEnum                      207
    209 #define RAP_WNetWriteUpdateLog                  208
    210 #define RAP_WNetAccountUpdate                   209
    211 #define RAP_WNetAccountConfirmUpdate            210
    212 #define RAP_WConfigSet                          211
    213 #define RAP_WAccountsReplicate                  212                     
    214 #define RAP_SamOEMChgPasswordUser2_P            214
    215 #define RAP_NetServerEnum3                      215
    216 #define RAP_WprintDriverGetInfo                 250
    217 #define RAP_WprintDriverSetInfo                 251
    218 #define RAP_WaliasAdd                           252
    219 #define RAP_WaliasDel                           253
    220 #define RAP_WaliasGetInfo                       254
    221 #define RAP_WaliasSetInfo                       255
    222 #define RAP_WaliasEnum                          256
    223 #define RAP_WuserGetLogonAsn                    257
    224 #define RAP_WuserSetLogonAsn                    258
    225 #define RAP_WuserGetAppSel                      259
    226 #define RAP_WuserSetAppSel                      260
    227 #define RAP_WappAdd                             261
    228 #define RAP_WappDel                             262
    229 #define RAP_WappGetInfo                         263
    230 #define RAP_WappSetInfo                         264
    231 #define RAP_WappEnum                            265
    232 #define RAP_WUserDCDBInit                       266
    233 #define RAP_WDASDAdd                            267
    234 #define RAP_WDASDDel                            268
    235 #define RAP_WDASDGetInfo                        269
    236 #define RAP_WDASDSetInfo                        270
    237 #define RAP_WDASDEnum                           271
    238 #define RAP_WDASDCheck                          272
    239 #define RAP_WDASDCtl                            273
    240 #define RAP_WuserRemoteLogonCheck               274
    241 #define RAP_WUserPasswordSet3                   275
    242 #define RAP_WCreateRIPLMachine                  276
    243 #define RAP_WDeleteRIPLMachine                  277
    244 #define RAP_WGetRIPLMachineInfo                 278
    245 #define RAP_WSetRIPLMachineInfo                 279
    246 #define RAP_WEnumRIPLMachine                    280
    247 #define RAP_I_ShareAdd                          281
    248 #define RAP_AliasEnum                           282
    249 #define RAP_WaccessApply                        283
    250 #define RAP_WPrt16Query                         284
    251 #define RAP_WPrt16Set                           285
    252 #define RAP_WUserDel100                         286
    253 #define RAP_WUserRemoteLogonCheck2              287
    254 #define RAP_WRemoteTODSet                       294
    255 #define RAP_WprintJobMoveAll                    295
    256 #define RAP_W16AppParmAdd                       296
    257 #define RAP_W16AppParmDel                       297
    258 #define RAP_W16AppParmGet                       298
    259 #define RAP_W16AppParmSet                       299
    260 #define RAP_W16RIPLMachineCreate                300
    261 #define RAP_W16RIPLMachineGetInfo               301
    262 #define RAP_W16RIPLMachineSetInfo               302
    263 #define RAP_W16RIPLMachineEnum                  303
    264 #define RAP_W16RIPLMachineListParmEnum          304
    265 #define RAP_W16RIPLMachClassGetInfo             305
    266 #define RAP_W16RIPLMachClassEnum                306
    267 #define RAP_W16RIPLMachClassCreate              307
    268 #define RAP_W16RIPLMachClassSetInfo             308
    269 #define RAP_W16RIPLMachClassDelete              309
    270 #define RAP_W16RIPLMachClassLPEnum              310
    271 #define RAP_W16RIPLMachineDelete                311
    272 #define RAP_W16WSLevelGetInfo                   312
    273 #define RAP_WserverNameAdd                      313
    274 #define RAP_WserverNameDel                      314
    275 #define RAP_WserverNameEnum                     315
    276 #define RAP_I_WDASDEnum                         316
    277 #define RAP_WDASDEnumTerminate                  317
    278 #define RAP_WDASDSetInfo2                       318
    279 #define MAX_API                                 318
     23#define RAP_GOTO(call) do { \
     24        NTSTATUS _status; \
     25        _status = call; \
     26        if (!NT_STATUS_IS_OK(_status)) { \
     27                result = _status; \
     28                goto done; \
     29        } \
     30} while (0)
    28031
    281 struct rap_shareenum_info_0 {
    282         char name[13];
     32#define RAP_RETURN(call) do { \
     33        NTSTATUS _status; \
     34        _status = call; \
     35        if (!NT_STATUS_IS_OK(_status)) { \
     36                return _status; \
     37        } \
     38} while (0)
     39
     40#define NDR_GOTO(call) do { \
     41        enum ndr_err_code _ndr_err; \
     42        _ndr_err = call; \
     43        if (!NDR_ERR_CODE_IS_SUCCESS(_ndr_err)) { \
     44                result = ndr_map_error2ntstatus(_ndr_err); \
     45                goto done; \
     46        } \
     47} while (0)
     48
     49#define NDR_RETURN(call) do { \
     50        enum ndr_err_code _ndr_err; \
     51        _ndr_err = call; \
     52        if (!NDR_ERR_CODE_IS_SUCCESS(_ndr_err)) { \
     53                return ndr_map_error2ntstatus(_ndr_err); \
     54        } \
     55} while (0)
     56
     57struct rap_call {
     58        uint16_t callno;
     59        char *paramdesc;
     60        const char *datadesc;
     61        const char *auxdatadesc;
     62
     63        uint16_t status;
     64        uint16_t convert;
     65
     66        uint16_t rcv_paramlen, rcv_datalen;
     67
     68        struct ndr_push *ndr_push_param;
     69        struct ndr_push *ndr_push_data;
     70        struct ndr_pull *ndr_pull_param;
     71        struct ndr_pull *ndr_pull_data;
    28372};
    28473
    285 struct rap_shareenum_info_1 {
    286         char name[13];
    287         char pad;
    288         uint16_t type;
    289         char *comment;
    290 };
     74#define RAPNDR_FLAGS (LIBNDR_FLAG_NOALIGN|LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
    29175
    292 union rap_shareenum_info {
    293         struct rap_shareenum_info_0 info0;
    294         struct rap_shareenum_info_1 info1;
    295 };
    296 
    297 struct rap_NetShareEnum {
    298         struct {
    299                 uint16_t level;
    300                 uint16_t bufsize;
    301         } in;
    302 
    303         struct {
    304                 uint16_t status;
    305                 uint16_t convert;
    306                 uint16_t count;
    307                 uint16_t available;
    308                 union rap_shareenum_info *info;
    309         } out;
    310 };
    311 
    312 struct rap_server_info_0 {
    313         char name[16];
    314 };
    315 
    316 struct rap_server_info_1 {
    317         char     name[16];
    318         uint8_t  version_major;
    319         uint8_t  version_minor;
    320         uint32_t servertype;
    321         char    *comment;
    322 };
    323 
    324 union rap_server_info {
    325         struct rap_server_info_0 info0;
    326         struct rap_server_info_1 info1;
    327 };
    328 
    329 struct rap_NetServerEnum2 {
    330         struct {
    331                 uint16_t level;
    332                 uint16_t bufsize;
    333                 uint32_t servertype;
    334                 const char *domain;
    335         } in;
    336 
    337         struct {
    338                 uint16_t status;
    339                 uint16_t convert;
    340                 uint16_t count;
    341                 uint16_t available;
    342                 union rap_server_info *info;
    343         } out;
    344 };
    345 
    346 struct rap_WserverGetInfo {
    347         struct {
    348                 uint16_t level;
    349                 uint16_t bufsize;
    350         } in;
    351 
    352         struct {
    353                 uint16_t status;
    354                 uint16_t convert;
    355                 uint16_t available;
    356                 union rap_server_info info;
    357         } out;
    358 };
     76#include "../librpc/gen_ndr/rap.h"
     77#include "libcli/rap/proto.h"
Note: See TracChangeset for help on using the changeset viewer.