]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Backport last checkin:
authorNeal Norwitz <nnorwitz@gmail.com>
Mon, 4 Nov 2002 23:40:47 +0000 (23:40 +0000)
committerNeal Norwitz <nnorwitz@gmail.com>
Mon, 4 Nov 2002 23:40:47 +0000 (23:40 +0000)
SF #633013, Fix NIS causing interpreter core dump

Prevent the lengths passed to PyString_FromStringAndSize()
from being negative in some cases.

Modules/nismodule.c

index bcc8e9f968e9a8c9efdc74a9cbf37a0785dcb438..b9fe927613a99584028d2334527a9b6d67862cc0 100644 (file)
@@ -85,8 +85,10 @@ nis_foreach (int instatus, char *inkey, int inkeylen, char *inval,
                int err;
 
                if (indata->fix) {
-                   inkeylen--;
-                   invallen--;
+                   if (inkeylen > 0 && inkey[inkeylen-1] == '\0')
+                       inkeylen--;
+                   if (invallen > 0 && inval[invallen-1] == '\0')
+                       invallen--;
                }
                key = PyString_FromStringAndSize(inkey, inkeylen);
                val = PyString_FromStringAndSize(inval, invallen);