• Oran Agra's avatar
    Fix ziplist and listpack overflows and truncations (CVE-2021-32627, CVE-2021-32628) (#9589) · c5e6a620
    Oran Agra authored
    
    
    - fix possible heap corruption in ziplist and listpack resulting by trying to
      allocate more than the maximum size of 4GB.
    - prevent ziplist (hash and zset) from reaching size of above 1GB, will be
      converted to HT encoding, that's not a useful size.
    - prevent listpack (stream) from reaching size of above 1GB.
    - XADD will start a new listpack if the new record may cause the previous
      listpack to grow over 1GB.
    - XADD will respond with an error if a single stream record is over 1GB
    - List type (ziplist in quicklist) was truncating strings that were over 4GB,
      now it'll respond with an error.
    Co-authored-by: default avatarsundb <sundbcn@gmail.com>
    c5e6a620
server.h 137 KB