Mounting MFS filesystem does not preserve directory permissions of mount point

classic Classic list List threaded Threaded
10 messages Options
Reply | Threaded
Open this post in threaded view
|

Mounting MFS filesystem does not preserve directory permissions of mount point

Andreas Kusalananda Kähäri-4
>Synopsis: Mounting MFS filesystem does not preserve directory permissions of mount point
>Category: system
>Environment:
        System      : OpenBSD 6.7
        Details     : OpenBSD 6.7-current (GENERIC.MP) #198: Mon May 18 20:33:28 MDT 2020
                         [hidden email]:/usr/src/sys/arch/amd64/compile/GENERIC.MP

        Architecture: OpenBSD.amd64
        Machine     : amd64
>Description:

I've notice that with the most recent snapshot, the permissions of my
/tmp directory, mounted as a MFS filesystem, were wrong:

        $ ls -ld /tmp
        drwxr-xr-x  2 root  wheel  512 May 19 11:23 /tmp

This filesystem is mounted via fstab:

        swap    /tmp    mfs     rw,nodev,nosuid,-s1G

... and the mount point has the correct permissions:

        $ doas umount /tmp
        $ ls -ld /tmp
        drwxrwxrwt  7 root  wheel  512 May 19 11:23 /tmp

>How-To-Repeat:

Mount an MFS filesystem over /tmp and check permissions.

        $ ls -ld /tmp
        drwxrwxrwt  7 root  wheel  512 May 19 11:30 /tmp

        $ doas mount_mfs -s 1G swap /tmp

        $ ls -ld /tmp
        drwxr-xr-x  2 root  wheel  512 May 19 11:31 /tmp

        $ doas umount /tmp

        $ ls -ld /tmp
        drwxrwxrwt  7 root  wheel  512 May 19 11:30 /tmp

>Fix:

Unknown.


dmesg:
OpenBSD 6.7-current (GENERIC.MP) #198: Mon May 18 20:33:28 MDT 2020
    [hidden email]:/usr/src/sys/arch/amd64/compile/GENERIC.MP
real mem = 16872108032 (16090MB)
avail mem = 16348139520 (15590MB)
mpath0 at root
scsibus0 at mpath0: 256 targets
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 2.7 @ 0xdae9d000 (71 entries)
bios0: vendor LENOVO version "G2ET33WW (1.13 )" date 07/24/2012
bios0: LENOVO 23252FG
acpi0 at bios0: ACPI 4.0
acpi0: sleep states S0 S3 S4 S5
acpi0: tables DSDT FACP SLIC TCPA SSDT SSDT SSDT HPET APIC MCFG ECDT FPDT ASF! UEFI UEFI POAT SSDT SSDT DMAR UEFI
acpi0: wakeup devices LID_(S4) SLPB(S3) IGBE(S4) EXP3(S4) XHCI(S3) EHC1(S3) EHC2(S3) HDEF(S4)
acpitimer0 at acpi0: 3579545 Hz, 24 bits
acpihpet0 at acpi0: 14318179 Hz
acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz, 2494.81 MHz, 06-3a-09
cpu0: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,PCLMUL,DTES64,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,POPCNT,DEADLINE,AES,XSAVE,AVX,F16C,RDRAND,NXE,RDTSCP,LONG,LAHF,PERF,ITSC,FSGSBASE,SMEP,ERMS,MD_CLEAR,IBRS,IBPB,STIBP,L1DF,SSBD,SENSOR,ARAT,XSAVEOPT,MELTDOWN
cpu0: 256KB 64b/line 8-way L2 cache
cpu0: smt 0, core 0, package 0
mtrr: Pentium Pro MTRR support, 10 var ranges, 88 fixed ranges
cpu0: apic clock running at 99MHz
cpu0: mwait min=64, max=64, C-substates=0.2.1.1.2, IBE
cpu1 at mainbus0: apid 1 (application processor)
cpu1: Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz, 2494.34 MHz, 06-3a-09
cpu1: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,PCLMUL,DTES64,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,POPCNT,DEADLINE,AES,XSAVE,AVX,F16C,RDRAND,NXE,RDTSCP,LONG,LAHF,PERF,ITSC,FSGSBASE,SMEP,ERMS,MD_CLEAR,IBRS,IBPB,STIBP,L1DF,SSBD,SENSOR,ARAT,XSAVEOPT,MELTDOWN
cpu1: 256KB 64b/line 8-way L2 cache
cpu1: smt 1, core 0, package 0
cpu2 at mainbus0: apid 2 (application processor)
cpu2: Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz, 2494.34 MHz, 06-3a-09
cpu2: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,PCLMUL,DTES64,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,POPCNT,DEADLINE,AES,XSAVE,AVX,F16C,RDRAND,NXE,RDTSCP,LONG,LAHF,PERF,ITSC,FSGSBASE,SMEP,ERMS,MD_CLEAR,IBRS,IBPB,STIBP,L1DF,SSBD,SENSOR,ARAT,XSAVEOPT,MELTDOWN
cpu2: 256KB 64b/line 8-way L2 cache
cpu2: smt 0, core 1, package 0
cpu3 at mainbus0: apid 3 (application processor)
cpu3: Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz, 2494.34 MHz, 06-3a-09
cpu3: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,PCLMUL,DTES64,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,POPCNT,DEADLINE,AES,XSAVE,AVX,F16C,RDRAND,NXE,RDTSCP,LONG,LAHF,PERF,ITSC,FSGSBASE,SMEP,ERMS,MD_CLEAR,IBRS,IBPB,STIBP,L1DF,SSBD,SENSOR,ARAT,XSAVEOPT,MELTDOWN
cpu3: 256KB 64b/line 8-way L2 cache
cpu3: smt 1, core 1, package 0
ioapic0 at mainbus0: apid 2 pa 0xfec00000, version 20, 24 pins
acpimcfg0 at acpi0
acpimcfg0: addr 0xf8000000, bus 0-63
acpiec0 at acpi0
acpiprt0 at acpi0: bus 0 (PCI0)
acpiprt1 at acpi0: bus -1 (PEG_)
acpiprt2 at acpi0: bus 2 (EXP1)
acpiprt3 at acpi0: bus 3 (EXP2)
acpiprt4 at acpi0: bus 4 (EXP3)
acpicpu0 at acpi0: C2(350@80 mwait.1@0x20), C1(1000@1 mwait.1), PSS
acpicpu1 at acpi0: C2(350@80 mwait.1@0x20), C1(1000@1 mwait.1), PSS
acpicpu2 at acpi0: C2(350@80 mwait.1@0x20), C1(1000@1 mwait.1), PSS
acpicpu3 at acpi0: C2(350@80 mwait.1@0x20), C1(1000@1 mwait.1), PSS
acpipwrres0 at acpi0: PUBS, resource for XHCI, EHC1, EHC2
acpitz0 at acpi0: critical temperature is 103 degC
acpibtn0 at acpi0: LID_
acpibtn1 at acpi0: SLPB
acpipci0 at acpi0 PCI0: 0x00000000 0x00000011 0x00000001
extent `acpipci0 pcibus' (0x0 - 0xff), flags=0
     0x40 - 0xff
extent `pciio' (0x0 - 0xffffffff), flags=0
     0x10000 - 0xffffffff
extent `pcimem' (0x0 - 0xffffffffffffffff), flags=0
     0x0 - 0xdf9fffff
     0xf8000000 - 0xfbffffff
     0xfec00000 - 0xfec00fff
     0xfed08000 - 0xfed08fff
     0xfed10000 - 0xfed19fff
     0xfed1c000 - 0xfed1ffff
     0xfee00000 - 0xfee00fff
     0xffc00000 - 0xffffffff
     0x40000000000 - 0xffffffffffffffff
acpicmos0 at acpi0
tpm0 at acpi0: TPM_ addr 0xfed40000/0x5000, device 0x0000104a rev 0x4e
acpibat0 at acpi0: BAT0 model "45N1023" serial 23293 type LION oem "SANYO"
acpiac0 at acpi0: AC unit online
acpithinkpad0 at acpi0: version 1.0
"PNP0C14" at acpi0 not configured
"PNP0C14" at acpi0 not configured
acpidock0 at acpi0: GDCK not docked (0)
acpivideo0 at acpi0: VID_
acpivout0 at acpivideo0: LCD0
acpivideo1 at acpi0: VID_
cpu0: using VERW MDS workaround (except on vmm entry)
cpu0: Enhanced SpeedStep 2494 MHz: speeds: 2501, 2500, 2400, 2300, 2200, 2100, 2000, 1900, 1800, 1700, 1600, 1500, 1400, 1300, 1200 MHz
pci0 at mainbus0 bus 0
pchb0 at pci0 dev 0 function 0 "Intel Core 3G Host" rev 0x09
inteldrm0 at pci0 dev 2 function 0 "Intel HD Graphics 4000" rev 0x09
drm0 at inteldrm0
inteldrm0: msi, IVYBRIDGE, gen 7
"Intel 7 Series MEI" rev 0x04 at pci0 dev 22 function 0 not configured
em0 at pci0 dev 25 function 0 "Intel 82579LM" rev 0x04: msi, address 3c:97:0e:30:0b:c7
ehci0 at pci0 dev 26 function 0 "Intel 7 Series USB" rev 0x04: apic 2 int 16
usb0 at ehci0: USB revision 2.0
uhub0 at usb0 configuration 1 interface 0 "Intel EHCI root hub" rev 2.00/1.00 addr 1
azalia0 at pci0 dev 27 function 0 "Intel 7 Series HD Audio" rev 0x04: msi
azalia0: codecs: Realtek ALC269, Intel/0x2806, using Realtek ALC269
audio0 at azalia0
ppb0 at pci0 dev 28 function 0 "Intel 7 Series PCIE" rev 0xc4: msi
pci1 at ppb0 bus 2
sdhc0 at pci1 dev 0 function 0 "Ricoh 5U822 SD/MMC" rev 0x07: apic 2 int 16
sdhc0: SDHC 3.0, 50 MHz base clock
sdmmc0 at sdhc0: 4-bit, sd high-speed, mmc high-speed, dma
ppb1 at pci0 dev 28 function 1 "Intel 7 Series PCIE" rev 0xc4: msi
pci2 at ppb1 bus 3
iwn0 at pci2 dev 0 function 0 "Intel Centrino Advanced-N 6205" rev 0x34: msi, MIMO 2T2R, MoW, address 60:67:20:81:45:f0
ppb2 at pci0 dev 28 function 2 "Intel 7 Series PCIE" rev 0xc4: msi
pci3 at ppb2 bus 4
ehci1 at pci0 dev 29 function 0 "Intel 7 Series USB" rev 0x04: apic 2 int 23
usb1 at ehci1: USB revision 2.0
uhub1 at usb1 configuration 1 interface 0 "Intel EHCI root hub" rev 2.00/1.00 addr 1
pcib0 at pci0 dev 31 function 0 "Intel QM77 LPC" rev 0x04
ahci0 at pci0 dev 31 function 2 "Intel 7 Series AHCI" rev 0x04: msi, AHCI 1.3
ahci0: port 0: 6.0Gb/s
scsibus1 at ahci0: 32 targets
sd0 at scsibus1 targ 0 lun 0: <ATA, KINGSTON SA400S3, S1Z4> naa.50026b7380360838
sd0: 228936MB, 512 bytes/sector, 468862128 sectors, thin
ichiic0 at pci0 dev 31 function 3 "Intel 7 Series SMBus" rev 0x04: apic 2 int 18
iic0 at ichiic0
spdmem0 at iic0 addr 0x50: 8GB DDR3 SDRAM PC3-12800 SO-DIMM
spdmem1 at iic0 addr 0x51: 8GB DDR3 SDRAM PC3-12800 SO-DIMM
isa0 at pcib0
isadma0 at isa0
pckbc0 at isa0 port 0x60/5 irq 1 irq 12
pckbd0 at pckbc0 (kbd slot)
wskbd0 at pckbd0: console keyboard
pms0 at pckbc0 (aux slot)
wsmouse0 at pms0 mux 0
wsmouse1 at pms0 mux 0
pms0: Synaptics clickpad, firmware 8.1, 0x1e2b1 0x940300 0x194b40 0xd002a3 0x123800
pcppi0 at isa0 port 0x61
spkr0 at pcppi0
vmm0 at mainbus0: VMX/EPT
uhub2 at uhub0 port 1 configuration 1 interface 0 "Intel Rate Matching Hub" rev 2.00/0.00 addr 2
ugen0 at uhub2 port 3 "Auth Biometric Coprocessor" rev 1.10/0.01 addr 3
ugen1 at uhub2 port 4 "Broadcom Corp BCM20702A0" rev 2.00/1.12 addr 4
uvideo0 at uhub2 port 6 configuration 1 interface 0 "Ricoh Company Ltd. Integrated Camera" rev 2.00/0.11 addr 5
video0 at uvideo0
uhub3 at uhub1 port 1 configuration 1 interface 0 "Intel Rate Matching Hub" rev 2.00/0.00 addr 2
umodem0 at uhub3 port 4 configuration 1 interface 1 "Lenovo H5321 gw" rev 2.00/0.00 addr 3
umodem0: data interface 2, has CM over data, has break
umodem0: status change notification available
ucom0 at umodem0
umodem1 at uhub3 port 4 configuration 1 interface 3 "Lenovo H5321 gw" rev 2.00/0.00 addr 3
umodem1: data interface 4, has CM over data, has break
umodem1: status change notification available
ucom1 at umodem1
umodem2 at uhub3 port 4 configuration 1 interface 9 "Lenovo H5321 gw" rev 2.00/0.00 addr 3
umodem2: data interface 10, has CM over data, has break
umodem2: status change notification available
ucom2 at umodem2
ugen2 at uhub3 port 4 configuration 1 "Lenovo H5321 gw" rev 2.00/0.00 addr 3
vscsi0 at root
scsibus2 at vscsi0: 256 targets
softraid0 at root
scsibus3 at softraid0: 256 targets
root on sd0a (37ae838f02dce97b.a) swap on sd0b dump on sd0b
inteldrm0: 1366x768, 32bpp
wsdisplay0 at inteldrm0 mux 1: console (std, vt100 emulation), using wskbd0
wsdisplay0: screen 1-5 added (std, vt100 emulation)

usbdevs:
Controller /dev/usb0:
addr 01: 8086:0000 Intel, EHCI root hub
         high speed, self powered, config 1, rev 1.00
         driver: uhub0
addr 02: 8087:0024 Intel, Rate Matching Hub
         high speed, self powered, config 1, rev 0.00
         driver: uhub2
addr 03: 147e:2020 Auth, Biometric Coprocessor
         full speed, power 100 mA, config 1, rev 0.01
         driver: ugen0
addr 04: 0a5c:21e6 Broadcom Corp, BCM20702A0
         full speed, self powered, config 1, rev 1.12, iSerial E006E6B9DEFC
         driver: ugen1
addr 05: 5986:02d2 Ricoh Company Ltd., Integrated Camera
         high speed, power 200 mA, config 1, rev 0.11
         driver: uvideo0
Controller /dev/usb1:
addr 01: 8086:0000 Intel, EHCI root hub
         high speed, self powered, config 1, rev 1.00
         driver: uhub1
addr 02: 8087:0024 Intel, Rate Matching Hub
         high speed, self powered, config 1, rev 0.00
         driver: uhub3
addr 03: 0bdb:1926 Lenovo, H5321 gw
         high speed, self powered, config 1, rev 0.00, iSerial E1EE5F9D0A2BEF80
         driver: umodem0
         driver: umodem1
         driver: umodem2
         driver: ugen2

--
Andreas (Kusalananda) Kähäri
SciLifeLab, NBIS, ICM
Uppsala University, Sweden

.

Reply | Threaded
Open this post in threaded view
|

Re: Mounting MFS filesystem does not preserve directory permissions of mount point

Stuart Henderson
On 2020/05/19 11:36, Andreas Kusalananda Kähäri wrote:

> >Synopsis: Mounting MFS filesystem does not preserve directory permissions of mount point
> >Category: system
> >Environment:
> System      : OpenBSD 6.7
> Details     : OpenBSD 6.7-current (GENERIC.MP) #198: Mon May 18 20:33:28 MDT 2020
> [hidden email]:/usr/src/sys/arch/amd64/compile/GENERIC.MP
>
> Architecture: OpenBSD.amd64
> Machine     : amd64
> >Description:
>
> I've notice that with the most recent snapshot, the permissions of my
> /tmp directory, mounted as a MFS filesystem, were wrong:
>
> $ ls -ld /tmp
> drwxr-xr-x  2 root  wheel  512 May 19 11:23 /tmp
>
> This filesystem is mounted via fstab:
>
> swap    /tmp    mfs     rw,nodev,nosuid,-s1G
>
> ... and the mount point has the correct permissions:
>
> $ doas umount /tmp
> $ ls -ld /tmp
> drwxrwxrwt  7 root  wheel  512 May 19 11:23 /tmp

OK?

Index: mkfs.c
===================================================================
RCS file: /cvs/src/sbin/newfs/mkfs.c,v
retrieving revision 1.98
diff -u -p -r1.98 mkfs.c
--- mkfs.c 3 Jul 2019 03:24:02 -0000 1.98
+++ mkfs.c 19 May 2020 11:43:30 -0000
@@ -134,7 +134,7 @@ static int ilog2(int);
 void initcg(int, time_t);
 void wtfs(daddr_t, int, void *);
 int fsinit1(time_t, mode_t, uid_t, gid_t);
-int fsinit2(time_t);
+int fsinit2(time_t, mode_t, uid_t, gid_t);
 int makedir(struct direct *, int);
 void iput(union dinode *, ino_t);
 void setblock(struct fs *, unsigned char *, int);
@@ -590,7 +590,7 @@ mkfs(struct partition *pp, char *fsys, i
  sblock.fs_ffs1_cstotal.cs_nifree = sblock.fs_cstotal.cs_nifree;
  sblock.fs_ffs1_cstotal.cs_nffree = sblock.fs_cstotal.cs_nffree;
  } else {
- if (fsinit2(utime))
+ if (fsinit2(utime, mfsmode, mfsuid, mfsgid))
  errx(32, "fsinit2 failed");
  }
 
@@ -841,7 +841,7 @@ fsinit1(time_t utime, mode_t mfsmode, ui
 }
 
 int
-fsinit2(time_t utime)
+fsinit2(time_t utime, mode_t mfsmode, uid_t mfsuid, gid_t mfsgid)
 {
  union dinode node;
 
@@ -856,9 +856,15 @@ fsinit2(time_t utime)
  /*
  * Create the root directory.
  */
- node.dp2.di_mode = IFDIR | UMASK;
- node.dp2.di_uid = geteuid();
- node.dp2.di_gid = getegid();
+ if (mfs) {
+ node.dp2.di_mode = IFDIR | mfsmode;
+ node.dp2.di_uid = mfsuid;
+ node.dp2.di_gid = mfsgid;
+ } else {
+ node.dp2.di_mode = IFDIR | UMASK;
+ node.dp2.di_uid = geteuid();
+ node.dp2.di_gid = getegid();
+ }
  node.dp2.di_nlink = PREDEFDIR;
  node.dp2.di_size = makedir(root_dir, PREDEFDIR);
 

Reply | Threaded
Open this post in threaded view
|

Re: Mounting MFS filesystem does not preserve directory permissions of mount point

Todd C. Miller-3
Is there any advantage to mfs defaulting to ffs2?

 - todd

Reply | Threaded
Open this post in threaded view
|

Re: Mounting MFS filesystem does not preserve directory permissions of mount point

Otto Moerbeek
On Tue, May 19, 2020 at 05:49:23AM -0600, Todd C. Miller wrote:

> Is there any advantage to mfs defaulting to ffs2?
>
>  - todd
>

In 18 years, yes. But the -O2 case should work whartever the default
is for mfs.

        -Otto

Reply | Threaded
Open this post in threaded view
|

Re: Mounting MFS filesystem does not preserve directory permissions of mount point

Theo de Raadt-2
Otto Moerbeek <[hidden email]> wrote:

> On Tue, May 19, 2020 at 05:49:23AM -0600, Todd C. Miller wrote:
>
> > Is there any advantage to mfs defaulting to ffs2?
> >
> >  - todd
> >
>
> In 18 years, yes. But the -O2 case should work whartever the default
> is for mfs.

The stored timestamps are unsigned.  Are you use it really breaks in
18 years?

Reply | Threaded
Open this post in threaded view
|

Re: Mounting MFS filesystem does not preserve directory permissions of mount point

Otto Moerbeek
On Tue, May 19, 2020 at 06:06:36AM -0600, Theo de Raadt wrote:

> Otto Moerbeek <[hidden email]> wrote:
>
> > On Tue, May 19, 2020 at 05:49:23AM -0600, Todd C. Miller wrote:
> >
> > > Is there any advantage to mfs defaulting to ffs2?
> > >
> > >  - todd
> > >
> >
> > In 18 years, yes. But the -O2 case should work whartever the default
> > is for mfs.
>
> The stored timestamps are unsigned.  Are you use it really breaks in
> 18 years?

all timestamps in dinode.h and fs.h are signed. I've run systems in
2039 and they show wrapped file times.

        -Otto

Reply | Threaded
Open this post in threaded view
|

Re: Mounting MFS filesystem does not preserve directory permissions of mount point

Todd C. Miller-3
In reply to this post by Otto Moerbeek
On Tue, 19 May 2020 14:04:37 +0200, Otto Moerbeek wrote:

> In 18 years, yes. But the -O2 case should work whartever the default
> is for mfs.

I agree that -O2 should work for mfs, I'm just wasn't sure that
should be the default for mfs.  We don't actually have a way to
specify the ffs version with mount_mfs as far as I can tell.

 - todd

Reply | Threaded
Open this post in threaded view
|

Re: Mounting MFS filesystem does not preserve directory permissions of mount point

Otto Moerbeek
On Tue, May 19, 2020 at 06:15:15AM -0600, Todd C. Miller wrote:

> On Tue, 19 May 2020 14:04:37 +0200, Otto Moerbeek wrote:
>
> > In 18 years, yes. But the -O2 case should work whartever the default
> > is for mfs.
>
> I agree that -O2 should work for mfs, I'm just wasn't sure that
> should be the default for mfs.  We don't actually have a way to
> specify the ffs version with mount_mfs as far as I can tell.
>
>  - todd
>

Indeed. We could move mfs to ffs1 unconditionally like this.

        -Otto

Index: newfs.c
===================================================================
RCS file: /cvs/src/sbin/newfs/newfs.c,v
retrieving revision 1.113
diff -u -p -r1.113 newfs.c
--- newfs.c 18 May 2020 06:20:44 -0000 1.113
+++ newfs.c 19 May 2020 12:25:41 -0000
@@ -328,6 +328,7 @@ main(int argc, char *argv[])
  rl.rlim_cur = rl.rlim_max;
  (void)setrlimit(RLIMIT_DATA, &rl);
  }
+ Oflag = 1;
  }
 
  special = argv[0];

Reply | Threaded
Open this post in threaded view
|

Re: Mounting MFS filesystem does not preserve directory permissions of mount point

Stuart Henderson
In reply to this post by Todd C. Miller-3
On 2020/05/19 06:15, Todd C. Miller wrote:

> On Tue, 19 May 2020 14:04:37 +0200, Otto Moerbeek wrote:
>
> > In 18 years, yes. But the -O2 case should work whartever the default
> > is for mfs.
>
> I agree that -O2 should work for mfs, I'm just wasn't sure that
> should be the default for mfs.  We don't actually have a way to
> specify the ffs version with mount_mfs as far as I can tell.
>
>  - todd
>

Easy to change that if wanted,

Index: newfs.c
===================================================================
RCS file: /cvs/src/sbin/newfs/newfs.c,v
retrieving revision 1.113
diff -u -p -r1.113 newfs.c
--- newfs.c 18 May 2020 06:20:44 -0000 1.113
+++ newfs.c 19 May 2020 12:22:27 -0000
@@ -194,7 +194,7 @@ main(int argc, char *argv[])
  u_int64_t nsecs;
 
  if (strstr(__progname, "mfs"))
- mfs = Nflag = quiet = 1;
+ mfs = Nflag = quiet = Oflag = 1;
 
  getphysmem();
  maxpartitions = getmaxpartitions();


Reply | Threaded
Open this post in threaded view
|

Re: Mounting MFS filesystem does not preserve directory permissions of mount point

Otto Moerbeek
On Tue, May 19, 2020 at 01:28:24PM +0100, Stuart Henderson wrote:

> On 2020/05/19 06:15, Todd C. Miller wrote:
> > On Tue, 19 May 2020 14:04:37 +0200, Otto Moerbeek wrote:
> >
> > > In 18 years, yes. But the -O2 case should work whartever the default
> > > is for mfs.
> >
> > I agree that -O2 should work for mfs, I'm just wasn't sure that
> > should be the default for mfs.  We don't actually have a way to
> > specify the ffs version with mount_mfs as far as I can tell.
> >
> >  - todd
> >
>
> Easy to change that if wanted,

OK with me. I also like you to commit the other diff to fix the -O2
case.

        -Otto

>
> Index: newfs.c
> ===================================================================
> RCS file: /cvs/src/sbin/newfs/newfs.c,v
> retrieving revision 1.113
> diff -u -p -r1.113 newfs.c
> --- newfs.c 18 May 2020 06:20:44 -0000 1.113
> +++ newfs.c 19 May 2020 12:22:27 -0000
> @@ -194,7 +194,7 @@ main(int argc, char *argv[])
>   u_int64_t nsecs;
>  
>   if (strstr(__progname, "mfs"))
> - mfs = Nflag = quiet = 1;
> + mfs = Nflag = quiet = Oflag = 1;
>  
>   getphysmem();
>   maxpartitions = getmaxpartitions();
>
>