1. 12 1月, 2021 2 次提交
  2. 09 1月, 2021 1 次提交
  3. 08 1月, 2021 1 次提交
  4. 06 1月, 2021 1 次提交
  5. 04 1月, 2021 1 次提交
    • D
      afs: Fix directory entry size calculation · 366911cd
      David Howells 提交于
      The number of dirent records used by an AFS directory entry should be
      calculated using the assumption that there is a 16-byte name field in the
      first block, rather than a 20-byte name field (which is actually the case).
      This miscalculation is historic and effectively standard, so we have to use
      it.
      
      The calculation we need to use is:
      
      	1 + (((strlen(name) + 1) + 15) >> 5)
      
      where we are adding one to the strlen() result to account for the NUL
      termination.
      
      Fix this by the following means:
      
       (1) Create an inline function to do the calculation for a given name
           length.
      
       (2) Use the function to calculate the number of records used for a dirent
           in afs_dir_iterate_block().
      
           Use this to move the over-end check out of the loop since it only
           needs to be done once.
      
           Further use this to only go through the loop for the 2nd+ records
           composing an entry.  The only test there now is for if the record is
           allocated - and we already checked the first block at the top of the
           outer loop.
      
       (3) Add a max name length check in afs_dir_iterate_block().
      
       (4) Make afs_edit_dir_add() and afs_edit_dir_remove() use the function
           from (1) to calculate the number of blocks rather than doing it
           incorrectly themselves.
      
      Fixes: 63a4681f ("afs: Locally edit directory data for mkdir/create/unlink/...")
      Fixes: ^1da177e4 ("Linux-2.6.12-rc2")
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      Tested-by: NMarc Dionne <marc.dionne@auristor.com>
      366911cd
  6. 30 12月, 2020 6 次提交
  7. 29 12月, 2020 2 次提交
  8. 28 12月, 2020 1 次提交
    • P
      netfilter: nftables: add set expression flags · b4e70d8d
      Pablo Neira Ayuso 提交于
      The set flag NFT_SET_EXPR provides a hint to the kernel that userspace
      supports for multiple expressions per set element. In the same
      direction, NFT_DYNSET_F_EXPR specifies that dynset expression defines
      multiple expressions per set element.
      
      This allows new userspace software with old kernels to bail out with
      EOPNOTSUPP. This update is similar to ef516e86 ("netfilter:
      nf_tables: reintroduce the NFT_SET_CONCAT flag"). The NFT_SET_EXPR flag
      needs to be set on when the NFTA_SET_EXPRESSIONS attribute is specified.
      The NFT_SET_EXPR flag is not set on with NFTA_SET_EXPR to retain
      backward compatibility in old userspace binaries.
      
      Fixes: 48b0ae04 ("netfilter: nftables: netlink support for several set element expressions")
      Signed-off-by: NPablo Neira Ayuso <pablo@netfilter.org>
      b4e70d8d
  9. 23 12月, 2020 13 次提交
  10. 22 12月, 2020 1 次提交
  11. 21 12月, 2020 1 次提交
  12. 20 12月, 2020 6 次提交
  13. 19 12月, 2020 3 次提交
  14. 18 12月, 2020 1 次提交