mirror of
https://github.com/samba-team/samba.git
synced 2025-01-25 06:04:04 +03:00
r24535: rename struct dcerpc_interface_call -> struct ndr_interface_call
and move it to librpc/ndr/libndr.h metze (This used to be commit abd5551aabae1820baaa52a963e8c7aa9605914e)
This commit is contained in:
parent
ce84ab9a83
commit
698e7c5f2a
@ -290,6 +290,15 @@ typedef void (*ndr_print_function_t)(struct ndr_print *, const char *, int, cons
|
|||||||
extern const struct ndr_syntax_id ndr_transfer_syntax;
|
extern const struct ndr_syntax_id ndr_transfer_syntax;
|
||||||
extern const struct ndr_syntax_id ndr64_transfer_syntax;
|
extern const struct ndr_syntax_id ndr64_transfer_syntax;
|
||||||
|
|
||||||
|
struct ndr_interface_call {
|
||||||
|
const char *name;
|
||||||
|
size_t struct_size;
|
||||||
|
ndr_push_flags_fn_t ndr_push;
|
||||||
|
ndr_pull_flags_fn_t ndr_pull;
|
||||||
|
ndr_print_function_t ndr_print;
|
||||||
|
BOOL async;
|
||||||
|
};
|
||||||
|
|
||||||
/* FIXME: Use represent_as instead */
|
/* FIXME: Use represent_as instead */
|
||||||
struct dom_sid;
|
struct dom_sid;
|
||||||
NTSTATUS ndr_push_dom_sid2(struct ndr_push *ndr, int ndr_flags, const struct dom_sid *sid);
|
NTSTATUS ndr_push_dom_sid2(struct ndr_push *ndr, int ndr_flags, const struct dom_sid *sid);
|
||||||
|
@ -1317,7 +1317,7 @@ struct rpc_request *dcerpc_ndr_request_send(struct dcerpc_pipe *p,
|
|||||||
TALLOC_CTX *mem_ctx,
|
TALLOC_CTX *mem_ctx,
|
||||||
void *r)
|
void *r)
|
||||||
{
|
{
|
||||||
const struct dcerpc_interface_call *call;
|
const struct ndr_interface_call *call;
|
||||||
struct ndr_push *push;
|
struct ndr_push *push;
|
||||||
NTSTATUS status;
|
NTSTATUS status;
|
||||||
DATA_BLOB request;
|
DATA_BLOB request;
|
||||||
@ -1391,7 +1391,7 @@ _PUBLIC_ NTSTATUS dcerpc_ndr_request_recv(struct rpc_request *req)
|
|||||||
void *r = req->ndr.struct_ptr;
|
void *r = req->ndr.struct_ptr;
|
||||||
uint32_t opnum = req->ndr.opnum;
|
uint32_t opnum = req->ndr.opnum;
|
||||||
const struct dcerpc_interface_table *table = req->ndr.table;
|
const struct dcerpc_interface_table *table = req->ndr.table;
|
||||||
const struct dcerpc_interface_call *call = &table->calls[opnum];
|
const struct ndr_interface_call *call = &table->calls[opnum];
|
||||||
|
|
||||||
/* make sure the recv code doesn't free the request, as we
|
/* make sure the recv code doesn't free the request, as we
|
||||||
need to grab the flags element before it is freed */
|
need to grab the flags element before it is freed */
|
||||||
|
@ -158,18 +158,6 @@ struct dcerpc_pipe {
|
|||||||
/* this triggers the DCERPC_PFC_FLAG_CONC_MPX flag in the bind request */
|
/* this triggers the DCERPC_PFC_FLAG_CONC_MPX flag in the bind request */
|
||||||
#define DCERPC_CONCURRENT_MULTIPLEX (1<<19)
|
#define DCERPC_CONCURRENT_MULTIPLEX (1<<19)
|
||||||
|
|
||||||
/*
|
|
||||||
this is used to find pointers to calls
|
|
||||||
*/
|
|
||||||
struct dcerpc_interface_call {
|
|
||||||
const char *name;
|
|
||||||
size_t struct_size;
|
|
||||||
ndr_push_flags_fn_t ndr_push;
|
|
||||||
ndr_pull_flags_fn_t ndr_pull;
|
|
||||||
ndr_print_function_t ndr_print;
|
|
||||||
BOOL async;
|
|
||||||
};
|
|
||||||
|
|
||||||
struct dcerpc_endpoint_list {
|
struct dcerpc_endpoint_list {
|
||||||
uint32_t count;
|
uint32_t count;
|
||||||
const char * const *names;
|
const char * const *names;
|
||||||
@ -185,7 +173,7 @@ struct dcerpc_interface_table {
|
|||||||
struct ndr_syntax_id syntax_id;
|
struct ndr_syntax_id syntax_id;
|
||||||
const char *helpstring;
|
const char *helpstring;
|
||||||
uint32_t num_calls;
|
uint32_t num_calls;
|
||||||
const struct dcerpc_interface_call *calls;
|
const struct ndr_interface_call *calls;
|
||||||
const struct dcerpc_endpoint_list *endpoints;
|
const struct dcerpc_endpoint_list *endpoints;
|
||||||
const struct dcerpc_authservice_list *authservices;
|
const struct dcerpc_authservice_list *authservices;
|
||||||
};
|
};
|
||||||
|
@ -33,8 +33,8 @@
|
|||||||
/*
|
/*
|
||||||
find a dcerpc call on an interface by name
|
find a dcerpc call on an interface by name
|
||||||
*/
|
*/
|
||||||
const struct dcerpc_interface_call *dcerpc_iface_find_call(const struct dcerpc_interface_table *iface,
|
const struct ndr_interface_call *dcerpc_iface_find_call(const struct dcerpc_interface_table *iface,
|
||||||
const char *name)
|
const char *name)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
for (i=0;i<iface->num_calls;i++) {
|
for (i=0;i<iface->num_calls;i++) {
|
||||||
|
@ -27,7 +27,7 @@
|
|||||||
#include "librpc/rpc/dcerpc_table.h"
|
#include "librpc/rpc/dcerpc_table.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static const struct dcerpc_interface_call *find_function(
|
static const struct ndr_interface_call *find_function(
|
||||||
const struct dcerpc_interface_table *p,
|
const struct dcerpc_interface_table *p,
|
||||||
const char *function)
|
const char *function)
|
||||||
{
|
{
|
||||||
@ -133,7 +133,7 @@ const struct dcerpc_interface_table *load_iface_from_plugin(const char *plugin,
|
|||||||
int main(int argc, const char *argv[])
|
int main(int argc, const char *argv[])
|
||||||
{
|
{
|
||||||
const struct dcerpc_interface_table *p = NULL;
|
const struct dcerpc_interface_table *p = NULL;
|
||||||
const struct dcerpc_interface_call *f;
|
const struct ndr_interface_call *f;
|
||||||
const char *pipe_name, *function, *inout, *filename;
|
const char *pipe_name, *function, *inout, *filename;
|
||||||
uint8_t *data;
|
uint8_t *data;
|
||||||
size_t size;
|
size_t size;
|
||||||
|
@ -2281,7 +2281,7 @@ sub FunctionTable($$)
|
|||||||
return if ($#{$interface->{FUNCTIONS}}+1 == 0);
|
return if ($#{$interface->{FUNCTIONS}}+1 == 0);
|
||||||
return unless defined ($interface->{PROPERTIES}->{uuid});
|
return unless defined ($interface->{PROPERTIES}->{uuid});
|
||||||
|
|
||||||
$self->pidl("static const struct dcerpc_interface_call $interface->{NAME}\_calls[] = {");
|
$self->pidl("static const struct ndr_interface_call $interface->{NAME}\_calls[] = {");
|
||||||
foreach my $d (@{$interface->{FUNCTIONS}}) {
|
foreach my $d (@{$interface->{FUNCTIONS}}) {
|
||||||
next if not defined($d->{OPNUM});
|
next if not defined($d->{OPNUM});
|
||||||
$self->pidl("\t{");
|
$self->pidl("\t{");
|
||||||
|
@ -156,7 +156,7 @@ static NTSTATUS remote_op_dispatch(struct dcesrv_call_state *dce_call, TALLOC_CT
|
|||||||
struct dcesrv_remote_private *private = dce_call->context->private;
|
struct dcesrv_remote_private *private = dce_call->context->private;
|
||||||
uint16_t opnum = dce_call->pkt.u.request.opnum;
|
uint16_t opnum = dce_call->pkt.u.request.opnum;
|
||||||
const struct dcerpc_interface_table *table = dce_call->context->iface->private;
|
const struct dcerpc_interface_table *table = dce_call->context->iface->private;
|
||||||
const struct dcerpc_interface_call *call;
|
const struct ndr_interface_call *call;
|
||||||
const char *name;
|
const char *name;
|
||||||
|
|
||||||
name = table->calls[opnum].name;
|
name = table->calls[opnum].name;
|
||||||
|
@ -182,7 +182,7 @@ static int ejs_irpc_call(int eid, struct MprVar *io,
|
|||||||
NTSTATUS status;
|
NTSTATUS status;
|
||||||
void *ptr;
|
void *ptr;
|
||||||
struct ejs_rpc *ejs;
|
struct ejs_rpc *ejs;
|
||||||
const struct dcerpc_interface_call *call;
|
const struct ndr_interface_call *call;
|
||||||
struct ejs_irpc_connection *p;
|
struct ejs_irpc_connection *p;
|
||||||
struct irpc_request **reqs;
|
struct irpc_request **reqs;
|
||||||
int i, count;
|
int i, count;
|
||||||
@ -285,7 +285,7 @@ done:
|
|||||||
void *ptr;
|
void *ptr;
|
||||||
struct rpc_request *req;
|
struct rpc_request *req;
|
||||||
struct ejs_rpc *ejs;
|
struct ejs_rpc *ejs;
|
||||||
const struct dcerpc_interface_call *call;
|
const struct ndr_interface_call *call;
|
||||||
|
|
||||||
if (argc != 1 || argv[0]->type != MPR_TYPE_OBJECT) {
|
if (argc != 1 || argv[0]->type != MPR_TYPE_OBJECT) {
|
||||||
ejsSetErrorMsg(eid, "rpc_call invalid arguments");
|
ejsSetErrorMsg(eid, "rpc_call invalid arguments");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user