Lines Matching refs:rxk5

186 static void rxrpc_rxk5_free(struct rxk5_key *rxk5)  in rxrpc_rxk5_free()  argument
190 rxrpc_free_krb5_principal(&rxk5->client); in rxrpc_rxk5_free()
191 rxrpc_free_krb5_principal(&rxk5->server); in rxrpc_rxk5_free()
192 rxrpc_free_krb5_tagged(&rxk5->session); in rxrpc_rxk5_free()
194 if (rxk5->addresses) { in rxrpc_rxk5_free()
195 for (loop = rxk5->n_addresses - 1; loop >= 0; loop--) in rxrpc_rxk5_free()
196 rxrpc_free_krb5_tagged(&rxk5->addresses[loop]); in rxrpc_rxk5_free()
197 kfree(rxk5->addresses); in rxrpc_rxk5_free()
199 if (rxk5->authdata) { in rxrpc_rxk5_free()
200 for (loop = rxk5->n_authdata - 1; loop >= 0; loop--) in rxrpc_rxk5_free()
201 rxrpc_free_krb5_tagged(&rxk5->authdata[loop]); in rxrpc_rxk5_free()
202 kfree(rxk5->authdata); in rxrpc_rxk5_free()
205 kfree(rxk5->ticket); in rxrpc_rxk5_free()
206 kfree(rxk5->ticket2); in rxrpc_rxk5_free()
207 kfree(rxk5); in rxrpc_rxk5_free()
428 struct rxk5_key *rxk5; in rxrpc_preparse_xdr_rxk5() local
444 rxk5 = kzalloc(sizeof(*rxk5), GFP_KERNEL); in rxrpc_preparse_xdr_rxk5()
445 if (!rxk5) { in rxrpc_preparse_xdr_rxk5()
451 token->k5 = rxk5; in rxrpc_preparse_xdr_rxk5()
454 ret = rxrpc_krb5_decode_principal(&rxk5->client, &xdr, &toklen); in rxrpc_preparse_xdr_rxk5()
457 ret = rxrpc_krb5_decode_principal(&rxk5->server, &xdr, &toklen); in rxrpc_preparse_xdr_rxk5()
463 ret = rxrpc_krb5_decode_tagged_data(&rxk5->session, AFSTOKEN_DATA_MAX, in rxrpc_preparse_xdr_rxk5()
470 rxk5->authtime = be64_to_cpup((const __be64 *) xdr); in rxrpc_preparse_xdr_rxk5()
472 rxk5->starttime = be64_to_cpup((const __be64 *) xdr); in rxrpc_preparse_xdr_rxk5()
474 rxk5->endtime = be64_to_cpup((const __be64 *) xdr); in rxrpc_preparse_xdr_rxk5()
476 rxk5->renew_till = be64_to_cpup((const __be64 *) xdr); in rxrpc_preparse_xdr_rxk5()
478 rxk5->is_skey = ntohl(*xdr++); in rxrpc_preparse_xdr_rxk5()
479 rxk5->flags = ntohl(*xdr++); in rxrpc_preparse_xdr_rxk5()
483 rxk5->authtime, rxk5->starttime, rxk5->endtime, in rxrpc_preparse_xdr_rxk5()
484 rxk5->renew_till); in rxrpc_preparse_xdr_rxk5()
485 _debug("is_skey=%x flags=%x", rxk5->is_skey, rxk5->flags); in rxrpc_preparse_xdr_rxk5()
488 ret = rxrpc_krb5_decode_tagged_array(&rxk5->addresses, in rxrpc_preparse_xdr_rxk5()
489 &rxk5->n_addresses, in rxrpc_preparse_xdr_rxk5()
499 ret = rxrpc_krb5_decode_ticket(&rxk5->ticket, &rxk5->ticket_len, in rxrpc_preparse_xdr_rxk5()
503 ret = rxrpc_krb5_decode_ticket(&rxk5->ticket2, &rxk5->ticket2_len, in rxrpc_preparse_xdr_rxk5()
511 ret = rxrpc_krb5_decode_tagged_array(&rxk5->authdata, in rxrpc_preparse_xdr_rxk5()
512 &rxk5->n_authdata, in rxrpc_preparse_xdr_rxk5()
539 rxrpc_rxk5_free(rxk5); in rxrpc_preparse_xdr_rxk5()