From 194d5014d8c07a786acf94063a5c4b227f0b7d4b Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Thu, 17 Apr 2008 13:51:00 +0200 Subject: Add some comments. (This used to be commit fd321fd77fcb9fbebcaa724c58a1beee606e87cd) --- source3/librpc/rpc/dcerpc.c | 16 +++++++++++++++- source3/librpc/rpc/dcerpc.h | 12 ++++++++---- 2 files changed, 23 insertions(+), 5 deletions(-) (limited to 'source3') diff --git a/source3/librpc/rpc/dcerpc.c b/source3/librpc/rpc/dcerpc.c index 654ccb1a15..c8bca8d3eb 100644 --- a/source3/librpc/rpc/dcerpc.c +++ b/source3/librpc/rpc/dcerpc.c @@ -1,6 +1,6 @@ /* Unix SMB/CIFS implementation. - Samba utility functions + Samba 4-compatible DCE/RPC API on top of the Samba 3 DCE/RPC client library. Copyright (C) Jelmer Vernooij 2008 This program is free software; you can redistribute it and/or modify @@ -20,6 +20,9 @@ #include "includes.h" #include "librpc/rpc/dcerpc.h" +/** + * Send a struct-based RPC request using the Samba 3 RPC client library. + */ struct rpc_request *dcerpc_ndr_request_send(struct dcerpc_pipe *p, const struct GUID *object, const struct ndr_interface_table *table, uint32_t opnum, TALLOC_CTX *mem_ctx, void *r) @@ -66,6 +69,11 @@ struct rpc_request *dcerpc_ndr_request_send(struct dcerpc_pipe *p, const struct return ret; } +/** + * Wait for a DCE/RPC request. + * + * @note at the moment this is still sync, even though the API is async. + */ NTSTATUS dcerpc_ndr_request_recv(struct rpc_request *req) { prs_struct r_ps; @@ -109,6 +117,12 @@ NTSTATUS dcerpc_ndr_request_recv(struct rpc_request *req) return NT_STATUS_OK; } +/** + * Connect to a DCE/RPC interface. + * + * @note lp_ctx and ev are ignored at the moment but present + * for API compatibility. + */ _PUBLIC_ NTSTATUS dcerpc_pipe_connect(TALLOC_CTX *parent_ctx, struct dcerpc_pipe **pp, const char *binding_string, const struct ndr_interface_table *table, struct cli_credentials *credentials, struct event_context *ev, diff --git a/source3/librpc/rpc/dcerpc.h b/source3/librpc/rpc/dcerpc.h index a225f82189..739e60a341 100644 --- a/source3/librpc/rpc/dcerpc.h +++ b/source3/librpc/rpc/dcerpc.h @@ -33,9 +33,16 @@ struct loadparm_context; struct cli_credentials; +/** + * Connection to a particular DCE/RPC interface. + */ struct dcerpc_pipe { const struct ndr_interface_table *table; + + /** SMB context used when transport is ncacn_np. */ struct cli_state *cli; + + /** Samba 3 DCE/RPC client context. */ struct rpc_pipe_client *rpc_cli; }; @@ -53,7 +60,7 @@ enum dcerpc_transport_t { NCADG_UNIX_DGRAM, NCACN_HTTP, NCADG_IPX, NCACN_SPX }; -/* this describes a binding to a particular transport/pipe */ +/** this describes a binding to a particular transport/pipe */ struct dcerpc_binding { enum dcerpc_transport_t transport; struct ndr_syntax_id object; @@ -65,7 +72,4 @@ struct dcerpc_binding { uint32_t assoc_group_id; }; - - - #endif /* __DCERPC_H__ */ -- cgit