Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitdd912c6

Browse files
committed
This patches replaces a few more usages of strcpy() and sprintf() when
copying into a fixed-size buffer (in this case, a buffer ofNAMEDATALEN bytes). AFAICT nothing to worry about here, but worthfixing anyway...Neil Conway
1 parente0a77f5 commitdd912c6

File tree

5 files changed

+18
-18
lines changed

5 files changed

+18
-18
lines changed

‎src/backend/commands/tablecmds.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
*
99
*
1010
* IDENTIFICATION
11-
* $Header: /cvsroot/pgsql/src/backend/commands/tablecmds.c,v 1.33 2002/08/24 15:00:46 tgl Exp $
11+
* $Header: /cvsroot/pgsql/src/backend/commands/tablecmds.c,v 1.34 2002/08/27 03:56:34 momjian Exp $
1212
*
1313
*-------------------------------------------------------------------------
1414
*/
@@ -3370,8 +3370,8 @@ AlterTableCreateToastTable(Oid relOid, bool silent)
33703370
/*
33713371
* Create the toast table and its index
33723372
*/
3373-
sprintf(toast_relname,"pg_toast_%u",relOid);
3374-
sprintf(toast_idxname,"pg_toast_%u_index",relOid);
3373+
snprintf(toast_relname,NAMEDATALEN,"pg_toast_%u",relOid);
3374+
snprintf(toast_idxname,NAMEDATALEN,"pg_toast_%u_index",relOid);
33753375

33763376
/* this is pretty painful... need a tuple descriptor */
33773377
tupdesc=CreateTemplateTupleDesc(3,WITHOUTOID);

‎src/backend/parser/analyze.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
77
* Portions Copyright (c) 1994, Regents of the University of California
88
*
9-
*$Header: /cvsroot/pgsql/src/backend/parser/analyze.c,v 1.242 2002/08/19 19:33:34tgl Exp $
9+
*$Header: /cvsroot/pgsql/src/backend/parser/analyze.c,v 1.243 2002/08/27 03:56:34momjian Exp $
1010
*
1111
*-------------------------------------------------------------------------
1212
*/
@@ -665,7 +665,7 @@ CreateIndexName(char *table_name, char *column_name,
665665
* indexes, only among the indexes we're about to create now; this
666666
* ought to be improved someday.
667667
*/
668-
strcpy(typename,label);
668+
strncpy(typename,label,sizeof(typename));
669669

670670
for (;;)
671671
{
@@ -685,7 +685,7 @@ CreateIndexName(char *table_name, char *column_name,
685685

686686
/* found a conflict, so try a new name component */
687687
pfree(iname);
688-
sprintf(typename,"%s%d",label,++pass);
688+
snprintf(typename,sizeof(typename),"%s%d",label,++pass);
689689
}
690690

691691
returniname;

‎src/backend/storage/ipc/shmqueue.c

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
*
99
*
1010
* IDENTIFICATION
11-
* $Header: /cvsroot/pgsql/src/backend/storage/ipc/shmqueue.c,v 1.21 2002/06/20 20:29:35 momjian Exp $
11+
* $Header: /cvsroot/pgsql/src/backend/storage/ipc/shmqueue.c,v 1.22 2002/08/27 03:56:35 momjian Exp $
1212
*
1313
* NOTES
1414
*
@@ -214,11 +214,11 @@ dumpQ(SHM_QUEUE *q, char *s)
214214
SHM_QUEUE*start=q;
215215
intcount=0;
216216

217-
sprintf(buf,"q prevs: %lx",MAKE_OFFSET(q));
217+
snprintf(buf,sizeof(buf),"q prevs: %lx",MAKE_OFFSET(q));
218218
q= (SHM_QUEUE*)MAKE_PTR(q->prev);
219219
while (q!=start)
220220
{
221-
sprintf(elem,"--->%lx",MAKE_OFFSET(q));
221+
snprintf(elem,sizeof(elem),"--->%lx",MAKE_OFFSET(q));
222222
strcat(buf,elem);
223223
q= (SHM_QUEUE*)MAKE_PTR(q->prev);
224224
if (q->prev==MAKE_OFFSET(q))
@@ -229,16 +229,16 @@ dumpQ(SHM_QUEUE *q, char *s)
229229
break;
230230
}
231231
}
232-
sprintf(elem,"--->%lx",MAKE_OFFSET(q));
232+
snprintf(elem,sizeof(elem),"--->%lx",MAKE_OFFSET(q));
233233
strcat(buf,elem);
234234
elog(SHMQUEUE_DEBUG_ELOG,"%s: %s",s,buf);
235235

236-
sprintf(buf,"q nexts: %lx",MAKE_OFFSET(q));
236+
snprintf(buf,sizeof(buf),"q nexts: %lx",MAKE_OFFSET(q));
237237
count=0;
238238
q= (SHM_QUEUE*)MAKE_PTR(q->next);
239239
while (q!=start)
240240
{
241-
sprintf(elem,"--->%lx",MAKE_OFFSET(q));
241+
snprintf(elem,sizeof(elem),"--->%lx",MAKE_OFFSET(q));
242242
strcat(buf,elem);
243243
q= (SHM_QUEUE*)MAKE_PTR(q->next);
244244
if (q->next==MAKE_OFFSET(q))
@@ -249,7 +249,7 @@ dumpQ(SHM_QUEUE *q, char *s)
249249
break;
250250
}
251251
}
252-
sprintf(elem,"--->%lx",MAKE_OFFSET(q));
252+
snprintf(elem,sizeof(elem),"--->%lx",MAKE_OFFSET(q));
253253
strcat(buf,elem);
254254
elog(SHMQUEUE_DEBUG_ELOG,"%s: %s",s,buf);
255255
}

‎src/backend/utils/adt/acl.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
*
99
*
1010
* IDENTIFICATION
11-
* $Header: /cvsroot/pgsql/src/backend/utils/adt/acl.c,v 1.76 2002/08/26 17:53:58 tgl Exp $
11+
* $Header: /cvsroot/pgsql/src/backend/utils/adt/acl.c,v 1.77 2002/08/27 03:56:35 momjian Exp $
1212
*
1313
*-------------------------------------------------------------------------
1414
*/
@@ -136,9 +136,9 @@ aclparse(const char *s, AclItem *aip, unsigned *modechg)
136136
*s!=ACL_MODECHG_EQL_CHR)
137137
{
138138
/* we just read a keyword, not a name */
139-
if (strcmp(name,ACL_IDTYPE_GID_KEYWORD)==0)
139+
if (strncmp(name,ACL_IDTYPE_GID_KEYWORD,sizeof(name))==0)
140140
idtype=ACL_IDTYPE_GID;
141-
elseif (strcmp(name,ACL_IDTYPE_UID_KEYWORD)!=0)
141+
elseif (strncmp(name,ACL_IDTYPE_UID_KEYWORD,sizeof(name))!=0)
142142
elog(ERROR,"aclparse: bad keyword, must be [group|user]");
143143
s=getid(s,name);/* move s to the name beyond the keyword */
144144
if (name[0]=='\0')

‎src/backend/utils/adt/sets.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
*
1111
*
1212
* IDENTIFICATION
13-
* $Header: /cvsroot/pgsql/src/backend/utils/adt/Attic/sets.c,v 1.51 2002/08/09 16:45:14 tgl Exp $
13+
* $Header: /cvsroot/pgsql/src/backend/utils/adt/Attic/sets.c,v 1.52 2002/08/27 03:56:35 momjian Exp $
1414
*
1515
*-------------------------------------------------------------------------
1616
*/
@@ -95,7 +95,7 @@ SetDefine(char *querystr, Oid elemType)
9595
if (strcmp(procname,NameStr(proc->proname))==0)
9696
{
9797
/* make the real proc name */
98-
sprintf(realprocname,"set%u",setoid);
98+
snprintf(realprocname,sizeof(realprocname),"set%u",setoid);
9999

100100
/* set up the attributes to be modified or kept the same */
101101
repl[0]='r';

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp