]> git.ipfire.org Git - thirdparty/knot-dns.git/commitdiff
Replace DNSSEC_PKCS8_IMPORT_ERROR and DNSSEC_KEY_IMPORT_ERROR with KNOT_KEY_EIMPORT
authorDaniel Salzman <daniel.salzman@nic.cz>
Tue, 21 Oct 2025 08:11:14 +0000 (10:11 +0200)
committerLibor Peltan <libor.peltan@nic.cz>
Fri, 24 Oct 2025 07:17:08 +0000 (09:17 +0200)
src/libknot/dnssec/error.c
src/libknot/dnssec/error.h
src/libknot/dnssec/key/convert.c
src/libknot/dnssec/key/privkey.c
src/libknot/dnssec/keystore/pkcs11.c
src/libknot/dnssec/pem.c
src/libknot/errcode.h
src/libknot/error.c
src/utils/keymgr/bind_privkey.c

index 7faa37863fd3311c2ada17a8811b1356e15b0c5e..58e33b03e505d1dec697ca3ab6d16dc15d730d49 100644 (file)
@@ -25,9 +25,9 @@ static const error_message_t ERROR_MESSAGES[] = {
        { KNOT_EMALF,   "malformed data" },
        { KNOT_ENOENT,          "not found" },
 
-       { DNSSEC_PKCS8_IMPORT_ERROR,    "PKCS #8 import error" },
+       { KNOT_KEY_EIMPORT,     "PKCS #8 import error" },
        { DNSSEC_KEY_EXPORT_ERROR,      "key export error" },
-       { DNSSEC_KEY_IMPORT_ERROR,      "key import error" },
+       { KNOT_KEY_EIMPORT,     "key import error" },
        { DNSSEC_KEY_GENERATE_ERROR,    "key generation error" },
 
        { DNSSEC_INVALID_PUBLIC_KEY,    "invalid public key" },
index 996753547c3de4014d499507d9431c141d100f38..af64eedfe5e02efee211cea3bfc8e23544b41f6b 100644 (file)
@@ -37,9 +37,9 @@ enum dnssec_error {
        KNOT_EMALF,
        KNOT_ENOENT,
 
-       DNSSEC_PKCS8_IMPORT_ERROR,
+       KNOT_KEY_EIMPORT,
        DNSSEC_KEY_EXPORT_ERROR,
-       DNSSEC_KEY_IMPORT_ERROR,
+       KNOT_KEY_EIMPORT,
        DNSSEC_KEY_GENERATE_ERROR,
 
        DNSSEC_INVALID_PUBLIC_KEY,
index 7978c3c3c06f5e1e2ccd69ba465243d52ec53c01..c728a0dae52b1ed8f641913ac578da5c4b265965 100644 (file)
@@ -210,7 +210,7 @@ static int rsa_rdata_to_pubkey(const dnssec_binary_t *rdata, gnutls_pubkey_t key
 
        int result = gnutls_pubkey_import_rsa_raw(key, &modulus, &exponent);
        if (result != GNUTLS_E_SUCCESS) {
-               return DNSSEC_KEY_IMPORT_ERROR;
+               return KNOT_KEY_EIMPORT;
        }
 
        return KNOT_EOK;
@@ -266,7 +266,7 @@ static int ecdsa_rdata_to_pubkey(const dnssec_binary_t *rdata, gnutls_pubkey_t k
 
        int result = gnutls_pubkey_import_ecc_raw(key, curve, &point_x, &point_y);
        if (result != GNUTLS_E_SUCCESS) {
-               return DNSSEC_KEY_IMPORT_ERROR;
+               return KNOT_KEY_EIMPORT;
        }
 
        return KNOT_EOK;
@@ -293,7 +293,7 @@ static int eddsa_rdata_to_pubkey(const dnssec_binary_t *rdata, gnutls_pubkey_t k
 
        int result = gnutls_pubkey_import_ecc_raw(key, curve, &point_x, NULL);
        if (result != GNUTLS_E_SUCCESS) {
-               return DNSSEC_KEY_IMPORT_ERROR;
+               return KNOT_KEY_EIMPORT;
        }
 
        return KNOT_EOK;
index a1e10553b3deb46e3e6c785c4be26ac0129ec6fe..25a1c68d5b3c758facf77d710a240f5563492808 100644 (file)
@@ -46,7 +46,7 @@ static int public_from_private(gnutls_privkey_t privkey, gnutls_pubkey_t *pubkey
        result = gnutls_pubkey_import_privkey(new_key, privkey, 0, 0);
        if (result != GNUTLS_E_SUCCESS) {
                gnutls_pubkey_deinit(new_key);
-               return DNSSEC_KEY_IMPORT_ERROR;
+               return KNOT_KEY_EIMPORT;
        }
 
        *pubkey = new_key;
index 4be9068883924c0f4199e11124ed1eaab35f538d..021320c8552f3c8412225ef798202b5325031934 100644 (file)
@@ -236,7 +236,7 @@ static int import_pem(const dnssec_binary_t *pem,
        if (gnutls_privkey_import_x509(key, x509_key, 0) != GNUTLS_E_SUCCESS ||
            gnutls_pubkey_import_privkey(pubkey, key, 0, 0) != GNUTLS_E_SUCCESS
        ) {
-               r = DNSSEC_KEY_IMPORT_ERROR;
+               r = KNOT_KEY_EIMPORT;
                goto fail;
        }
 
@@ -277,13 +277,13 @@ static int pkcs11_import_key(void *_ctx, const dnssec_binary_t *pem, char **id_p
 
        r = gnutls_pkcs11_copy_x509_privkey2(ctx->url, key, NULL, &gid, 0, flags);
        if (r != GNUTLS_E_SUCCESS) {
-               return DNSSEC_KEY_IMPORT_ERROR;
+               return KNOT_KEY_EIMPORT;
        }
 
        r = gnutls_pkcs11_copy_pubkey(ctx->url, pubkey, NULL, &gid, 0, flags);
        if (r != GNUTLS_E_SUCCESS) {
                // note, we result with dangling private key in the token
-               return DNSSEC_KEY_IMPORT_ERROR;
+               return KNOT_KEY_EIMPORT;
        }
 
        *id_ptr = bin_to_hex(id.data, id.size, false);
index 9a1b94f81c98e002d6db68f2d97182910034677b..13b6a5f0e469c009ede70d1130c62b45a8523135 100644 (file)
@@ -35,7 +35,7 @@ int dnssec_pem_to_x509(const dnssec_binary_t *pem, gnutls_x509_privkey_t *key)
        r = gnutls_x509_privkey_import_pkcs8(_key, &data, format, password, flags);
        if (r != GNUTLS_E_SUCCESS) {
                gnutls_x509_privkey_deinit(_key);
-               return DNSSEC_PKCS8_IMPORT_ERROR;
+               return KNOT_KEY_EIMPORT;
        }
 
        *key = _key;
index c0e7342822bb3afeec8cb72c2fff263f636584ce..093bb7392e03b5f2a9d8580a6579d37126296dbf 100644 (file)
@@ -175,6 +175,9 @@ enum knot_error {
        KNOT_DNSSEC_ENSEC3_OPTOUT,
        KNOT_DNSSEC_EKEYTAG_LIMIT,
        KNOT_DNSSEC_EXTRA_NSEC,
+       KNOT_KEY_EIMPORT,
+       KNOT_KEY_EEXPORT,
+       KNOT_KEY_EGENERATE,
 
        KNOT_ERROR_MAX = -501
 };
index 720b85f65836b6a9f2680935383d8de625b13fad..81525ee9cfc4ad323f13ef618d6f608f3e6ce557 100644 (file)
@@ -174,6 +174,9 @@ static const struct error errors[] = {
        { KNOT_DNSSEC_ENSEC3_OPTOUT,   "wrong NSEC3 opt-out" },
        { KNOT_DNSSEC_EKEYTAG_LIMIT,   "many keys with equal keytag" },
        { KNOT_DNSSEC_EXTRA_NSEC,      "superfluous NSEC(3)" },
+       { KNOT_KEY_EIMPORT,            "failed to import key" },
+       { KNOT_KEY_EEXPORT,            "failed to export key" },
+       { KNOT_KEY_EGENERATE,          "failed to generate key" },
 
        /* Terminator */
        { KNOT_ERROR, NULL }
index c58b8f77b43c99b2fab9c2abc167babd2a906a92..8c86cde06883fa35f2be90e071e4adee7eb782c4 100644 (file)
@@ -258,7 +258,7 @@ static int rsa_params_to_pem(const bind_privkey_t *params, dnssec_binary_t *pem)
 
        result = gnutls_x509_privkey_import_rsa_raw(key, &m, &e, &d, &p, &q, &u);
        if (result != GNUTLS_E_SUCCESS) {
-               return DNSSEC_KEY_IMPORT_ERROR;
+               return KNOT_KEY_EIMPORT;
        }
 
        return dnssec_pem_from_x509(key, pem);
@@ -313,7 +313,7 @@ static int ecdsa_params_to_pem(dnssec_key_t *dnskey, const bind_privkey_t *param
 
        result = gnutls_x509_privkey_import_ecc_raw(key, curve, &x, &y, &k);
        if (result != KNOT_EOK) {
-               return DNSSEC_KEY_IMPORT_ERROR;
+               return KNOT_KEY_EIMPORT;
        }
 
        gnutls_x509_privkey_fix(key);
@@ -350,7 +350,7 @@ static int eddsa_params_to_pem(dnssec_key_t *dnskey, const bind_privkey_t *param
 
        result = gnutls_x509_privkey_import_ecc_raw(key, curve, &x, NULL, &k);
        if (result != KNOT_EOK) {
-               return DNSSEC_KEY_IMPORT_ERROR;
+               return KNOT_KEY_EIMPORT;
        }
 
        gnutls_x509_privkey_fix(key);