RPC support for samba configuration
Student name: Vicentiu Ciorbaru
Samba has a registry based configuration backend: Configuration data is stored inside the registry key HKEY_LOCAL_MACHINE\Software\Samba\smbconf. A tool for reading and writing this registry stored configuration is "net conf". Access to the registry-stored configuration is performed through a module that makes use of the "reg_api" module which is the backend code for direct local access to the registry database. The reg_api interface is similar to the WINREG rpc interface. The basic goal of this project is to develop a remote variant of the "net conf" tool that allows for configuring a remote samba server with the same convenience as offered by the "net conf" tool.
net conf --> libsmbconf --> registry backend:reg_api --> registry database
possible for a new "net rpc conf":
net rpc conf --> libsmbconf --> remote registry backend:winreg --> remote server --> registry database
similar: compare "net registry" to "net rpc registry" (source3/utils/net_registry.c and source3/utils/net_rpc_registry.c)
alternative approaches (maybe as a second step):
- create a wrapper around winreg and reg_api that could be used in libsmbconf and could also be used to unify the logic of net registry and net rpc registry
- get acquainted with net conf, libsmbconf, net registry, net rpc registry
- compare implementation of net registry and net rpc registry
- get an idea of how to create a remote registry variant of "net conf"
- basically: write a remote registry backend for "libsmbconf"
- lib/smbconf/ : general api, text backend
- source3/lib/smbconf/ : registry backend