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

Reply via email to