Root cause of "curl: (56) SSL read: errno -5961" errors
Summary: curl: (56) SSL read: errno -5961
means that the SSL session timed-out for some reason.
In my case, the root cause was a layer2 MTU mismatch, which caused the openssl socket to time out part of the way through the curl transaction. Full MTU-sized TCP packets (i.e. 1500 byte IP payloads) failed because one side of the layer2 tunnel would not allow them through.
Others may see OpenSSL timing out for different reasons, but the key is knowing that this error is due to an OpenSSL timeout.