aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/tools/python3/src/Modules/getaddrinfo.c
diff options
context:
space:
mode:
authorshadchin <shadchin@yandex-team.com>2024-02-12 07:53:52 +0300
committerDaniil Cherednik <dcherednik@ydb.tech>2024-02-14 14:26:16 +0000
commit31f2a419764a8ba77c2a970cfc80056c6cd06756 (patch)
treec1995d239eba8571cefc640f6648e1d5dd4ce9e2 /contrib/tools/python3/src/Modules/getaddrinfo.c
parentfe2ef02b38d9c85d80060963b265a1df9f38c3bb (diff)
downloadydb-31f2a419764a8ba77c2a970cfc80056c6cd06756.tar.gz
Update Python from 3.11.8 to 3.12.2
Diffstat (limited to 'contrib/tools/python3/src/Modules/getaddrinfo.c')
-rw-r--r--contrib/tools/python3/src/Modules/getaddrinfo.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/contrib/tools/python3/src/Modules/getaddrinfo.c b/contrib/tools/python3/src/Modules/getaddrinfo.c
index 0b4620ed68..f1c28d7d93 100644
--- a/contrib/tools/python3/src/Modules/getaddrinfo.c
+++ b/contrib/tools/python3/src/Modules/getaddrinfo.c
@@ -342,7 +342,11 @@ getaddrinfo(const char*hostname, const char*servname,
pai->ai_socktype = SOCK_DGRAM;
pai->ai_protocol = IPPROTO_UDP;
}
- port = htons((u_short)atoi(servname));
+ long maybe_port = strtol(servname, NULL, 10);
+ if (maybe_port < 0 || maybe_port > 0xffff) {
+ ERR(EAI_SERVICE);
+ }
+ port = htons((u_short)maybe_port);
} else {
struct servent *sp;
const char *proto;