[issue30710] getaddrinfo raises OverflowError

2020-05-29 Thread Rémi Lapeyre

Rémi Lapeyre  added the comment:

Hi Cheryl Sabella, the pull request that got closed is the one for issue 30711. 
The pull request for this one has never been reviewed.

--
nosy: +remi.lapeyre

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue30710] getaddrinfo raises OverflowError

2020-05-29 Thread Cheryl Sabella


Cheryl Sabella  added the comment:

The original pull request has been closed as inactive.  If the original author 
is interested in pursuing this issue, it can be reopened or someone else can 
create a new pull request to replace it.

--
nosy: +cheryl.sabella

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue30710] getaddrinfo raises OverflowError

2017-06-27 Thread Radek Smejkal

Changes by Radek Smejkal :


--
pull_requests: +2483

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue30710] getaddrinfo raises OverflowError

2017-06-21 Thread Radek Smejkal

Radek Smejkal added the comment:

> I like your idea about getting rid of OverflowError. But wouldn't it make the 
> problem with other reported by you issue, issue30711, worse?

It depends on the implementation of the underlying getaddrinfo. For 
Modules/getaddrinfo.c, it will be worse for positive numbers outside the C long 
range.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue30710] getaddrinfo raises OverflowError

2017-06-21 Thread Radek Smejkal

Radek Smejkal added the comment:

> Why can't the user simply pass in a string service name in the first place?
He/she can. But I don't propose to change that. The patch only changes the way 
a given number is converted to a string. That is, without an intermediate C 
long.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue30710] getaddrinfo raises OverflowError

2017-06-21 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

I like your idea about getting rid of OverflowError. But wouldn't it make the 
problem with other reported by you issue, issue30711, worse?

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue30710] getaddrinfo raises OverflowError

2017-06-21 Thread Radek Smejkal

Radek Smejkal added the comment:

> But how large is the performance hit of this change? It adds at least one 
> additional memory allocation for the str object. If the slowdown is 
> significant perhaps it is worth to keep the old code as a fast path.

commit 5cc7ac24da10568d2a910a91a24183b904118cf8
./python -m timeit -s 'import socket' 'socket.getaddrinfo(None, 1000)'
2000 loops, best of 5: 139 usec per loop
./python -m timeit -s 'import socket' 'socket.getaddrinfo(None, "1000")'
2000 loops, best of 5: 142 usec per loop

with getaddrinfo_overflow_error.patch
./python -m timeit -s 'import socket' 'socket.getaddrinfo(None, 1000)'
2000 loops, best of 5: 140 usec per loop
./python -m timeit -s 'import socket' 'socket.getaddrinfo(None, "1000")'
2000 loops, best of 5: 139 usec per loop

It seems the impact on performance is negligible/not measurable.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue30710] getaddrinfo raises OverflowError

2017-06-21 Thread Benjamin Peterson

Benjamin Peterson added the comment:

Why can't the user simply pass in a string service name in the first place?

--
nosy: +benjamin.peterson

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue30710] getaddrinfo raises OverflowError

2017-06-20 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

Now I understand your idea. It looks reasonable to me. Could you create a pull 
request on GitHub? Please provide also tests, add a Misc/NEWS entry and add 
your name in Misc/ACKS.

But how large is the performance hit of this change? It adds at least one 
additional memory allocation for the str object. If the slowdown is significant 
perhaps it is worth to keep the old code as a fast path.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue30710] getaddrinfo raises OverflowError

2017-06-20 Thread Radek Smejkal

Radek Smejkal added the comment:

Use PyObject_Str and PyUnicode_AsUTF8 if the port argument is a PyLong instead 
of converting it to an intermediate C long that may raise OverflowError. See 
getaddrinfo_overflow_error.patch

--
components: +Extension Modules -Library (Lib)
keywords: +patch
Added file: http://bugs.python.org/file46964/getaddrinfo_overflow_error.patch

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue30710] getaddrinfo raises OverflowError

2017-06-20 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

What do you mean by converting the port to a string (bytes) directly? Can you 
provide an example?

--
nosy: +serhiy.storchaka

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue30710] getaddrinfo raises OverflowError

2017-06-20 Thread Radek Smejkal

New submission from Radek Smejkal:

If the port argument is a number, getaddrinfo attempts to convert it to a C 
long, that raises OverflowError if the conversion fails.

Instead, getaddrinfo should convert the port to a string (bytes) directly and 
rely on the underlying getaddrinfo to return EAI_SERVICE. This is also 
consistent with the case when a numeric port is passed as a string.

--
components: Library (Lib)
messages: 296421
nosy: smejkar
priority: normal
severity: normal
status: open
title: getaddrinfo raises OverflowError
type: behavior
versions: Python 3.7

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com