summaryrefslogtreecommitdiffstats
path: root/loader2/method.c
diff options
context:
space:
mode:
authorChris Lumens <clumens@redhat.com>2005-04-26 19:37:55 +0000
committerChris Lumens <clumens@redhat.com>2005-04-26 19:37:55 +0000
commitfe1edfe6ca50455e2bb707f17d7466e2f2d683f1 (patch)
tree1feced1ac3092141969c01b33941c612e74a171c /loader2/method.c
parent031fa7efefc3a9eece8f07157fc827019c538d00 (diff)
downloadanaconda-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/method.c')
-rw-r--r--loader2/method.c3
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));