00001
00002
00003
00004
00005
00006 #include "includes.h"
00007
00008 NTSTATUS rpccli_dfs_GetManagerVersion(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, uint32 *exist_flag)
00009 {
00010 prs_struct qbuf, rbuf;
00011 NETDFS_Q_DFS_GETMANAGERVERSION q;
00012 NETDFS_R_DFS_GETMANAGERVERSION r;
00013
00014 ZERO_STRUCT(q);
00015 ZERO_STRUCT(r);
00016
00017
00018
00019 if (!init_netdfs_q_dfs_GetManagerVersion(&q))
00020 return NT_STATUS_INVALID_PARAMETER;
00021
00022 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_GETMANAGERVERSION,
00023 q, r,
00024 qbuf, rbuf,
00025 netdfs_io_q_dfs_GetManagerVersion,
00026 netdfs_io_r_dfs_GetManagerVersion,
00027 NT_STATUS_UNSUCCESSFUL);
00028
00029
00030 *exist_flag = r.exist_flag;
00031
00032
00033 return NT_STATUS_OK;
00034 }
00035
00036 NTSTATUS rpccli_dfs_Add(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *path, const char *server, const char *share, const char *comment, uint32 flags)
00037 {
00038 prs_struct qbuf, rbuf;
00039 NETDFS_Q_DFS_ADD q;
00040 NETDFS_R_DFS_ADD r;
00041
00042 ZERO_STRUCT(q);
00043 ZERO_STRUCT(r);
00044
00045
00046
00047 if (!init_netdfs_q_dfs_Add(&q, path, server, share, comment, flags))
00048 return NT_STATUS_INVALID_PARAMETER;
00049
00050 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_ADD,
00051 q, r,
00052 qbuf, rbuf,
00053 netdfs_io_q_dfs_Add,
00054 netdfs_io_r_dfs_Add,
00055 NT_STATUS_UNSUCCESSFUL);
00056
00057
00058
00059
00060 return werror_to_ntstatus(r.status);
00061 }
00062
00063 NTSTATUS rpccli_dfs_Remove(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *path, const char *server, const char *share)
00064 {
00065 prs_struct qbuf, rbuf;
00066 NETDFS_Q_DFS_REMOVE q;
00067 NETDFS_R_DFS_REMOVE r;
00068
00069 ZERO_STRUCT(q);
00070 ZERO_STRUCT(r);
00071
00072
00073
00074 if (!init_netdfs_q_dfs_Remove(&q, path, server, share))
00075 return NT_STATUS_INVALID_PARAMETER;
00076
00077 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_REMOVE,
00078 q, r,
00079 qbuf, rbuf,
00080 netdfs_io_q_dfs_Remove,
00081 netdfs_io_r_dfs_Remove,
00082 NT_STATUS_UNSUCCESSFUL);
00083
00084
00085
00086
00087 return werror_to_ntstatus(r.status);
00088 }
00089
00090 NTSTATUS rpccli_dfs_SetInfo(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
00091 {
00092 prs_struct qbuf, rbuf;
00093 NETDFS_Q_DFS_SETINFO q;
00094 NETDFS_R_DFS_SETINFO r;
00095
00096 ZERO_STRUCT(q);
00097 ZERO_STRUCT(r);
00098
00099
00100
00101 if (!init_netdfs_q_dfs_SetInfo(&q))
00102 return NT_STATUS_INVALID_PARAMETER;
00103
00104 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_SETINFO,
00105 q, r,
00106 qbuf, rbuf,
00107 netdfs_io_q_dfs_SetInfo,
00108 netdfs_io_r_dfs_SetInfo,
00109 NT_STATUS_UNSUCCESSFUL);
00110
00111
00112
00113
00114 return werror_to_ntstatus(r.status);
00115 }
00116
00117 NTSTATUS rpccli_dfs_GetInfo(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *path, const char *server, const char *share, uint32 level, NETDFS_DFS_INFO_CTR *info)
00118 {
00119 prs_struct qbuf, rbuf;
00120 NETDFS_Q_DFS_GETINFO q;
00121 NETDFS_R_DFS_GETINFO r;
00122
00123 ZERO_STRUCT(q);
00124 ZERO_STRUCT(r);
00125
00126
00127
00128 if (!init_netdfs_q_dfs_GetInfo(&q, path, server, share, level))
00129 return NT_STATUS_INVALID_PARAMETER;
00130
00131 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_GETINFO,
00132 q, r,
00133 qbuf, rbuf,
00134 netdfs_io_q_dfs_GetInfo,
00135 netdfs_io_r_dfs_GetInfo,
00136 NT_STATUS_UNSUCCESSFUL);
00137
00138
00139 *info = r.info;
00140
00141
00142 return werror_to_ntstatus(r.status);
00143 }
00144
00145 NTSTATUS rpccli_dfs_Enum(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, uint32 level, uint32 bufsize, NETDFS_DFS_ENUMSTRUCT *info, uint32 *total)
00146 {
00147 prs_struct qbuf, rbuf;
00148 NETDFS_Q_DFS_ENUM q;
00149 NETDFS_R_DFS_ENUM r;
00150
00151 ZERO_STRUCT(q);
00152 ZERO_STRUCT(r);
00153
00154
00155
00156 if (!init_netdfs_q_dfs_Enum(&q, level, bufsize, info, total))
00157 return NT_STATUS_INVALID_PARAMETER;
00158
00159 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_ENUM,
00160 q, r,
00161 qbuf, rbuf,
00162 netdfs_io_q_dfs_Enum,
00163 netdfs_io_r_dfs_Enum,
00164 NT_STATUS_UNSUCCESSFUL);
00165
00166
00167 *info = r.info;
00168 *total = r.total;
00169
00170
00171 return werror_to_ntstatus(r.status);
00172 }
00173
00174 NTSTATUS rpccli_dfs_Rename(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
00175 {
00176 prs_struct qbuf, rbuf;
00177 NETDFS_Q_DFS_RENAME q;
00178 NETDFS_R_DFS_RENAME r;
00179
00180 ZERO_STRUCT(q);
00181 ZERO_STRUCT(r);
00182
00183
00184
00185 if (!init_netdfs_q_dfs_Rename(&q))
00186 return NT_STATUS_INVALID_PARAMETER;
00187
00188 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_RENAME,
00189 q, r,
00190 qbuf, rbuf,
00191 netdfs_io_q_dfs_Rename,
00192 netdfs_io_r_dfs_Rename,
00193 NT_STATUS_UNSUCCESSFUL);
00194
00195
00196
00197
00198 return werror_to_ntstatus(r.status);
00199 }
00200
00201 NTSTATUS rpccli_dfs_Move(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
00202 {
00203 prs_struct qbuf, rbuf;
00204 NETDFS_Q_DFS_MOVE q;
00205 NETDFS_R_DFS_MOVE r;
00206
00207 ZERO_STRUCT(q);
00208 ZERO_STRUCT(r);
00209
00210
00211
00212 if (!init_netdfs_q_dfs_Move(&q))
00213 return NT_STATUS_INVALID_PARAMETER;
00214
00215 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_MOVE,
00216 q, r,
00217 qbuf, rbuf,
00218 netdfs_io_q_dfs_Move,
00219 netdfs_io_r_dfs_Move,
00220 NT_STATUS_UNSUCCESSFUL);
00221
00222
00223
00224
00225 return werror_to_ntstatus(r.status);
00226 }
00227
00228 NTSTATUS rpccli_dfs_ManagerGetConfigInfo(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
00229 {
00230 prs_struct qbuf, rbuf;
00231 NETDFS_Q_DFS_MANAGERGETCONFIGINFO q;
00232 NETDFS_R_DFS_MANAGERGETCONFIGINFO r;
00233
00234 ZERO_STRUCT(q);
00235 ZERO_STRUCT(r);
00236
00237
00238
00239 if (!init_netdfs_q_dfs_ManagerGetConfigInfo(&q))
00240 return NT_STATUS_INVALID_PARAMETER;
00241
00242 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_MANAGERGETCONFIGINFO,
00243 q, r,
00244 qbuf, rbuf,
00245 netdfs_io_q_dfs_ManagerGetConfigInfo,
00246 netdfs_io_r_dfs_ManagerGetConfigInfo,
00247 NT_STATUS_UNSUCCESSFUL);
00248
00249
00250
00251
00252 return werror_to_ntstatus(r.status);
00253 }
00254
00255 NTSTATUS rpccli_dfs_ManagerSendSiteInfo(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
00256 {
00257 prs_struct qbuf, rbuf;
00258 NETDFS_Q_DFS_MANAGERSENDSITEINFO q;
00259 NETDFS_R_DFS_MANAGERSENDSITEINFO r;
00260
00261 ZERO_STRUCT(q);
00262 ZERO_STRUCT(r);
00263
00264
00265
00266 if (!init_netdfs_q_dfs_ManagerSendSiteInfo(&q))
00267 return NT_STATUS_INVALID_PARAMETER;
00268
00269 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_MANAGERSENDSITEINFO,
00270 q, r,
00271 qbuf, rbuf,
00272 netdfs_io_q_dfs_ManagerSendSiteInfo,
00273 netdfs_io_r_dfs_ManagerSendSiteInfo,
00274 NT_STATUS_UNSUCCESSFUL);
00275
00276
00277
00278
00279 return werror_to_ntstatus(r.status);
00280 }
00281
00282 NTSTATUS rpccli_dfs_AddFtRoot(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
00283 {
00284 prs_struct qbuf, rbuf;
00285 NETDFS_Q_DFS_ADDFTROOT q;
00286 NETDFS_R_DFS_ADDFTROOT r;
00287
00288 ZERO_STRUCT(q);
00289 ZERO_STRUCT(r);
00290
00291
00292
00293 if (!init_netdfs_q_dfs_AddFtRoot(&q))
00294 return NT_STATUS_INVALID_PARAMETER;
00295
00296 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_ADDFTROOT,
00297 q, r,
00298 qbuf, rbuf,
00299 netdfs_io_q_dfs_AddFtRoot,
00300 netdfs_io_r_dfs_AddFtRoot,
00301 NT_STATUS_UNSUCCESSFUL);
00302
00303
00304
00305
00306 return werror_to_ntstatus(r.status);
00307 }
00308
00309 NTSTATUS rpccli_dfs_RemoveFtRoot(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
00310 {
00311 prs_struct qbuf, rbuf;
00312 NETDFS_Q_DFS_REMOVEFTROOT q;
00313 NETDFS_R_DFS_REMOVEFTROOT r;
00314
00315 ZERO_STRUCT(q);
00316 ZERO_STRUCT(r);
00317
00318
00319
00320 if (!init_netdfs_q_dfs_RemoveFtRoot(&q))
00321 return NT_STATUS_INVALID_PARAMETER;
00322
00323 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_REMOVEFTROOT,
00324 q, r,
00325 qbuf, rbuf,
00326 netdfs_io_q_dfs_RemoveFtRoot,
00327 netdfs_io_r_dfs_RemoveFtRoot,
00328 NT_STATUS_UNSUCCESSFUL);
00329
00330
00331
00332
00333 return werror_to_ntstatus(r.status);
00334 }
00335
00336 NTSTATUS rpccli_dfs_AddStdRoot(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
00337 {
00338 prs_struct qbuf, rbuf;
00339 NETDFS_Q_DFS_ADDSTDROOT q;
00340 NETDFS_R_DFS_ADDSTDROOT r;
00341
00342 ZERO_STRUCT(q);
00343 ZERO_STRUCT(r);
00344
00345
00346
00347 if (!init_netdfs_q_dfs_AddStdRoot(&q))
00348 return NT_STATUS_INVALID_PARAMETER;
00349
00350 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_ADDSTDROOT,
00351 q, r,
00352 qbuf, rbuf,
00353 netdfs_io_q_dfs_AddStdRoot,
00354 netdfs_io_r_dfs_AddStdRoot,
00355 NT_STATUS_UNSUCCESSFUL);
00356
00357
00358
00359
00360 return werror_to_ntstatus(r.status);
00361 }
00362
00363 NTSTATUS rpccli_dfs_RemoveStdRoot(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
00364 {
00365 prs_struct qbuf, rbuf;
00366 NETDFS_Q_DFS_REMOVESTDROOT q;
00367 NETDFS_R_DFS_REMOVESTDROOT r;
00368
00369 ZERO_STRUCT(q);
00370 ZERO_STRUCT(r);
00371
00372
00373
00374 if (!init_netdfs_q_dfs_RemoveStdRoot(&q))
00375 return NT_STATUS_INVALID_PARAMETER;
00376
00377 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_REMOVESTDROOT,
00378 q, r,
00379 qbuf, rbuf,
00380 netdfs_io_q_dfs_RemoveStdRoot,
00381 netdfs_io_r_dfs_RemoveStdRoot,
00382 NT_STATUS_UNSUCCESSFUL);
00383
00384
00385
00386
00387 return werror_to_ntstatus(r.status);
00388 }
00389
00390 NTSTATUS rpccli_dfs_ManagerInitialize(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
00391 {
00392 prs_struct qbuf, rbuf;
00393 NETDFS_Q_DFS_MANAGERINITIALIZE q;
00394 NETDFS_R_DFS_MANAGERINITIALIZE r;
00395
00396 ZERO_STRUCT(q);
00397 ZERO_STRUCT(r);
00398
00399
00400
00401 if (!init_netdfs_q_dfs_ManagerInitialize(&q))
00402 return NT_STATUS_INVALID_PARAMETER;
00403
00404 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_MANAGERINITIALIZE,
00405 q, r,
00406 qbuf, rbuf,
00407 netdfs_io_q_dfs_ManagerInitialize,
00408 netdfs_io_r_dfs_ManagerInitialize,
00409 NT_STATUS_UNSUCCESSFUL);
00410
00411
00412
00413
00414 return werror_to_ntstatus(r.status);
00415 }
00416
00417 NTSTATUS rpccli_dfs_AddStdRootForced(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
00418 {
00419 prs_struct qbuf, rbuf;
00420 NETDFS_Q_DFS_ADDSTDROOTFORCED q;
00421 NETDFS_R_DFS_ADDSTDROOTFORCED r;
00422
00423 ZERO_STRUCT(q);
00424 ZERO_STRUCT(r);
00425
00426
00427
00428 if (!init_netdfs_q_dfs_AddStdRootForced(&q))
00429 return NT_STATUS_INVALID_PARAMETER;
00430
00431 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_ADDSTDROOTFORCED,
00432 q, r,
00433 qbuf, rbuf,
00434 netdfs_io_q_dfs_AddStdRootForced,
00435 netdfs_io_r_dfs_AddStdRootForced,
00436 NT_STATUS_UNSUCCESSFUL);
00437
00438
00439
00440
00441 return werror_to_ntstatus(r.status);
00442 }
00443
00444 NTSTATUS rpccli_dfs_GetDcAddress(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
00445 {
00446 prs_struct qbuf, rbuf;
00447 NETDFS_Q_DFS_GETDCADDRESS q;
00448 NETDFS_R_DFS_GETDCADDRESS r;
00449
00450 ZERO_STRUCT(q);
00451 ZERO_STRUCT(r);
00452
00453
00454
00455 if (!init_netdfs_q_dfs_GetDcAddress(&q))
00456 return NT_STATUS_INVALID_PARAMETER;
00457
00458 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_GETDCADDRESS,
00459 q, r,
00460 qbuf, rbuf,
00461 netdfs_io_q_dfs_GetDcAddress,
00462 netdfs_io_r_dfs_GetDcAddress,
00463 NT_STATUS_UNSUCCESSFUL);
00464
00465
00466
00467
00468 return werror_to_ntstatus(r.status);
00469 }
00470
00471 NTSTATUS rpccli_dfs_SetDcAddress(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
00472 {
00473 prs_struct qbuf, rbuf;
00474 NETDFS_Q_DFS_SETDCADDRESS q;
00475 NETDFS_R_DFS_SETDCADDRESS r;
00476
00477 ZERO_STRUCT(q);
00478 ZERO_STRUCT(r);
00479
00480
00481
00482 if (!init_netdfs_q_dfs_SetDcAddress(&q))
00483 return NT_STATUS_INVALID_PARAMETER;
00484
00485 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_SETDCADDRESS,
00486 q, r,
00487 qbuf, rbuf,
00488 netdfs_io_q_dfs_SetDcAddress,
00489 netdfs_io_r_dfs_SetDcAddress,
00490 NT_STATUS_UNSUCCESSFUL);
00491
00492
00493
00494
00495 return werror_to_ntstatus(r.status);
00496 }
00497
00498 NTSTATUS rpccli_dfs_FlushFtTable(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
00499 {
00500 prs_struct qbuf, rbuf;
00501 NETDFS_Q_DFS_FLUSHFTTABLE q;
00502 NETDFS_R_DFS_FLUSHFTTABLE r;
00503
00504 ZERO_STRUCT(q);
00505 ZERO_STRUCT(r);
00506
00507
00508
00509 if (!init_netdfs_q_dfs_FlushFtTable(&q))
00510 return NT_STATUS_INVALID_PARAMETER;
00511
00512 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_FLUSHFTTABLE,
00513 q, r,
00514 qbuf, rbuf,
00515 netdfs_io_q_dfs_FlushFtTable,
00516 netdfs_io_r_dfs_FlushFtTable,
00517 NT_STATUS_UNSUCCESSFUL);
00518
00519
00520
00521
00522 return werror_to_ntstatus(r.status);
00523 }
00524
00525 NTSTATUS rpccli_dfs_Add2(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
00526 {
00527 prs_struct qbuf, rbuf;
00528 NETDFS_Q_DFS_ADD2 q;
00529 NETDFS_R_DFS_ADD2 r;
00530
00531 ZERO_STRUCT(q);
00532 ZERO_STRUCT(r);
00533
00534
00535
00536 if (!init_netdfs_q_dfs_Add2(&q))
00537 return NT_STATUS_INVALID_PARAMETER;
00538
00539 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_ADD2,
00540 q, r,
00541 qbuf, rbuf,
00542 netdfs_io_q_dfs_Add2,
00543 netdfs_io_r_dfs_Add2,
00544 NT_STATUS_UNSUCCESSFUL);
00545
00546
00547
00548
00549 return werror_to_ntstatus(r.status);
00550 }
00551
00552 NTSTATUS rpccli_dfs_Remove2(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
00553 {
00554 prs_struct qbuf, rbuf;
00555 NETDFS_Q_DFS_REMOVE2 q;
00556 NETDFS_R_DFS_REMOVE2 r;
00557
00558 ZERO_STRUCT(q);
00559 ZERO_STRUCT(r);
00560
00561
00562
00563 if (!init_netdfs_q_dfs_Remove2(&q))
00564 return NT_STATUS_INVALID_PARAMETER;
00565
00566 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_REMOVE2,
00567 q, r,
00568 qbuf, rbuf,
00569 netdfs_io_q_dfs_Remove2,
00570 netdfs_io_r_dfs_Remove2,
00571 NT_STATUS_UNSUCCESSFUL);
00572
00573
00574
00575
00576 return werror_to_ntstatus(r.status);
00577 }
00578
00579 NTSTATUS rpccli_dfs_EnumEx(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
00580 {
00581 prs_struct qbuf, rbuf;
00582 NETDFS_Q_DFS_ENUMEX q;
00583 NETDFS_R_DFS_ENUMEX r;
00584
00585 ZERO_STRUCT(q);
00586 ZERO_STRUCT(r);
00587
00588
00589
00590 if (!init_netdfs_q_dfs_EnumEx(&q))
00591 return NT_STATUS_INVALID_PARAMETER;
00592
00593 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_ENUMEX,
00594 q, r,
00595 qbuf, rbuf,
00596 netdfs_io_q_dfs_EnumEx,
00597 netdfs_io_r_dfs_EnumEx,
00598 NT_STATUS_UNSUCCESSFUL);
00599
00600
00601
00602
00603 return werror_to_ntstatus(r.status);
00604 }
00605
00606 NTSTATUS rpccli_dfs_SetInfo2(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
00607 {
00608 prs_struct qbuf, rbuf;
00609 NETDFS_Q_DFS_SETINFO2 q;
00610 NETDFS_R_DFS_SETINFO2 r;
00611
00612 ZERO_STRUCT(q);
00613 ZERO_STRUCT(r);
00614
00615
00616
00617 if (!init_netdfs_q_dfs_SetInfo2(&q))
00618 return NT_STATUS_INVALID_PARAMETER;
00619
00620 CLI_DO_RPC(cli, mem_ctx, PI_NETDFS, DFS_SETINFO2,
00621 q, r,
00622 qbuf, rbuf,
00623 netdfs_io_q_dfs_SetInfo2,
00624 netdfs_io_r_dfs_SetInfo2,
00625 NT_STATUS_UNSUCCESSFUL);
00626
00627
00628
00629
00630 return werror_to_ntstatus(r.status);
00631 }
00632