X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=lib%2Fdigsig.c;h=6ba6fcd92dd10cd2c78898b35c65a0540b19bfb3;hb=27ab2a240a797b073ce63385b1d5db06e44fc3ae;hp=03d7c63837aecb36f74037212e9e7dd421e2e4c9;hpb=9c35baf6cee9a5745d55de6f9995916dde642517;p=mirror_ubuntu-artful-kernel.git diff --git a/lib/digsig.c b/lib/digsig.c index 03d7c63837ae..6ba6fcd92dd1 100644 --- a/lib/digsig.c +++ b/lib/digsig.c @@ -87,6 +87,12 @@ static int digsig_verify_rsa(struct key *key, down_read(&key->sem); ukp = user_key_payload_locked(key); + if (!ukp) { + /* key was revoked before we acquired its semaphore */ + err = -EKEYREVOKED; + goto err1; + } + if (ukp->datalen < sizeof(*pkh)) goto err1;