diff Python/getargs.c @ 20721:acb854b897bb legacy-trunk

vgetargskeywords: Prevent another potential sprintf buffer overrun.
author Tim Peters <tim.peters@gmail.com>
date Sat, 27 Oct 2001 06:53:00 +0000
parents aaefc2f21bae
children 676f106a5002
line wrap: on
line diff
--- a/Python/getargs.c	Sat Oct 27 06:42:16 2001 +0000
+++ b/Python/getargs.c	Sat Oct 27 06:53:00 2001 +0000
@@ -1027,7 +1027,7 @@
 vgetargskeywords(PyObject *args, PyObject *keywords, char *format,
 	         char **kwlist, va_list *p_va)
 {
-	char msgbuf[256];
+	char msgbuf[512];
 	int levels[32];
 	char *fname, *message;
 	int min, max;
@@ -1138,7 +1138,7 @@
 	if (len < min || max < len) {
 		if (message == NULL) {
 			sprintf(msgbuf,
-				"%s%s takes %s %d argument%s (%d given)",
+				"%.200s%s takes %s %d argument%s (%d given)",
 				fname==NULL ? "function" : fname,
 				fname==NULL ? "" : "()",
 				min==max ? "exactly"