New submission from Andrew MacDonald <and...@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 <rep...@bugs.python.org>
<https://bugs.python.org/issue42853>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to