If you put an enormous number in exceeding 2**32 you'll get an error from cffi. A number that's representable as a 32-bit int (but still huge) will cause an assertion failure. The error OpenSSL is throwing is `error:0409406E:rsa routines:RSA_padding_add_PKCS1_PSS_mgf1:data too large for key size`. Small salt sizes are allowed (0 or more is legitimate) and work fine.

We can capture this error and return a ValueError, so I'll go ahead and do that.