s3:rpc_server: Implement the rpcd_* helper-end of the samba-dcerpc protocol
authorVolker Lendecke <vl@samba.org>
Wed, 7 Apr 2021 07:00:23 +0000 (07:00 +0000)
committerVolker Lendecke <vl@samba.org>
Fri, 10 Dec 2021 14:02:30 +0000 (14:02 +0000)
commitd3e1ece1a451f9f91a2c2a4fc3169ac08c4758ba
tree2f4780fad47d0693f57ef87bb1f517e4845e4535
parent4d75f08fd22f1126a4fd616d8374de15305970b9
s3:rpc_server: Implement the rpcd_* helper-end of the samba-dcerpc protocol

This is the generic code that becomes the
template that all rpcd_* instances that
serve DCERPC can use to provide services to samba-dcerpcd.

The external entry point is:
rpc_worker_main() which takes an argc/argv list
and two functions:

get_interfaces() - List all interfaces that this server provides
get_servers() - Provide the RPC server implementations

Each rpcd_* service needs only to provide
the implementations of get_interfaces() and get_servers()
and call rpc_worker_main() from their main() function
to provide services that can be connected to from samba-dcerpcd.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Samuel Cabrero <scabrero@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
source3/rpc_server/rpc_server.h
source3/rpc_server/rpc_worker.c [new file with mode: 0644]
source3/rpc_server/rpc_worker.h [new file with mode: 0644]
source3/rpc_server/wscript_build