Lines Matching refs:prep

88 static int rxrpc_preparse_xdr_rxkad(struct key_preparsed_payload *prep,  in rxrpc_preparse_xdr_rxkad()  argument
110 prep->quotalen = datalen + plen; in rxrpc_preparse_xdr_rxkad()
151 prep->payload.data[1] = (void *)((unsigned long)prep->payload.data[1] + 1); in rxrpc_preparse_xdr_rxkad()
154 for (pptoken = (struct rxrpc_key_token **)&prep->payload.data[0]; in rxrpc_preparse_xdr_rxkad()
159 if (token->kad->expiry < prep->expiry) in rxrpc_preparse_xdr_rxkad()
160 prep->expiry = token->kad->expiry; in rxrpc_preparse_xdr_rxkad()
423 static int rxrpc_preparse_xdr_rxk5(struct key_preparsed_payload *prep, in rxrpc_preparse_xdr_rxk5() argument
438 prep->quotalen = datalen + toklen; in rxrpc_preparse_xdr_rxk5()
525 for (pptoken = (struct rxrpc_key_token **)&prep->payload.data[0]; in rxrpc_preparse_xdr_rxk5()
530 if (token->kad->expiry < prep->expiry) in rxrpc_preparse_xdr_rxk5()
531 prep->expiry = token->kad->expiry; in rxrpc_preparse_xdr_rxk5()
549 static int rxrpc_preparse_xdr(struct key_preparsed_payload *prep) in rxrpc_preparse_xdr() argument
551 const __be32 *xdr = prep->data, *token; in rxrpc_preparse_xdr()
554 size_t datalen = prep->datalen; in rxrpc_preparse_xdr()
559 prep->datalen); in rxrpc_preparse_xdr()
640 ret = rxrpc_preparse_xdr_rxkad(prep, datalen, xdr, toklen); in rxrpc_preparse_xdr()
646 ret = rxrpc_preparse_xdr_rxk5(prep, datalen, xdr, toklen); in rxrpc_preparse_xdr()
684 static int rxrpc_preparse(struct key_preparsed_payload *prep) in rxrpc_preparse() argument
692 _enter("%zu", prep->datalen); in rxrpc_preparse()
695 if (!prep->data && prep->datalen == 0) in rxrpc_preparse()
699 if (prep->datalen > 7 * 4) { in rxrpc_preparse()
700 ret = rxrpc_preparse_xdr(prep); in rxrpc_preparse()
707 if (prep->datalen <= 4 || !prep->data) in rxrpc_preparse()
709 memcpy(&kver, prep->data, sizeof(kver)); in rxrpc_preparse()
710 prep->data += sizeof(kver); in rxrpc_preparse()
711 prep->datalen -= sizeof(kver); in rxrpc_preparse()
721 if (prep->datalen < sizeof(*v1)) in rxrpc_preparse()
724 v1 = prep->data; in rxrpc_preparse()
725 if (prep->datalen != sizeof(*v1) + v1->ticket_length) in rxrpc_preparse()
749 prep->quotalen = plen + sizeof(*token); in rxrpc_preparse()
767 prep->payload.data[1] = (void *)((unsigned long)prep->payload.data[1] + 1); in rxrpc_preparse()
770 pp = (struct rxrpc_key_token **)&prep->payload.data[0]; in rxrpc_preparse()
774 if (token->kad->expiry < prep->expiry) in rxrpc_preparse()
775 prep->expiry = token->kad->expiry; in rxrpc_preparse()
815 static void rxrpc_free_preparse(struct key_preparsed_payload *prep) in rxrpc_free_preparse() argument
817 rxrpc_free_token_list(prep->payload.data[0]); in rxrpc_free_preparse()
825 static int rxrpc_preparse_s(struct key_preparsed_payload *prep) in rxrpc_preparse_s() argument
829 _enter("%zu", prep->datalen); in rxrpc_preparse_s()
831 if (prep->datalen != 8) in rxrpc_preparse_s()
834 memcpy(&prep->payload.data[2], prep->data, 8); in rxrpc_preparse_s()
842 if (crypto_blkcipher_setkey(ci, prep->data, 8) < 0) in rxrpc_preparse_s()
845 prep->payload.data[0] = ci; in rxrpc_preparse_s()
853 static void rxrpc_free_preparse_s(struct key_preparsed_payload *prep) in rxrpc_free_preparse_s() argument
855 if (prep->payload.data[0]) in rxrpc_free_preparse_s()
856 crypto_free_blkcipher(prep->payload.data[0]); in rxrpc_free_preparse_s()