diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/sunrpc/svc_xprt.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/include/linux/sunrpc/svc_xprt.h b/include/linux/sunrpc/svc_xprt.h index 09de12b63c1d..405281e745d1 100644 --- a/include/linux/sunrpc/svc_xprt.h +++ b/include/linux/sunrpc/svc_xprt.h | |||
@@ -72,9 +72,14 @@ void svc_unreg_xprt_class(struct svc_xprt_class *); | |||
72 | void svc_xprt_init(struct svc_xprt_class *, struct svc_xprt *, | 72 | void svc_xprt_init(struct svc_xprt_class *, struct svc_xprt *, |
73 | struct svc_serv *); | 73 | struct svc_serv *); |
74 | int svc_create_xprt(struct svc_serv *, char *, unsigned short, int); | 74 | int svc_create_xprt(struct svc_serv *, char *, unsigned short, int); |
75 | void svc_xprt_enqueue(struct svc_xprt *xprt); | ||
75 | void svc_xprt_received(struct svc_xprt *); | 76 | void svc_xprt_received(struct svc_xprt *); |
76 | void svc_xprt_put(struct svc_xprt *xprt); | 77 | void svc_xprt_put(struct svc_xprt *xprt); |
77 | void svc_xprt_copy_addrs(struct svc_rqst *rqstp, struct svc_xprt *xprt); | 78 | void svc_xprt_copy_addrs(struct svc_rqst *rqstp, struct svc_xprt *xprt); |
79 | void svc_close_xprt(struct svc_xprt *xprt); | ||
80 | void svc_delete_xprt(struct svc_xprt *xprt); | ||
81 | int svc_port_is_privileged(struct sockaddr *sin); | ||
82 | |||
78 | static inline void svc_xprt_get(struct svc_xprt *xprt) | 83 | static inline void svc_xprt_get(struct svc_xprt *xprt) |
79 | { | 84 | { |
80 | kref_get(&xprt->xpt_ref); | 85 | kref_get(&xprt->xpt_ref); |
@@ -126,4 +131,26 @@ static inline unsigned short svc_xprt_remote_port(struct svc_xprt *xprt) | |||
126 | return svc_addr_port((struct sockaddr *)&xprt->xpt_remote); | 131 | return svc_addr_port((struct sockaddr *)&xprt->xpt_remote); |
127 | } | 132 | } |
128 | 133 | ||
134 | static inline char *__svc_print_addr(struct sockaddr *addr, | ||
135 | char *buf, size_t len) | ||
136 | { | ||
137 | switch (addr->sa_family) { | ||
138 | case AF_INET: | ||
139 | snprintf(buf, len, "%u.%u.%u.%u, port=%u", | ||
140 | NIPQUAD(((struct sockaddr_in *) addr)->sin_addr), | ||
141 | ntohs(((struct sockaddr_in *) addr)->sin_port)); | ||
142 | break; | ||
143 | |||
144 | case AF_INET6: | ||
145 | snprintf(buf, len, "%x:%x:%x:%x:%x:%x:%x:%x, port=%u", | ||
146 | NIP6(((struct sockaddr_in6 *) addr)->sin6_addr), | ||
147 | ntohs(((struct sockaddr_in6 *) addr)->sin6_port)); | ||
148 | break; | ||
149 | |||
150 | default: | ||
151 | snprintf(buf, len, "unknown address type: %d", addr->sa_family); | ||
152 | break; | ||
153 | } | ||
154 | return buf; | ||
155 | } | ||
129 | #endif /* SUNRPC_SVC_XPRT_H */ | 156 | #endif /* SUNRPC_SVC_XPRT_H */ |