On 16/08/11 04:00, James Morris wrote:
> On Thu, 11 Aug 2011, Dmitry Kasatkin wrote:
>
>> +static int ksign_verify_rsa(struct key *key,
>> +                const char *sig, int siglen,
>> +                   const char *h, int hlen)
>> +{
>> +    int err = -ENOMEM;
>> +    unsigned long len;
>> +    unsigned long mlen, mblen;
>> +    unsigned nret, l;
>> +    int valid, head, i;
>> +    unsigned char *out1 = NULL, *out2 = NULL;
>> +    MPI in = NULL, res = NULL, pkey[2];
>> +    uint8_t *p, *datap, *endp;
>> +    struct user_key_payload *ukp;
>> +    struct pubkey_hdr *pkh;
>> +
>> +    down_read(&key->sem);
>> +    ukp = key->payload.data;
>> +    pkh = (struct pubkey_hdr *)ukp->data;
>> +
>> +    if (pkh->version != 1)
>> +            return -EINVAL;
>> +
>> +    if (pkh->algo != PUBKEY_ALGO_RSA)
>> +            return -EINVAL;
> Are you supposed to be still holding key->sem here?
>
Of course not.
that was late addition. Should be goto as in following cases...

- Dmitry

--
To unsubscribe from this list: send the line "unsubscribe linux-crypto" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to