summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Eisentraut2012-03-08 20:29:01 +0000
committerPeter Eisentraut2012-03-08 20:29:01 +0000
commitc5e073ca2deec1595e4fdd748f14fcb4122e8faf (patch)
treef2b88572b66090d41fb1de89718d80c11f38575e
parent8dd4d10d481ec1da568ab424e62a3e50c069baaf (diff)
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
-rw-r--r--src/interfaces/ecpg/ecpglib/misc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/interfaces/ecpg/ecpglib/misc.c b/src/interfaces/ecpg/ecpglib/misc.c
index f24478271c..a4c283a274 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 */