aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>1997-08-02 19:09:33 +0000
committerBruce Momjian <bruce@momjian.us>1997-08-02 19:09:33 +0000
commit8015ba083600c0e2ff766733d561d412afb6b097 (patch)
treed985546029ac14e2b8727e6e95ec086880757cb9 /src
parent105889e1d83407250cf5e3f08045261f70e4e0e2 (diff)
downloadpostgresql-8015ba083600c0e2ff766733d561d412afb6b097.tar.gz
postgresql-8015ba083600c0e2ff766733d561d412afb6b097.zip
Prevent relname unallocated string length from being copied into database.
Diffstat (limited to 'src')
-rw-r--r--src/backend/commands/creatinh.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/backend/commands/creatinh.c b/src/backend/commands/creatinh.c
index 696bd22e7c4..9522d214d57 100644
--- a/src/backend/commands/creatinh.c
+++ b/src/backend/commands/creatinh.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/commands/Attic/creatinh.c,v 1.6 1997/04/02 03:57:06 vadim Exp $
+ * $Header: /cvsroot/pgsql/src/backend/commands/Attic/creatinh.c,v 1.7 1997/08/02 19:09:33 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -46,7 +46,7 @@ static void StoreCatalogInheritance(Oid relationId, List *supers);
void
DefineRelation(CreateStmt *stmt)
{
- char *relname = stmt->relname;
+ char *relname = palloc(NAMEDATALEN+1);
List *schema = stmt->tableElts;
int numberOfAttributes;
Oid relationId;
@@ -58,9 +58,10 @@ DefineRelation(CreateStmt *stmt)
char* typename = NULL; /* the typename of this relation. not useod for now */
- if ( strlen(relname) > NAMEDATALEN)
- elog(WARN, "the relation name %s is > %d characters long", relname,
+ if ( strlen(stmt->relname) > NAMEDATALEN)
+ elog(WARN, "the relation name %s is > %d characters long", stmt->relname,
NAMEDATALEN);
+ strncpy(relname,stmt->relname,NAMEDATALEN+1); /* make full length for copy */
/* ----------------
* Handle parameters