postgres.git / summary / log / commit / refs

commit    c5e073ca2deec1595e4fdd748f14fcb4122e8faf
Author:   Peter Eisentraut <peter_e@gmx.net>
Date:     Thu Mar 08 20:29:01 2012 +0000

    ecpg: Fix off-by-one error in memory copying
    
    In a rare case, one byte past the end of memory belonging to the
    sqlca_t structure would be written to.
    
    found by Coverity


src/interfaces/ecpg/ecpglib/misc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/interfaces/ecpg/ecpglib/misc.c b/src/interfaces/ecpg/ecpglib/misc.c index f24478271cd..a4c283a274d 100644 --- a/src/interfaces/ecpg/ecpglib/misc.c +++ b/src/interfaces/ecpg/ecpglib/misc.c @@ -525,7 +525,7 @@ ECPGset_var(int number, void *pointer, int lineno) struct sqlca_t *sqlca = ECPGget_sqlca(); sqlca->sqlcode = ECPG_OUT_OF_MEMORY; - strncpy(sqlca->sqlstate, "YE001", sizeof("YE001")); + strncpy(sqlca->sqlstate, "YE001", sizeof(sqlca->sqlstate)); snprintf(sqlca->sqlerrm.sqlerrmc, sizeof(sqlca->sqlerrm.sqlerrmc), "out of memory on line %d", lineno); sqlca->sqlerrm.sqlerrml = strlen(sqlca->sqlerrm.sqlerrmc); /* free all memory we have allocated for the user */ [parent: 8dd4d10d481e]