[SSSD] [PATCH v3 0/4] NFSv4 rpc.idmapd plugin

Jakub Hrozek jhrozek at redhat.com
Mon Jul 14 16:21:27 UTC 2014


On Fri, Jun 27, 2014 at 09:44:34AM +0300, Noam Meltzer wrote:
> Follow patches are the code implementing design document:
> https://fedorahosted.org/sssd/wiki/DesignDocs/rpc.idmapd%20plugin
> 
> Changes compared to v2 of this patch:
>  * rebase over rev. 8ca18752 (current master)
>  * remove man pages from the patch (will be sent separately)
>  * add new contact details for plugin author
>  * code style
>  * remove sss_nfs_make_request() wrapper
>  * fix typo in reply_to_name(): REPLY_ID_OFFSET -> REPLY_NAME_OFFSET

Thanks for these changes! The patches look good with one nitpick, which
I can fix locally before pushing and one packaging question. I'll ask
those inline when replying to the patches themselves.

But more importantly, I have a question on testing the patches. I admit
my NFS internals knowledge is quite lacking, so maybe these are basic
questions..how exactly do I make sure the plugin mapping functions are
called? I tried attaching gdb to rpc.idmapd and doing various operations
to the file (ls, echo "foo" >> file) etc but still no luck. Disabling
the sss nsswitch plugin just yields UIDs and GIDs on the client (which
is 

For my test, I configured a server and a client. I can mount the shares
just fine, I see I'm using NFSv4 in the mount(8) output. I can see the
sss plugin was loaded, because journalctl -u nfs-idmap.service says:
Jul 14 12:01:21 master.ipa.example.com rpc.idmapd[24320]: rpc.idmapd:
sss_nfs_init: use memcache: 1
Jul 14 12:01:21 master.ipa.example.com rpc.idmapd[24320]: rpc.idmapd:
libnfsidmap: loaded plugin /lib64/libnfsidmap/sss_nfs.so for method
sss_nfs

My idmapd.conf file looks quite simple:
--------------------
[General]
Verbosity = 2
Domain = ipa.example.com

[Mapping]
Nobody-User = nfsnobody
Nobody-Group = nfsnobody

[Translation]
Method = sss_nfs

[Static]

[UMICH_SCHEMA]
--------------------

I guess I could also ask -- where does the rpc.idmapd daemon hook into
the system? When exactly are the translation functions called?

Thank you for your help.



More information about the sssd-devel mailing list