Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Commits on Feb 16, 2010
  1. @RichiH @herbertx

    crypto: cipher - Fix checkpatch errors

    RichiH authored herbertx committed
    Signed-off-by: Richard Hartmann <richih.mailinglist@gmail.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Commits on Oct 10, 2007
  1. @herbertx

    [CRYPTO] api: Add missing headers for setkey_unaligned

    herbertx authored David S. Miller committed
    This patch ensures that kernel.h and slab.h are included for
    the setkey_unaligned function.  It also breaks a couple of
    long lines.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Commits on Aug 6, 2007
  1. @herbertx

    [CRYPTO] api: fix writting into unallocated memory in setkey_aligned

    Sebastian Siewior authored herbertx committed
    setkey_unaligned() commited in ca7c393
    overwrites unallocated memory in the following memset() because
    I used the wrong buffer length.
    
    Signed-off-by: Sebastian Siewior <sebastian@breakpoint.cc>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Commits on Jul 11, 2007
  1. @herbertx

    [CRYPTO] api: Handle unaligned keys in setkey

    Sebastian Siewior authored herbertx committed
    setkey() in {cipher,blkcipher,ablkcipher,hash}.c does not respect the
    requested alignment by the algorithm. This patch fixes it. The extra
    memory is allocated by kmalloc() with GFP_ATOMIC flag.
    
    Signed-off-by: Sebastian Siewior <linux-crypto@ml.breakpoint.cc>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Commits on Feb 6, 2007
  1. @herbertx

    [CRYPTO] api: Remove deprecated interface

    herbertx authored
    This patch removes the old cipher interface and related code.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Commits on Sep 21, 2006
  1. @herbertx

    [CRYPTO] api: Mark parts of cipher interface as deprecated

    herbertx authored
    Mark the parts of the cipher interface that have been replaced by
    block ciphers as deprecated.  Thanks to Andrew Morton for suggesting
    doing this before removing them completely.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
  2. @herbertx

    [CRYPTO] scatterwalk: Prepare for block ciphers

    herbertx authored
    This patch prepares the scatterwalk code for use by the new block cipher
    type.
    
    Firstly it halves the size of scatter_walk on 32-bit platforms.  This
    is important as we allocate at least two of these objects on the stack
    for each block cipher operation.
    
    It also exports the symbols since the block cipher code can be built as
    a module.
    
    Finally there is a hack in scatterwalk_unmap that relies on progress
    being made.  Unfortunately, for hardware crypto we can't guarantee
    progress to be made since the hardware can fail.
    
    So this also gets rid of the hack by not advancing the address returned
    by scatterwalk_map.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
  3. @herbertx

    [CRYPTO] cipher: Added encrypt_one/decrypt_one

    herbertx authored
    This patch adds two new operations for the simple cipher that encrypts or
    decrypts a single block at a time.  This will be the main interface after
    the existing block operations have moved over to the new block ciphers.
    
    It also adds the crypto_cipher type which is currently only used on the
    new operations but will be extended to setkey as well once existing users
    have been converted to use block ciphers where applicable.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
  4. @herbertx

    [CRYPTO] api: Feed flag directly to crypto_yield

    herbertx authored
    The sleeping flag used to determine whether crypto_yield can actually
    yield is really a per-operation flag rather than a per-tfm flag.  This
    patch changes crypto_yield to take a flag directly so that we can start
    using a per-operation flag instead the tfm flag.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
  5. @herbertx

    [CRYPTO] cipher: Removed special IV checks for ECB

    herbertx authored
    This patch makes IV operations on ECB fail through nocrypt_iv rather than
    calling BUG().  This is needed to generalise CBC/ECB using the template
    mechanism.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
  6. @herbertx

    [CRYPTO] api: Get rid of flags argument to setkey

    herbertx authored
    Now that the tfm is passed directly to setkey instead of the ctx, we no
    longer need to pass the &tfm->crt_flags pointer.
    
    This patch also gets rid of a few unnecessary checks on the key length
    for ciphers as the cipher layer guarantees that the key length is within
    the bounds specified by the algorithm.
    
    Rather than testing dia_setkey every time, this patch does it only once
    during crypto_alloc_tfm.  The redundant check from crypto_digest_setkey
    is also removed.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Commits on Jun 26, 2006
  1. @herbertx

    [CRYPTO] all: Pass tfm instead of ctx to algorithms

    herbertx authored
    Up until now algorithms have been happy to get a context pointer since
    they know everything that's in the tfm already (e.g., alignment, block
    size).
    
    However, once we have parameterised algorithms, such information will
    be specific to each tfm.  So the algorithm API needs to be changed to
    pass the tfm structure instead of the context pointer.
    
    This patch is basically a text substitution.  The only tricky bit is
    the assembly routines that need to get the context pointer offset
    through asm-offsets.h.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Commits on Jan 9, 2006
  1. @herbertx

    [CRYPTO] cipher: Align temporary buffer in cbc_process_decrypt

    herbertx authored David S. Miller committed
    Since the temporary buffer is used as an argument to cia_decrypt, it must be
    aligned by cra_alignmask.  This bug was found by linux@horizon.com.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Commits on Sep 6, 2005
  1. @herbertx @davem330

    [CRYPTO] Fix boundary check in standard multi-block cipher processors

    herbertx authored davem330 committed
    The boundary check in the standard multi-block cipher processors are
    broken when nbytes is not a multiple of bsize.  In those cases it will
    always process an extra block.
    
    This patch corrects the check so that it processes at most nbytes of
    data.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem@davemloft.net>
Commits on Sep 2, 2005
  1. @herbertx @davem330

    [CRYPTO]: Added CRYPTO_TFM_REQ_MAY_SLEEP flag

    herbertx authored davem330 committed
    The crypto layer currently uses in_atomic() to determine whether it is
    allowed to sleep.  This is incorrect since spin locks don't always cause
    in_atomic() to return true.
    
    Instead of that, this patch returns to an earlier idea of a per-tfm flag
    which determines whether sleeping is allowed.  Unlike the earlier version,
    the default is to not allow sleeping.  This ensures that no existing code
    can break.
    
    As usual, this flag may either be set through crypto_alloc_tfm(), or
    just before a specific crypto operation.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem@davemloft.net>
Commits on Jul 15, 2005
  1. @herbertx @davem330

    [CRYPTO]: Fix zero-extension bug on 64-bit architectures.

    herbertx authored davem330 committed
    Noticed by Ken-ichirou MATSUZAWA.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem@davemloft.net>
Commits on Jul 6, 2005
  1. @herbertx @davem330

    [CRYPTO] Handle unaligned iv from encrypt_iv/decrypt_iv

    herbertx authored davem330 committed
    Even though cit_iv is now always aligned, the user can still supply an
    unaligned iv through crypto_cipher_encrypt_iv/crypto_cipher_decrypt_iv.
    This patch will check the alignment of the user-supplied iv and copy
    it if necessary.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  2. @herbertx @davem330

    [CRYPTO] Ensure cit_iv is aligned correctly

    herbertx authored davem330 committed
    This patch ensures that cit_iv is aligned according to cra_alignmask
    by allocating it as part of the tfm structure.  As a side effect the
    crypto layer will also guarantee that the tfm ctx area has enough space
    to be aligned by cra_alignmask.  This allows us to remove the extra
    space reservation from the Padlock driver.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  3. @herbertx @davem330

    [CRYPTO] Add alignmask for low-level cipher implementations

    herbertx authored davem330 committed
    The VIA Padlock device requires the input and output buffers to
    be aligned on 16-byte boundaries.  This patch adds the alignmask
    attribute for low-level cipher implementations to indicate their
    alignment requirements.
    
    The mid-level crypt() function will copy the input/output buffers
    if they are not aligned correctly before they are passed to the
    low-level implementation.
    
    Strictly speaking, some of the software implementations require
    the buffers to be aligned on 4-byte boundaries as they do 32-bit
    loads.  However, it is not clear whether it is better to copy
    the buffers or pay the penalty for unaligned loads/stores.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  4. @herbertx @davem330

    [CRYPTO] Add support for low-level multi-block operations

    herbertx authored davem330 committed
    This patch adds hooks for cipher algorithms to implement multi-block
    ECB/CBC operations directly.  This is expected to provide significant
    performance boots to the VIA Padlock.
    
    It could also be used for improving software implementations such as
    AES where operating on multiple blocks at a time may enable certain
    optimisations.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  5. @herbertx @davem330

    [CRYPTO] Add plumbing for multi-block operations

    herbertx authored davem330 committed
    The VIA Padlock device is able to perform much better when multiple
    blocks are fed to it at once.  As this device offers an exceptional
    throughput rate it is worthwhile to optimise the infrastructure
    specifically for it.
    
    We shift the existing page-sized fast path down to the CBC/ECB functions.
    We can then replace the CBC/ECB functions with functions provided by the
    underlying algorithm that performs the multi-block operations.
    
    As a side-effect this improves the performance of large cipher operations
    for all existing algorithm implementations.  I've measured the gain to be
    around 5% for 3DES and 15% for AES.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  6. @davem330

    [CRYPTO] Don't check for NULL before kfree()

    Jesper Juhl authored davem330 committed
    Checking a pointer for NULL before calling kfree() on it is redundant.
    This patch removes such checks from crypto/
    
    Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem@davemloft.net>
Commits on Apr 16, 2005
  1. Linux-2.6.12-rc2

    Linus Torvalds authored
    Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.
    
    Let it rip!
Something went wrong with that request. Please try again.