Skip to content

Commit 1ccc245

Browse files
committed
Convert possibly-unsafe sprintf's to snprintf's.
1 parent b47c4dd commit 1ccc245

File tree

4 files changed

+28
-16
lines changed

4 files changed

+28
-16
lines changed

src/backend/port/dynloader/freebsd.c

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -63,13 +63,15 @@ void *
6363
BSD44_derived_dlopen(const char *file, int num)
6464
{
6565
#if defined(__mips__)
66-
sprintf(error_message, "dlopen (%s) not supported", file);
66+
snprintf(error_message, sizeof(error_message),
67+
"dlopen (%s) not supported", file);
6768
return NULL;
6869
#else
6970
void *vp;
7071

7172
if ((vp = dlopen((char *) file, num)) == (void *) NULL)
72-
sprintf(error_message, "dlopen '%s' failed. (%s)", file, dlerror());
73+
snprintf(error_message, sizeof(error_message),
74+
"dlopen '%s' failed. (%s)", file, dlerror());
7375
return vp;
7476
#endif
7577
}
@@ -78,7 +80,8 @@ void *
7880
BSD44_derived_dlsym(void *handle, const char *name)
7981
{
8082
#if defined(__mips__)
81-
sprintf(error_message, "dlsym (%s) failed", name);
83+
snprintf(error_message, sizeof(error_message),
84+
"dlsym (%s) failed", name);
8285
return NULL;
8386
#else
8487
void *vp;
@@ -88,12 +91,13 @@ BSD44_derived_dlsym(void *handle, const char *name)
8891

8992
if (*name != '_')
9093
{
91-
sprintf(buf, "_%s", name);
94+
snprintf(buf, sizeof(buf), "_%s", name);
9295
name = buf;
9396
}
9497
#endif
9598
if ((vp = dlsym(handle, (char *) name)) == (void *) NULL)
96-
sprintf(error_message, "dlsym (%s) failed", name);
99+
snprintf(error_message, sizeof(error_message),
100+
"dlsym (%s) failed", name);
97101
return vp;
98102
#endif
99103
}

src/backend/port/dynloader/netbsd.c

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -63,13 +63,15 @@ void *
6363
BSD44_derived_dlopen(const char *file, int num)
6464
{
6565
#if defined(__mips__)
66-
sprintf(error_message, "dlopen (%s) not supported", file);
66+
snprintf(error_message, sizeof(error_message),
67+
"dlopen (%s) not supported", file);
6768
return NULL;
6869
#else
6970
void *vp;
7071

7172
if ((vp = dlopen((char *) file, num)) == (void *) NULL)
72-
sprintf(error_message, "dlopen (%s) failed", file);
73+
snprintf(error_message, sizeof(error_message),
74+
"dlopen (%s) failed", file);
7375
return vp;
7476
#endif
7577
}
@@ -78,7 +80,8 @@ void *
7880
BSD44_derived_dlsym(void *handle, const char *name)
7981
{
8082
#if defined(__mips__)
81-
sprintf(error_message, "dlsym (%s) failed", name);
83+
snprintf(error_message, sizeof(error_message),
84+
"dlsym (%s) failed", name);
8285
return NULL;
8386
#elif defined(__ELF__)
8487
return dlsym(handle, name);
@@ -88,11 +91,12 @@ BSD44_derived_dlsym(void *handle, const char *name)
8891

8992
if (*name != '_')
9093
{
91-
sprintf(buf, "_%s", name);
94+
snprintf(buf, sizeof(buf), "_%s", name);
9295
name = buf;
9396
}
9497
if ((vp = dlsym(handle, (char *) name)) == (void *) NULL)
95-
sprintf(error_message, "dlsym (%s) failed", name);
98+
snprintf(error_message, sizeof(error_message),
99+
"dlsym (%s) failed", name);
96100
return vp;
97101
#endif
98102
}

src/backend/port/dynloader/nextstep.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ next_dlsym(void *handle, char *symbol)
6767
char symbuf[1024];
6868
unsigned long symref = 0;
6969

70-
sprintf(symbuf, "_%s", symbol);
70+
snprintf(symbuf, sizeof(symbuf), "_%s", symbol);
7171
if (!rld_lookup(errorStream, symbuf, &symref))
7272
TransferError(errorStream);
7373
CloseError(errorStream);

src/backend/port/dynloader/openbsd.c

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -63,13 +63,15 @@ void *
6363
BSD44_derived_dlopen(const char *file, int num)
6464
{
6565
#if defined(__mips__)
66-
sprintf(error_message, "dlopen (%s) not supported", file);
66+
snprintf(error_message, sizeof(error_message),
67+
"dlopen (%s) not supported", file);
6768
return NULL;
6869
#else
6970
void *vp;
7071

7172
if ((vp = dlopen((char *) file, num)) == (void *) NULL)
72-
sprintf(error_message, "dlopen (%s) failed", file);
73+
snprintf(error_message, sizeof(error_message),
74+
"dlopen (%s) failed", file);
7375
return vp;
7476
#endif
7577
}
@@ -78,7 +80,8 @@ void *
7880
BSD44_derived_dlsym(void *handle, const char *name)
7981
{
8082
#if defined(__mips__)
81-
sprintf(error_message, "dlsym (%s) failed", name);
83+
snprintf(error_message, sizeof(error_message),
84+
"dlsym (%s) failed", name);
8285
return NULL;
8386
#elif defined(__ELF__)
8487
return dlsym(handle, name);
@@ -88,11 +91,12 @@ BSD44_derived_dlsym(void *handle, const char *name)
8891

8992
if (*name != '_')
9093
{
91-
sprintf(buf, "_%s", name);
94+
snprintf(buf, sizeof(buf), "_%s", name);
9295
name = buf;
9396
}
9497
if ((vp = dlsym(handle, (char *) name)) == (void *) NULL)
95-
sprintf(error_message, "dlsym (%s) failed", name);
98+
snprintf(error_message, sizeof(error_message),
99+
"dlsym (%s) failed", name);
96100
return vp;
97101
#endif
98102
}

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy