H A D | ar-key.c | 90 const __be32 *xdr, unsigned int toklen) rxrpc_preparse_xdr_rxkad() 98 toklen); rxrpc_preparse_xdr_rxkad() 100 if (toklen <= 8 * 4) rxrpc_preparse_xdr_rxkad() 106 if (toklen < 8 * 4 + tktlen) rxrpc_preparse_xdr_rxkad() 218 unsigned int toklen = *_toklen, n_parts, loop, tmp; rxrpc_krb5_decode_principal() local 222 if (toklen <= 12) rxrpc_krb5_decode_principal() 226 ntohl(xdr[0]), ntohl(xdr[1]), ntohl(xdr[2]), toklen); rxrpc_krb5_decode_principal() 229 toklen -= 4; rxrpc_krb5_decode_principal() 234 if (toklen <= (n_parts + 1) * 4) rxrpc_krb5_decode_principal() 242 if (toklen < 4) rxrpc_krb5_decode_principal() 245 toklen -= 4; rxrpc_krb5_decode_principal() 248 if (tmp > toklen) rxrpc_krb5_decode_principal() 256 toklen -= tmp; rxrpc_krb5_decode_principal() 260 if (toklen < 4) rxrpc_krb5_decode_principal() 263 toklen -= 4; rxrpc_krb5_decode_principal() 266 if (tmp > toklen) rxrpc_krb5_decode_principal() 274 toklen -= tmp; rxrpc_krb5_decode_principal() 280 *_toklen = toklen; rxrpc_krb5_decode_principal() 281 _leave(" = 0 [toklen=%u]", toklen); rxrpc_krb5_decode_principal() 294 unsigned int toklen = *_toklen, len; rxrpc_krb5_decode_tagged_data() local 297 if (toklen <= 8) rxrpc_krb5_decode_tagged_data() 301 max_data_size, ntohl(xdr[0]), ntohl(xdr[1]), toklen); rxrpc_krb5_decode_tagged_data() 305 toklen -= 8; rxrpc_krb5_decode_tagged_data() 315 toklen -= len; rxrpc_krb5_decode_tagged_data() 322 *_toklen = toklen; rxrpc_krb5_decode_tagged_data() 323 _leave(" = 0 [toklen=%u]", toklen); rxrpc_krb5_decode_tagged_data() 339 unsigned int toklen = *_toklen, n_elem, loop; rxrpc_krb5_decode_tagged_array() local 343 if (toklen < 4) rxrpc_krb5_decode_tagged_array() 347 max_n_elem, max_elem_size, ntohl(xdr[0]), toklen); rxrpc_krb5_decode_tagged_array() 350 toklen -= 4; rxrpc_krb5_decode_tagged_array() 355 if (toklen <= (n_elem + 1) * 4) rxrpc_krb5_decode_tagged_array() 369 &xdr, &toklen); rxrpc_krb5_decode_tagged_array() 376 *_toklen = toklen; rxrpc_krb5_decode_tagged_array() 377 _leave(" = 0 [toklen=%u]", toklen); rxrpc_krb5_decode_tagged_array() 388 unsigned int toklen = *_toklen, len; rxrpc_krb5_decode_ticket() local 391 if (toklen <= 4) rxrpc_krb5_decode_ticket() 394 _enter(",{%x},%u", ntohl(xdr[0]), toklen); rxrpc_krb5_decode_ticket() 397 toklen -= 4; rxrpc_krb5_decode_ticket() 409 toklen -= len; rxrpc_krb5_decode_ticket() 414 *_toklen = toklen; rxrpc_krb5_decode_ticket() 415 _leave(" = 0 [toklen=%u]", toklen); rxrpc_krb5_decode_ticket() 425 const __be32 *xdr, unsigned int toklen) rxrpc_preparse_xdr_rxk5() 429 const __be32 *end_xdr = xdr + (toklen >> 2); rxrpc_preparse_xdr_rxk5() 434 toklen); rxrpc_preparse_xdr_rxk5() 438 prep->quotalen = datalen + toklen; rxrpc_preparse_xdr_rxk5() 454 ret = rxrpc_krb5_decode_principal(&rxk5->client, &xdr, &toklen); rxrpc_preparse_xdr_rxk5() 457 ret = rxrpc_krb5_decode_principal(&rxk5->server, &xdr, &toklen); rxrpc_preparse_xdr_rxk5() 464 &xdr, &toklen); rxrpc_preparse_xdr_rxk5() 468 if (toklen < 4 * 8 + 2 * 4) rxrpc_preparse_xdr_rxk5() 480 toklen -= 4 * 8 + 2 * 4; rxrpc_preparse_xdr_rxk5() 492 &xdr, &toklen); rxrpc_preparse_xdr_rxk5() 496 ASSERTCMP((end_xdr - xdr) << 2, ==, toklen); rxrpc_preparse_xdr_rxk5() 500 &xdr, &toklen); rxrpc_preparse_xdr_rxk5() 504 &xdr, &toklen); rxrpc_preparse_xdr_rxk5() 508 ASSERTCMP((end_xdr - xdr) << 2, ==, toklen); rxrpc_preparse_xdr_rxk5() 515 &xdr, &toklen); rxrpc_preparse_xdr_rxk5() 519 ASSERTCMP((end_xdr - xdr) << 2, ==, toklen); rxrpc_preparse_xdr_rxk5() 521 if (toklen != 0) rxrpc_preparse_xdr_rxk5() 553 unsigned int len, tmp, loop, ntoken, toklen, sec_ix; rxrpc_preparse_xdr() local 611 toklen = ntohl(*xdr++); rxrpc_preparse_xdr() 614 _debug("token: [%x/%zx] %x", toklen, datalen, sec_ix); rxrpc_preparse_xdr() 615 if (toklen < 20 || toklen > datalen) rxrpc_preparse_xdr() 617 datalen -= (toklen + 3) & ~3; rxrpc_preparse_xdr() 618 xdr += (toklen + 3) >> 2; rxrpc_preparse_xdr() 631 toklen = ntohl(*xdr++); rxrpc_preparse_xdr() 632 token = xdr + ((toklen + 3) >> 2); rxrpc_preparse_xdr() 634 toklen -= 4; rxrpc_preparse_xdr() 640 ret = rxrpc_preparse_xdr_rxkad(prep, datalen, xdr, toklen); rxrpc_preparse_xdr() 646 ret = rxrpc_preparse_xdr_rxk5(prep, datalen, xdr, toklen); rxrpc_preparse_xdr() 88 rxrpc_preparse_xdr_rxkad(struct key_preparsed_payload *prep, size_t datalen, const __be32 *xdr, unsigned int toklen) rxrpc_preparse_xdr_rxkad() argument 423 rxrpc_preparse_xdr_rxk5(struct key_preparsed_payload *prep, size_t datalen, const __be32 *xdr, unsigned int toklen) rxrpc_preparse_xdr_rxk5() argument
|