lkml.org 
[lkml]   [2016]   [Mar]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH] crypto: cleaning and refactoring in rsa.c
    Date
    * Removed several unused initializations of variables.
    * Inlined couple of functions.
    * rsa_check_key_length: changed to use only the switch statement.
    * rsa_setkey: refactored the implementation to be closer to the other
    functions in the file.

    Signed-off-by: Oscar Forner Martinez <oscar.forner.martinez@gmail.com>
    ---
    crypto/rsa.c | 29 ++++++++++++-----------------
    1 file changed, 12 insertions(+), 17 deletions(-)

    diff --git a/crypto/rsa.c b/crypto/rsa.c
    index 466003e..0832b38 100644
    --- a/crypto/rsa.c
    +++ b/crypto/rsa.c
    @@ -80,8 +80,7 @@ static int rsa_enc(struct akcipher_request *req)
    struct crypto_akcipher *tfm = crypto_akcipher_reqtfm(req);
    const struct rsa_key *pkey = rsa_get_key(tfm);
    MPI m, c = mpi_alloc(0);
    - int ret = 0;
    - int sign;
    + int ret, sign;

    if (!c)
    return -ENOMEM;
    @@ -128,8 +127,7 @@ static int rsa_dec(struct akcipher_request *req)
    struct crypto_akcipher *tfm = crypto_akcipher_reqtfm(req);
    const struct rsa_key *pkey = rsa_get_key(tfm);
    MPI c, m = mpi_alloc(0);
    - int ret = 0;
    - int sign;
    + int ret, sign;

    if (!m)
    return -ENOMEM;
    @@ -176,8 +174,7 @@ static int rsa_sign(struct akcipher_request *req)
    struct crypto_akcipher *tfm = crypto_akcipher_reqtfm(req);
    const struct rsa_key *pkey = rsa_get_key(tfm);
    MPI m, s = mpi_alloc(0);
    - int ret = 0;
    - int sign;
    + int ret, sign;

    if (!s)
    return -ENOMEM;
    @@ -224,8 +221,7 @@ static int rsa_verify(struct akcipher_request *req)
    struct crypto_akcipher *tfm = crypto_akcipher_reqtfm(req);
    const struct rsa_key *pkey = rsa_get_key(tfm);
    MPI s, m = mpi_alloc(0);
    - int ret = 0;
    - int sign;
    + int ret, sign;

    if (!m)
    return -ENOMEM;
    @@ -277,25 +273,24 @@ static int rsa_check_key_length(unsigned int len)
    case 3072:
    case 4096:
    return 0;
    + default:
    + return -EINVAL;
    }
    -
    - return -EINVAL;
    }

    static int rsa_setkey(struct crypto_akcipher *tfm, const void *key,
    unsigned int keylen)
    {
    struct rsa_key *pkey = akcipher_tfm_ctx(tfm);
    - int ret;
    + int ret = rsa_parse_key(pkey, key, keylen);

    - ret = rsa_parse_key(pkey, key, keylen);
    if (ret)
    return ret;

    - if (rsa_check_key_length(mpi_get_size(pkey->n) << 3)) {
    + ret = rsa_check_key_length(mpi_get_size(pkey->n) << 3);
    + if (ret)
    rsa_free_key(pkey);
    - ret = -EINVAL;
    - }
    +
    return ret;
    }

    @@ -322,12 +317,12 @@ static struct akcipher_alg rsa = {
    },
    };

    -static int rsa_init(void)
    +static inline int rsa_init(void)
    {
    return crypto_register_akcipher(&rsa);
    }

    -static void rsa_exit(void)
    +static inline void rsa_exit(void)
    {
    crypto_unregister_akcipher(&rsa);
    }
    --
    2.7.3
    \
     
     \ /
      Last update: 2016-03-18 22:21    [W:3.536 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site