Switch to edit mode.
Name(s): parse_packet_signature1: {d} = args
2: ver = d[1]
3: if (ver == 3)
4: {five, sigtype, time1, time2, time3, time4, key7, key6, key5, key4, key3, key2, key1, key0, alg, hash, hashval1, hashval0} = d[2..19]
5: hashed_data = {}
6: unhashed_data = {}
7: hashval = hashval1 * 256 + hashval0
8: else
9: {sigtype, alg, hash} = d[2..4]
10: hashed_data = d[7..d[5] * 256 + d[6] + 6]
11: d = d[length(hashed_data) + 7..$]
12: unhashed_data = d[3..d[1] * 256 + d[2] + 2]
13: d = d[length(hashed_data) + 2..$]
14: hashval = d[1] * 256 + d[2]
15: endif
16: sigtype = this.signature_types[sigtype + 1] || tostr(sigtype)
17: alg = this.public_key_algorithms[alg]
18: hash = this.hash_algorithms[hash]
19: return {ver, sigtype, alg, hash, hashed_data, unhashed_data, hashval}
20: "Last modified by manta (#7165) on Tue Feb 20 20:16:02 2001 MST."