# HG changeset patch # User reimar # Date 1266524423 0 # Node ID 8806ec11a25087980fad9e2e840a442ad7a32bb7 # Parent 82e4e386fdc51e75d4a71fc2fdb18747ee86f82f Use snprintf to ensure we do not write outside the buffer bounds when recording stub names into export_names. diff -r 82e4e386fdc5 -r 8806ec11a250 loader/win32.c --- a/loader/win32.c Thu Feb 18 10:32:00 2010 +0000 +++ b/loader/win32.c Thu Feb 18 20:20:23 2010 +0000 @@ -5516,7 +5516,7 @@ no_dll: if(pos>150)return 0; - sprintf(export_names[pos], "%s:%d", library, ordinal); + snprintf(export_names[pos], sizeof(export_names[pos]), "%s:%d", library, ordinal); return add_stub(); } @@ -5583,7 +5583,7 @@ no_dll_byname: if(pos>150)return 0;// to many symbols - strcpy(export_names[pos], name); + snprintf(export_names[pos], sizeof(export_names[pos]), "%s", name); return add_stub(); }