Thanks to Peter Gijsels for pointing out that if a CBC record has 255 bytes of padding, the first was not being checked.
Initial fork from f2d678e6e89b6508147086610e985d4e8416e867 (1.0.2 beta). (This change contains substantial changes from the original and effectively starts a new history.)