SUNRPC: Simplify rpcb_register() API
Bruce suggested there's no need to expose the difference between an error sending the PMAP_SET request and an error reply from the portmapper to rpcb_register's callers. The user space equivalent of rpcb_register() is pmap_set(3), which returns a bool_t : either the PMAP set worked, or it didn't. Simple. So let's remove the "*okay" argument from rpcb_register() and rpcb_v4_register(), and simply return an error if any part of the call didn't work. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
This commit is contained in:
committed by
J. Bruce Fields
parent
b6632339e3
commit
14aeb2118d
@ -730,7 +730,7 @@ svc_register(struct svc_serv *serv, int proto, unsigned short port)
|
||||
struct svc_program *progp;
|
||||
unsigned long flags;
|
||||
unsigned int i;
|
||||
int error = 0, dummy;
|
||||
int error = 0;
|
||||
|
||||
if (!port)
|
||||
clear_thread_flag(TIF_SIGPENDING);
|
||||
@ -751,13 +751,9 @@ svc_register(struct svc_serv *serv, int proto, unsigned short port)
|
||||
if (progp->pg_vers[i]->vs_hidden)
|
||||
continue;
|
||||
|
||||
error = rpcb_register(progp->pg_prog, i, proto, port, &dummy);
|
||||
error = rpcb_register(progp->pg_prog, i, proto, port);
|
||||
if (error < 0)
|
||||
break;
|
||||
if (port && !dummy) {
|
||||
error = -EACCES;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user