SUNRPC: parametrize rpc_uaddr2sockaddr() by network context
Parametrize rpc_uaddr2sockaddr() by network context and thus force it's callers to pass in network context instead of using hard-coded "init_net". Signed-off-by: Stanislav Kinsbursky <skinsbursky@parallels.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
This commit is contained in:

committed by
Trond Myklebust

parent
90100b1766
commit
f2ac4dc911
@@ -297,6 +297,7 @@ char *rpc_sockaddr2uaddr(const struct sockaddr *sap, gfp_t gfp_flags)
|
||||
|
||||
/**
|
||||
* rpc_uaddr2sockaddr - convert a universal address to a socket address.
|
||||
* @net: applicable network namespace
|
||||
* @uaddr: C string containing universal address to convert
|
||||
* @uaddr_len: length of universal address string
|
||||
* @sap: buffer into which to plant socket address
|
||||
@@ -308,8 +309,9 @@ char *rpc_sockaddr2uaddr(const struct sockaddr *sap, gfp_t gfp_flags)
|
||||
* Returns the size of the socket address if successful; otherwise
|
||||
* zero is returned.
|
||||
*/
|
||||
size_t rpc_uaddr2sockaddr(const char *uaddr, const size_t uaddr_len,
|
||||
struct sockaddr *sap, const size_t salen)
|
||||
size_t rpc_uaddr2sockaddr(struct net *net, const char *uaddr,
|
||||
const size_t uaddr_len, struct sockaddr *sap,
|
||||
const size_t salen)
|
||||
{
|
||||
char *c, buf[RPCBIND_MAXUADDRLEN + sizeof('\0')];
|
||||
unsigned long portlo, porthi;
|
||||
@@ -341,7 +343,7 @@ size_t rpc_uaddr2sockaddr(const char *uaddr, const size_t uaddr_len,
|
||||
port = (unsigned short)((porthi << 8) | portlo);
|
||||
|
||||
*c = '\0';
|
||||
if (rpc_pton(&init_net, buf, strlen(buf), sap, salen) == 0)
|
||||
if (rpc_pton(net, buf, strlen(buf), sap, salen) == 0)
|
||||
return 0;
|
||||
|
||||
switch (sap->sa_family) {
|
||||
|
Reference in New Issue
Block a user