1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3exports.verifyExtensions = exports.verifySubjectAlternativeName = void 0;
4const error_1 = require("./error");
5function verifySubjectAlternativeName(policyIdentity, signerIdentity) {
6    if (signerIdentity === undefined || !signerIdentity.match(policyIdentity)) {
7        throw new error_1.PolicyError({
8            code: 'UNTRUSTED_SIGNER_ERROR',
9            message: `certificate identity error - expected ${policyIdentity}, got ${signerIdentity}`,
10        });
11    }
12}
13exports.verifySubjectAlternativeName = verifySubjectAlternativeName;
14function verifyExtensions(policyExtensions, signerExtensions = {}) {
15    let key;
16    for (key in policyExtensions) {
17        if (signerExtensions[key] !== policyExtensions[key]) {
18            throw new error_1.PolicyError({
19                code: 'UNTRUSTED_SIGNER_ERROR',
20                message: `invalid certificate extension - expected ${key}=${policyExtensions[key]}, got ${key}=${signerExtensions[key]}`,
21            });
22        }
23    }
24}
25exports.verifyExtensions = verifyExtensions;
26