1. 29 12月, 2010 1 次提交
  2. 28 12月, 2010 1 次提交
  3. 21 12月, 2010 1 次提交
  4. 13 12月, 2010 1 次提交
  5. 08 12月, 2010 2 次提交
  6. 03 12月, 2010 1 次提交
  7. 02 12月, 2010 8 次提交
  8. 30 11月, 2010 2 次提交
    • H
      crypto: algif_skcipher - Handle unaligned receive buffer · bc97e57e
      Herbert Xu 提交于
      As it is if user-space passes through a receive buffer that's not
      aligned to to the cipher block size, we'll end up encrypting or
      decrypting a partial block which causes a spurious EINVAL to be
      returned.
      
      This patch fixes this by moving the partial block test after the
      af_alg_make_sg call.
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      bc97e57e
    • H
      crypto: algif_skcipher - Fixed overflow when sndbuf is page aligned · 0f6bb83c
      Herbert Xu 提交于
      When sk_sndbuf is not a multiple of PAGE_SIZE, the limit tests
      in sendmsg fail as the limit variable becomes negative and we're
      using an unsigned comparison.
      
      The same thing can happen if sk_sndbuf is lowered after a sendmsg
      call.
      
      This patch fixes this by always taking the signed maximum of limit
      and 0 before we perform the comparison.
      
      It also rounds the value of sk_sndbuf down to a multiple of PAGE_SIZE
      so that we don't end up allocating a page only to use a small number
      of bytes in it because we're bound by sk_sndbuf.
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      0f6bb83c
  9. 29 11月, 2010 2 次提交
  10. 28 11月, 2010 1 次提交
  11. 27 11月, 2010 11 次提交
  12. 26 11月, 2010 1 次提交
    • H
      crypto: algif_skcipher - User-space interface for skcipher operations · 8ff59090
      Herbert Xu 提交于
      This patch adds the af_alg plugin for symmetric key ciphers,
      corresponding to the ablkcipher kernel operation type.
      
      Keys can optionally be set through the setsockopt interface.
      
      Once a sendmsg call occurs without MSG_MORE no further writes
      may be made to the socket until all previous data has been read.
      
      IVs and and whether encryption/decryption is performed can be
      set through the setsockopt interface or as a control message
      to sendmsg.
      
      The interface is completely synchronous, all operations are
      carried out in recvmsg(2) and will complete prior to the system
      call returning.
      
      The splice(2) interface support reading the user-space data directly
      without copying (except that the Crypto API itself may copy the data
      if alignment is off).
      
      The recvmsg(2) interface supports directly writing to user-space
      without additional copying, i.e., the kernel crypto interface will
      receive the user-space address as its output SG list.
      
      Thakns to Miloslav Trmac for reviewing this and contributing
      fixes and improvements.
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      Acked-by: NDavid S. Miller <davem@davemloft.net>
      8ff59090
  13. 19 11月, 2010 3 次提交
    • H
      crypto: algif_hash - User-space interface for hash operations · fe869cdb
      Herbert Xu 提交于
      This patch adds the af_alg plugin for hash, corresponding to
      the ahash kernel operation type.
      
      Keys can optionally be set through the setsockopt interface.
      
      Each sendmsg call will finalise the hash unless sent with a MSG_MORE
      flag.
      
      Partial hash states can be cloned using accept(2).
      
      The interface is completely synchronous, all operations will
      complete prior to the system call returning.
      
      Both sendmsg(2) and splice(2) support reading the user-space
      data directly without copying (except that the Crypto API itself
      may copy the data if alignment is off).
      
      For now only the splice(2) interface supports performing digest
      instead of init/update/final.  In future the sendmsg(2) interface
      will also be modified to use digest/finup where possible so that
      hardware that cannot return a partial hash state can still benefit
      from this interface.
      
      Thakns to Miloslav Trmac for reviewing this and contributing
      fixes and improvements.
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      Acked-by: NDavid S. Miller <davem@davemloft.net>
      Tested-by: NMartin Willi <martin@strongswan.org>
      fe869cdb
    • H
      crypto: af_alg - User-space interface for Crypto API · 03c8efc1
      Herbert Xu 提交于
      This patch creates the backbone of the user-space interface for
      the Crypto API, through a new socket family AF_ALG.
      
      Each session corresponds to one or more connections obtained from
      that socket.  The number depends on the number of inputs/outputs
      of that particular type of operation.  For most types there will
      be a s ingle connection/file descriptor that is used for both input
      and output.  AEAD is one of the few that require two inputs.
      
      Each algorithm type will provide its own implementation that plugs
      into af_alg.  They're keyed using a string such as "skcipher" or
      "hash".
      
      IOW this patch only contains the boring bits that is required
      to hold everything together.
      
      Thakns to Miloslav Trmac for reviewing this and contributing
      fixes and improvements.
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      Acked-by: NDavid S. Miller <davem@davemloft.net>
      Tested-by: NMartin Willi <martin@strongswan.org>
      03c8efc1
    • H
      net - Add AF_ALG macros · c2f9bff5
      Herbert Xu 提交于
      This patch adds the socket family/level macros for the yet-to-be-born
      AF_ALG family.  The AF_ALG family provides the user-space interface
      for the kernel crypto API.
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      Acked-by: NDavid S. Miller <davem@davemloft.net>
      c2f9bff5
  14. 13 11月, 2010 3 次提交
  15. 05 11月, 2010 1 次提交
  16. 28 10月, 2010 1 次提交
    • L
      Merge branch 'upstream-merge' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · 81280572
      Linus Torvalds 提交于
      * 'upstream-merge' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (50 commits)
        ext4,jbd2: convert tracepoints to use major/minor numbers
        ext4: optimize orphan_list handling for ext4_setattr
        ext4: fix unbalanced mutex unlock in error path of ext4_li_request_new
        ext4: fix compile error in ext4_fallocate()
        ext4: move ext4_mb_{get,put}_buddy_cache_lock and make them static
        ext4: rename mark_bitmap_end() to ext4_mark_bitmap_end()
        ext4: move flush_completed_IO to fs/ext4/fsync.c and make it static
        ext4: rename {ext,idx}_pblock and inline small extent functions
        ext4: make various ext4 functions be static
        ext4: rename {exit,init}_ext4_*() to ext4_{exit,init}_*()
        ext4: fix kernel oops if the journal superblock has a non-zero j_errno
        ext4: update writeback_index based on last page scanned
        ext4: implement writeback livelock avoidance using page tagging
        ext4: tidy up a void argument in inode.c
        ext4: add batched_discard into ext4 feature list
        ext4: Add batched discard support for ext4
        fs: Add FITRIM ioctl
        ext4: Use return value from sb_issue_discard()
        ext4: Check return value of sb_getblk() and friends
        ext4: use bio layer instead of buffer layer in mpage_da_submit_io
        ...
      81280572