diff options
author | Chris Lumens <clumens@redhat.com> | 2005-04-26 19:37:55 +0000 |
---|---|---|
committer | Chris Lumens <clumens@redhat.com> | 2005-04-26 19:37:55 +0000 |
commit | fe1edfe6ca50455e2bb707f17d7466e2f2d683f1 (patch) | |
tree | 1feced1ac3092141969c01b33941c612e74a171c /loader2 | |
parent | 031fa7efefc3a9eece8f07157fc827019c538d00 (diff) | |
download | anaconda-fe1edfe6ca50455e2bb707f17d7466e2f2d683f1.tar.gz anaconda-fe1edfe6ca50455e2bb707f17d7466e2f2d683f1.tar.xz anaconda-fe1edfe6ca50455e2bb707f17d7466e2f2d683f1.zip |
Don't overflow the buffer when copying over image location in case loopback
images are buried (#154715).
Diffstat (limited to 'loader2')
-rw-r--r-- | loader2/method.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/loader2/method.c b/loader2/method.c index a7457c618..d06458dff 100644 --- a/loader2/method.c +++ b/loader2/method.c @@ -29,6 +29,7 @@ #include <sys/mount.h> #include <sys/types.h> #include <unistd.h> +#include <libgen.h> #include "loader.h" #include "loadermisc.h" @@ -110,7 +111,7 @@ int mountLoopback(char * fsystem, char * mntpoint, char * device) { close(targfd); memset(&loopInfo, 0, sizeof(loopInfo)); - strcpy(loopInfo.lo_name, fsystem); + strncpy(loopInfo.lo_name, basename(fsystem), 63); if (ioctl(loopfd, LOOP_SET_STATUS, &loopInfo)) { logMessage("LOOP_SET_STATUS failed: %s", strerror(errno)); |