The NFS kernel server does not support uid mappings, activated with flags
such as "map_daemon" in exports. There is already code that parses these
flags, and gives an error at mount time if an unsupported flag (ie. any
but the default) is given. However, at some point the kernel changed the
export interface, and the new code forgot to include the relevant check.
Thus, simply copy the check from the old to the new code, which makes
sure mountd behaves the same in this aspect regardless of kernel version,
and makes sure the admin does not inadvertently use map_daemon and expect
it to work.
Signed-off-by: Steinar H. Gunderson <sesse@debian.org>
int err;
FILE *f;
+ if (exp->m_export.e_maptype != CLE_MAP_IDENT) {
+ xlog(L_ERROR, "%s: unsupported mapping; kernel supports only 'identity' (default)",
+ exp->m_export.m_path);
+ return;
+ }
+
f = fopen("/proc/net/rpc/auth.unix.ip/channel", "w");
if (!f)
return -1;