]> git.proxmox.com Git - libgit2.git/commitdiff
http: check certificate validity before clobbering the error variable
authorEtienne Samson <samson.etienne@gmail.com>
Wed, 21 Dec 2016 20:24:33 +0000 (21:24 +0100)
committerEdward Thomson <ethomson@github.com>
Fri, 6 Jan 2017 17:09:39 +0000 (17:09 +0000)
src/transports/http.c

index ad28c5889c7b6d8ad068528d60b1d0c9a53a3d2f..155fd7b30b5f980a5b0b5194acbfdbe1089d83f6 100644 (file)
@@ -624,13 +624,12 @@ static int http_connect(http_subtransport *t)
        if ((!error || error == GIT_ECERTIFICATE) && t->owner->certificate_check_cb != NULL &&
            git_stream_is_encrypted(t->io)) {
                git_cert *cert;
-               int is_valid;
+               int is_valid = (error == GIT_OK);
 
                if ((error = git_stream_certificate(&cert, t->io)) < 0)
                        return error;
 
                giterr_clear();
-               is_valid = error != GIT_ECERTIFICATE;
                error = t->owner->certificate_check_cb(cert, is_valid, t->connection_data.host, t->owner->message_cb_payload);
 
                if (error < 0) {