DATA_BLOB blob;
struct dfs_GetManagerVersion *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_GETMANAGERVERSION];
+ call = &p->interface->calls[NDR_DFS_GETMANAGERVERSION];
r = talloc(talloc_tos(), struct dfs_GetManagerVersion);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_Add *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_ADD];
+ call = &p->interface->calls[NDR_DFS_ADD];
r = talloc(talloc_tos(), struct dfs_Add);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_Remove *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_REMOVE];
+ call = &p->interface->calls[NDR_DFS_REMOVE];
r = talloc(talloc_tos(), struct dfs_Remove);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_SetInfo *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_SETINFO];
+ call = &p->interface->calls[NDR_DFS_SETINFO];
r = talloc(talloc_tos(), struct dfs_SetInfo);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_GetInfo *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_GETINFO];
+ call = &p->interface->calls[NDR_DFS_GETINFO];
r = talloc(talloc_tos(), struct dfs_GetInfo);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_Enum *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_ENUM];
+ call = &p->interface->calls[NDR_DFS_ENUM];
r = talloc(talloc_tos(), struct dfs_Enum);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_Rename *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_RENAME];
+ call = &p->interface->calls[NDR_DFS_RENAME];
r = talloc(talloc_tos(), struct dfs_Rename);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_Move *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_MOVE];
+ call = &p->interface->calls[NDR_DFS_MOVE];
r = talloc(talloc_tos(), struct dfs_Move);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_ManagerGetConfigInfo *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_MANAGERGETCONFIGINFO];
+ call = &p->interface->calls[NDR_DFS_MANAGERGETCONFIGINFO];
r = talloc(talloc_tos(), struct dfs_ManagerGetConfigInfo);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_ManagerSendSiteInfo *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_MANAGERSENDSITEINFO];
+ call = &p->interface->calls[NDR_DFS_MANAGERSENDSITEINFO];
r = talloc(talloc_tos(), struct dfs_ManagerSendSiteInfo);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_AddFtRoot *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_ADDFTROOT];
+ call = &p->interface->calls[NDR_DFS_ADDFTROOT];
r = talloc(talloc_tos(), struct dfs_AddFtRoot);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_RemoveFtRoot *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_REMOVEFTROOT];
+ call = &p->interface->calls[NDR_DFS_REMOVEFTROOT];
r = talloc(talloc_tos(), struct dfs_RemoveFtRoot);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_AddStdRoot *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_ADDSTDROOT];
+ call = &p->interface->calls[NDR_DFS_ADDSTDROOT];
r = talloc(talloc_tos(), struct dfs_AddStdRoot);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_RemoveStdRoot *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_REMOVESTDROOT];
+ call = &p->interface->calls[NDR_DFS_REMOVESTDROOT];
r = talloc(talloc_tos(), struct dfs_RemoveStdRoot);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_ManagerInitialize *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_MANAGERINITIALIZE];
+ call = &p->interface->calls[NDR_DFS_MANAGERINITIALIZE];
r = talloc(talloc_tos(), struct dfs_ManagerInitialize);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_AddStdRootForced *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_ADDSTDROOTFORCED];
+ call = &p->interface->calls[NDR_DFS_ADDSTDROOTFORCED];
r = talloc(talloc_tos(), struct dfs_AddStdRootForced);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_GetDcAddress *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_GETDCADDRESS];
+ call = &p->interface->calls[NDR_DFS_GETDCADDRESS];
r = talloc(talloc_tos(), struct dfs_GetDcAddress);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_SetDcAddress *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_SETDCADDRESS];
+ call = &p->interface->calls[NDR_DFS_SETDCADDRESS];
r = talloc(talloc_tos(), struct dfs_SetDcAddress);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_FlushFtTable *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_FLUSHFTTABLE];
+ call = &p->interface->calls[NDR_DFS_FLUSHFTTABLE];
r = talloc(talloc_tos(), struct dfs_FlushFtTable);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_Add2 *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_ADD2];
+ call = &p->interface->calls[NDR_DFS_ADD2];
r = talloc(talloc_tos(), struct dfs_Add2);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_Remove2 *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_REMOVE2];
+ call = &p->interface->calls[NDR_DFS_REMOVE2];
r = talloc(talloc_tos(), struct dfs_Remove2);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_EnumEx *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_ENUMEX];
+ call = &p->interface->calls[NDR_DFS_ENUMEX];
r = talloc(talloc_tos(), struct dfs_EnumEx);
if (r == NULL) {
DATA_BLOB blob;
struct dfs_SetInfo2 *r;
- call = &ndr_table_netdfs.calls[NDR_DFS_SETINFO2];
+ call = &p->interface->calls[NDR_DFS_SETINFO2];
r = talloc(talloc_tos(), struct dfs_SetInfo2);
if (r == NULL) {
*n_fns = sizeof(api_netdfs_cmds) / sizeof(struct api_struct);
}
-NTSTATUS rpc_netdfs_dispatch(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const struct ndr_interface_table *table, uint32_t opnum, void *_r)
+NTSTATUS rpc_netdfs_dispatch(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *interface, uint32_t interface_version, uint32_t opnum, void *_r)
{
if (cli->pipes_struct == NULL) {
return NT_STATUS_INVALID_PARAMETER;
switch (opnum)
{
case NDR_DFS_GETMANAGERVERSION: {
- struct dfs_GetManagerVersion *r = _r;
+ struct dfs_GetManagerVersion *r = (struct dfs_GetManagerVersion *)_r;
ZERO_STRUCT(r->out);
r->out.version = talloc_zero(mem_ctx, enum dfs_ManagerVersion);
if (r->out.version == NULL) {
}
case NDR_DFS_ADD: {
- struct dfs_Add *r = _r;
+ struct dfs_Add *r = (struct dfs_Add *)_r;
r->out.result = _dfs_Add(cli->pipes_struct, r);
return NT_STATUS_OK;
}
case NDR_DFS_REMOVE: {
- struct dfs_Remove *r = _r;
+ struct dfs_Remove *r = (struct dfs_Remove *)_r;
r->out.result = _dfs_Remove(cli->pipes_struct, r);
return NT_STATUS_OK;
}
case NDR_DFS_SETINFO: {
- struct dfs_SetInfo *r = _r;
+ struct dfs_SetInfo *r = (struct dfs_SetInfo *)_r;
r->out.result = _dfs_SetInfo(cli->pipes_struct, r);
return NT_STATUS_OK;
}
case NDR_DFS_GETINFO: {
- struct dfs_GetInfo *r = _r;
+ struct dfs_GetInfo *r = (struct dfs_GetInfo *)_r;
ZERO_STRUCT(r->out);
r->out.info = talloc_zero(mem_ctx, union dfs_Info);
if (r->out.info == NULL) {
}
case NDR_DFS_ENUM: {
- struct dfs_Enum *r = _r;
+ struct dfs_Enum *r = (struct dfs_Enum *)_r;
ZERO_STRUCT(r->out);
r->out.info = r->in.info;
r->out.total = r->in.total;
}
case NDR_DFS_RENAME: {
- struct dfs_Rename *r = _r;
+ struct dfs_Rename *r = (struct dfs_Rename *)_r;
r->out.result = _dfs_Rename(cli->pipes_struct, r);
return NT_STATUS_OK;
}
case NDR_DFS_MOVE: {
- struct dfs_Move *r = _r;
+ struct dfs_Move *r = (struct dfs_Move *)_r;
r->out.result = _dfs_Move(cli->pipes_struct, r);
return NT_STATUS_OK;
}
case NDR_DFS_MANAGERGETCONFIGINFO: {
- struct dfs_ManagerGetConfigInfo *r = _r;
+ struct dfs_ManagerGetConfigInfo *r = (struct dfs_ManagerGetConfigInfo *)_r;
r->out.result = _dfs_ManagerGetConfigInfo(cli->pipes_struct, r);
return NT_STATUS_OK;
}
case NDR_DFS_MANAGERSENDSITEINFO: {
- struct dfs_ManagerSendSiteInfo *r = _r;
+ struct dfs_ManagerSendSiteInfo *r = (struct dfs_ManagerSendSiteInfo *)_r;
r->out.result = _dfs_ManagerSendSiteInfo(cli->pipes_struct, r);
return NT_STATUS_OK;
}
case NDR_DFS_ADDFTROOT: {
- struct dfs_AddFtRoot *r = _r;
+ struct dfs_AddFtRoot *r = (struct dfs_AddFtRoot *)_r;
ZERO_STRUCT(r->out);
r->out.unknown2 = r->in.unknown2;
r->out.result = _dfs_AddFtRoot(cli->pipes_struct, r);
}
case NDR_DFS_REMOVEFTROOT: {
- struct dfs_RemoveFtRoot *r = _r;
+ struct dfs_RemoveFtRoot *r = (struct dfs_RemoveFtRoot *)_r;
ZERO_STRUCT(r->out);
r->out.unknown = r->in.unknown;
r->out.result = _dfs_RemoveFtRoot(cli->pipes_struct, r);
}
case NDR_DFS_ADDSTDROOT: {
- struct dfs_AddStdRoot *r = _r;
+ struct dfs_AddStdRoot *r = (struct dfs_AddStdRoot *)_r;
r->out.result = _dfs_AddStdRoot(cli->pipes_struct, r);
return NT_STATUS_OK;
}
case NDR_DFS_REMOVESTDROOT: {
- struct dfs_RemoveStdRoot *r = _r;
+ struct dfs_RemoveStdRoot *r = (struct dfs_RemoveStdRoot *)_r;
r->out.result = _dfs_RemoveStdRoot(cli->pipes_struct, r);
return NT_STATUS_OK;
}
case NDR_DFS_MANAGERINITIALIZE: {
- struct dfs_ManagerInitialize *r = _r;
+ struct dfs_ManagerInitialize *r = (struct dfs_ManagerInitialize *)_r;
r->out.result = _dfs_ManagerInitialize(cli->pipes_struct, r);
return NT_STATUS_OK;
}
case NDR_DFS_ADDSTDROOTFORCED: {
- struct dfs_AddStdRootForced *r = _r;
+ struct dfs_AddStdRootForced *r = (struct dfs_AddStdRootForced *)_r;
r->out.result = _dfs_AddStdRootForced(cli->pipes_struct, r);
return NT_STATUS_OK;
}
case NDR_DFS_GETDCADDRESS: {
- struct dfs_GetDcAddress *r = _r;
+ struct dfs_GetDcAddress *r = (struct dfs_GetDcAddress *)_r;
ZERO_STRUCT(r->out);
r->out.server_fullname = r->in.server_fullname;
r->out.is_root = r->in.is_root;
}
case NDR_DFS_SETDCADDRESS: {
- struct dfs_SetDcAddress *r = _r;
+ struct dfs_SetDcAddress *r = (struct dfs_SetDcAddress *)_r;
r->out.result = _dfs_SetDcAddress(cli->pipes_struct, r);
return NT_STATUS_OK;
}
case NDR_DFS_FLUSHFTTABLE: {
- struct dfs_FlushFtTable *r = _r;
+ struct dfs_FlushFtTable *r = (struct dfs_FlushFtTable *)_r;
r->out.result = _dfs_FlushFtTable(cli->pipes_struct, r);
return NT_STATUS_OK;
}
case NDR_DFS_ADD2: {
- struct dfs_Add2 *r = _r;
+ struct dfs_Add2 *r = (struct dfs_Add2 *)_r;
r->out.result = _dfs_Add2(cli->pipes_struct, r);
return NT_STATUS_OK;
}
case NDR_DFS_REMOVE2: {
- struct dfs_Remove2 *r = _r;
+ struct dfs_Remove2 *r = (struct dfs_Remove2 *)_r;
r->out.result = _dfs_Remove2(cli->pipes_struct, r);
return NT_STATUS_OK;
}
case NDR_DFS_ENUMEX: {
- struct dfs_EnumEx *r = _r;
+ struct dfs_EnumEx *r = (struct dfs_EnumEx *)_r;
ZERO_STRUCT(r->out);
r->out.info = r->in.info;
r->out.total = r->in.total;
}
case NDR_DFS_SETINFO2: {
- struct dfs_SetInfo2 *r = _r;
+ struct dfs_SetInfo2 *r = (struct dfs_SetInfo2 *)_r;
r->out.result = _dfs_SetInfo2(cli->pipes_struct, r);
return NT_STATUS_OK;
}
NTSTATUS rpc_netdfs_init(void)
{
- return rpc_srv_register(SMB_RPC_INTERFACE_VERSION, "netdfs", "netdfs", &ndr_table_netdfs, api_netdfs_cmds, sizeof(api_netdfs_cmds) / sizeof(struct api_struct));
+ return rpc_srv_register(SMB_RPC_INTERFACE_VERSION, "netdfs", "netdfs", NDR_NETDFS_UUID, NDR_NETDFS_VERSION, api_netdfs_cmds, sizeof(api_netdfs_cmds) / sizeof(struct api_struct));
}