summaryrefslogtreecommitdiffstats
path: root/release/sysinstall/dos.c
diff options
context:
space:
mode:
Diffstat (limited to 'release/sysinstall/dos.c')
-rw-r--r--release/sysinstall/dos.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/release/sysinstall/dos.c b/release/sysinstall/dos.c
index 5bd31f0..52ba28e 100644
--- a/release/sysinstall/dos.c
+++ b/release/sysinstall/dos.c
@@ -4,7 +4,7 @@
* This is probably the last attempt in the `sysinstall' line, the next
* generation being slated to essentially a complete rewrite.
*
- * $Id: dos.c,v 1.4 1995/05/29 11:01:11 jkh Exp $
+ * $Id: dos.c,v 1.5.2.4 1995/06/05 16:59:03 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@@ -69,12 +69,13 @@ mediaInitDOS(Device *dev)
if (Mkdir("/dos", NULL))
return FALSE;
- bzero(&args, sizeof(args));
+ memset(&args, 0, sizeof(args));
args.fspec = dev->devname;
args.uid = args.gid = 0;
+ args.mask = 0777;
if (mount(MOUNT_MSDOS, "/dos", MNT_RDONLY, (caddr_t)&args) == -1) {
- msgConfirm("Error mounting %s on /dos: %s (%u)\n", dev, strerror(errno), errno);
+ msgConfirm("Error mounting %s on /dos: %s (%u)\n", args.fspec, strerror(errno), errno);
return FALSE;
}
DOSMounted = TRUE;
@@ -82,13 +83,13 @@ mediaInitDOS(Device *dev)
}
int
-mediaGetDOS(char *file)
+mediaGetDOS(Device *dev, char *file, Attribs *dist_attrs)
{
char buf[PATH_MAX];
snprintf(buf, PATH_MAX, "/dos/freebsd/%s", file);
if (!access(buf, R_OK))
- return open(buf, O_RDONLY);
+ return open(buf, O_RDONLY);
snprintf(buf, PATH_MAX, "/dos/freebsd/dists/%s", file);
return open(buf, O_RDONLY);
}
@@ -99,7 +100,7 @@ mediaShutdownDOS(Device *dev)
if (!DOSMounted)
return;
msgDebug("Unmounting /dos\n");
- if (unmount("/dos", 0) != 0)
+ if (unmount("/dos", MNT_FORCE) != 0)
msgConfirm("Could not unmount the DOS partition: %s\n", strerror(errno));
if (isDebug())
msgDebug("Unmount returned\n");
OpenPOWER on IntegriCloud