ZTLS_CHAIN_CERT 308202953082017da00302010202141122334455667788990000998877665544332211300d06092a864886f70d01010b050030573131302f06035504030c2841747461636b6572204341202d20476c6f62616c20496e73656375726974792050726f7669646572310b300906035504061302444531153013060355040a0c0c544c532d41747461636b6572301e170d3236303130313030303030305a170d3238303130313030303030305a30323119301706035504030c10746c732d61747461636b65722e636f6d31153013060355040a0c0c544c532d41747461636b657230819f300d06092a864886f70d010101050003818d0030818902818100d7169ef864f41347e8af4886d7696a378a116baaf523e7c24d042ef3a0fef406f34a1547d2c2cd43dd6c431125de8066b56e7eebb5d7ee340c5cd0aa38fd7cbb22a52153b260c6a0219a3bc22d95209bb26a428306f9819dd0b824289b36a079f02e774fff17051086340bc52c49ad139f6cf55e7232d605222eec39a5178b6f0203010001a3023000300d06092a864886f70d01010b050003820101000fd33b8c203ad179d652aeaf84fc5bdc3c77f4f2ba64d11b93536f10b8654454e8e4253ecef7d9bc8f36be075b2e62cd7dd8c7d1b2c545b34b160570cbc36dc85b9b8ae7ca985db2a02cc8e88ee789c9e0cb9da53df1b5bbf320a0fff3180deeba7c09f7c961726105d7ab36a260d140d7d37e6f666a907a85a7f51fd25b16e7d3b7bfe12a4b853c3756052335a8462e7eb66496239ed7cbfdcc6ebc609117b4d957ac9f09843cc2a7f6f5e05130876ab5f88a4500b348f20875380210c4e117a84e914614062dbc763021db93c05183704cfe9d358b7c97b016b4cd205daa523f1636e07087411b3a0e65e5192ad861555fa56fd69844659350aa04fbf1741f
ZTLS_CHAIN_CERT 3082033e30820226a00302010202141122334455667788990000998877665544332211300d06092a864886f70d01010b050030573131302f06035504030c2841747461636b6572204341202d20476c6f62616c20496e73656375726974792050726f7669646572310b300906035504061302444531153013060355040a0c0c544c532d41747461636b6572301e170d3236303130313030303030305a170d3238303130313030303030305a30573131302f06035504030c2841747461636b6572204341202d20476c6f62616c20496e73656375726974792050726f7669646572310b300906035504061302444531153013060355040a0c0c544c532d41747461636b657230820122300d06092a864886f70d01010105000382010f003082010a0282010100c8820d6c3ce84c8430f6835abfc7d7a912e1664f44578751f376501a8c68476c3072d919c5d39bd0dbe080e71db83bd4ab2f2f9bde3dffb0080f510a5f6929c196551f2b3c369be051054c877573195558fd282035934dc86edab8d4b1b7f555e5b2fee7275384a756ef86cb86793b5d1333f0973203cb96966766e655cd2cccae1940e4494b8e9fb5279593b75afd0b378243e51a88f6eb88def522a8cd5c6c082286a04269a2879760fcba45005d7f2672dd228809d47274f0fe0ea5531c2bd95366c05bf69edc0f3c3189866edca0c57adcca93250ae78d9eaca0393a95ff9952fc47fb7679dd3803e6a7a6fa771861e3d99e4b551a4084668b111b7eef7d0203010001a3023000300d06092a864886f70d01010b05000382010100bbd3db060d29964d9dbff43776b4c507b2554c7c88fe0059d2f68a2123ced16f9d24c5638ec001c0453b9dd298cdd83175d449fb69db239d5c06e10010848e1c08376a9e296bb8e7cc3041bb95fe581f446b472cd35ffed89710a5f7c42b09b17d07bd36a79b967f4a201c0dd6bc6df1bfed40a12c6a4a876bf3810c83078d9776a9e992c19ebaa92b51c3ce7756bd696de866b60b05942620ebef2fa40c8ea1dd8d12877ce31dcaeacb28c9d9f408daa168856f7c140f539471c6d1e2765f340b9ae25fc99af498b3c28afd0a9bad800232214ecf60e0934af80aab9f606a8c8ea65ecca36a59bf362daf115c674fe6d62426b84340c4bfa81d96bf7a08679b
error: CertificateIssuerNotCa
/Users/matt/code/worktrees/ztls/pi-worktree-f70a0434-2b8f-4cde-b3ab-68a98c36ca48-s0-0/src/certificate_policy.zig:148:24: 0x115d967 in verifyIssuerUsage (anvil_client)
    if (!issuer.is_ca) return error.CertificateIssuerNotCa;
                       ^
/Users/matt/code/worktrees/ztls/pi-worktree-f70a0434-2b8f-4cde-b3ab-68a98c36ca48-s0-0/src/certificate.zig:328:13: 0x1157d8b in parse (anvil_client)
            try certificate_policy.verifyIssuerUsage(parsed);
            ^
/Users/matt/code/worktrees/ztls/pi-worktree-f70a0434-2b8f-4cde-b3ab-68a98c36ca48-s0-0/src/ClientHandshake.zig:1432:16: 0x1152b53 in processServerCertificate (anvil_client)
    const pk = try certificate.parse(msg.raw, policy);
               ^
/Users/matt/code/worktrees/ztls/pi-worktree-f70a0434-2b8f-4cde-b3ab-68a98c36ca48-s0-0/src/ClientHandshake.zig:1522:29: 0x11472ab in processFlightMessage (anvil_client)
            .certificate => try self.processServerCertificate(msg, policy),
                            ^
/Users/matt/code/worktrees/ztls/pi-worktree-f70a0434-2b8f-4cde-b3ab-68a98c36ca48-s0-0/src/ClientHandshake.zig:1394:9: 0x1134773 in processFlightBytes (anvil_client)
        try self.processFlightMessage(msg, policy);
        ^
/Users/matt/code/worktrees/ztls/pi-worktree-f70a0434-2b8f-4cde-b3ab-68a98c36ca48-s0-0/src/ClientHandshake.zig:1377:5: 0x1124af3 in processFlight (anvil_client)
    return self.processFlightBytes(payload, policy);
    ^
/Users/matt/code/worktrees/ztls/pi-worktree-f70a0434-2b8f-4cde-b3ab-68a98c36ca48-s0-0/src/ClientHandshake.zig:1094:21: 0x111ab17 in processHandshakeRecord (anvil_client)
                    try self.processFlight(dec.content, self.policy);
                    ^
/Users/matt/code/worktrees/ztls/pi-worktree-f70a0434-2b8f-4cde-b3ab-68a98c36ca48-s0-0/src/ClientHandshake.zig:937:14: 0x11142a3 in handleRecord (anvil_client)
    else if (try self.processHandshakeRecord(record, out)) |bytes|
             ^
/Users/matt/code/worktrees/ztls/pi-worktree-f70a0434-2b8f-4cde-b3ab-68a98c36ca48-s0-0/conformance/src/anvil_client.zig:157:5: 0x111405f in sendAlertAndReturnError (anvil_client)
    return err;
    ^
/Users/matt/code/worktrees/ztls/pi-worktree-f70a0434-2b8f-4cde-b3ab-68a98c36ca48-s0-0/conformance/src/anvil_client.zig:78:17: 0x1111963 in main (anvil_client)
                return sendAlertAndReturnError(stream, &hs, err, &out);
                ^
