[Python-checkins] [3.6] _ssl_: Fix compiler warning (GH-3559) (#3569)
Christian Heimes
webhook-mailer at python.org
Thu Sep 14 05:15:14 EDT 2017
https://github.com/python/cpython/commit/472cc9f366ef16cab72eed21bdc6a24f194fc03a
commit: 472cc9f366ef16cab72eed21bdc6a24f194fc03a
branch: 3.6
author: Christian Heimes <christian at python.org>
committer: GitHub <noreply at github.com>
date: 2017-09-14T11:15:07+02:00
summary:
[3.6] _ssl_: Fix compiler warning (GH-3559) (#3569)
Cast Py_buffer.len (Py_ssize_t, signed) to size_t (unsigned) to
prevent the following warning:
Modules/_ssl.c:3089:21: warning: comparison between signed and
unsigned integer expressions [-Wsign-compare].
(cherry picked from commit 5a61559fb0776a9a0f08294ec9003cea13940430)
files:
M Modules/_ssl.c
diff --git a/Modules/_ssl.c b/Modules/_ssl.c
index 4a656a145ab..a32fce47ef6 100644
--- a/Modules/_ssl.c
+++ b/Modules/_ssl.c
@@ -3024,6 +3024,12 @@ _ssl__SSLContext__set_alpn_protocols_impl(PySSLContext *self,
/*[clinic end generated code: output=87599a7f76651a9b input=9bba964595d519be]*/
{
#ifdef HAVE_ALPN
+ if ((size_t)protos->len > UINT_MAX) {
+ PyErr_Format(PyExc_OverflowError,
+ "protocols longer than %d bytes", UINT_MAX);
+ return NULL;
+ }
+
PyMem_FREE(self->alpn_protocols);
self->alpn_protocols = PyMem_Malloc(protos->len);
if (!self->alpn_protocols)
More information about the Python-checkins
mailing list