/net/sunrpc/ |
D | svc_xprt.c | 29 static int svc_deferred_recv(struct svc_rqst *rqstp); 309 void svc_xprt_copy_addrs(struct svc_rqst *rqstp, struct svc_xprt *xprt) in svc_xprt_copy_addrs() argument 311 memcpy(&rqstp->rq_addr, &xprt->xpt_remote, xprt->xpt_remotelen); in svc_xprt_copy_addrs() 312 rqstp->rq_addrlen = xprt->xpt_remotelen; in svc_xprt_copy_addrs() 318 memcpy(&rqstp->rq_daddr, &xprt->xpt_local, xprt->xpt_locallen); in svc_xprt_copy_addrs() 319 rqstp->rq_daddrlen = xprt->xpt_locallen; in svc_xprt_copy_addrs() 330 char *svc_print_addr(struct svc_rqst *rqstp, char *buf, size_t len) in svc_print_addr() argument 332 return __svc_print_addr(svc_addr(rqstp), buf, len); in svc_print_addr() 344 static bool svc_xprt_reserve_slot(struct svc_rqst *rqstp, struct svc_xprt *xprt) in svc_xprt_reserve_slot() argument 346 if (!test_bit(RQ_DATA, &rqstp->rq_flags)) { in svc_xprt_reserve_slot() [all …]
|
D | svc.c | 564 svc_init_buffer(struct svc_rqst *rqstp, unsigned int size, int node) in svc_init_buffer() argument 569 if (svc_is_backchannel(rqstp)) in svc_init_buffer() 583 rqstp->rq_pages[arghi++] = p; in svc_init_buffer() 593 svc_release_buffer(struct svc_rqst *rqstp) in svc_release_buffer() argument 597 for (i = 0; i < ARRAY_SIZE(rqstp->rq_pages); i++) in svc_release_buffer() 598 if (rqstp->rq_pages[i]) in svc_release_buffer() 599 put_page(rqstp->rq_pages[i]); in svc_release_buffer() 605 struct svc_rqst *rqstp; in svc_rqst_alloc() local 607 rqstp = kzalloc_node(sizeof(*rqstp), GFP_KERNEL, node); in svc_rqst_alloc() 608 if (!rqstp) in svc_rqst_alloc() [all …]
|
D | svcsock.c | 118 static void svc_release_skb(struct svc_rqst *rqstp) in svc_release_skb() argument 120 struct sk_buff *skb = rqstp->rq_xprt_ctxt; in svc_release_skb() 124 container_of(rqstp->rq_xprt, struct svc_sock, sk_xprt); in svc_release_skb() 125 rqstp->rq_xprt_ctxt = NULL; in svc_release_skb() 127 dprintk("svc: service %p, releasing skb %p\n", rqstp, skb); in svc_release_skb() 139 static void svc_set_cmsg_data(struct svc_rqst *rqstp, struct cmsghdr *cmh) in svc_set_cmsg_data() argument 142 container_of(rqstp->rq_xprt, struct svc_sock, sk_xprt); in svc_set_cmsg_data() 151 svc_daddr_in(rqstp)->sin_addr.s_addr; in svc_set_cmsg_data() 158 struct sockaddr_in6 *daddr = svc_daddr_in6(rqstp); in svc_set_cmsg_data() 232 static int svc_sendto(struct svc_rqst *rqstp, struct xdr_buf *xdr) in svc_sendto() argument [all …]
|
D | svcauth.c | 37 svc_authenticate(struct svc_rqst *rqstp, __be32 *authp) in svc_authenticate() argument 44 flavor = svc_getnl(&rqstp->rq_arg.head[0]); in svc_authenticate() 57 rqstp->rq_auth_slack = 0; in svc_authenticate() 58 init_svc_cred(&rqstp->rq_cred); in svc_authenticate() 60 rqstp->rq_authop = aops; in svc_authenticate() 61 return aops->accept(rqstp, authp); in svc_authenticate() 65 int svc_set_client(struct svc_rqst *rqstp) in svc_set_client() argument 67 rqstp->rq_client = NULL; in svc_set_client() 68 return rqstp->rq_authop->set_client(rqstp); in svc_set_client() 76 int svc_authorise(struct svc_rqst *rqstp) in svc_authorise() argument [all …]
|
D | svcauth_unix.c | 629 static struct group_info *unix_gid_find(kuid_t uid, struct svc_rqst *rqstp) in unix_gid_find() argument 634 struct sunrpc_net *sn = net_generic(rqstp->rq_xprt->xpt_net, in unix_gid_find() 640 ret = cache_check(sn->unix_gid_cache, &ug->h, &rqstp->rq_chandle); in unix_gid_find() 656 svcauth_unix_set_client(struct svc_rqst *rqstp) in svcauth_unix_set_client() argument 662 struct svc_cred *cred = &rqstp->rq_cred; in svcauth_unix_set_client() 663 struct svc_xprt *xprt = rqstp->rq_xprt; in svcauth_unix_set_client() 667 switch (rqstp->rq_addr.ss_family) { in svcauth_unix_set_client() 669 sin = svc_addr_in(rqstp); in svcauth_unix_set_client() 674 sin6 = svc_addr_in6(rqstp); in svcauth_unix_set_client() 680 rqstp->rq_client = NULL; in svcauth_unix_set_client() [all …]
|
D | auth.c | 771 static void rpcauth_wrap_req_encode(kxdreproc_t encode, struct rpc_rqst *rqstp, in rpcauth_wrap_req_encode() argument 776 xdr_init_encode(&xdr, &rqstp->rq_snd_buf, data); in rpcauth_wrap_req_encode() 777 encode(rqstp, &xdr, obj); in rpcauth_wrap_req_encode() 781 rpcauth_wrap_req(struct rpc_task *task, kxdreproc_t encode, void *rqstp, in rpcauth_wrap_req() argument 789 return cred->cr_ops->crwrap_req(task, encode, rqstp, data, obj); in rpcauth_wrap_req() 791 rpcauth_wrap_req_encode(encode, rqstp, data, obj); in rpcauth_wrap_req() 796 rpcauth_unwrap_req_decode(kxdrdproc_t decode, struct rpc_rqst *rqstp, in rpcauth_unwrap_req_decode() argument 801 xdr_init_decode(&xdr, &rqstp->rq_rcv_buf, data); in rpcauth_unwrap_req_decode() 802 return decode(rqstp, &xdr, obj); in rpcauth_unwrap_req_decode() 806 rpcauth_unwrap_resp(struct rpc_task *task, kxdrdproc_t decode, void *rqstp, in rpcauth_unwrap_resp() argument [all …]
|
D | cache.c | 254 struct cache_head *h, struct cache_req *rqstp) in cache_check() argument 266 if (rqstp == NULL) { in cache_check() 286 if (!cache_defer_req(rqstp, h)) { in cache_check()
|
D | clnt.c | 2500 static void rpcproc_encode_null(void *rqstp, struct xdr_stream *xdr, void *obj) in rpcproc_encode_null() argument 2504 static int rpcproc_decode_null(void *rqstp, struct xdr_stream *xdr, void *obj) in rpcproc_decode_null() argument
|
/net/sunrpc/xprtrdma/ |
D | svc_rdma_recvfrom.c | 58 static void rdma_build_arg_xdr(struct svc_rqst *rqstp, in rdma_build_arg_xdr() argument 69 put_page(rqstp->rq_pages[0]); in rdma_build_arg_xdr() 70 rqstp->rq_pages[0] = page; in rdma_build_arg_xdr() 73 rqstp->rq_arg.head[0].iov_base = page_address(page); in rdma_build_arg_xdr() 74 rqstp->rq_arg.head[0].iov_len = in rdma_build_arg_xdr() 76 rqstp->rq_arg.len = byte_count; in rdma_build_arg_xdr() 77 rqstp->rq_arg.buflen = byte_count; in rdma_build_arg_xdr() 80 bc = byte_count - rqstp->rq_arg.head[0].iov_len; in rdma_build_arg_xdr() 83 rqstp->rq_arg.page_len = bc; in rdma_build_arg_xdr() 84 rqstp->rq_arg.page_base = 0; in rdma_build_arg_xdr() [all …]
|
D | svc_rdma_sendto.c | 273 static int send_write(struct svcxprt_rdma *xprt, struct svc_rqst *rqstp, in send_write() argument 319 dma_map_xdr(xprt, &rqstp->rq_res, xdr_off, in send_write() 366 struct svc_rqst *rqstp, in send_write_chunks() argument 369 u32 xfer_len = rqstp->rq_res.page_len; in send_write_chunks() 383 for (xdr_off = rqstp->rq_res.head[0].iov_len, chunk_no = 0; in send_write_chunks() 401 ret = send_write(xprt, rqstp, in send_write_chunks() 418 return rqstp->rq_res.page_len; in send_write_chunks() 429 struct svc_rqst *rqstp, in send_reply_chunks() argument 432 u32 xfer_len = rqstp->rq_res.len; in send_reply_chunks() 464 ret = send_write(xprt, rqstp, in send_reply_chunks() [all …]
|
D | svc_rdma_transport.c | 1189 static void svc_rdma_release_rqst(struct svc_rqst *rqstp) in svc_rdma_release_rqst() argument 1317 static int svc_rdma_secure_port(struct svc_rqst *rqstp) in svc_rdma_secure_port() argument
|
/net/sunrpc/auth_gss/ |
D | svcauth_gss.c | 660 gss_verify_header(struct svc_rqst *rqstp, struct rsc *rsci, in gss_verify_header() argument 667 struct kvec *argv = &rqstp->rq_arg.head[0]; in gss_verify_header() 684 if (rqstp->rq_deferred) /* skip verification of revisited request */ in gss_verify_header() 706 gss_write_null_verf(struct svc_rqst *rqstp) in gss_write_null_verf() argument 710 svc_putnl(rqstp->rq_res.head, RPC_AUTH_NULL); in gss_write_null_verf() 711 p = rqstp->rq_res.head->iov_base + rqstp->rq_res.head->iov_len; in gss_write_null_verf() 714 if (!xdr_ressize_check(rqstp, p)) in gss_write_null_verf() 720 gss_write_verf(struct svc_rqst *rqstp, struct gss_ctx *ctx_id, u32 seq) in gss_write_verf() argument 730 svc_putnl(rqstp->rq_res.head, RPC_AUTH_GSS); in gss_write_verf() 739 p = rqstp->rq_res.head->iov_base + rqstp->rq_res.head->iov_len; in gss_write_verf() [all …]
|
D | auth_gss.c | 1674 static void gss_wrap_req_encode(kxdreproc_t encode, struct rpc_rqst *rqstp, in gss_wrap_req_encode() argument 1679 xdr_init_encode(&xdr, &rqstp->rq_snd_buf, p); in gss_wrap_req_encode() 1680 encode(rqstp, &xdr, obj); in gss_wrap_req_encode() 1685 kxdreproc_t encode, struct rpc_rqst *rqstp, in gss_wrap_req_integ() argument 1688 struct xdr_buf *snd_buf = &rqstp->rq_snd_buf; in gss_wrap_req_integ() 1700 *p++ = htonl(rqstp->rq_seqno); in gss_wrap_req_integ() 1702 gss_wrap_req_encode(encode, rqstp, p, obj); in gss_wrap_req_integ() 1732 priv_release_snd_buf(struct rpc_rqst *rqstp) in priv_release_snd_buf() argument 1736 for (i=0; i < rqstp->rq_enc_pages_num; i++) in priv_release_snd_buf() 1737 __free_page(rqstp->rq_enc_pages[i]); in priv_release_snd_buf() [all …]
|
D | gss_rpc_xdr.h | 183 int gssx_dec_accept_sec_context(struct rpc_rqst *rqstp,
|
D | gss_rpc_xdr.c | 791 int gssx_dec_accept_sec_context(struct rpc_rqst *rqstp, in gssx_dec_accept_sec_context() argument
|