Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
[linux-2.6-block.git] / include / crypto / skcipher.h
index ce7fa0973580930be708112e4af430f9b6904660..37c164234d970b7f891f0795579d5227be8bf3e9 100644 (file)
@@ -288,66 +288,6 @@ static inline unsigned int crypto_sync_skcipher_ivsize(
        return crypto_skcipher_ivsize(&tfm->base);
 }
 
-static inline unsigned int crypto_skcipher_alg_chunksize(
-       struct skcipher_alg *alg)
-{
-       if ((alg->base.cra_flags & CRYPTO_ALG_TYPE_MASK) ==
-           CRYPTO_ALG_TYPE_BLKCIPHER)
-               return alg->base.cra_blocksize;
-
-       if (alg->base.cra_ablkcipher.encrypt)
-               return alg->base.cra_blocksize;
-
-       return alg->chunksize;
-}
-
-static inline unsigned int crypto_skcipher_alg_walksize(
-       struct skcipher_alg *alg)
-{
-       if ((alg->base.cra_flags & CRYPTO_ALG_TYPE_MASK) ==
-           CRYPTO_ALG_TYPE_BLKCIPHER)
-               return alg->base.cra_blocksize;
-
-       if (alg->base.cra_ablkcipher.encrypt)
-               return alg->base.cra_blocksize;
-
-       return alg->walksize;
-}
-
-/**
- * crypto_skcipher_chunksize() - obtain chunk size
- * @tfm: cipher handle
- *
- * The block size is set to one for ciphers such as CTR.  However,
- * you still need to provide incremental updates in multiples of
- * the underlying block size as the IV does not have sub-block
- * granularity.  This is known in this API as the chunk size.
- *
- * Return: chunk size in bytes
- */
-static inline unsigned int crypto_skcipher_chunksize(
-       struct crypto_skcipher *tfm)
-{
-       return crypto_skcipher_alg_chunksize(crypto_skcipher_alg(tfm));
-}
-
-/**
- * crypto_skcipher_walksize() - obtain walk size
- * @tfm: cipher handle
- *
- * In some cases, algorithms can only perform optimally when operating on
- * multiple blocks in parallel. This is reflected by the walksize, which
- * must be a multiple of the chunksize (or equal if the concern does not
- * apply)
- *
- * Return: walk size in bytes
- */
-static inline unsigned int crypto_skcipher_walksize(
-       struct crypto_skcipher *tfm)
-{
-       return crypto_skcipher_alg_walksize(crypto_skcipher_alg(tfm));
-}
-
 /**
  * crypto_skcipher_blocksize() - obtain block size of cipher
  * @tfm: cipher handle
@@ -479,21 +419,7 @@ static inline struct crypto_sync_skcipher *crypto_sync_skcipher_reqtfm(
  *
  * Return: 0 if the cipher operation was successful; < 0 if an error occurred
  */
-static inline int crypto_skcipher_encrypt(struct skcipher_request *req)
-{
-       struct crypto_skcipher *tfm = crypto_skcipher_reqtfm(req);
-       struct crypto_alg *alg = tfm->base.__crt_alg;
-       unsigned int cryptlen = req->cryptlen;
-       int ret;
-
-       crypto_stats_get(alg);
-       if (crypto_skcipher_get_flags(tfm) & CRYPTO_TFM_NEED_KEY)
-               ret = -ENOKEY;
-       else
-               ret = tfm->encrypt(req);
-       crypto_stats_skcipher_encrypt(cryptlen, ret, alg);
-       return ret;
-}
+int crypto_skcipher_encrypt(struct skcipher_request *req);
 
 /**
  * crypto_skcipher_decrypt() - decrypt ciphertext
@@ -506,21 +432,7 @@ static inline int crypto_skcipher_encrypt(struct skcipher_request *req)
  *
  * Return: 0 if the cipher operation was successful; < 0 if an error occurred
  */
-static inline int crypto_skcipher_decrypt(struct skcipher_request *req)
-{
-       struct crypto_skcipher *tfm = crypto_skcipher_reqtfm(req);
-       struct crypto_alg *alg = tfm->base.__crt_alg;
-       unsigned int cryptlen = req->cryptlen;
-       int ret;
-
-       crypto_stats_get(alg);
-       if (crypto_skcipher_get_flags(tfm) & CRYPTO_TFM_NEED_KEY)
-               ret = -ENOKEY;
-       else
-               ret = tfm->decrypt(req);
-       crypto_stats_skcipher_decrypt(cryptlen, ret, alg);
-       return ret;
-}
+int crypto_skcipher_decrypt(struct skcipher_request *req);
 
 /**
  * DOC: Symmetric Key Cipher Request Handle