mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 18:51:56 -04:00
[PATCH] knfsd: define new nfsdfs file: portlist - contains list of ports
This file will list all ports that nfsd has open. Default when TCP enabled will be ipv4 udp 0.0.0.0 2049 ipv4 tcp 0.0.0.0 2049 Later, the list of ports will be settable. 'portlist' chosen rather than 'ports', to avoid unnecessary confusion with non-mainline patches which created 'ports' with different semantics. [[email protected]: cleanups, build fix] Signed-off-by: Neil Brown <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
This commit is contained in:
parent
02a375f0ac
commit
80212d59e3
3 changed files with 61 additions and 0 deletions
|
|
@ -428,6 +428,46 @@ out:
|
|||
return len;
|
||||
}
|
||||
|
||||
/*
|
||||
* Report socket names for nfsdfs
|
||||
*/
|
||||
static int one_sock_name(char *buf, struct svc_sock *svsk)
|
||||
{
|
||||
int len;
|
||||
|
||||
switch(svsk->sk_sk->sk_family) {
|
||||
case AF_INET:
|
||||
len = sprintf(buf, "ipv4 %s %u.%u.%u.%u %d\n",
|
||||
svsk->sk_sk->sk_protocol==IPPROTO_UDP?
|
||||
"udp" : "tcp",
|
||||
NIPQUAD(inet_sk(svsk->sk_sk)->rcv_saddr),
|
||||
inet_sk(svsk->sk_sk)->num);
|
||||
break;
|
||||
default:
|
||||
len = sprintf(buf, "*unknown-%d*\n",
|
||||
svsk->sk_sk->sk_family);
|
||||
}
|
||||
return len;
|
||||
}
|
||||
|
||||
int
|
||||
svc_sock_names(char *buf, struct svc_serv *serv)
|
||||
{
|
||||
struct svc_sock *svsk;
|
||||
int len = 0;
|
||||
|
||||
if (!serv)
|
||||
return 0;
|
||||
spin_lock(&serv->sv_lock);
|
||||
list_for_each_entry(svsk, &serv->sv_permsocks, sk_list) {
|
||||
int onelen = one_sock_name(buf+len, svsk);
|
||||
len += onelen;
|
||||
}
|
||||
spin_unlock(&serv->sv_lock);
|
||||
return len;
|
||||
}
|
||||
EXPORT_SYMBOL(svc_sock_names);
|
||||
|
||||
/*
|
||||
* Check input queue length
|
||||
*/
|
||||
|
|
|
|||
Loading…
Reference in a new issue