OSDN Git Service

If pk is NULL, the backend would segfault when accessing ->algo and the
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>
Wed, 20 Oct 2010 19:20:33 +0000 (22:20 +0300)
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>
Wed, 20 Oct 2010 19:24:43 +0000 (22:24 +0300)
following NULL check was never reached.

This problem was found by Coccinelle (null_ref.cocci from coccicheck).

Marti Raudsepp

contrib/pgcrypto/pgp-pubenc.c

index 0e9ebb4..9b44fbf 100644 (file)
@@ -199,7 +199,7 @@ pgp_write_pubenc_sesskey(PGP_Context *ctx, PushFilter *dst)
        PGP_PubKey *pk = ctx->pub_key;
        uint8           ver = 3;
        PushFilter *pkt = NULL;
-       uint8           algo = pk->algo;
+       uint8           algo;
 
        if (pk == NULL)
        {
@@ -207,6 +207,8 @@ pgp_write_pubenc_sesskey(PGP_Context *ctx, PushFilter *dst)
                return PXE_BUG;
        }
 
+       algo = pk->algo;
+
        /*
         * now write packet
         */