aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXin LI <delphij@FreeBSD.org>2006-09-29 06:12:17 +0000
committerXin LI <delphij@FreeBSD.org>2006-09-29 06:12:17 +0000
commit82e6acc8d8cd3d78434166d6a3531c5e0ba05f50 (patch)
tree06f543f34edde6023741567777549b30632b80da
parent5c9b71b5c795a60151431c5e7f559d98f17abd10 (diff)
Notes
-rw-r--r--sbin/newfs/mkfs.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/sbin/newfs/mkfs.c b/sbin/newfs/mkfs.c
index 0b653d55ac5c..916b34cde4fa 100644
--- a/sbin/newfs/mkfs.c
+++ b/sbin/newfs/mkfs.c
@@ -748,11 +748,16 @@ fsinit(time_t utime)
{
union dinode node;
struct group *grp;
+ gid_t gid;
int entries;
memset(&node, 0, sizeof node);
- if ((grp = getgrnam("operator")) == NULL)
- errx(35, "Cannot retrieve operator gid");
+ if ((grp = getgrnam("operator")) != NULL) {
+ gid = grp->gr_gid;
+ } else {
+ warnx("Cannot retrieve operator gid, using gid 0.");
+ gid = 0;
+ }
entries = (nflag) ? ROOTLINKCNT - 1: ROOTLINKCNT;
if (sblock.fs_magic == FS_UFS1_MAGIC) {
/*
@@ -778,7 +783,7 @@ fsinit(time_t utime)
* create the .snap directory
*/
node.dp1.di_mode |= 020;
- node.dp1.di_gid = grp->gr_gid;
+ node.dp1.di_gid = gid;
node.dp1.di_nlink = SNAPLINKCNT;
node.dp1.di_size = makedir(snap_dir, SNAPLINKCNT);
node.dp1.di_db[0] =
@@ -814,7 +819,7 @@ fsinit(time_t utime)
* create the .snap directory
*/
node.dp2.di_mode |= 020;
- node.dp2.di_gid = grp->gr_gid;
+ node.dp2.di_gid = gid;
node.dp2.di_nlink = SNAPLINKCNT;
node.dp2.di_size = makedir(snap_dir, SNAPLINKCNT);
node.dp2.di_db[0] =