Lines Matching refs:sigpkt
668 read_signature_mpis(pgpv_sigpkt_t *sigpkt, uint8_t *p, size_t pktlen) in read_signature_mpis() argument
673 switch(sigpkt->sig.keyalg) { in read_signature_mpis()
677 if (!get_mpi(&sigpkt->sig.bn[RSA_SIG], p, pktlen, &off)) { in read_signature_mpis()
678 printf("sigpkt->version %d, rsa sig weird\n", sigpkt->sig.version); in read_signature_mpis()
685 if (!get_mpi(&sigpkt->sig.bn[DSA_R], p, pktlen, &off) || in read_signature_mpis()
686 !get_mpi(&sigpkt->sig.bn[DSA_S], &p[off], pktlen, &off)) { in read_signature_mpis()
687 printf("sigpkt->version %d, dsa/elgamal sig weird\n", sigpkt->sig.version); in read_signature_mpis()
692 printf("weird type of sig! %d\n", sigpkt->sig.keyalg); in read_signature_mpis()
700 add_subpacket(pgpv_sigpkt_t *sigpkt, uint8_t tag, uint8_t *p, uint16_t len) in add_subpacket() argument
709 ARRAY_APPEND(sigpkt->subpkts, subpkt); in add_subpacket()
715 read_sig_subpackets(pgpv_sigpkt_t *sigpkt, uint8_t *p, size_t pktlen) in read_sig_subpackets() argument
724 for (i = 0 ; (unsigned)(p - start) < sigpkt->subslen ; i++) { in read_sig_subpackets()
738 sigpkt->sig.birth = (int64_t)get_32(p); in read_sig_subpackets()
741 sigpkt->sig.expiry = (int64_t)get_32(p); in read_sig_subpackets()
744 sigpkt->sig.keyexpiry = (int64_t)get_32(p); in read_sig_subpackets()
747 sigpkt->sig.signer = p; in read_sig_subpackets()
750 sigpkt->sig.signer = p; in read_sig_subpackets()
753 sigpkt->sig.trustsig = *p; in read_sig_subpackets()
756 sigpkt->sig.regexp = (char *)(void *)p; in read_sig_subpackets()
759 sigpkt->sig.revocable = *p; in read_sig_subpackets()
762 sigpkt->sig.pref_symm_alg = *p; in read_sig_subpackets()
765 sigpkt->sig.revoke_sensitive = (*p & 0x40); in read_sig_subpackets()
766 sigpkt->sig.revoke_alg = p[1]; in read_sig_subpackets()
767 sigpkt->sig.revoke_fingerprint = &p[2]; in read_sig_subpackets()
770 sigpkt->sig.notation = *p; in read_sig_subpackets()
773 sigpkt->sig.pref_hash_alg = *p; in read_sig_subpackets()
776 sigpkt->sig.pref_compress_alg = *p; in read_sig_subpackets()
779 sigpkt->sig.pref_key_server = (char *)(void *)p; in read_sig_subpackets()
782 sigpkt->sig.key_server_modify = *p; in read_sig_subpackets()
785 sigpkt->sig.type_key = *p; in read_sig_subpackets()
788 sigpkt->sig.primary_userid = *p; in read_sig_subpackets()
791 sigpkt->sig.policy = (char *)(void *)p; in read_sig_subpackets()
794 sigpkt->sig.features = (char *)(void *)p; in read_sig_subpackets()
797 sigpkt->sig.revoked = *p++ + 1; in read_sig_subpackets()
798 sigpkt->sig.why_revoked = (char *)(void *)p; in read_sig_subpackets()
806 ARRAY_APPEND(sigpkt->subpkts, subpkt); in read_sig_subpackets()
813 read_sigpkt(pgpv_t *pgp, uint8_t mement, pgpv_sigpkt_t *sigpkt, uint8_t *p, size_t pktlen) in read_sigpkt() argument
818 make_ref(pgp, mement, &sigpkt->sig.hashstart); in read_sigpkt()
820 switch(sigpkt->sig.version = *p++) { in read_sigpkt()
827 sigpkt->sig.hashlen = lenlen; in read_sigpkt()
829 sigpkt->sig.type = *p++; in read_sigpkt()
830 add_subpacket(sigpkt, SUBPKT_SIG_BIRTH, p, sizeof(uint32_t)); in read_sigpkt()
831 sigpkt->sig.birth = (int64_t)get_32(p); in read_sigpkt()
833 sigpkt->sig.signer = p; in read_sigpkt()
834 add_subpacket(sigpkt, SUBPKT_SIGNER_ID, p, PGPV_KEYID_LEN); in read_sigpkt()
836 sigpkt->sig.keyalg = *p++; in read_sigpkt()
837 sigpkt->sig.hashalg = *p++; in read_sigpkt()
838 sigpkt->sig.hash2 = p; in read_sigpkt()
839 if (!read_signature_mpis(sigpkt, sigpkt->sig.mpi = p + 2, pktlen)) { in read_sigpkt()
845 sigpkt->sig.type = *p++; in read_sigpkt()
846 sigpkt->sig.keyalg = *p++; in read_sigpkt()
847 sigpkt->sig.hashalg = *p++; in read_sigpkt()
848 sigpkt->subslen = get_16(p); in read_sigpkt()
849 p += sizeof(sigpkt->subslen); in read_sigpkt()
850 if (!read_sig_subpackets(sigpkt, p, pktlen)) { in read_sigpkt()
854 if (!sigpkt->sig.signer) { in read_sigpkt()
855 sigpkt->sig.signer = get_ref(&sigpkt->sig.hashstart) + 16; in read_sigpkt()
857 p += sigpkt->subslen; in read_sigpkt()
858 sigpkt->sig.hashlen = (unsigned)(p - base); in read_sigpkt()
859 sigpkt->unhashlen = get_16(p); in read_sigpkt()
860 p += sizeof(sigpkt->unhashlen) + sigpkt->unhashlen; in read_sigpkt()
861 sigpkt->sig.hash2 = p; in read_sigpkt()
862 if (!read_signature_mpis(sigpkt, sigpkt->sig.mpi = p + 2, pktlen)) { in read_sigpkt()
868 printf("read_sigpkt: unusual signature version (%u)\n", sigpkt->sig.version); in read_sigpkt()
1132 if (!read_sigpkt(pgp, pkt.mement, &pkt.u.sigpkt, pkt.s.data, pkt.s.size)) { in read_pkt()
1187 return (ARRAY_ELEMENT(pgp->pkts, pgp->pkt).u.sigpkt.sig.type == wanted); in pkt_sigtype_is()
1212 memcpy(signature, &ARRAY_ELEMENT(pgp->pkts, pgp->pkt).u.sigpkt.sig, sizeof(*signature)); in recog_signature()
1784 pgpv_sigpkt_t *sigpkt; in read_ascii_armor() local
1829 sigpkt = &ARRAY_LAST(cursor->pgp->pkts).u.sigpkt; in read_ascii_armor()
1830 memcpy(onepass->keyid, sigpkt->sig.signer, sizeof(onepass->keyid)); in read_ascii_armor()
1831 onepass->hashalg = sigpkt->sig.hashalg; in read_ascii_armor()
1832 onepass->keyalg = sigpkt->sig.keyalg; in read_ascii_armor()
2093 pgpv_pkt_t sigpkt; in fixup_detached() local
2106 sigpkt = ARRAY_ELEMENT(cursor->pgp->pkts, el); in fixup_detached()
2128 ARRAY_APPEND(cursor->pgp->pkts, sigpkt); in fixup_detached()
2129 memcpy(onepass->keyid, sigpkt.u.sigpkt.sig.signer, sizeof(onepass->keyid)); in fixup_detached()
2130 onepass->hashalg = sigpkt.u.sigpkt.sig.hashalg; in fixup_detached()
2131 onepass->keyalg = sigpkt.u.sigpkt.sig.keyalg; in fixup_detached()
2294 signature = &ARRAY_ELEMENT(cursor->pgp->pkts, pkt + 2).u.sigpkt.sig; in pgpv_verify()