[New-bugs-announce] [issue42853] `OverflowError: signed integer is greater than maximum` in ssl.py for files larger than 2GB

Andrew MacDonald report at bugs.python.org
Thu Jan 7 03:03:09 EST 2021


New submission from Andrew MacDonald <andrew at maccas.net>:

When attempting to read a large file (> 2GB) over HTTPS the read fails with "OverflowError: signed integer is greater than maximum".

This occurs with Python >=3.8 and I've been able to reproduce the problem with the below snippet of code on Linux, Mac OS X, and Windows (the remote file can be any HTTPS hosted file larger than 2GB, e.g. an empty file generated with `dd if=/dev/zero of=2g.img bs=1 count=0 seek=2G` will also do the job.).

```
import http.client
connection = http.client.HTTPSConnection("mirror.aarnet.edu.au")
connection.request("GET", "/pub/centos/8/isos/x86_64/CentOS-8.3.2011-x86_64-dvd1.iso")
response = connection.getresponse()
data = response.read()
```

Doing a git bisect it looks like this is the result of a change in commit d6bf6f2d0c83f0c64ce86e7b9340278627798090 (https://github.com/python/cpython/commit/d6bf6f2d0c83f0c64ce86e7b9340278627798090). Looking over the associated issue and commit message it seems like this was not an intended outcome for the change.

----------
assignee: christian.heimes
components: SSL
messages: 384565
nosy: amacd31, christian.heimes
priority: normal
severity: normal
status: open
title: `OverflowError: signed integer is greater than maximum` in ssl.py for files larger than 2GB
type: behavior
versions: Python 3.10, Python 3.8, Python 3.9

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue42853>
_______________________________________


More information about the New-bugs-announce mailing list