Merge pull request #3563 from gamblor21/recv_into_size_check

Add socketpool.socket.recv_into size check
This commit is contained in:
Scott Shawcroft 2020-10-19 15:40:41 -07:00 committed by GitHub
commit c5d8c12e34
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 1 deletions

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
"POT-Creation-Date: 2020-10-16 13:56-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -2107,6 +2107,10 @@ msgstr ""
msgid "buffer too small"
msgstr ""
#: shared-bindings/socketpool/Socket.c
msgid "buffer too small for requested bytes"
msgstr ""
#: shared-bindings/_pew/PewPew.c
msgid "buttons must be digitalio.DigitalInOut"
msgstr ""

View File

@ -257,6 +257,9 @@ STATIC mp_obj_t socketpool_socket_recv_into(size_t n_args, const mp_obj_t *args)
mp_int_t len = bufinfo.len;
if (n_args == 3) {
mp_int_t given_len = mp_obj_get_int(args[2]);
if (given_len > len) {
mp_raise_ValueError(translate("buffer too small for requested bytes"));
}
if (given_len > 0 && given_len < len) {
len = given_len;
}