Lines Matching refs:sa
176 do_decrypt(netdissect_options *ndo, const char *caller, struct sa_list *sa, in do_decrypt() argument
199 if (set_cipher_parameters(ctx, sa->evp, sa->secret, NULL) < 0) { in do_decrypt()
280 struct sa_list *sa; in esp_decrypt_buffer_by_ikev2_print() local
290 for (sa = ndo->ndo_sa_list_head; sa != NULL; sa = sa->next) { in esp_decrypt_buffer_by_ikev2_print()
291 if (sa->spi == 0 in esp_decrypt_buffer_by_ikev2_print()
292 && initiator == sa->initiator in esp_decrypt_buffer_by_ikev2_print()
293 && memcmp(spii, sa->spii, 8) == 0 in esp_decrypt_buffer_by_ikev2_print()
294 && memcmp(spir, sa->spir, 8) == 0) in esp_decrypt_buffer_by_ikev2_print()
298 if(sa == NULL) return 0; in esp_decrypt_buffer_by_ikev2_print()
299 if(sa->evp == NULL) return 0; in esp_decrypt_buffer_by_ikev2_print()
305 end = end - sa->authlen; in esp_decrypt_buffer_by_ikev2_print()
307 ct = iv + sa->ivlen; in esp_decrypt_buffer_by_ikev2_print()
312 pt = do_decrypt(ndo, __func__, sa, iv, in esp_decrypt_buffer_by_ikev2_print()
333 const struct sa_list *sa, int sa_def) in esp_print_addsa() argument
345 *nsa = *sa; in esp_print_addsa()
411 char *decode, struct sa_list *sa) in espprint_decode_encalgo() argument
455 sa->evp = NULL; in espprint_decode_encalgo()
456 sa->authlen = 0; in espprint_decode_encalgo()
457 sa->ivlen = 0; in espprint_decode_encalgo()
461 sa->evp = evp; in espprint_decode_encalgo()
462 sa->authlen = authlen; in espprint_decode_encalgo()
464 sa->ivlen = EVP_CIPHER_iv_length(evp); in espprint_decode_encalgo()
471 sa->secretlen = espprint_decode_hex(ndo, sa->secret, sizeof(sa->secret), colon); in espprint_decode_encalgo()
472 if(sa->secretlen == 0) return 0; in espprint_decode_encalgo()
476 if (i < sizeof(sa->secret)) { in espprint_decode_encalgo()
477 memcpy(sa->secret, colon, i); in espprint_decode_encalgo()
478 sa->secretlen = i; in espprint_decode_encalgo()
480 memcpy(sa->secret, colon, sizeof(sa->secret)); in espprint_decode_encalgo()
481 sa->secretlen = sizeof(sa->secret); in espprint_decode_encalgo()
495 char *decode, struct sa_list *sa) in espprint_decode_authalgo() argument
508 sa->authlen = 12; in espprint_decode_authalgo()
742 struct sa_list *sa = NULL; in esp_print() local
790 for (sa = ndo->ndo_sa_list_head; sa != NULL; sa = sa->next) { in esp_print()
791 if (sa->spi == GET_BE_U_4(esp->esp_spi) && in esp_print()
792 sa->daddr_version == 6 && in esp_print()
793 UNALIGNED_MEMCMP(&sa->daddr.in6, &ip6->ip6_dst, in esp_print()
805 for (sa = ndo->ndo_sa_list_head; sa != NULL; sa = sa->next) { in esp_print()
806 if (sa->spi == GET_BE_U_4(esp->esp_spi) && in esp_print()
807 sa->daddr_version == 4 && in esp_print()
808 UNALIGNED_MEMCMP(&sa->daddr.in4, &ip->ip_dst, in esp_print()
821 if (sa == NULL) in esp_print()
822 sa = ndo->ndo_sa_default; in esp_print()
825 if (sa == NULL) in esp_print()
831 ivlen = sa->ivlen; in esp_print()
848 if (ep - ct < sa->authlen) { in esp_print()
852 ep = ep - sa->authlen; in esp_print()
861 if (sa->evp == NULL) in esp_print()
876 pt = do_decrypt(ndo, __func__, sa, iv, ct, payloadlen); in esp_print()