From: Michael R Sweet Date: Tue, 24 Apr 2018 22:22:41 +0000 (-0400) Subject: Fix GNU TLS httpCertString changes. X-Git-Tag: v2.3b5~23 X-Git-Url: http://git.ipfire.org/?p=thirdparty%2Fcups.git;a=commitdiff_plain;h=ff82ce17bf30d8e26022520afb69e45745e48180 Fix GNU TLS httpCertString changes. --- diff --git a/cups/tls-gnutls.c b/cups/tls-gnutls.c index e692f71ef..976e8a5e2 100644 --- a/cups/tls-gnutls.c +++ b/cups/tls-gnutls.c @@ -4,7 +4,8 @@ * Copyright © 2007-2018 by Apple Inc. * Copyright © 1997-2007 by Easy Software Products, all rights reserved. * - * Licensed under Apache License v2.0. See the file "LICENSE" for more information. + * Licensed under Apache License v2.0. See the file "LICENSE" for more + * information. */ /**** This file is included from tls.c ****/ @@ -643,7 +644,7 @@ httpCredentialsString( issuer[256]; /* Issuer associated with cert */ size_t len; /* Length of string */ time_t expiration; /* Expiration date of cert */ - unsigned sigalg, sigbits;/* Signature algorithm and bits */ + int sigalg; /* Signature algorithm */ unsigned char md5_digest[16]; /* MD5 result */ len = sizeof(name) - 1; @@ -653,17 +654,17 @@ httpCredentialsString( strlcpy(name, "unknown", sizeof(name)); len = sizeof(issuer) - 1; - if (gnutls_x509_crt_get_issuer_dn(cert, 0, 0, issuer, &len) >= 0) + if (gnutls_x509_crt_get_issuer_dn_by_oid(cert, GNUTLS_OID_X520_ORGANIZATION_NAME, 0, 0, issuer, &len) >= 0) issuer[len] = '\0'; else strlcpy(issuer, "unknown", sizeof(issuer)); expiration = gnutls_x509_crt_get_expiration_time(cert); - sigalg = gnutls_x509_crt_get_pk_algorithm(cert, &sigbits); + sigalg = gnutls_x509_crt_get_signature_algorithm(cert); cupsHashData("md5", first->data, first->datalen, md5_digest, sizeof(md5_digest)); - snprintf(buffer, bufsize, "%s (issued by %s) / %s / %s / %02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X", name, issuer, httpGetDateString(expiration), gnutls_pk_algorithm_get_name(sigalg), md5_digest[0], md5_digest[1], md5_digest[2], md5_digest[3], md5_digest[4], md5_digest[5], md5_digest[6], md5_digest[7], md5_digest[8], md5_digest[9], md5_digest[10], md5_digest[11], md5_digest[12], md5_digest[13], md5_digest[14], md5_digest[15]); + snprintf(buffer, bufsize, "%s (issued by %s) / %s / %s / %02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X", name, issuer, httpGetDateString(expiration), gnutls_sign_get_name(sigalg), md5_digest[0], md5_digest[1], md5_digest[2], md5_digest[3], md5_digest[4], md5_digest[5], md5_digest[6], md5_digest[7], md5_digest[8], md5_digest[9], md5_digest[10], md5_digest[11], md5_digest[12], md5_digest[13], md5_digest[14], md5_digest[15]); gnutls_x509_crt_deinit(cert); }