I've discovered that Ganesha accepts every protocol on every port. That is, an NLM port will actually allow NFSv3 or v4 and vice versa.
Checked with Bruce Fields, the kernel doesn't do that. One of my old Napalm patches (Aug 3, 2015) combined is_rpc_call_valid() with nfs_rpc_get_funcdesc(); they are called one after the other, and both do the same series of tests against the program descriptor /et alia/. - if (!is_rpc_call_valid(&reqdata->r_u.req.svc)) + if (!nfs_rpc_valid_function(&reqdata->r_u.req)) goto finish; - reqdata->r_u.req.funcdesc = nfs_rpc_get_funcdesc(&reqdata->r_u.req); - Instead, I've already modified the calling sequence with separate callbacks for each fd to eliminate another similar series of fd tests. I'll change that to callback different functions for each program, further reducing the number of tests in the main loop. ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Nfs-ganesha-devel mailing list Nfs-ganesha-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/nfs-ganesha-devel