• Jeremy Hylton's avatar
    Simply transactionalUndo implementation and make it much less efficient. · afdded70
    Jeremy Hylton authored
    Do not encode the file position in the transaction id used for undo.
    An attacker could construct a pickle with a bogus transaction record
    in its binary data, deduce the position of the pickle in the file from
    the undo log, then submit an undo with a bogus file position that
    caused the pickle to get written as a regular data record.  Bad stuff.
    
    The new implementation uses a straight linear search backwards from
    the most recent transaction header.
    afdded70
FileStorage.py 80 KB