OSDN Git Service

Fix buffer overrun in pg_upgrade.
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 2 Nov 2010 21:31:54 +0000 (17:31 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 2 Nov 2010 21:31:54 +0000 (17:31 -0400)
Problem reported, and cause identified, by Hernan Gonzalez.

contrib/pg_upgrade/controldata.c

index 009a1cc..dd805a4 100644 (file)
@@ -545,7 +545,7 @@ putenv2(migratorContext *ctx, const char *var, const char *val)
        {
 #ifndef WIN32
                char       *envstr = (char *) pg_malloc(ctx, strlen(var) +
-                                                                                               strlen(val) + 1);
+                                                                                               strlen(val) + 2);
 
                sprintf(envstr, "%s=%s", var, val);
                putenv(envstr);