Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Factory
libconfuse
libconfuse-d73777c2c3566fb2647727bb56d9a2295b81...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File libconfuse-d73777c2c3566fb2647727bb56d9a2295b81669b.patch of Package libconfuse
commit d73777c2c3566fb2647727bb56d9a2295b81669b Author: Joachim Wiberg <troglobit@gmail.com> Date: Fri Sep 2 16:12:46 2022 +0200 Fix #163: unterminated username used with getpwnam() Signed-off-by: Joachim Wiberg <troglobit@gmail.com> diff --git a/src/confuse.c b/src/confuse.c index 6d1fdbd..05566b5 100644 --- a/src/confuse.c +++ b/src/confuse.c @@ -1894,18 +1894,20 @@ DLLIMPORT char *cfg_tilde_expand(const char *filename) passwd = getpwuid(geteuid()); file = filename + 1; } else { - /* ~user or ~user/path */ - char *user; + char *user; /* ~user or ~user/path */ + size_t len; file = strchr(filename, '/'); - if (file == 0) + if (file == NULL) file = filename + strlen(filename); - user = malloc(file - filename); + len = file - filename - 1; + user = malloc(len + 1); if (!user) return NULL; - strncpy(user, filename + 1, file - filename - 1); + strncpy(user, &filename[1], len); + user[len] = 0; passwd = getpwnam(user); free(user); }
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor