cifs-utils: new plugin architecture for ID mapping code
authorJeff Layton <jlayton@samba.org>
Mon, 3 Dec 2012 17:35:38 +0000 (12:35 -0500)
committerJeff Layton <jlayton@samba.org>
Wed, 19 Dec 2012 14:27:14 +0000 (09:27 -0500)
commit6a25042ae1f010d7ea0852c8245b481c31d9789d
tree85e21a4024f05196c82cb3b543a09bb61fa330c4
parentd4f9df9159c5ac93b97c36b0f98ffbd318866e38
cifs-utils: new plugin architecture for ID mapping code

Currently, the ACL-related tools in cifs-utils call into the wbclient
libs directly in order to do their bidding. The wbclient developers want
to get away from needing to configure winbind on the clients and instead
allow sssd to handle the mapping in most cases.

This patch represents an initial step in that direction. It adds a
plugin architecture for cifs-utils, adds wrappers around the calls into
libwbclient that find an idmap plugin library to use and then has it
call into that plugin to do the actual ID mapping.

The application will call into a set of routines that find the correct
plugin and dlopen() it. Currently the plugin is located in a well-known
location that is settable via autoconf. That location is intended to be
a symlink that points to the real plugin (generally under $pkglibdir).

The plugin will export a number of functions with well-known names. The
wrappers find those by using dlsym() and then call them.

Signed-off-by: Jeff Layton <jlayton@samba.org>
Makefile.am
cifsidmap.h
configure.ac
getcifsacl.c
idmap_plugin.c [new file with mode: 0644]
idmap_plugin.h [new file with mode: 0644]
idmapwb.c [new file with mode: 0644]