diff --git a/src/backend/access/transam/xid.c b/src/backend/access/transam/xid.c
index d33a8a8dfdace90fa4bcb2242661e657147b06da..35b53b5a5a8e0b026e6197274364caa4bc56c720 100644
--- a/src/backend/access/transam/xid.c
+++ b/src/backend/access/transam/xid.c
@@ -5,9 +5,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- *
- * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/access/transam/Attic/xid.c,v 1.19 1998/12/14 05:18:33 scrappy Exp $
+ *  $Id: xid.c,v 1.20 1998/12/14 06:50:17 scrappy Exp $
  *
  * OLD COMMENTS
  * XXX WARNING
@@ -41,13 +39,10 @@ xidin(char *representation)
 char *
 xidout(TransactionId transactionId)
 {
-/*	  return(TransactionIdFormString(transactionId)); */
-	char	   *representation;
-
 	/* maximum 32 bit unsigned integer representation takes 10 chars */
-	representation = palloc(11);
+	char	   *representation = palloc(11);
 
-	sprintf(representation, "%u", transactionId);
+	snprintf(representation, 11, "%u", transactionId);
 
 	return representation;
 
diff --git a/src/backend/commands/_deadcode/version.c b/src/backend/commands/_deadcode/version.c
index fc1efc437be92976e2f6143aeed1a2546e0e9dcc..b3db65507a22d7d22920b407397d950eef78de72 100644
--- a/src/backend/commands/_deadcode/version.c
+++ b/src/backend/commands/_deadcode/version.c
@@ -5,19 +5,18 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- *	The version stuff has not been tested under postgres95 and probably doesn't
- *	work! - jolly 8/19/95
+ *	The version stuff has not been tested under postgres95 and probably 
+ *	doesn't work! - jolly 8/19/95
  *
  *
- * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/commands/_deadcode/Attic/version.c,v 1.16 1998/12/14 05:18:44 scrappy Exp $
+ *  $Id: version.c,v 1.17 1998/12/14 06:50:19 scrappy Exp $
  *
  * NOTES
- *	  At the point the version is defined, 2 physical relations are created
- *	  <vname>_added and <vname>_deleted.
+ *	At the point the version is defined, 2 physical relations are created
+ *	<vname>_added and <vname>_deleted.
  *
- *	  In addition, 4 rules are defined which govern the semantics of versions
- *	  w.r.t retrieves, appends, replaces and deletes.
+ *	In addition, 4 rules are defined which govern the semantics of 
+ *	versions w.r.t retrieves, appends, replaces and deletes.
  *
  *-------------------------------------------------------------------------
  */
diff --git a/src/backend/commands/user.c b/src/backend/commands/user.c
index e1aaa4cb22c03018e0acfc036cf543b2cc1b49c0..a547156ed738a8d9c4e8dd7de06b3d90749830f7 100644
--- a/src/backend/commands/user.c
+++ b/src/backend/commands/user.c
@@ -5,7 +5,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- *
+ * $Id: user.c,v 1.21 1998/12/14 06:50:18 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -35,6 +35,8 @@
 
 static void CheckPgUserAclNotNull(void);
 
+#define	SQL_LENGTH	512
+
 /*---------------------------------------------------------------------
  * UpdatePgPwdFile
  *
@@ -47,8 +49,9 @@ void
 UpdatePgPwdFile(char *sql)
 {
 
-	char	   *filename;
-	char	   *tempname;
+	char	*filename,
+				*tempname;
+	int		bufsize;
 
 	/*
 	 * Create a temporary filename to be renamed later.  This prevents the
@@ -56,18 +59,21 @@ UpdatePgPwdFile(char *sql)
 	 * be reading from it.
 	 */
 	filename = crypt_getpwdfilename();
-	tempname = (char *) malloc(strlen(filename) + 12);
-	sprintf(tempname, "%s.%d", filename, MyProcPid);
+	bufsize = strlen(filename) + 12;
+	tempname = (char *) palloc(bufsize);
+	snprintf(tempname, bufsize, "%s.%d", filename, MyProcPid);
 
 	/*
 	 * Copy the contents of pg_shadow to the pg_pwd ASCII file using a the
 	 * SEPCHAR character as the delimiter between fields.  Then rename the
 	 * file to its final name.
 	 */
-	sprintf(sql, "copy %s to '%s' using delimiters %s", ShadowRelationName, tempname, CRYPT_PWD_FILE_SEPCHAR);
+	snprintf(sql, QRY_LENGTH, 
+			"copy %s to '%s' using delimiters %s", 
+			ShadowRelationName, tempname, CRYPT_PWD_FILE_SEPCHAR);
 	pg_exec_query(sql);
 	rename(tempname, filename);
-	free((void *) tempname);
+	pfree((void *) tempname);
 
 	/*
 	 * Create a flag file the postmaster will detect the next time it
@@ -89,18 +95,17 @@ void
 DefineUser(CreateUserStmt *stmt)
 {
 
-	char	   *pg_shadow;
-	Relation	pg_shadow_rel;
-	TupleDesc	pg_shadow_dsc;
-	HeapScanDesc scan;
-	HeapTuple	tuple;
-	Datum		datum;
-	char		sql[512];
-	char	   *sql_end;
-	bool		exists = false,
-				n,
-				inblock;
-	int			max_id = -1;
+	char					*pg_shadow,
+								sql[SQL_LENGTH];
+	Relation			pg_shadow_rel;
+	TupleDesc			pg_shadow_dsc;
+	HeapScanDesc	scan;
+	HeapTuple			tuple;
+	Datum					datum;
+	bool					exists = false,
+								n,
+								inblock;
+	int						max_id = -1;
 
 	if (stmt->password)
 		CheckPgUserAclNotNull();
@@ -152,46 +157,23 @@ DefineUser(CreateUserStmt *stmt)
 		RelationUnsetLockForWrite(pg_shadow_rel);
 		heap_close(pg_shadow_rel);
 		UserAbortTransactionBlock();
-		elog(ERROR, "defineUser: user \"%s\" has already been created", stmt->user);
+		elog(ERROR, 
+				"defineUser: user \"%s\" has already been created", stmt->user);
 		return;
 	}
 
 	/*
 	 * Build the insert statment to be executed.
 	 */
-	sprintf(sql, "insert into %s(usename,usesysid,usecreatedb,usetrace,usesuper,usecatupd,passwd", ShadowRelationName);
-/*	if (stmt->password)
-	strcat(sql, ",passwd"); -- removed so that insert empty string when no password */
-	if (stmt->validUntil)
-		strcat(sql, ",valuntil");
-
-	sql_end = sql + strlen(sql);
-	sprintf(sql_end, ") values('%s',%d", stmt->user, max_id + 1);
-	if (stmt->createdb && *stmt->createdb)
-		strcat(sql_end, ",'t','t'");
-	else
-		strcat(sql_end, ",'f','t'");
-	if (stmt->createuser && *stmt->createuser)
-		strcat(sql_end, ",'t','t'");
-	else
-		strcat(sql_end, ",'f','t'");
-	sql_end += strlen(sql_end);
-	if (stmt->password)
-	{
-		sprintf(sql_end, ",'%s'", stmt->password);
-		sql_end += strlen(sql_end);
-	}
-	else
-	{
-		strcpy(sql_end, ",''");
-		sql_end += strlen(sql_end);
-	}
-	if (stmt->validUntil)
-	{
-		sprintf(sql_end, ",'%s'", stmt->validUntil);
-		sql_end += strlen(sql_end);
-	}
-	strcat(sql_end, ")");
+	snprintf(sql, SQL_LENGTH, 
+			"insert into %s(usename,usesysid,usecreatedb,usetrace,usesuper,"
+			"usecatupd,passwd,valuntil) values('%s',%d%s%s,'%s','%s')", 
+			ShadowRelationName, 
+			stmt->user, max_id + 1,
+			(stmt->createdb && *stmt->createdb) ? ",'t','t'" : ",'f','t'",
+			(stmt->createuser && *stmt->createuser) ? ",'t','t'" : ",'f','t'",
+			stmt->password ? stmt->password : "''",
+			stmt->validUntil ? stmt->valudUntil : "");
 
 	pg_exec_query(sql);
 
@@ -217,13 +199,12 @@ extern void
 AlterUser(AlterUserStmt *stmt)
 {
 
-	char	   *pg_shadow;
+	char			*pg_shadow,
+						sql[SQL_LENGTH];
 	Relation	pg_shadow_rel;
 	TupleDesc	pg_shadow_dsc;
 	HeapTuple	tuple;
-	char		sql[512];
-	char	   *sql_end;
-	bool		inblock;
+	bool			inblock;
 
 	if (stmt->password)
 		CheckPgUserAclNotNull();
@@ -271,47 +252,38 @@ AlterUser(AlterUserStmt *stmt)
 	/*
 	 * Create the update statement to modify the user.
 	 */
-	sprintf(sql, "update %s set", ShadowRelationName);
-	sql_end = sql;
+	snprintf(sql, SQL_LENGTH, "update %s set", ShadowRelationName);
+
 	if (stmt->password)
 	{
-		sql_end += strlen(sql_end);
-		sprintf(sql_end, " passwd = '%s'", stmt->password);
+		snprintf(sql, SQL_LENGTH, "%s passwd = '%s'", sql, stmt->password);
 	}
+
 	if (stmt->createdb)
 	{
-		if (sql_end != sql)
-			strcat(sql_end, ",");
-		sql_end += strlen(sql_end);
-		if (*stmt->createdb)
-			strcat(sql_end, " usecreatedb = 't'");
-		else
-			strcat(sql_end, " usecreatedb = 'f'");
+		snprintf(sql, SQL_LENGTH, "%s %susecreatedb='%s'",
+				stmt->password ? "," : "",
+				*stmt->createdb ? "t" : "f");
 	}
+
 	if (stmt->createuser)
 	{
-		if (sql_end != sql)
-			strcat(sql_end, ",");
-		sql_end += strlen(sql_end);
-		if (*stmt->createuser)
-			strcat(sql_end, " usesuper = 't'");
-		else
-			strcat(sql_end, " usesuper = 'f'");
+		snprintf(sql, SQL_LENGTH, "%s %susesuper='%s'",
+				(stmt->password || stmt->createdb) ? "," : "",
+				*stmt->createuser ? "t" : "f");
 	}
+
 	if (stmt->validUntil)
 	{
-		if (sql_end != sql)
-			strcat(sql_end, ",");
-		sql_end += strlen(sql_end);
-		sprintf(sql_end, " valuntil = '%s'", stmt->validUntil);
-	}
-	if (sql_end != sql)
-	{
-		sql_end += strlen(sql_end);
-		sprintf(sql_end, " where usename = '%s'", stmt->user);
-		pg_exec_query(sql);
+		snprintf(sql, SQL_LENGTH, "%s %svaluntil='%s'",
+				(stmt->password || stmt->createdb || stmt->createuser) ? "," : "",
+				stmt->validUntil);
 	}
 
+	snprintf(sql, SQL_LENGTH, "%s where usename = '%s'", sql, stmt->user);
+
+	pg_exec_query(sql);
+
 	/* do the pg_group stuff here */
 
 	UpdatePgPwdFile(sql);
@@ -402,8 +374,9 @@ RemoveUser(char *user)
 			datum = heap_getattr(tuple, Anum_pg_database_datname, pg_dsc, &n);
 			if (memcmp((void *) datum, "template1", 9))
 			{
-				dbase = (char **) realloc((void *) dbase, sizeof(char *) * (ndbase + 1));
-				dbase[ndbase] = (char *) malloc(NAMEDATALEN + 1);
+				dbase = 
+						(char **) repalloc((void *) dbase, sizeof(char *) * (ndbase + 1));
+				dbase[ndbase] = (char *) palloc(NAMEDATALEN + 1);
 				memcpy((void *) dbase[ndbase], (void *) datum, NAMEDATALEN);
 				dbase[ndbase++][NAMEDATALEN] = '\0';
 			}
@@ -415,12 +388,12 @@ RemoveUser(char *user)
 	while (ndbase--)
 	{
 		elog(NOTICE, "Dropping database %s", dbase[ndbase]);
-		sprintf(sql, "drop database %s", dbase[ndbase]);
-		free((void *) dbase[ndbase]);
+		snprintf(sql, SQL_LENGTH, "drop database %s", dbase[ndbase]);
+		pfree((void *) dbase[ndbase]);
 		pg_exec_query(sql);
 	}
 	if (dbase)
-		free((void *) dbase);
+		pfree((void *) dbase);
 
 	/*
 	 * Since pg_shadow is global over all databases, one of two things
@@ -443,7 +416,8 @@ RemoveUser(char *user)
 	/*
 	 * Remove the user from the pg_shadow table
 	 */
-	sprintf(sql, "delete from %s where usename = '%s'", ShadowRelationName, user);
+	snprintf(sql, SQL_LENGTH, 
+			"delete from %s where usename = '%s'", ShadowRelationName, user);
 	pg_exec_query(sql);
 
 	UpdatePgPwdFile(sql);
diff --git a/src/backend/commands/view.c b/src/backend/commands/view.c
index 7fed73fcac2ee6ce27c8cf8c540e5dffa5e65d0f..1132b1f02e2cf77b6f96232b09b6d3fedc7b54e4 100644
--- a/src/backend/commands/view.c
+++ b/src/backend/commands/view.c
@@ -5,9 +5,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- *
- * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/commands/view.c,v 1.27 1998/12/14 05:18:44 scrappy Exp $
+ *  $Id: view.c,v 1.28 1998/12/14 06:50:18 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
diff --git a/src/backend/executor/execAmi.c b/src/backend/executor/execAmi.c
index 6711fa5f70d5d0d46ce15022d8c127962d7b482f..17936d75d05ba561d2098cd2b3351b47a9649923 100644
--- a/src/backend/executor/execAmi.c
+++ b/src/backend/executor/execAmi.c
@@ -5,9 +5,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- *
- * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/executor/execAmi.c,v 1.26 1998/12/14 05:18:49 scrappy Exp $
+ *  $Id: execAmi.c,v 1.27 1998/12/14 06:50:20 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
diff --git a/src/backend/executor/nodeHash.c b/src/backend/executor/nodeHash.c
index e03a33b62b23db2eca67918fdf6f998c5f517de1..1f900bdb17234b0219cb0eb4c8d305e186c4f51a 100644
--- a/src/backend/executor/nodeHash.c
+++ b/src/backend/executor/nodeHash.c
@@ -6,8 +6,7 @@
  * Copyright (c) 1994, Regents of the University of California
  *
  *
- * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/executor/nodeHash.c,v 1.25 1998/12/14 05:18:50 scrappy Exp $
+ *  $Id: nodeHash.c,v 1.26 1998/12/14 06:50:21 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
diff --git a/src/backend/executor/nodeTee.c b/src/backend/executor/nodeTee.c
index 741a4f077f18f3af5e703e99887f6e7f5a33eb8f..b565d2fd6e185d4658432ab77daa5fd5646d0310 100644
--- a/src/backend/executor/nodeTee.c
+++ b/src/backend/executor/nodeTee.c
@@ -6,16 +6,15 @@
  * Copyright (c) 1994, Regents of the University of California
  *
  *	 DESCRIPTION
- *		This code provides support for a tee node, which allows multiple
- *	  parent in a megaplan.
+ *		This code provides support for a tee node, which allows 
+ * 		multiple parent in a megaplan.
  *
  *	 INTERFACE ROUTINES
  *		ExecTee
  *		ExecInitTee
  *		ExecEndTee
  *
- * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/executor/Attic/nodeTee.c,v 1.26 1998/12/14 05:18:51 scrappy Exp $
+ *  $Id: nodeTee.c,v 1.27 1998/12/14 06:50:22 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
diff --git a/src/backend/libpq/be-dumpdata.c b/src/backend/libpq/be-dumpdata.c
index 8ea0e53cc0263187c1572cd006f656dd4b669f53..116fb0c80bf382b9abc209d822fb10333e4d8d65 100644
--- a/src/backend/libpq/be-dumpdata.c
+++ b/src/backend/libpq/be-dumpdata.c
@@ -6,9 +6,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- *
- * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/libpq/Attic/be-dumpdata.c,v 1.18 1998/11/27 19:52:05 vadim Exp $
+ *  $Id: be-dumpdata.c,v 1.19 1998/12/14 06:50:23 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -132,8 +130,8 @@ static u_int be_portalcnt = 0;
 PortalEntry *
 be_newportal(void)
 {
-	PortalEntry *entry;
-	char		buf[PortalNameLength];
+	PortalEntry	*entry;
+	char				buf[PortalNameLength];
 
 	/* ----------------
 	 *	generate a new name
@@ -142,7 +140,7 @@ be_newportal(void)
 	if (be_portalcnt == 0)
 		be_portaloid = newoid();
 	be_portalcnt++;
-	sprintf(buf, "be_%d_%d", be_portaloid, be_portalcnt);
+	snprintf(buf, PortalNameLength, "be_%d_%d", be_portaloid, be_portalcnt);
 
 	/* ----------------
 	 *	initialize the new portal entry and keep track
diff --git a/src/backend/libpq/crypt.c b/src/backend/libpq/crypt.c
index 50ef9d4ca9f9a30bd51b6918c66d40507e254715..92f70c5acb99386ef417064b6d65357f67b6d994 100644
--- a/src/backend/libpq/crypt.c
+++ b/src/backend/libpq/crypt.c
@@ -1,14 +1,15 @@
 /*-------------------------------------------------------------------------
  *
  * crypt.c--
- *		  Look into pg_shadow and check the encrypted password with the one
- *		  passed in from the frontend.
+ *	Look into pg_shadow and check the encrypted password with 
+ *	the one passed in from the frontend.
  *
  * Modification History
  *
  * Dec 17, 1997 - Todd A. Brandys
  *	Orignal Version Completed.
  *
+ * $Id: crypt.c,v 1.13 1998/12/14 06:50:24 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -37,13 +38,12 @@ char *
 crypt_getpwdfilename()
 {
 
-	static char *pfnam = NULL;
+	static char	*pfnam = NULL;
+	int					bufsize;
 
-	if (!pfnam)
-	{
-		pfnam = (char *) malloc(strlen(DataDir) + strlen(CRYPT_PWD_FILE) + 2);
-		sprintf(pfnam, "%s/%s", DataDir, CRYPT_PWD_FILE);
-	}
+	bufsize = strlen(DataDir) + strlen(CRYPT_PWD_FILE) + 2;
+	pfnam = (char *) palloc(bufsize);
+	snprintf(pfnam, bufsize, "%s/%s", DataDir, CRYPT_PWD_FILE);
 
 	return pfnam;
 }
@@ -54,16 +54,14 @@ char *
 crypt_getpwdreloadfilename()
 {
 
-	static char *rpfnam = NULL;
+	static char	*rpfnam = NULL;
+	char				*pwdfilename;
+	int					bufsize;
 
-	if (!rpfnam)
-	{
-		char	   *pwdfilename;
-
-		pwdfilename = crypt_getpwdfilename();
-		rpfnam = (char *) malloc(strlen(pwdfilename) + strlen(CRYPT_PWD_RELOAD_SUFX) + 1);
-		sprintf(rpfnam, "%s%s", pwdfilename, CRYPT_PWD_RELOAD_SUFX);
-	}
+	pwdfilename = crypt_getpwdfilename();
+	bufsize = strlen(pwdfilename) + strlen(CRYPT_PWD_RELOAD_SUFX) + 1;
+	rpfnam = (char *) palloc(bufsize);
+	snprintf(rpfnam, bufsize, "%s%s", pwdfilename, CRYPT_PWD_RELOAD_SUFX);
 
 	return rpfnam;
 }
@@ -145,8 +143,10 @@ crypt_loadpwdfile()
 		{						/* free the old data only if this is a
 								 * reload */
 			while (pwd_cache_count--)
-				free((void *) pwd_cache[pwd_cache_count]);
-			free((void *) pwd_cache);
+			{
+				pfree((void *) pwd_cache[pwd_cache_count]);
+			}
+			pfree((void *) pwd_cache);
 			pwd_cache = NULL;
 			pwd_cache_count = 0;
 		}
@@ -168,7 +168,7 @@ crypt_loadpwdfile()
 				buffer[result] = '\0';
 
 			pwd_cache = (char **) realloc((void *) pwd_cache, sizeof(char *) * (pwd_cache_count + 1));
-			pwd_cache[pwd_cache_count++] = strdup(buffer);
+			pwd_cache[pwd_cache_count++] = pstrdup(buffer);
 		}
 		fclose(pwd_file);
 
@@ -200,7 +200,7 @@ crypt_parsepwdentry(char *buffer, char **pwd, char **valdate)
 	 * store a copy of user password to return
 	 */
 	count = strcspn(parse, CRYPT_PWD_FILE_SEPSTR);
-	*pwd = (char *) malloc(count + 1);
+	*pwd = (char *) palloc(count + 1);
 	strncpy(*pwd, parse, count);
 	(*pwd)[count] = '\0';
 	parse += (count + 1);
@@ -209,7 +209,7 @@ crypt_parsepwdentry(char *buffer, char **pwd, char **valdate)
 	 * store a copy of date login becomes invalid
 	 */
 	count = strcspn(parse, CRYPT_PWD_FILE_SEPSTR);
-	*valdate = (char *) malloc(count + 1);
+	*valdate = (char *) palloc(count + 1);
 	strncpy(*valdate, parse, count);
 	(*valdate)[count] = '\0';
 	parse += (count + 1);
@@ -222,9 +222,9 @@ int
 crypt_getloginfo(const char *user, char **passwd, char **valuntil)
 {
 
-	char	   *pwd;
-	char	   *valdate;
-	void	   *fakeout;
+	char	*pwd,
+				*valdate;
+	void	*fakeout;
 
 	*passwd = NULL;
 	*valuntil = NULL;
@@ -232,10 +232,10 @@ crypt_getloginfo(const char *user, char **passwd, char **valuntil)
 
 	if (pwd_cache)
 	{
-		char	  **pwd_entry;
-		char		user_search[NAMEDATALEN + 2];
+		char  **pwd_entry;
+		char	user_search[NAMEDATALEN + 2];
 
-		sprintf(user_search, "%s\t", user);
+		snprintf(user_search, NAMEDATALEN + 2, "%s\t", user);
 		fakeout = (void *) &user_search;
 		if ((pwd_entry = (char **) bsearch((void *) &fakeout, (void *) pwd_cache, pwd_cache_count, sizeof(char *), compar_user)))
 		{
@@ -253,56 +253,32 @@ crypt_getloginfo(const char *user, char **passwd, char **valuntil)
 
 /*-------------------------------------------------------------------------*/
 
-#if 0
-MsgType
-crypt_salt(const char *user)
-{
-
-	char	   *passwd;
-	char	   *valuntil;
-
-	if (crypt_getloginfo(user, &passwd, &valuntil) == STATUS_ERROR)
-		return STARTUP_UNSALT_MSG;
-
-	if (passwd == NULL || *passwd == '\0' || !strcmp(passwd, "\\N"))
-	{
-		if (passwd)
-			free((void *) passwd);
-		if (valuntil)
-			free((void *) valuntil);
-		return STARTUP_UNSALT_MSG;
-	}
-
-	free((void *) passwd);
-	if (valuntil)
-		free((void *) valuntil);
-	return STARTUP_SALT_MSG;
-}
-
-#endif
-
-/*-------------------------------------------------------------------------*/
-
 int
 crypt_verify(Port *port, const char *user, const char *pgpass)
 {
 
-	char	   *passwd;
-	char	   *valuntil;
-	char	   *crypt_pwd;
-	int			retval = STATUS_ERROR;
-	AbsoluteTime vuntil,
-				current;
+	char					*passwd,
+								*valuntil,
+								*crypt_pwd;
+	int						retval = STATUS_ERROR;
+	AbsoluteTime	vuntil,
+								current;
 
 	if (crypt_getloginfo(user, &passwd, &valuntil) == STATUS_ERROR)
+	{
 		return STATUS_ERROR;
+	}
 
 	if (passwd == NULL || *passwd == '\0')
 	{
 		if (passwd)
-			free((void *) passwd);
+		{
+			pfree((void *) passwd);
+		}
 		if (valuntil)
-			free((void *) valuntil);
+		{
+			pfree((void *) valuntil);
+		}
 		return STATUS_ERROR;
 	}
 
@@ -311,28 +287,38 @@ crypt_verify(Port *port, const char *user, const char *pgpass)
 	 * authentication method being used for this connection.
 	 */
 
-	crypt_pwd = (port->auth_method == uaCrypt ? crypt(passwd, port->salt) : passwd);
+	crypt_pwd = 
+			(port->auth_method == uaCrypt ? crypt(passwd, port->salt) : passwd);
 
 	if (!strcmp(pgpass, crypt_pwd))
 	{
-
 		/*
 		 * check here to be sure we are not past valuntil
 		 */
 		if (!valuntil || strcmp(valuntil, "\\N") == 0)
+		{
 			vuntil = INVALID_ABSTIME;
+		}
 		else
+		{
 			vuntil = nabstimein(valuntil);
+		}
 		current = GetCurrentAbsoluteTime();
 		if (vuntil != INVALID_ABSTIME && vuntil < current)
+		{
 			retval = STATUS_ERROR;
+		}
 		else
+		{
 			retval = STATUS_OK;
+		}
 	}
 
-	free((void *) passwd);
+	pfree((void *) passwd);
 	if (valuntil)
-		free((void *) valuntil);
+	{
+		pfree((void *) valuntil);
+	}
 
 	return retval;
 }
diff --git a/src/backend/libpq/hba.c b/src/backend/libpq/hba.c
index 68d55e0f433fa7e5a6c3dfed961bc3640e3e0178..daa4716e30b27395d8f479495892a03d3d280045 100644
--- a/src/backend/libpq/hba.c
+++ b/src/backend/libpq/hba.c
@@ -5,9 +5,7 @@
  *	  wherein you authenticate a user by seeing what IP address the system
  *	  says he comes from and possibly using ident).
  *
- *
- * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/libpq/hba.c,v 1.36 1998/10/02 16:18:20 momjian Exp $
+ *  $Id: hba.c,v 1.37 1998/12/14 06:50:25 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -287,7 +285,7 @@ process_hba_record(FILE *file, SockAddr *raddr, const char *user,
 	return;
 
 syntax:
-	sprintf(PQerrormsg,
+	snprintf(PQerrormsg, ERROR_MSG_LENGTH,
 			"process_hba_record: invalid syntax in pg_hba.conf file\n");
 
 	fputs(PQerrormsg, stderr);
@@ -358,29 +356,29 @@ static void
 find_hba_entry(SockAddr *raddr, const char *user, const char *database,
 			   bool *host_ok_p, UserAuth *userauth_p, char *auth_arg)
 {
-/*--------------------------------------------------------------------------
-  Read the config file and find an entry that allows connection from
-  host "*raddr" to database "database".  If found, return *host_ok_p == true
-  and *userauth_p and *auth_arg representing the contents of that entry.
-
-  When a record has invalid syntax, we either ignore it or reject the
-  connection (depending on where it's invalid).  No message or anything.
-  We need to fix that some day.
-
-  If we don't find or can't access the config file, we issue an error
-  message and deny the connection.
-
-  If we find a file by the old name of the config file (pg_hba), we issue
-  an error message because it probably needs to be converted.  He didn't
-  follow directions and just installed his old hba file in the new database
-  system.
-
----------------------------------------------------------------------------*/
-	int			fd;
-
-	FILE	   *file;			/* The config file we have to read */
+/*
+ * Read the config file and find an entry that allows connection from
+ * host "*raddr" to database "database".  If found, return *host_ok_p == true
+ * and *userauth_p and *auth_arg representing the contents of that entry.
+ *
+ * When a record has invalid syntax, we either ignore it or reject the
+ * connection (depending on where it's invalid).  No message or anything.
+ * We need to fix that some day.
+ *
+ * If we don't find or can't access the config file, we issue an error
+ * message and deny the connection.
+ *
+ * If we find a file by the old name of the config file (pg_hba), we issue
+ * an error message because it probably needs to be converted.  He didn't
+ * follow directions and just installed his old hba file in the new database
+ * system.
+ *
+ */
 
-	char	   *old_conf_file;
+	int		fd,
+				bufsize;
+	FILE	*file;			/* The config file we have to read */
+	char	*old_conf_file;
 
 	/* The name of old config file that better not exist. */
 
@@ -388,15 +386,15 @@ find_hba_entry(SockAddr *raddr, const char *user, const char *database,
 
 
 	/* put together the full pathname to the old config file */
-	old_conf_file = (char *) palloc((strlen(DataDir) +
-							  strlen(OLD_CONF_FILE) + 2) * sizeof(char));
-	sprintf(old_conf_file, "%s/%s", DataDir, OLD_CONF_FILE);
+	bufsize = (strlen(DataDir) + strlen(OLD_CONF_FILE) + 2) * sizeof(char);
+	old_conf_file = (char *) palloc(bufsize);
+	snprintf(old_conf_file, bufsize, "%s/%s", DataDir, OLD_CONF_FILE);
 
 	if ((fd = open(old_conf_file, O_RDONLY, 0)) != -1)
 	{
 		/* Old config file exists.	Tell this guy he needs to upgrade. */
 		close(fd);
-		sprintf(PQerrormsg,
+		snprintf(PQerrormsg, ERROR_MSG_LENGTH,
 		  "A file exists by the name used for host-based authentication "
 		   "in prior releases of Postgres (%s).  The name and format of "
 		   "the configuration file have changed, so this file should be "
@@ -407,22 +405,21 @@ find_hba_entry(SockAddr *raddr, const char *user, const char *database,
 	}
 	else
 	{
-		char	   *conf_file;	/* The name of the config file we have to
-								 * read */
+		char	*conf_file;	/* The name of the config file we have to read */
 
 		/* put together the full pathname to the config file */
-		conf_file = (char *) palloc((strlen(DataDir) +
-								  strlen(CONF_FILE) + 2) * sizeof(char));
-		sprintf(conf_file, "%s/%s", DataDir, CONF_FILE);
+		bufsize = (strlen(DataDir) + strlen(CONF_FILE) + 2) * sizeof(char);
+		conf_file = (char *) palloc(bufsize);
+		snprintf(conf_file, bufsize, "%s/%s", DataDir, CONF_FILE);
 
 		file = AllocateFile(conf_file, "r");
 		if (file == NULL)
 		{
 			/* The open of the config file failed.	*/
 
-			sprintf(PQerrormsg,
-				 "find_hba_entry: Host-based authentication config file "
-				"does not exist or permissions are not setup correctly! "
+			snprintf(PQerrormsg, ERROR_MSG_LENGTH,
+					"find_hba_entry: Host-based authentication config file "
+					"does not exist or permissions are not setup correctly! "
 					"Unable to open file \"%s\".\n",
 					conf_file);
 			fputs(PQerrormsg, stderr);
@@ -430,8 +427,8 @@ find_hba_entry(SockAddr *raddr, const char *user, const char *database,
 		}
 		else
 		{
-			process_open_config_file(file, raddr, user, database, host_ok_p, userauth_p,
-									 auth_arg);
+			process_open_config_file(file, raddr, user, database, host_ok_p, 
+					userauth_p, auth_arg);
 			FreeFile(file);
 		}
 		pfree(conf_file);
@@ -545,18 +542,15 @@ ident(const struct in_addr remote_ip_addr, const struct in_addr local_ip_addr,
   *ident_failed == true (and *ident_username undefined).
 ----------------------------------------------------------------------------*/
 
-	int			sock_fd;
-
-	/* File descriptor for socket on which we talk to Ident */
 
-	int			rc;				/* Return code from a locally called
-								 * function */
+	int	sock_fd,	/* File descriptor for socket on which we talk to Ident */
+			rc;				/* Return code from a locally called function */
 
 	sock_fd = socket(AF_INET, SOCK_STREAM, IPPROTO_IP);
 	if (sock_fd == -1)
 	{
-		sprintf(PQerrormsg,
-			 "Failed to create socket on which to talk to Ident server. "
+		snprintf(PQerrormsg, ERROR_MSG_LENGTH, 
+				"Failed to create socket on which to talk to Ident server. "
 				"socket() returned errno = %s (%d)\n",
 				strerror(errno), errno);
 		fputs(PQerrormsg, stderr);
@@ -592,8 +586,8 @@ ident(const struct in_addr remote_ip_addr, const struct in_addr local_ip_addr,
 		}
 		if (rc != 0)
 		{
-			sprintf(PQerrormsg,
-				"Unable to connect to Ident server on the host which is "
+			snprintf(PQerrormsg, ERROR_MSG_LENGTH,
+					"Unable to connect to Ident server on the host which is "
 					"trying to connect to Postgres "
 					"(IP address %s, Port %d). "
 					"errno = %s (%d)\n",
@@ -604,15 +598,15 @@ ident(const struct in_addr remote_ip_addr, const struct in_addr local_ip_addr,
 		}
 		else
 		{
-			char		ident_query[80];
+			char	ident_query[80];
 
 			/* The query we send to the Ident server */
-			sprintf(ident_query, "%d,%d\n",
+			snprintf(ident_query, 80, "%d,%d\n",
 					ntohs(remote_port), ntohs(local_port));
 			rc = send(sock_fd, ident_query, strlen(ident_query), 0);
 			if (rc < 0)
 			{
-				sprintf(PQerrormsg,
+				snprintf(PQerrormsg, ERROR_MSG_LENGTH,
 						"Unable to send query to Ident server on the host which is "
 					  "trying to connect to Postgres (Host %s, Port %d),"
 						"even though we successfully connected to it.  "
@@ -624,16 +618,16 @@ ident(const struct in_addr remote_ip_addr, const struct in_addr local_ip_addr,
 			}
 			else
 			{
-				char		ident_response[80 + IDENT_USERNAME_MAX];
+				char	ident_response[80 + IDENT_USERNAME_MAX];
 
 				rc = recv(sock_fd, ident_response, sizeof(ident_response) - 1, 0);
 				if (rc < 0)
 				{
-					sprintf(PQerrormsg,
-						  "Unable to receive response from Ident server "
+					snprintf(PQerrormsg, ERROR_MSG_LENGTH,
+							"Unable to receive response from Ident server "
 							"on the host which is "
-					  "trying to connect to Postgres (Host %s, Port %d),"
-					"even though we successfully sent our query to it.  "
+							"trying to connect to Postgres (Host %s, Port %d),"
+							"even though we successfully sent our query to it.  "
 							"errno = %s (%d)\n",
 							inet_ntoa(remote_ip_addr), IDENT_PORT,
 							strerror(errno), errno);
@@ -694,7 +688,8 @@ parse_map_record(FILE *file,
 				return;
 			}
 		}
-		sprintf(PQerrormsg, "Incomplete line in pg_ident: %s", file_map);
+		snprintf(PQerrormsg, ERROR_MSG_LENGTH, 
+				"Incomplete line in pg_ident: %s", file_map);
 		fputs(PQerrormsg, stderr);
 		pqdebug("%s", PQerrormsg);
 	}
@@ -776,10 +771,10 @@ verify_against_usermap(const char *pguser,
 	if (usermap_name[0] == '\0')
 	{
 		*checks_out_p = false;
-		sprintf(PQerrormsg,
+		snprintf(PQerrormsg, ERROR_MSG_LENGTH,
 				"verify_against_usermap: hba configuration file does not "
-		   "have the usermap field filled in in the entry that pertains "
-		  "to this connection.  That field is essential for Ident-based "
+				"have the usermap field filled in in the entry that pertains "
+				"to this connection.  That field is essential for Ident-based "
 				"authentication.\n");
 		fputs(PQerrormsg, stderr);
 		pqdebug("%s", PQerrormsg);
@@ -787,21 +782,24 @@ verify_against_usermap(const char *pguser,
 	else if (strcmp(usermap_name, "sameuser") == 0)
 	{
 		if (strcmp(ident_username, pguser) == 0)
+		{
 			*checks_out_p = true;
+		}
 		else
+		{
 			*checks_out_p = false;
+		}
 	}
 	else
 	{
-		FILE	   *file;		/* The map file we have to read */
-
-		char	   *map_file;	/* The name of the map file we have to
-								 * read */
+		FILE	*file;		/* The map file we have to read */
+		char	*map_file;	/* The name of the map file we have to read */
+		int		bufsize;
 
 		/* put together the full pathname to the map file */
-		map_file = (char *) palloc((strlen(DataDir) +
-									strlen(MAP_FILE) + 2) * sizeof(char));
-		sprintf(map_file, "%s/%s", DataDir, MAP_FILE);
+		bufsize = (strlen(DataDir) + strlen(MAP_FILE) + 2) * sizeof(char);
+		map_file = (char *) palloc(bufsize);
+		snprintf(map_file, bufsize, "%s/%s", DataDir, MAP_FILE);
 
 		file = AllocateFile(map_file, "r");
 		if (file == NULL)
@@ -810,10 +808,10 @@ verify_against_usermap(const char *pguser,
 
 			*checks_out_p = false;
 
-			sprintf(PQerrormsg,
-				  "verify_against_usermap: usermap file for Ident-based "
+			snprintf(PQerrormsg, ERROR_MSG_LENGTH,
+					"verify_against_usermap: usermap file for Ident-based "
 					"authentication "
-				"does not exist or permissions are not setup correctly! "
+					"does not exist or permissions are not setup correctly! "
 					"Unable to open file \"%s\".\n",
 					map_file);
 			fputs(PQerrormsg, stderr);
@@ -955,27 +953,31 @@ InRange(char *buf, int host)
 void
 GetCharSetByHost(char *TableName, int host, const char *DataDir)
 {
-	FILE	   *file;
-	char		buf[MAX_TOKEN],
+	FILE	*file;
+	char	buf[MAX_TOKEN],
 				BaseCharset[MAX_TOKEN],
 				OrigCharset[MAX_TOKEN],
 				DestCharset[MAX_TOKEN],
-				HostCharset[MAX_TOKEN];
-	char		c,
-				eof = false;
-	char	   *map_file;
-	int			key = 0,
-				i;
-	struct CharsetItem *ChArray[MAX_CHARSETS];
-	int			ChIndex = 0;
+				HostCharset[MAX_TOKEN],
+				c,
+				eof = false,
+				*map_file;
+	int		key = 0,
+				ChIndex = 0,
+				i,
+				bufsize;
+
+	struct CharsetItem	*ChArray[MAX_CHARSETS];
 
 	*TableName = '\0';
-	map_file = (char *) malloc((strlen(DataDir) +
-								strlen(CHARSET_FILE) + 2) * sizeof(char));
-	sprintf(map_file, "%s/%s", DataDir, CHARSET_FILE);
+	bufsize = (strlen(DataDir) + strlen(CHARSET_FILE) + 2) * sizeof(char);
+	map_file = (char *) palloc(bufsize);
+	snprintf(map_file, bufsize, "%s/%s", DataDir, CHARSET_FILE);
 	file = fopen(map_file, "r");
 	if (file == NULL)
+	{
 		return;
+	}
 	while (!eof)
 	{
 		c = getc(file);
@@ -1035,7 +1037,8 @@ GetCharSetByHost(char *TableName, int host, const char *DataDir)
 									next_token(file, buf, sizeof(buf));
 									if (buf[0] != '\0')
 									{
-										ChArray[ChIndex] = (struct CharsetItem *) malloc(sizeof(struct CharsetItem));
+										ChArray[ChIndex] = 
+												(struct CharsetItem *) palloc(sizeof(struct CharsetItem));
 										strcpy(ChArray[ChIndex]->Orig, OrigCharset);
 										strcpy(ChArray[ChIndex]->Dest, DestCharset);
 										strcpy(ChArray[ChIndex]->Table, buf);
@@ -1051,14 +1054,14 @@ GetCharSetByHost(char *TableName, int host, const char *DataDir)
 		}
 	}
 	fclose(file);
-	free(map_file);
+	pfree(map_file);
 
 	for (i = 0; i < ChIndex; i++)
 	{
 		if (!strcasecmp(BaseCharset, ChArray[i]->Orig) &&
 			!strcasecmp(HostCharset, ChArray[i]->Dest))
 			strncpy(TableName, ChArray[i]->Table, 79);
-		free((struct CharsetItem *) ChArray[i]);
+		pfree((struct CharsetItem *) ChArray[i]);
 	}
 }
 
diff --git a/src/backend/libpq/password.c b/src/backend/libpq/password.c
index af3a4c6f7e2ab51b8598e4adca590a218245dfea..e6c1d816a8baaa7128cfa1b1b15d39d2b9fc836d 100644
--- a/src/backend/libpq/password.c
+++ b/src/backend/libpq/password.c
@@ -1,3 +1,10 @@
+/* 
+ * Copyright (c) 1994, Regents of the University of California
+ *
+ * $Id: password.c,v 1.19 1998/12/14 06:50:26 scrappy Exp $ 
+ *
+ */
+
 #include <postgres.h>
 #include <miscadmin.h>
 #include <libpq/password.h>
@@ -23,7 +30,7 @@ verify_password(char *auth_arg, char *user, char *password)
 	pw_file = AllocateFile(pw_file_fullname, "r");
 	if (!pw_file)
 	{
-		sprintf(PQerrormsg,
+		snprintf(PQerrormsg, ERROR_MSG_LENGTH,
 				"verify_password: couldn't open password file '%s'\n",
 				pw_file_fullname);
 		fputs(PQerrormsg, stderr);
@@ -68,7 +75,7 @@ verify_password(char *auth_arg, char *user, char *password)
 				return STATUS_OK;
 			}
 
-			sprintf(PQerrormsg,
+			snprintf(PQerrormsg, ERROR_MSG_LENGTH,
 					"verify_password: password mismatch for '%s'.\n",
 					user);
 			fputs(PQerrormsg, stderr);
@@ -80,7 +87,7 @@ verify_password(char *auth_arg, char *user, char *password)
 		}
 	}
 
-	sprintf(PQerrormsg,
+	snprintf(PQerrormsg, ERROR_MSG_LENGTH,
 			"verify_password: user '%s' not found in password file.\n",
 			user);
 	fputs(PQerrormsg, stderr);
diff --git a/src/backend/libpq/portal.c b/src/backend/libpq/portal.c
index 3fb02b03ec78991d20ebbf9d99f8a9c5033eae83..d116a3c12cc336ecaa5e08e6c25f7ed6176f74b4 100644
--- a/src/backend/libpq/portal.c
+++ b/src/backend/libpq/portal.c
@@ -5,9 +5,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- *
- * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/libpq/Attic/portal.c,v 1.17 1998/09/01 04:28:50 momjian Exp $
+ *  $Id: portal.c,v 1.18 1998/12/14 06:50:26 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -75,8 +73,8 @@ in_range(char *msg, int value, int min, int max)
 {
 	if (value < min || value >= max)
 	{
-		sprintf(PQerrormsg, "FATAL: %s, %d is not in range [%d,%d)\n",
-				msg, value, min, max);
+		snprintf(PQerrormsg, ERROR_MSG_LENGTH,
+			"FATAL: %s, %d is not in range [%d,%d)\n", msg, value, min, max);
 		pqdebug("%s", PQerrormsg);
 		fputs(PQerrormsg, stderr);
 		return 0;
@@ -89,7 +87,7 @@ valid_pointer(char *msg, void *ptr)
 {
 	if (!ptr)
 	{
-		sprintf(PQerrormsg, "FATAL: %s\n", msg);
+		snprintf(PQerrormsg, ERROR_MSG_LENGTH, "FATAL: %s\n", msg);
 		pqdebug("%s", PQerrormsg);
 		fputs(PQerrormsg, stderr);
 		return 0;
diff --git a/src/backend/libpq/pqcomm.c b/src/backend/libpq/pqcomm.c
index 623e8a1d10cedafb56ecd0358fcda274d3f6c221..b4bab9c8991b1bf86da8f373e95064c809ebcf28 100644
--- a/src/backend/libpq/pqcomm.c
+++ b/src/backend/libpq/pqcomm.c
@@ -5,9 +5,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- *
- * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/libpq/pqcomm.c,v 1.58 1998/11/29 01:47:42 tgl Exp $
+ *  $Id: pqcomm.c,v 1.59 1998/12/14 06:50:27 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -77,9 +75,9 @@
  *		declarations
  * ----------------
  */
-FILE	   *Pfout,
-		   *Pfin;
-FILE	   *Pfdebug;			/* debugging libpq */
+FILE	*Pfout,
+			*Pfin,
+			*Pfdebug;			/* debugging libpq */
 
 /* --------------------------------
  *		pq_init - open portal file descriptors
@@ -315,7 +313,7 @@ pq_getint(int b)
 
 	if (status)
 	{
-		sprintf(PQerrormsg,
+		snprintf(PQerrormsg, ERROR_MSG_LENGTH,
 				"FATAL: pq_getint failed: errno=%d\n", errno);
 		fputs(PQerrormsg, stderr);
 		pqdebug("%s", PQerrormsg);
@@ -341,7 +339,7 @@ pq_putstr(char *s)
 	if			(pqPutString(s, Pfout))
 #endif
 	{
-		sprintf(PQerrormsg,
+		snprintf(PQerrormsg, ERROR_MSG_LENGTH,
 				"FATAL: pq_putstr: fputs() failed: errno=%d\n", errno);
 		fputs(PQerrormsg, stderr);
 		pqdebug("%s", PQerrormsg);
@@ -357,7 +355,7 @@ pq_putnchar(char *s, int n)
 {
 	if (pqPutNBytes(s, n, Pfout))
 	{
-		sprintf(PQerrormsg,
+		snprintf(PQerrormsg, ERROR_MSG_LENGTH,
 				"FATAL: pq_putnchar: fputc() failed: errno=%d\n",
 				errno);
 		fputs(PQerrormsg, stderr);
@@ -398,7 +396,7 @@ pq_putint(int i, int b)
 
 	if (status)
 	{
-		sprintf(PQerrormsg,
+		snprintf(PQerrormsg, ERROR_MSG_LENGTH,
 				"FATAL: pq_putint failed: errno=%d\n", errno);
 		fputs(PQerrormsg, stderr);
 		pqdebug("%s", PQerrormsg);
@@ -431,7 +429,7 @@ pq_getinaddr(struct sockaddr_in * sin,
 			}
 			if (hs->h_addrtype != AF_INET)
 			{
-				sprintf(PQerrormsg,
+				snprintf(PQerrormsg, ERROR_MSG_LENGTH,
 						"FATAL: pq_getinaddr: %s not on Internet\n",
 						host);
 				fputs(PQerrormsg, stderr);
@@ -461,7 +459,7 @@ pq_getinserv(struct sockaddr_in * sin, char *host, char *serv)
 		return pq_getinaddr(sin, host, atoi(serv));
 	if (!(ss = getservbyname(serv, NULL)))
 	{
-		sprintf(PQerrormsg,
+		snprintf(PQerrormsg, ERROR_MSG_LENGTH,
 				"FATAL: pq_getinserv: unknown service: %s\n",
 				serv);
 		fputs(PQerrormsg, stderr);
@@ -521,7 +519,7 @@ StreamServerPort(char *hostName, short portName, int *fdP)
 
 	if ((fd = socket(family, SOCK_STREAM, 0)) < 0)
 	{
-		sprintf(PQerrormsg,
+		snprintf(PQerrormsg, ERROR_MSG_LENGTH,
 				"FATAL: StreamServerPort: socket() failed: errno=%d\n",
 				errno);
 		fputs(PQerrormsg, stderr);
@@ -531,7 +529,7 @@ StreamServerPort(char *hostName, short portName, int *fdP)
 	if ((setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, (char *) &one,
 					sizeof(one))) == -1)
 	{
-		sprintf(PQerrormsg,
+		snprintf(PQerrormsg, ERROR_MSG_LENGTH, 
 				"FATAL: StreamServerPort: setsockopt (SO_REUSEADDR) failed: errno=%d\n",
 				errno);
 		fputs(PQerrormsg, stderr);
@@ -576,18 +574,20 @@ StreamServerPort(char *hostName, short portName, int *fdP)
 	err = bind(fd, &saddr.sa, len);
 	if (err < 0)
 	{
-		sprintf(PQerrormsg,
-				"FATAL: StreamServerPort: bind() failed: errno=%d\n",
-				errno);
+		snprintf(PQerrormsg, ERROR_MSG_LENGTH,
+				"FATAL: StreamServerPort: bind() failed: errno=%d\n", errno);
 		pqdebug("%s", PQerrormsg);
 		strcat(PQerrormsg,
 			   "\tIs another postmaster already running on that port?\n");
 		if (family == AF_UNIX)
-			sprintf(PQerrormsg + strlen(PQerrormsg),
-					"\tIf not, remove socket node (%s) and retry.\n",
-					sock_path);
+		{
+			snprintf(PQerrormsg + strlen(PQerrormsg), ERROR_MSG_LENGTH,
+					"\tIf not, remove socket node (%s) and retry.\n", sock_path);
+		}
 		else
+		{
 			strcat(PQerrormsg, "\tIf not, wait a few seconds and retry.\n");
+		}
 		fputs(PQerrormsg, stderr);
 		return STATUS_ERROR;
 	}
@@ -723,9 +723,8 @@ StreamOpen(char *hostName, short portName, Port *port)
 	{
 		if (!(hp = gethostbyname(hostName)) || hp->h_addrtype != AF_INET)
 		{
-			sprintf(PQerrormsg,
-					"FATAL: StreamOpen: unknown hostname: %s\n",
-					hostName);
+			snprintf(PQerrormsg, ERROR_MSG_LENGTH,
+					"FATAL: StreamOpen: unknown hostname: %s\n", hostName);
 			fputs(PQerrormsg, stderr);
 			pqdebug("%s", PQerrormsg);
 			return STATUS_ERROR;
@@ -745,9 +744,8 @@ StreamOpen(char *hostName, short portName, Port *port)
 	/* connect to the server */
 	if ((port->sock = socket(port->raddr.sa.sa_family, SOCK_STREAM, 0)) < 0)
 	{
-		sprintf(PQerrormsg,
-				"FATAL: StreamOpen: socket() failed: errno=%d\n",
-				errno);
+		snprintf(PQerrormsg, ERROR_MSG_LENGTH,
+				"FATAL: StreamOpen: socket() failed: errno=%d\n", errno);
 		fputs(PQerrormsg, stderr);
 		pqdebug("%s", PQerrormsg);
 		return STATUS_ERROR;
@@ -755,9 +753,8 @@ StreamOpen(char *hostName, short portName, Port *port)
 	err = connect(port->sock, &port->raddr.sa, len);
 	if (err < 0)
 	{
-		sprintf(PQerrormsg,
-				"FATAL: StreamOpen: connect() failed: errno=%d\n",
-				errno);
+		snprintf(PQerrormsg, ERROR_MSG_LENGTH,
+				"FATAL: StreamOpen: connect() failed: errno=%d\n", errno);
 		fputs(PQerrormsg, stderr);
 		pqdebug("%s", PQerrormsg);
 		return STATUS_ERROR;
@@ -766,9 +763,8 @@ StreamOpen(char *hostName, short portName, Port *port)
 	/* fill in the client address */
 	if (getsockname(port->sock, &port->laddr.sa, &len) < 0)
 	{
-		sprintf(PQerrormsg,
-				"FATAL: StreamOpen: getsockname() failed: errno=%d\n",
-				errno);
+		snprintf(PQerrormsg, ERROR_MSG_LENGTH,
+				"FATAL: StreamOpen: getsockname() failed: errno=%d\n", errno);
 		fputs(PQerrormsg, stderr);
 		pqdebug("%s", PQerrormsg);
 		return STATUS_ERROR;
diff --git a/src/backend/libpq/util.c b/src/backend/libpq/util.c
index 4d573d89d3b1ea339c5acaa449746dcf7c936cd4..c9cd23641eb802e2a3d184548bd304f1041ede71 100644
--- a/src/backend/libpq/util.c
+++ b/src/backend/libpq/util.c
@@ -5,9 +5,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- *
- * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/libpq/Attic/util.c,v 1.5 1997/09/08 02:23:21 momjian Exp $
+ *  $Id: util.c,v 1.6 1998/12/14 06:50:27 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
diff --git a/src/backend/nodes/outfuncs.c b/src/backend/nodes/outfuncs.c
index d5965f73ecc9a0a0edb1ba36ae74f60fe03c2d9c..8115957e7a332d71135f582a88b13f152ff015f5 100644
--- a/src/backend/nodes/outfuncs.c
+++ b/src/backend/nodes/outfuncs.c
@@ -5,9 +5,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- *
- * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/nodes/outfuncs.c,v 1.50 1998/12/14 00:01:47 thomas Exp $
+ *  $Id: outfuncs.c,v 1.51 1998/12/14 06:50:28 scrappy Exp $
  *
  * NOTES
  *	  Every (plan) node in POSTGRES has an associated "out" routine which
diff --git a/src/backend/parser/analyze.c b/src/backend/parser/analyze.c
index 0a692bd506081404d024f6d9e96e63f5169414fd..3dc0cad8165c0e1a0dbb81b9c0931f09afff0e27 100644
--- a/src/backend/parser/analyze.c
+++ b/src/backend/parser/analyze.c
@@ -5,9 +5,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- *
- * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/parser/analyze.c,v 1.90 1998/12/04 15:34:28 thomas Exp $
+ *  $Id: analyze.c,v 1.91 1998/12/14 06:50:32 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */