]> git.ipfire.org Git - thirdparty/FORT-validator.git/commitdiff
Tentatively add new logging level: "clutter"
authorAlberto Leiva Popper <ydahhrk@gmail.com>
Wed, 8 Jan 2025 19:57:02 +0000 (13:57 -0600)
committerAlberto Leiva Popper <ydahhrk@gmail.com>
Wed, 8 Jan 2025 19:57:02 +0000 (13:57 -0600)
It's below "debug." Meant to hide several debugging messages that
inflate the log but haven't been useful for many years.

It's hardcoded to disabled for now, and I've half a mind to commit to
this.

14 files changed:
src/asn1/signed_data.c
src/daemon.c
src/hash.c
src/log.c
src/log.h
src/object/certificate.c
src/object/crl.c
src/object/roa.c
src/resource.c
src/rrdp.c
src/sig.c
src/types/name.c
src/types/name.h
test/mock.c

index d7637910899259e5af44807008663cd2ec27db57..8da3c72a57db6ea0fed50bb69d6aaef5b85e23a5 100644 (file)
@@ -59,7 +59,7 @@ handle_sdata_certificate(ANY_t *cert_encoded, struct rpki_certificate *ee,
        if (tmp != otmp + cert_encoded->size)
                return val_crypto_err("Signed object's 'certificate' element contains trailing garbage");
 
-       x509_name_pr_debug("Issuer", X509_get_issuer_name(ee->x509));
+       x509_name_pr_clutter("Issuer", X509_get_issuer_name(ee->x509));
 
        error = certificate_validate_chain(ee);
        if (error)
index e23f252a06d7e95397751c0d0d4e9d191c97ca8b..a75327895fc04f8b52700280936ae4d0594e7a1d 100644 (file)
@@ -70,6 +70,7 @@ daemonize(daemon_log_cb log_cb)
         * Ignore SIGHUP. SIGCHLD isn't ignored since we still do a fork to
         * execute rsync; when that's not the case then:
         *   signal(SIGCHLD, SIG_IGN);
+        * XXX unsafe on multithreaded
         */
        signal(SIGHUP, SIG_IGN);
 
index 21e5d837a9cb3680b9ef8c80335275af9258a336..1dbaae954f474340159f47d8bc26b1e1c4311989 100644 (file)
@@ -160,7 +160,7 @@ hash_validate_file(struct hash_algorithm const *algorithm, char const *path,
        size_t actual_len;
        int error;
 
-       pr_val_debug("Validating file hash: %s", path);
+       pr_clutter("Validating file hash: %s", path);
 
        if (expected_len != hash_get_size(algorithm))
                return pr_val_err("%s string has bogus size: %zu",
index 9e3f6c7fbe04a1e0fe2be5661f6cebb0a5af33f7..4b6c3f195de98b26962af94782ab930c404eea80 100644 (file)
--- a/src/log.c
+++ b/src/log.c
@@ -212,13 +212,13 @@ log_teardown(void)
 }
 
 bool
-log_val_enabled(unsigned int level)
+pr_val_enabled(unsigned int level)
 {
        return val_config.level >= level;
 }
 
 bool
-log_op_enabled(unsigned int level)
+pr_op_enabled(unsigned int level)
 {
        return op_config.level >= level;
 }
index 8fb10aa0df717b1f1b81e744d0960ab0cb378496..a4203481cdac81cacaba88085c45dd66073ea992 100644 (file)
--- a/src/log.h
+++ b/src/log.h
@@ -63,8 +63,11 @@ void log_teardown(void);
  * Check if corresponding logging is enabled. You can use these to short-circuit
  * out of heavy logging code.
  */
-bool log_val_enabled(unsigned int level);
-bool log_op_enabled(unsigned int level);
+bool pr_val_enabled(unsigned int level);
+bool pr_op_enabled(unsigned int level);
+
+#define pr_clutter_enabled() false
+#define pr_clutter(...)
 
 /* == Operation logs == */
 
@@ -81,7 +84,6 @@ int pr_op_err_st(const char *format, ...) CHECK_FORMAT(1, 2);
 /* Like pr_op_err(), except it prints libcrypto's error stack as well. */
 int op_crypto_err(const char *, ...) CHECK_FORMAT(1, 2);
 
-
 /* == Validation logs == */
 
 /* Status reports of no interest to the user. */
index 2a1b810b7b9a256fd09572f651a4fdc8b05a7076..a783eb5cd8859eacbe64d6c208aaaf384d6d3a96 100644 (file)
@@ -122,7 +122,7 @@ validate_issuer(struct rpki_certificate *cert)
        error = x509_name_decode(issuer, "issuer", &name);
        if (error)
                return error;
-       pr_val_debug("Issuer: %s", x509_name_commonName(name));
+       pr_clutter("Issuer: %s", x509_name_commonName(name));
        x509_name_put(name);
 
        return 0;
@@ -181,7 +181,7 @@ validate_subject(X509 *cert)
        error = x509_name_decode(X509_get_subject_name(cert), "subject", &name);
        if (error)
                return error;
-       pr_val_debug("Subject: %s", x509_name_commonName(name));
+       pr_clutter("Subject: %s", x509_name_commonName(name));
 
        x509_name_put(name);
        return error;
@@ -890,14 +890,14 @@ build_crl_stack(struct rpki_certificate *cert)
 }
 
 static void
-pr_debug_x509_dates(X509 *x509)
+pr_clutter_x509_dates(X509 *x509)
 {
        char *nb, *na;
 
        nb = asn1time2str(X509_get0_notBefore(x509));
        na = asn1time2str(X509_get0_notAfter(x509));
 
-       pr_val_debug("Valid range: [%s, %s]", nb, na);
+       pr_clutter("Valid range: [%s, %s]", nb, na);
 
        free(nb);
        free(na);
@@ -978,8 +978,8 @@ certificate_validate_chain(struct rpki_certificate *cert)
        }
        X509_STORE_CTX_set0_crls(ctx, crls);
 
-       if (log_val_enabled(LOG_DEBUG))
-               pr_debug_x509_dates(cert->x509);
+       if (pr_clutter_enabled())
+               pr_clutter_x509_dates(cert->x509);
 
        /*
         * HERE'S THE MEAT OF LIBCRYPTO'S VALIDATION.
@@ -1191,7 +1191,7 @@ handle_rpkiManifest(char *uri, void *arg)
 {
        struct sia_uris *uris = arg;
 
-       pr_val_debug("rpkiManifest: %s", uri);
+       pr_clutter("rpkiManifest: %s", uri);
 
        if (uris->rpkiManifest != NULL) {
                pr_val_warn("Ignoring additional rpkiManifest: %s", uri);
@@ -1206,7 +1206,7 @@ handle_caRepository(char *uri, void *arg)
 {
        struct sia_uris *uris = arg;
 
-       pr_val_debug("caRepository: %s", uri);
+       pr_clutter("caRepository: %s", uri);
 
        if (uris->caRepository != NULL) {
                pr_val_warn("Ignoring additional caRepository: %s", uri);
@@ -1221,7 +1221,7 @@ handle_rpkiNotify(char *uri, void *arg)
 {
        struct sia_uris *uris = arg;
 
-       pr_val_debug("rpkiNotify: %s", uri);
+       pr_clutter("rpkiNotify: %s", uri);
 
        if (uris->rpkiNotify != NULL) {
                pr_val_warn("Ignoring additional rpkiNotify: %s", uri);
@@ -1235,7 +1235,7 @@ static void
 handle_signedObject(char *uri, void *arg)
 {
        struct sia_uris *sias = arg;
-       pr_val_debug("signedObject: %s", uri);
+       pr_clutter("signedObject: %s", uri);
        sias->signedObject = uri;
 }
 
@@ -1860,13 +1860,13 @@ certificate_validate(struct rpki_certificate *cert)
 
        switch (cert->type) {
        case CERTYPE_TA:
-               pr_val_debug("Type: TA");
+               pr_clutter("Type: TA");
                break;
        case CERTYPE_CA:
-               pr_val_debug("Type: CA");
+               pr_clutter("Type: CA");
                break;
        case CERTYPE_BGPSEC:
-               pr_val_debug("Type: BGPsec EE. Ignoring...");
+               pr_clutter("Type: BGPsec EE. Ignoring...");
 //             error = handle_bgpsec(cert, x509stack_peek_resources(
 //                 validation_certstack(state)), rpp_parent);
                goto end;
index dd12bdadf0751e641006f939579bd2639213e912..98e49f3bf72929456b42b50e4f0b434d1a2d1e80 100644 (file)
@@ -40,7 +40,7 @@ end:
 }
 
 static void
-debug_revoked(ASN1_INTEGER const *serial_int)
+pr_clutter_revoked(ASN1_INTEGER const *serial_int)
 {
        BIGNUM *serial_bn;
        char *serial_str;
@@ -57,7 +57,7 @@ debug_revoked(ASN1_INTEGER const *serial_int)
                goto end;
        }
 
-       pr_val_debug("Revoked: %s", serial_str);
+       pr_clutter("Revoked: %s", serial_str);
 
        free(serial_str);
 end:   BN_free(serial_bn);
@@ -84,8 +84,8 @@ validate_revoked(X509_CRL *crl)
                            i + 1);
                }
 
-               if (log_val_enabled(LOG_DEBUG))
-                       debug_revoked(serial_int);
+               if (pr_clutter_enabled())
+                       pr_clutter_revoked(serial_int);
 
                if (X509_REVOKED_get0_revocationDate(revoked) == NULL) {
                        return pr_val_err("CRL's revoked entry #%d lacks a revocation date.",
index 5b2c487a40ac3917ef8c2ee48aa62bc91e90ac6b..e2ea6dbf3d41b2fe6bce388b00d62a0b2046720f 100644 (file)
@@ -31,7 +31,7 @@ ____handle_roa_v4(struct resources *parent, unsigned long asn,
        if (error)
                return error;
 
-       pr_val_debug("address: %s/%u", addr2str4(&pfx.addr, buf), pfx.len);
+       pr_clutter("address: %s/%u", addr2str4(&pfx.addr, buf), pfx.len);
 
        if (roa_addr->maxLength != NULL) {
                error = asn_INTEGER2ulong(roa_addr->maxLength, &maxlen);
@@ -42,7 +42,7 @@ ____handle_roa_v4(struct resources *parent, unsigned long asn,
                        }
                        return pr_val_err("The ROA's IPv4 maxLength isn't a valid unsigned long");
                }
-               pr_val_debug("maxLength: %lu", maxlen);
+               pr_clutter("maxLength: %lu", maxlen);
 
                if (maxlen > 32) {
                        return pr_val_err("maxLength (%lu) is out of bounds (0-32).",
@@ -79,7 +79,7 @@ ____handle_roa_v6(struct resources *parent, unsigned long asn,
        if (error)
                return error;
 
-       pr_val_debug("address: %s/%u", addr2str6(&pfx.addr, buf), pfx.len);
+       pr_clutter("address: %s/%u", addr2str6(&pfx.addr, buf), pfx.len);
 
        if (roa_addr->maxLength != NULL) {
                error = asn_INTEGER2ulong(roa_addr->maxLength, &maxlen);
@@ -90,7 +90,7 @@ ____handle_roa_v6(struct resources *parent, unsigned long asn,
                        }
                        return pr_val_err("The ROA's IPv6 maxLength isn't a valid unsigned long");
                }
-               pr_val_debug("maxLength: %lu", maxlen);
+               pr_clutter("maxLength: %lu", maxlen);
 
                if (maxlen > 128) {
                        return pr_val_err("maxLength (%lu) is out of bounds (0-128).",
index 980ae8fc38504fdc84de9e20490f1e8ea7605822..fec61c08b997b6fcebbea65be700adab8d63e544 100644 (file)
@@ -94,7 +94,7 @@ inherit_aors(struct resources *resources, struct resources *parent, int family)
                resources->ip4s = parent->ip4s;
                if (resources->ip4s != NULL)
                        res4_get(resources->ip4s);
-               pr_val_debug("<Inherit IPv4>");
+               pr_clutter("<Inherit IPv4>");
                return 0;
 
        case AF_INET6:
@@ -103,7 +103,7 @@ inherit_aors(struct resources *resources, struct resources *parent, int family)
                resources->ip6s = parent->ip6s;
                if (resources->ip6s != NULL)
                        res6_get(resources->ip6s);
-               pr_val_debug("<Inherit IPv6>");
+               pr_clutter("<Inherit IPv6>");
                return 0;
        }
 
@@ -148,7 +148,7 @@ add_prefix4(struct resources *resources, struct resources *parent,
                return error;
        }
 
-       pr_val_debug("Prefix: %s/%u", addr2str4(&prefix.addr, buf), prefix.len);
+       pr_clutter("Prefix: %s/%u", addr2str4(&prefix.addr, buf), prefix.len);
        return 0;
 }
 
@@ -189,7 +189,7 @@ add_prefix6(struct resources *resources, struct resources *parent,
                return error;
        }
 
-       pr_val_debug("Prefix: %s/%u", addr2str6(&prefix.addr, buf), prefix.len);
+       pr_clutter("Prefix: %s/%u", addr2str6(&prefix.addr, buf), prefix.len);
        return 0;
 }
 
@@ -249,7 +249,7 @@ add_range4(struct resources *resources, struct resources *parent,
                return error;
        }
 
-       pr_val_debug("Range: %s-%s",
+       pr_clutter("Range: %s-%s",
            addr2str4(&range.min, buf1),
            addr2str4(&range.max, buf2));
        return 0;
@@ -296,7 +296,7 @@ add_range6(struct resources *resources, struct resources *parent,
                return error;
        }
 
-       pr_val_debug("Range: %s-%s",
+       pr_clutter("Range: %s-%s",
            addr2str6(&range.min, buf1),
            addr2str6(&range.max, buf2));
        return 0;
@@ -392,7 +392,7 @@ inherit_asiors(struct resources *resources, struct resources *parent)
        resources->asns = parent->asns;
        if (resources->asns != NULL)
                rasn_get(resources->asns);
-       pr_val_debug("<Inherit ASN>");
+       pr_clutter("<Inherit ASN>");
        return 0;
 }
 
@@ -454,9 +454,9 @@ add_asn(struct resources *resources, struct asn_range const *asns,
        }
 
        if (asns->min == asns->max)
-               pr_val_debug("ASN: %u", asns->min);
+               pr_clutter("ASN: %u", asns->min);
        else
-               pr_val_debug("ASN: %u-%u", asns->min, asns->max);
+               pr_clutter("ASN: %u-%u", asns->min, asns->max);
        return 0;
 }
 
index cd8aa7db8355eabe9918fd29d4f67f590445f419..d5588ca2596795aae38e94921981e52cf71a4702 100644 (file)
@@ -532,7 +532,7 @@ handle_publish(xmlTextReaderPtr reader, struct parser_args *args)
        if (error)
                goto end;
 
-       pr_val_debug("Publish %s", logv_filename(tag.meta.uri));
+       pr_clutter("Publish %s", logv_filename(tag.meta.uri));
 
        len = strlen(tag.meta.uri);
        file = state_find_file(args->state, tag.meta.uri, len);
@@ -607,7 +607,7 @@ handle_withdraw(xmlTextReaderPtr reader, struct parser_args *args)
        if (error)
                goto end;
 
-       pr_val_debug("Withdraw %s", logv_filename(tag.meta.uri));
+       pr_clutter("Withdraw %s", logv_filename(tag.meta.uri));
 
        len = strlen(tag.meta.uri);
        file = state_find_file(args->state, tag.meta.uri, len);
index 9df78b18121d5147a652d564870ec962b29383e3..cd59b028e6410588f32448eb2aed0a5ebf41e4a5 100644 (file)
--- a/src/sig.c
+++ b/src/sig.c
@@ -59,6 +59,7 @@ do_cleanup(int signum)
        output_atexit();
 
        /* Trigger default handler */
+       /* XXX unsafe on multithreaded */
        signal(signum, SIG_DFL);
        kill(getpid(), signum);
 }
index 556b553bcb5b7c5ad6f6c3874789f807a682c37b..7aa3aca3a33eb2dd11f56a32ab3e6ad8c1d8f11b 100644 (file)
@@ -160,7 +160,7 @@ validate_issuer_name(X509_NAME *issuer, X509 *parent)
        error = x509_name_decode(issuer, "issuer", &child_issuer);
        if (error)
                goto end;
-       pr_val_debug("Issuer: %s", child_issuer->commonName);
+       pr_clutter("Issuer: %s", child_issuer->commonName);
 
        if (!x509_name_equals(parent_subject, child_issuer)) {
                char const *parent_serial;
@@ -184,21 +184,21 @@ end:      x509_name_put(parent_subject);
 }
 
 void
-x509_name_pr_debug(const char *prefix, X509_NAME *name)
+x509_name_pr_clutter(const char *prefix, X509_NAME *name)
 {
-       if (!log_val_enabled(LOG_DEBUG))
+       if (!pr_clutter_enabled())
                return;
 
        struct rfc5280_name *printable;
 
        if (name == NULL) {
-               pr_val_debug("%s: (null)", prefix);
+               pr_clutter("%s: (null)", prefix);
                return;
        }
 
        if (x509_name_decode(name, prefix, &printable) != 0)
                return; /* Error message already printed */
 
-       pr_val_debug("%s: %s", prefix, printable->commonName);
+       pr_clutter("%s: %s", prefix, printable->commonName);
        x509_name_put(printable);
 }
index ca2d84d0d3cad0d1d1b5c170c96997412d9e8cfc..0ab7d642ead591d7baec727f720a84e643a3621e 100644 (file)
@@ -22,6 +22,6 @@ bool x509_name_equals(struct rfc5280_name *, struct rfc5280_name *);
 /* X509_NAME utils */
 int validate_issuer_name(X509_NAME *, X509 *);
 
-void x509_name_pr_debug(char const *, X509_NAME *);
+void x509_name_pr_clutter(char const *, X509_NAME *);
 
 #endif /* SRC_TYPES_NAME_H_ */
index 9ea4d2cc5c283539581ba57a8ef1b36ceb02be53..744b1400758d0844f9d0952e2f41d1544f586995 100644 (file)
@@ -9,9 +9,6 @@
 
 /* Some core functions, as linked from unit tests. */
 
-MOCK_TRUE(log_val_enabled, unsigned int l)
-MOCK_TRUE(log_op_enabled, unsigned int l)
-
 /* CFLAGS=-DPRINT_PRS make check */
 #ifdef PRINT_PRS
 #define MOCK_PRINT(color)                                              \