| 571 | return onepass |
| 572 | |
| 573 | def parse(self, packet): |
| 574 | unarmored = self.ascii_unarmor(packet) |
| 575 | data = unarmored['body'] |
| 576 | |
| 577 | if unarmored['magic'] is not None and unarmored['magic'] != 'SIGNATURE': |
| 578 | raise ValueError('Expected: SIGNATURE. Got: {}'.format(str(unarmored['magic']))) |
| 579 | |
| 580 | if unarmored['headers'] is not None: |
| 581 | self.ascii_headers = unarmored['headers'] |
| 582 | |
| 583 | # load *one* packet from data |
| 584 | pkt = Packet(data) |
| 585 | if pkt.header.tag == PacketTag.Signature: |
| 586 | if isinstance(pkt, Opaque): |
| 587 | # this is an unrecognized version. |
| 588 | pass |
| 589 | else: |
| 590 | self._signature = pkt |
| 591 | else: |
| 592 | raise ValueError('Expected: Signature. Got: {:s}'.format(pkt.__class__.__name__)) |
| 593 | |
| 594 | |
| 595 | class PGPUID(ParentRef): |