*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/commands/_deadcode/Attic/version.c,v 1.3 1996/11/06 08:21:42 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/backend/commands/_deadcode/Attic/version.c,v 1.4 1997/08/12 20:15:13 momjian Exp $
*
* NOTES
* At the point the version is defined, 2 physical relations are created
if (date == NULL) {
/* no time ranges */
bname = fromRelname;
- (void) strcpy(saved_basename, (char *) bname);
+ strcpy(saved_basename, (char *) bname);
*saved_snapshot = (char)NULL;
} else {
/* version is a snapshot */
bname = fromRelname;
- (void) strcpy(saved_basename, (char *) bname);
+ strcpy(saved_basename, (char *) bname);
sprintf(saved_snapshot, "['%s']", date);
}
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/commands/async.c,v 1.14 1997/08/03 02:34:34 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/commands/async.c,v 1.15 1997/08/12 20:15:08 momjian Exp $
*
*-------------------------------------------------------------------------
*/
* to unlisten prior to dying.
*/
relnamei = malloc(NAMEDATALEN); /* persists to process exit */
- strncpy(relnamei, relname, NAMEDATALEN);
- relnamei[NAMEDATALEN-1] = '\0';
+ strNcpy(relnamei, relname, NAMEDATALEN-1);
on_exitpg(Async_UnlistenOnExit, (caddr_t) relnamei);
}
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/commands/Attic/creatinh.c,v 1.8 1997/08/03 02:34:53 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/commands/Attic/creatinh.c,v 1.9 1997/08/12 20:15:10 momjian Exp $
*
*-------------------------------------------------------------------------
*/
if ( strlen(stmt->relname) >= NAMEDATALEN)
elog(WARN, "the relation name %s is >= %d characters long", stmt->relname,
NAMEDATALEN);
- strncpy(relname,stmt->relname,NAMEDATALEN); /* make full length for copy */
- relname[NAMEDATALEN-1] = '\0';
+ strNcpy(relname,stmt->relname,NAMEDATALEN-1); /* make full length for copy */
/* ----------------
* Handle parameters
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/commands/Attic/recipe.c,v 1.5 1996/11/06 08:21:37 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/backend/commands/Attic/recipe.c,v 1.6 1997/08/12 20:15:11 momjian Exp $
*
*-------------------------------------------------------------------------
*/
if ((strlen(rte->refname) < 4) ||
(strcmp (rte->relname, rte->refname) != 0))
continue;
- strncpy(prefix,rte->refname,4);
- prefix[4] = '\0';
+ strNcpy(prefix,rte->refname,4);
if (strcmp(prefix,"tee_") == 0) {
/* okay, we found a tee node entry in the range table */
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/commands/Attic/rename.c,v 1.4 1996/11/10 02:59:42 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/commands/Attic/rename.c,v 1.5 1997/08/12 20:15:12 momjian Exp $
*
*-------------------------------------------------------------------------
*/
}
/* rename the directory first, so if this fails the rename's not done */
- (void) strcpy(oldpath, relpath(oldrelname));
- (void) strcpy(newpath, relpath(newrelname));
+ strcpy(oldpath, relpath(oldrelname));
+ strcpy(newpath, relpath(newrelname));
if (rename(oldpath, newpath) < 0)
elog(WARN, "renamerel: unable to rename file: %m");
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/lib/stringinfo.c,v 1.2 1996/11/06 08:27:16 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/backend/lib/stringinfo.c,v 1.3 1997/08/12 20:15:15 momjian Exp $
*
*-------------------------------------------------------------------------
*/
* NOTE: this is a text string (i.e. printable characters)
* so 'strcat' will do the job (no need to use 'bcopy' et all...)
*/
- (void) strcat(str->data, buffer);
+ strcat(str->data, buffer);
str->len += buflen;
}
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/libpq/auth.c,v 1.11 1997/03/25 00:54:15 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/backend/libpq/auth.c,v 1.12 1997/08/12 20:15:17 momjian Exp $
*
*-------------------------------------------------------------------------
*/
* easy, we construct our own name and parse it. See note on
* canonicalization above.
*/
- (void) strcpy(servbuf, PG_KRB_SRVNAM);
+ strcpy(servbuf, PG_KRB_SRVNAM);
*(hostp = servbuf + (sizeof(PG_KRB_SRVNAM) - 1)) = '/';
if (gethostname(++hostp, MAXHOSTNAMELEN) < 0)
- (void) strcpy(hostp, "localhost");
+ strcpy(hostp, "localhost");
if (hostp = strchr(hostp, '.'))
*hostp = '\0';
if (code = krb5_parse_name(servbuf, &server)) {
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/libpq/be-fsstubs.c,v 1.10 1997/06/10 13:01:32 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/libpq/be-fsstubs.c,v 1.11 1997/08/12 20:15:18 momjian Exp $
*
* NOTES
* This should be moved to a more appropriate place. It is here
/*
* open the file to be read in
*/
- strncpy(fnamebuf, VARDATA(filename), VARSIZE(filename) - VARHDRSZ);
- fnamebuf[VARSIZE(filename) - VARHDRSZ] = '\0';
+ strNcpy(fnamebuf, VARDATA(filename), VARSIZE(filename) - VARHDRSZ);
fd = open(fnamebuf, O_RDONLY, 0666);
if (fd < 0) { /* error */
elog(WARN, "be_lo_import: can't open unix file\"%s\"\n",
* open the file to be written to
*/
oumask = umask((mode_t) 0);
- strncpy(fnamebuf, VARDATA(filename), VARSIZE(filename) - VARHDRSZ);
- fnamebuf[VARSIZE(filename) - VARHDRSZ] = '\0';
+ strNcpy(fnamebuf, VARDATA(filename), VARSIZE(filename) - VARHDRSZ);
fd = open(fnamebuf, O_CREAT|O_WRONLY, 0666);
(void) umask(oumask);
if (fd < 0) { /* error */
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/libpq/Attic/be-pqexec.c,v 1.2 1996/11/06 08:48:26 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/backend/libpq/Attic/be-pqexec.c,v 1.3 1997/08/12 20:15:19 momjian Exp $
*
*-------------------------------------------------------------------------
*/
if (len <= 0) len = strlen(str);
newstr = (char *) palloc((unsigned) len+1);
- (void) strncpy(newstr, str, len);
+ strNcpy(newstr, str, len);
newstr[len] = (char) 0;
return newstr;
}
/* kill the newline */
test_pw[strlen(test_pw)-1] = '\0';
- strncpy(salt, test_pw, 2);
- salt[2] = '\0';
+ strNcpy(salt, test_pw, 2);
if(strcmp(user, test_user) == 0) {
/* we're outta here one way or the other. */
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/libpq/Attic/portal.c,v 1.4 1996/11/06 08:48:28 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/backend/libpq/Attic/portal.c,v 1.5 1997/08/12 20:15:22 momjian Exp $
*
*-------------------------------------------------------------------------
*/
for (i = 0; i < portals_array_size; ++i) {
if (portals[i] && portals[i]->portal) {
if (!rule_p || portals[i]->portal->rule_p) {
- (void) strncpy(pnames[cur_pname], portals[i]->name, PortalNameLength);
+ strncpy(pnames[cur_pname], portals[i]->name, PortalNameLength);
++cur_pname;
}
}
pqNotifyList = DLNewList();
p = (PQNotifyList*)pbuf_alloc(sizeof(PQNotifyList));
- strncpy(p->relname, relname, NAMEDATALEN);
+ strNcpy(p->relname, relname, NAMEDATALEN-1);
p->be_pid = pid;
p->valid = 1;
DLAddTail(pqNotifyList, DLNewElem(p));
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/libpq/Attic/portalbuf.c,v 1.3 1996/11/06 08:48:29 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/backend/libpq/Attic/portalbuf.c,v 1.4 1997/08/12 20:15:23 momjian Exp $
*
*-------------------------------------------------------------------------
*/
pbuf_setportalinfo(PortalEntry *entry, char *pname)
{
if (entry)
- strncpy(entry->name, pname, PortalNameLength-1);
- entry->name[PortalNameLength-1] = '\0';
+ strNcpy(entry->name, pname, PortalNameLength-1);
}
/* --------------------------------
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/libpq/pqcomm.c,v 1.17 1997/07/28 00:54:18 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/libpq/pqcomm.c,v 1.18 1997/08/12 20:15:24 momjian Exp $
*
*-------------------------------------------------------------------------
*/
void
pq_gettty(char *tp)
{
- (void) strncpy(tp, ttyname(0), 19);
+ strncpy(tp, ttyname(0), 19);
}
/* --------------------------------
"FATAL: StreamServerPort: bind() failed: errno=%d\n",
errno);
pqdebug("%s", PQerrormsg);
- (void) strcat(PQerrormsg, "\tIs another postmaster already running on that port?\n");
- (void) strcat(PQerrormsg, "\tIf not, wait a few seconds and retry.\n");
+ strcat(PQerrormsg, "\tIs another postmaster already running on that port?\n");
+ strcat(PQerrormsg, "\tIf not, wait a few seconds and retry.\n");
fputs(PQerrormsg, stderr);
return(STATUS_ERROR);
}
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/nodes/print.c,v 1.4 1997/08/03 02:35:13 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/nodes/print.c,v 1.5 1997/08/12 20:15:27 momjian Exp $
*
* HISTORY
* AUTHOR DATE MAJOR EVENT
if (IsA(p,Scan) || IsA(p,SeqScan)) {
RangeTblEntry *rte;
rte = rt_fetch(((Scan*)p)->scanrelid, parsetree->rtable);
- strncpy(extraInfo, rte->relname, NAMEDATALEN);
- extraInfo[NAMEDATALEN-1] = '\0';
+ strNcpy(extraInfo, rte->relname, NAMEDATALEN-1);
} else
if (IsA(p,IndexScan)) {
- strncpy(extraInfo,
+ strNcpy(extraInfo,
((RangeTblEntry*)(nth(((IndexScan*)p)->scan.scanrelid - 1,
parsetree->rtable)))->relname,
- NAMEDATALEN);
- extraInfo[NAMEDATALEN-1] = '\0';
+ NAMEDATALEN-1);
} else
extraInfo[0] = '\0';
if (extraInfo[0] != '\0')
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/nodes/readfuncs.c,v 1.5 1997/05/12 07:17:23 vadim Exp $
+ * $Header: /cvsroot/pgsql/src/backend/nodes/readfuncs.c,v 1.6 1997/08/12 20:15:28 momjian Exp $
*
* NOTES
* Most of the read functions for plan nodes are tested. (In fact, they
else {
NotifyStmt *n = makeNode(NotifyStmt);
n->relname = palloc(length + 1);
- strncpy(n->relname,token,length);
- n->relname[length] = '\0';
+ strNcpy(n->relname,token,length);
local_node->utilityStmt = (Node*)n;
}
local_node->uniqueFlag = NULL;
else {
local_node->uniqueFlag = palloc(length + 1);
- strncpy(local_node->uniqueFlag,token,length);
- local_node->uniqueFlag[length] = '\0';
+ strNcpy(local_node->uniqueFlag,token,length);
}
token = lsptok(NULL, &length); /* skip :targetlist */
token = lsptok(NULL, &length); /* eat :aggname */
token = lsptok(NULL, &length); /* get aggname */
local_node->aggname = (char*) palloc (length + 1);
- memset (local_node->aggname, 0, length + 1);
- strncpy (local_node->aggname, token, length);
+ strNcpy (local_node->aggname, token, length);
token = lsptok(NULL, &length); /* eat :basetype */
token = lsptok(NULL, &length); /* get basetype */
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/parser/analyze.c,v 1.30 1997/08/03 02:35:28 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/analyze.c,v 1.31 1997/08/12 20:15:31 momjian Exp $
*
*-------------------------------------------------------------------------
*/
Ident *id = makeNode(Ident);
id->name = palloc(NAMEDATALEN);
- strncpy(id->name, attr[i]->attname.data, NAMEDATALEN);
- id->name[NAMEDATALEN-1]='\0';
+ strNcpy(id->name, attr[i]->attname.data, NAMEDATALEN-1);
id->indirection = NIL;
id->isRel = false;
if (tl == NIL)
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/parser/Attic/catalog_utils.c,v 1.19 1997/07/24 20:13:01 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/Attic/catalog_utils.c,v 1.20 1997/08/12 20:15:32 momjian Exp $
*
*-------------------------------------------------------------------------
*/
*ptr++ = ' ';
}
if (argtypes[i] != 0) {
- (void) strcpy(ptr, tname(get_id_type(argtypes[i])));
+ strcpy(ptr, tname(get_id_type(argtypes[i])));
*(ptr + NAMEDATALEN) = '\0';
} else
strcpy(ptr, "opaque");
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 1.34 1997/05/22 00:24:07 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 1.35 1997/08/12 20:15:33 momjian Exp $
*
* HISTORY
* AUTHOR DATE MAJOR EVENT
relation_name: SpecialRuleRelation
{
$$ = $1;
- strncpy(saved_relname, $1, NAMEDATALEN);
- saved_relname[NAMEDATALEN-1] = '\0';
+ strNcpy(saved_relname, $1, NAMEDATALEN-1);
}
| Id
{
} else {
$$ = $1;
}
- strncpy(saved_relname, $1, NAMEDATALEN);
- saved_relname[NAMEDATALEN-1] = '\0';
+ strNcpy(saved_relname, $1, NAMEDATALEN-1);
}
;
{
static char ret[BUFSIZ];
- (void) strcpy(ret, error_message);
+ strcpy(ret, error_message);
error_message[0] = 0;
return((ret[0] == 0) ? (char *) NULL : ret);
}
* must copy the first SYMNMLEN chars and make
* sure we have a zero byte at the end.
*/
- strncpy(tmpsym, ls->l_name, SYMNMLEN);
- tmpsym[SYMNMLEN] = '\0';
+ strNcpy(tmpsym, ls->l_name, SYMNMLEN);
symname = tmpsym;
}
ep->name = strdup(symname);
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.49 1997/08/03 02:36:01 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.50 1997/08/12 20:15:42 momjian Exp $
*
* NOTES
*
if (!(hostName = getenv("PGHOST"))) {
if (gethostname(hostbuf, MAXHOSTNAMELEN) < 0)
- (void) strcpy(hostbuf, "localhost");
+ strcpy(hostbuf, "localhost");
hostName = hostbuf;
}
* were allocated.
*/
NBuffers = atol(optarg);
- (void) strcat(ExtraOptions, " -B ");
- (void) strcat(ExtraOptions, optarg);
+ strcat(ExtraOptions, " -B ");
+ strcat(ExtraOptions, optarg);
break;
case 'b':
/* Set the backend executable file to use. */
* Other options to pass to the backend on the
* command line -- useful only for debugging.
*/
- (void) strcat(ExtraOptions, " ");
- (void) strcat(ExtraOptions, optarg);
+ strcat(ExtraOptions, " ");
+ strcat(ExtraOptions, optarg);
break;
case 'p':
/* Set PGPORT by hand. */
msgType = (MsgType) ntohl(port->buf.msgtype);
- (void) strncpy(namebuf, sp.user, NAMEDATALEN);
- namebuf[NAMEDATALEN-1] = '\0';
+ strNcpy(namebuf, sp.user, NAMEDATALEN-1);
if (!namebuf[0]) {
strncpy(errormsg,
"No Postgres username specified in startup packet.",
int ac = 0;
int i;
- (void) strncpy(execbuf, Execfile, MAXPATHLEN);
- execbuf[MAXPATHLEN - 1] = '\0';
+ strncpy(execbuf, Execfile, MAXPATHLEN-1);
av[ac++] = execbuf;
/* Tell the backend it is being called from the postmaster */
/* Pass the requested debugging output file */
if (packet->tty[0]) {
- (void) strncpy(ttybuf, packet->tty, ARGV_SIZE);
+ strncpy(ttybuf, packet->tty, ARGV_SIZE);
av[ac++] = "-o";
av[ac++] = ttybuf;
}
(void) sprintf(portbuf, "-P%d", portFd);
av[ac++] = portbuf;
- (void) strncpy(argbuf, packet->options, ARGV_SIZE);
- argbuf[ARGV_SIZE] = '\0';
- (void) strncat(argbuf, ExtraOptions, ARGV_SIZE);
+ strNcpy(argbuf, packet->options, ARGV_SIZE);
+ strncat(argbuf, ExtraOptions, ARGV_SIZE);
argbuf[(2 * ARGV_SIZE)] = '\0';
split_opts(av, &ac, argbuf);
if (packet->database[0])
- (void) strncpy(dbbuf, packet->database, ARGV_SIZE);
+ strNcpy(dbbuf, packet->database, ARGV_SIZE);
else
- (void) strncpy(dbbuf, packet->user, NAMEDATALEN);
- dbbuf[ARGV_SIZE] = '\0';
+ strNcpy(dbbuf, packet->user, NAMEDATALEN-1);
av[ac++] = dbbuf;
av[ac] = (char *) NULL;
return;
}
- (void) strcpy(cs->multis + oldend - 1, cp);
+ strcpy(cs->multis + oldend - 1, cp);
cs->multis[cs->smultis - 1] = '\0';
}
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/storage/smgr/md.c,v 1.15 1997/08/03 02:36:22 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/storage/smgr/md.c,v 1.16 1997/08/12 20:15:48 momjian Exp $
*
*-------------------------------------------------------------------------
*/
** to do this.
*/
- strncpy(fname, RelationGetRelationName(reln)->data, NAMEDATALEN);
- fname[NAMEDATALEN-1] = '\0';
+ strNcpy(fname, RelationGetRelationName(reln)->data, NAMEDATALEN-1);
if (FileNameUnlink(fname) < 0)
return (SM_FAIL);
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/tcop/postgres.c,v 1.39 1997/08/06 05:38:35 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/tcop/postgres.c,v 1.40 1997/08/12 20:15:49 momjian Exp $
*
* NOTES
* this is the "main" module of the postgres backend and
* get input from the frontend
* ----------------
*/
- (void) strcpy(qtype, "?");
+ strcpy(qtype, "?");
if (pq_getnchar(qtype,0,1) == EOF) {
/* ------------
* when front-end applications quits/dies
or 'localhost' */
if (!(hostName = getenv("PGHOST"))) {
if (gethostname(hostbuf, MAXHOSTNAMELEN) < 0)
- (void) strcpy(hostbuf, "localhost");
+ strcpy(hostbuf, "localhost");
hostName = hostbuf;
}
* o - send output (stdout and stderr) to the given file
* ----------------
*/
- (void) strncpy(OutputFileName, optarg, MAXPGPATH);
+ strNcpy(OutputFileName, optarg, MAXPGPATH);
break;
case 'p': /* started by postmaster */
*/
if (IsUnderPostmaster == false) {
puts("\nPOSTGRES backend interactive interface");
- puts("$Revision: 1.39 $ $Date: 1997/08/06 05:38:35 $");
+ puts("$Revision: 1.40 $ $Date: 1997/08/12 20:15:49 $");
}
/* ----------------
* Routines for handling of 'SET var TO', 'SHOW var' and 'RESET var'
* statements.
*
- * $Id: variable.c,v 1.12 1997/06/20 17:17:03 thomas Exp $
+ * $Id: variable.c,v 1.13 1997/08/12 20:15:50 momjian Exp $
*
*/
}
*tok = (char*) PALLOC(len + 1);
- strncpy (*tok, start, len);
- (*tok)[len] = '\0';
+ strNcpy (*tok, start, len);
/* skip white spaces */
while ( isspace(*str)) str++;
}
*val = (char*) PALLOC(len + 1);
- strncpy (*val, start, len);
- (*val)[len] = '\0';
+ strNcpy (*val, start, len);
/* skip white spaces */
while ( isspace(*str)) str++;
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/tioga/Attic/tgRecipe.c,v 1.2 1996/11/03 06:52:45 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/backend/tioga/Attic/tgRecipe.c,v 1.3 1997/08/12 20:15:52 momjian Exp $
*
*-------------------------------------------------------------------------
*/
nextlen = endQuote - beginQuote; /* don't subtract one here because we
need the extra character for \0 anyway */
word = (char*) malloc(nextlen);
- strncpy(word, beginQuote+1, nextlen-1);
- word[nextlen-1] ='\0';
+ strNcpy(word, beginQuote+1, nextlen-1);
addArr_TgString(result, (TgString*)&word);
free (word);
str = endQuote + 1;
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/acl.c,v 1.11 1997/08/03 02:36:41 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/acl.c,v 1.12 1997/08/12 20:15:54 momjian Exp $
*
*-------------------------------------------------------------------------
*/
elog(NOTICE, "aclitemout: usesysid %d not found",
aip->ai_id);
- (void) strcat(p, tmp);
+ strcat(p, tmp);
pfree(tmp);
} else
- (void) strncat(p, (char *) &((Form_pg_user)
+ strncat(p, (char *) &((Form_pg_user)
GETSTRUCT(htp))->usename,
sizeof(NameData));
break;
case ACL_IDTYPE_GID:
- (void) strcat(p, "group ");
+ strcat(p, "group ");
tmpname = get_groname(aip->ai_id);
- (void) strncat(p, tmpname, NAMEDATALEN);
+ strncat(p, tmpname, NAMEDATALEN);
break;
case ACL_IDTYPE_WORLD:
break;
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/char.c,v 1.5 1997/06/11 05:17:58 vadim Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/char.c,v 1.6 1997/08/12 20:15:55 momjian Exp $
*
*-------------------------------------------------------------------------
*/
if (s == NULL)
return(0);
- memset((char *) &res, 0, sizeof(res));
- (void) strncpy((char *) &res, s, 4);
+ strncpy((char *) &res, s, 4);
return(res);
}
{
char *result = (char *) palloc(5);
- memset(result, 0, 5);
- (void) strncpy(result, (char *) &s, 4);
+ strNcpy(result, (char *) &s, 4);
return(result);
}
return((char *) NULL);
result = (char *) palloc(8);
- memset(result, 0, 8);
- (void) strncpy(result, s, 8);
+ strncpy(result, s, 8);
return(result);
}
{
char *result = (char *) palloc(9);
- memset(result, 0, 9);
if (s == NULL) {
result[0] = '-';
- } else {
- strncpy(result, s, 8);
- }
+ result[1] = '\0';
+ } else
+ strNcpy(result, s, 8);
return(result);
}
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/date.c,v 1.10 1997/07/29 15:54:49 thomas Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/date.c,v 1.11 1997/08/12 20:15:57 momjian Exp $
*
* NOTES
* This code is actually (almost) unused.
timestring = (char *) palloc(Max(strlen(INVALID_RELTIME_STR),
UNITMAXLEN) + 1);
if (timevalue == INVALID_RELTIME) {
- (void) strcpy(timestring,INVALID_RELTIME_STR);
+ strcpy(timestring,INVALID_RELTIME_STR);
return(timestring);
}
if (timevalue == 0)
char *i_str, *p;
i_str = (char *) palloc( T_INTERVAL_LEN ); /* ['...' '...'] */
- (void) strcpy(i_str,"[\"");
+ strcpy(i_str,"[\"");
if (interval->status == T_INTERVAL_INVAL)
- (void) strcat(i_str,INVALID_INTERVAL_STR);
+ strcat(i_str,INVALID_INTERVAL_STR);
else {
p = nabstimeout(interval->data[0]);
- (void) strcat(i_str,p);
+ strcat(i_str,p);
pfree(p);
- (void) strcat(i_str,"\" \"");
+ strcat(i_str,"\" \"");
p = nabstimeout(interval->data[1]);
- (void) strcat(i_str,p);
+ strcat(i_str,p);
pfree(p);
}
- (void) strcat(i_str,"\"]\0");
+ strcat(i_str,"\"]\0");
return(i_str);
}
int len = 0;
gettimeofday(&tp, &tpz);
- (void) strftime(templ, sizeof(templ), "%a %b %d %H:%M:%S.%%d %Y %Z",
+ strftime(templ, sizeof(templ), "%a %b %d %H:%M:%S.%%d %Y %Z",
localtime((time_t *) &tp.tv_sec));
sprintf(buf, templ, tp.tv_usec);
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/Attic/filename.c,v 1.7 1997/07/24 20:16:11 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/Attic/filename.c,v 1.8 1997/08/12 20:15:58 momjian Exp $
*
*-------------------------------------------------------------------------
*/
len = strlen(name);
} else {
len = (p - file) - 1;
- strncpy(name, file+1, len);
- name[len] = '\0';
+ strNcpy(name, file+1, len);
}
/*printf("name: %s\n");*/
if ((pw = getpwnam(name)) == NULL) {
len = strlen(environment);
} else {
len = (p - file) - 1;
- strncpy(environment, file+1, len);
- environment[len] = '\0';
+ strNcpy(environment, file+1, len);
}
envirp = getenv(environment);
if (envirp) {
/* be sure sterm is null-terminated */
sterm = (char *) palloc(charlen + 1);
- memset(sterm, 0, charlen + 1);
- strncpy(sterm, s, charlen);
+ strNcpy(sterm, s, charlen);
/* p is a text = varlena, not a string so we have to make
* a string from the vl_data field of the struct. */
}
-/* $Revision: 1.4 $
+/* $Revision: 1.5 $
** "like.c" A first attempt at a LIKE operator for Postgres95.
**
** Originally written by Rich $alz, mirror!rs, Wed Nov 26 19:03:17 EST 1986.
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/nabstime.c,v 1.28 1997/07/08 22:06:46 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/nabstime.c,v 1.29 1997/08/12 20:16:00 momjian Exp $
*
*-------------------------------------------------------------------------
*/
char zone[MAXDATELEN+1], *tzn = zone;
switch (time) {
- case EPOCH_ABSTIME: (void) strcpy(buf, EPOCH); break;
- case INVALID_ABSTIME: (void) strcpy(buf, INVALID); break;
- case CURRENT_ABSTIME: (void) strcpy(buf, DCURRENT); break;
- case NOEND_ABSTIME: (void) strcpy(buf, LATE); break;
- case NOSTART_ABSTIME: (void) strcpy(buf, EARLY); break;
+ case EPOCH_ABSTIME: strcpy(buf, EPOCH); break;
+ case INVALID_ABSTIME: strcpy(buf, INVALID); break;
+ case CURRENT_ABSTIME: strcpy(buf, DCURRENT); break;
+ case NOEND_ABSTIME: strcpy(buf, LATE); break;
+ case NOSTART_ABSTIME: strcpy(buf, EARLY); break;
default:
abstime2tm( time, &tz, tm, tzn);
#if DATEDEBUG
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/name.c,v 1.3 1997/08/03 02:36:57 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/name.c,v 1.4 1997/08/12 20:16:01 momjian Exp $
*
*-------------------------------------------------------------------------
*/
return(NULL);
result = (NameData*) palloc(NAMEDATALEN);
/* always keep it null-padded */
- (void) strncpy(result->data, s, NAMEDATALEN);
- result->data[NAMEDATALEN-1] = '\0';
+ strNcpy(result->data, s, NAMEDATALEN-1);
return(result);
}
{
if (!n1 || !n2)
return(-1);
- (void) strncpy(n1->data, n2->data, NAMEDATALEN);
+ strncpy(n1->data, n2->data, NAMEDATALEN);
return(0);
}
{
if (!name || !str)
return(-1);
- (void) strncpy(name->data, str, NAMEDATALEN);
- name->data[NAMEDATALEN-1] = '\0';
+ strNcpy(name->data, str, NAMEDATALEN-1);
return(0);
}
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/numutils.c,v 1.10 1997/04/22 17:47:14 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/numutils.c,v 1.11 1997/08/12 20:16:02 momjian Exp $
*
*-------------------------------------------------------------------------
*/
ascii[width] = 0;
return(0);
}
- (void) strcpy(ascii, out);
+ strcpy(ascii, out);
return(ret);
#else
auto int expon;
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/Attic/oidname.c,v 1.3 1997/08/03 02:37:08 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/Attic/oidname.c,v 1.4 1997/08/12 20:16:03 momjian Exp $
*
*-------------------------------------------------------------------------
*/
if (*inptr) {
oc->id = (Oid) pg_atoi(inStr, sizeof(Oid), ',');
/* copy one less to ensure null-padding */
- strncpy(oc->name.data,++inptr,NAMEDATALEN);
- /* namestrcpy(&oc->name, ++inptr); */
+ ++inptr;
+ strNcpy(oc->name.data,inptr,NAMEDATALEN-1);
}else
elog(WARN, "Bad input data for type oidname");
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/regexp.c,v 1.5 1996/11/10 01:20:44 bryanh Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/regexp.c,v 1.6 1997/08/12 20:16:04 momjian Exp $
*
* Alistair Crooks added the code for the regex caching
* agc - cached the regular expressions used - there's a good chance
/* be sure sterm is null-terminated */
sterm = (char *) palloc(charlen + 1);
- memset(sterm, 0, charlen + 1);
- strncpy(sterm, s, charlen);
+ strNcpy(sterm, s, charlen);
result = RE_compile_and_execute(p, sterm, cflags);
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/regproc.c,v 1.4 1997/04/27 19:20:16 thomas Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/regproc.c,v 1.5 1997/08/12 20:16:05 momjian Exp $
*
*-------------------------------------------------------------------------
*/
s = (char *) heap_getattr(proctup, InvalidBuffer, 1,
RelationGetTupleDescriptor(proc), &isnull);
if (!isnull) {
- strncpy(result, s, 16);
+ strNcpy(result, s, 16);
break;
}
elog(FATAL, "regprocout: null procedure %d", proid);
/*FALLTHROUGH*/
case 0:
- memset(result, 0, 16);
result[0] = '-';
+ result[1] = '\0';
#ifdef EBUG
elog(DEBUG, "regprocout: no such procedure %d", proid);
#endif /* defined(EBUG) */
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/varchar.c,v 1.7 1997/03/14 23:21:01 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/varchar.c,v 1.8 1997/08/12 20:16:07 momjian Exp $
*
*-------------------------------------------------------------------------
*/
} else {
len = *(int32*)s - 4;
result = (char *) palloc(len+1);
- strncpy(result, s+4, len); /* these are blank-padded */
- result[len] = '\0';
+ strNcpy(result, s+4, len); /* these are blank-padded */
}
return(result);
}
result = (char *) palloc(typlen);
*(int32*)result = typlen;
- memset(result+4, 0, len);
- (void) strncpy(result+4, s, len);
+ strncpy(result+4, s, len);
return(result);
}
} else {
len = *(int32*)s - 4;
result = (char *) palloc(len+1);
- memset(result, 0, len+1);
- strncpy(result, s+4, len);
+ strNcpy(result, s+4, len);
}
return(result);
}
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/fmgr/dfmgr.c,v 1.7 1997/07/24 20:16:59 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/fmgr/dfmgr.c,v 1.8 1997/08/12 20:16:09 momjian Exp $
*
*-------------------------------------------------------------------------
*/
* Same files - different paths (ie, symlink or link)
*/
if (file_scanner != (DynamicFileList *) NULL)
- (void) strcpy(file_scanner->filename, filename);
+ strcpy(file_scanner->filename, filename);
}
} else {
}
memset((char *) file_scanner, 0, sizeof(DynamicFileList));
- (void) strcpy(file_scanner->filename, filename);
+ strcpy(file_scanner->filename, filename);
file_scanner->device = stat_buf.st_dev;
file_scanner->inode = stat_buf.st_ino;
file_scanner->next = (DynamicFileList *) NULL;
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/init/Attic/findbe.c,v 1.3 1997/02/14 04:18:08 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/init/Attic/findbe.c,v 1.4 1997/08/12 20:16:12 momjian Exp $
*
*-------------------------------------------------------------------------
*/
if (*argv0 == '/' || !getcwd(buf, MAXPGPATH))
buf[0] = '\0';
else
- (void) strcat(buf, "/");
- (void) strcat(buf, argv0);
+ strcat(buf, "/");
+ strcat(buf, argv0);
p = strrchr(buf, '/');
- (void) strcpy(++p, "postgres");
+ strcpy(++p, "postgres");
if (!ValidateBackend(buf)) {
- (void) strncpy(backend, buf, MAXPGPATH);
+ strncpy(backend, buf, MAXPGPATH);
if (DebugLvl)
fprintf(stderr, "FindBackend: found \"%s\" using argv[0]\n",
backend);
fprintf(stderr, "FindBackend: searching PATH ...\n");
pathlen = strlen(p);
path = malloc(pathlen + 1);
- (void) strcpy(path, p);
+ strcpy(path, p);
for (startp = path, endp = strchr(path, ':');
startp && *startp;
startp = endp + 1, endp = strchr(startp, ':')) {
*endp = '\0';
if (*startp == '/' || !getcwd(buf, MAXPGPATH))
buf[0] = '\0';
- (void) strcat(buf, startp);
- (void) strcat(buf, "/postgres");
+ strcat(buf, startp);
+ strcat(buf, "/postgres");
switch (ValidateBackend(buf)) {
case 0: /* found ok */
- (void) strncpy(backend, buf, MAXPGPATH);
+ strncpy(backend, buf, MAXPGPATH);
if (DebugLvl)
fprintf(stderr, "FindBackend: found \"%s\" using PATH\n",
backend);
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/sort/Attic/psort.c,v 1.11 1997/08/06 17:11:20 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/sort/Attic/psort.c,v 1.12 1997/08/12 20:16:14 momjian Exp $
*
* NOTES
* Sorts the first relation into the second relation.
*/
-#define PUTTUP(NODE, TUP, FP) if (1) {\
+#define PUTTUP(NODE, TUP, FP) do {\
((Psortstate *)NODE->psortstate)->BytesWritten += (TUP)->t_len; \
- fwrite((char *)TUP, (TUP)->t_len, 1, FP);} else
+ fwrite((char *)TUP, (TUP)->t_len, 1, FP);} while (0)
#define ENDRUN(FP) fwrite((char *)&shortzero, sizeof (shortzero), 1, FP)
#define GETLEN(LEN, FP) fread((char *)&(LEN), sizeof (shortzero), 1, FP)
#define ALLOCTUP(LEN) ((HeapTuple)palloc((unsigned)LEN))
-#define GETTUP(NODE, TUP, LEN, FP) if (1) {\
+#define GETTUP(NODE, TUP, LEN, FP) do {\
IncrProcessed(); \
((Psortstate *)NODE->psortstate)->BytesRead += (LEN) - sizeof (shortzero); \
fread((char *)(TUP) + sizeof (shortzero), (LEN) - sizeof (shortzero), 1, FP);} \
- else
+ while (0)
#define SETTUPLEN(TUP, LEN) (TUP)->t_len = LEN
/*
*
* Copyright (c) 1994, Regents of the University of California
*
- * $Id: c.h,v 1.13 1997/05/17 16:25:57 mergl Exp $
+ * $Id: c.h,v 1.14 1997/08/12 20:16:17 momjian Exp $
*
*-------------------------------------------------------------------------
*/
* 5) IsValid macros for system types
* 6) offsetof, lengthof, endof
* 7) exception handling definitions, Assert, Trap, etc macros
- * 8) Min, Max, Abs macros
+ * 8) Min, Max, Abs, strNcpy macros
* 9) externs
* 10) Berkeley-specific defs
* 11) system-specific hacks
*/
#define Abs(x) ((x) >= 0 ? (x) : -(x))
+/*
+ * strNcpy --
+ * Does string copy, and forces terminating NULL
+ */
+/* we do this so if the macro is used in an if action, it will work */
+#define strNcpy(dest,src,len) do \
+ {strncpy((dest),(src),(len));*((dest) + (len)) = '\0';} while (0)
+
/* ----------------------------------------------------------------
* Section 9: externs
* ----------------------------------------------------------------
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-auth.c,v 1.7 1997/03/12 21:23:02 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-auth.c,v 1.8 1997/08/12 20:16:21 momjian Exp $
*
*-------------------------------------------------------------------------
*/
"pg_krb5_init: krb5_cc_default_name failed\n");
return((krb5_ccache) NULL);
}
- (void) strcpy(tktbuf, defname);
+ strcpy(tktbuf, defname);
if (realm = getenv("PGREALM")) {
- (void) strcat(tktbuf, "@");
- (void) strcat(tktbuf, realm);
+ strcat(tktbuf, "@");
+ strcat(tktbuf, realm);
}
if (code = krb5_cc_resolve(tktbuf, &ccache)) {
/*
* set up server -- canonicalize as described above
*/
- (void) strcpy(servbuf, PG_KRB_SRVNAM);
+ strcpy(servbuf, PG_KRB_SRVNAM);
*(hostp = servbuf + (sizeof(PG_KRB_SRVNAM) - 1)) = '/';
if (hostname || *hostname) {
- (void) strncpy(++hostp, hostname, MAXHOSTNAMELEN);
+ strncpy(++hostp, hostname, MAXHOSTNAMELEN);
} else {
if (gethostname(++hostp, MAXHOSTNAMELEN) < 0)
- (void) strcpy(hostp, "localhost");
+ strcpy(hostp, "localhost");
}
if (hostp = strchr(hostp, '.'))
*hostp = '\0';
if (realm = getenv("PGREALM")) {
- (void) strcat(servbuf, "@");
- (void) strcat(servbuf, realm);
+ strcat(servbuf, "@");
+ strcat(servbuf, realm);
}
if (code = krb5_parse_name(servbuf, &server)) {
(void) sprintf(PQerrormsg,
}
if(name && (authn = (char *) malloc(strlen(name) + 1)))
- (void) strcpy(authn, name);
+ strcpy(authn, name);
return(authn);
}
char16 *new_c16 = (char16 *) palloc(sizeof(char16));
memset(new_c16, 0, sizeof(char16));
- (void) strncpy((char*)new_c16, (char*)arg1, 16);
+ strncpy((char*)new_c16, (char*)arg1, 16);
return (char16 *)(strncat((char*)new_c16, (char*)arg2, 16));
}