summaryrefslogtreecommitdiff
path: root/sbin/newfs/newfs.c
AgeCommit message (Collapse)Author
2024-01-09Delete support for FFS filesystems before the in-inode symlinkPhilip Guenther
optimization. As observed by ali_farzanrad(at)riseup.net, support for these was broken in the 5.5 release in early 2014 by the time_t changes. No one noticed before now, so clearly this isn't something we need to continue to support; rejecting in ffs_validate() is an improvement. Also: simplify DIRSIZ(), drop OLDDIRFMT and NEWDIRFMT, tests of fs_maxsymlinklen against zero, #ifdef tests of FS_44INODEFMT, and remove support for newfs -O0, last used in 2016. ok miod@
2022-12-04userspace: remove vestigial '?' cases from top-level getopt(3) loopsScott Soule Cheloha
getopt(3) returns '?' when it encounters a flag not present in the in the optstring or if a flag is missing its option argument. We can handle this case with the "default" failure case with no loss of legibility. Hence, remove all the redundant "case '?':" lines. Prompted by dlg@. With help from dlg@ and millert@. Link: https://marc.info/?l=openbsd-tech&m=167011979726449&w=2 ok naddy@ millert@ dlg@
2022-11-19Add O: to the getopt string for newfs in mount_mfs mode, allowing it toStuart Henderson
optionally use FFS2 (stu@ ran into a problem when running some tests on an MFS filesystem that involved future dates). Correct the manual which said that FFS2 is the default, which isn't the case for mount_mfs. lgtm miod@
2021-06-03For 4k sector disks, the minimum frag size is 4k. For a 2G fsOtto Moerbeek
that delivers too few inodes to hold a src tree. So adjust the density for partitions on a 4k disk if fragsize and density are not passed on the command line. This is kind of a hack, since we do not have a way to signal the desired # of inodes from the install script. ok kettenis@ krw@
2020-05-19Move back to FFS1 by default for MFS as suggested by millert@. OK otto@Stuart Henderson
2020-05-18Make ffs2 the default for newfs; change all calls to create e.g. floppyOtto Moerbeek
filesystems or ramdisks to use explicit -O 1; installer already does that. ok sthen@
2019-06-28When system calls indicate an error they return -1, not some arbitraryTheo de Raadt
value < 0. errno is only updated in this case. Change all (most?) callers of syscalls to follow this better, and let's see if this strictness helps us in the future.
2018-11-25Remove (unused) FS_BOOT training wheels. If you are allowed to newfs aKenneth R Westerback
partition, you obviously know what you are doing. Even (especially?) if the new file system will be ffs or ext2fs. ok deraadt@ as part of larger diff
2018-03-10Avoid a race when populating an mfs fs by using a tmp dir and splitOtto Moerbeek
out the "wait for mount" code into a function to see more easily what is going on. ok visa@ tedu@
2016-10-11Enable the noperm option for mount_mfs. mfs is ffs in sheeps clothing,Martin Natano
so we basically get this for free. requested by espie ok deraadt
2016-07-25Revert change to density calculation. David Vasek points out thisKenneth R Westerback
is a more complicated problem than it appears. ok deraadt@
2016-07-23At n2k16 David Vasek pointed out that FFS partitions on 4K disks areKenneth R Westerback
created with far fewer inodes than DEV_BSIZE devices. Scale the default 'density' value by (sector size)/DEV_BSIZE to create the same number of inodes. Obviously a NO-OP on DEV_BSIZE devices. Thanks David! ok deraadt@
2016-05-31permit wxallowed on mfsTheo de Raadt
discussed with naddy a bit, ok millert
2016-03-09We are done providing support for the vax.Theo de Raadt
lots of agreement.
2015-12-06Avoid out of boundary access on illegal command line arguments.Tobias Stoeckmann
ok deraadt, mmcc, tedu
2015-11-25We can't make a pledge if we're mount_mfs(8) as we need the ability to callMark Kettenis
mount(2). ok deraadt@
2015-11-23Use pledge "disklabel" as needed. The theory here is these tools become moreTheo de Raadt
resistant against memory correctup, if a corrupt filesystem is given to them. ok krw
2015-11-10newfs does not need TMPDIR supportTheo de Raadt
2015-09-29Delete the final, inscrutable NOSTRICT and VARARGS lint commentsPhilip Guenther
ok millert@
2015-01-20Adjust <sys/param.h> comments regarding use of use of MAXFRAG, orTheo de Raadt
delete <sys/param.h> if now possible ok guenther
2015-01-16Replace <sys/param.h> with <limits.h> and other less dirty headers whereTheo de Raadt
possible. Annotate <sys/param.h> lines with their current reasons. Switch to PATH_MAX, NGROUPS_MAX, HOST_NAME_MAX+1, LOGIN_NAME_MAX, etc. Change MIN() and MAX() to local definitions of MINIMUM() and MAXIMUM() where sensible to avoid pulling in the pollution. These are the files confirmed through binary verification. ok guenther, millert, doug (helped with the verification protocol)
2014-07-20Make sure the correct errno is reported by warn* or err* and notPhilip Guenther
the errno of an intervening cleanup operation like close/unlink/etc. Diff from Doug Hogan (doug (at) acyclic.org)
2014-07-20Mark fatal() as printf-like.Philip Guenther
Don't put a format string that's only used once in a variable.
2013-11-22Whole bunch of (unsigned char) casts carefully added for ctype calls.Theo de Raadt
Careful second audit by millert
2013-11-05Replace direct references to p_size, p_offset and d_secperunit withKenneth R Westerback
DL_[GET|SET]PSIZE(), DL_[GET|SET]POFFSET(), DL_[GET|SET]DSIZE() in order to get|set correct value that includes the high bits of the value.
2013-10-07Oops. Too mechanical -- can't use DL_SECTOBLK() to set fssize, sinceKenneth R Westerback
command line sector size overrides disk label sector size. Add a comment to make sure I don't do it again.
2013-10-06daddr_t tweaks. %lld -> %llu, intermediate disk sector calculationKenneth R Westerback
variable, drop pointless casts, vax-only sector variable to u_int64_t. No intentional functional change.
2013-06-11final removal of daddr64_t. daddr_t has been 64 bit for a long enoughTheo de Raadt
test period; i think 3 years ago the last bugs fell out. ok otto beck others
2011-05-23Allow specifying k/m/g/... suffixes in newfs(8) -S and -s options.David Coppa
Useful for mount_mfs, now you can just say: # mount_mfs -s 50m swap /tmp And it will do what you want, taking into account sector size. Old behaviour of -s (specifying count of sectors) is, of course, preserved. All the work was done by Vadim Zhukov (persgray(at)gmail com). OK myself, otto@, thib@
2011-04-26setrlimit only if mfs; ok millert@Otto Moerbeek
2010-12-13stray tabMarco Peereboom
2010-07-24mount -f doesn't help mfs, but it doesn't hurt, so stop warning about it.Ted Unangst
ok deraadt
2010-07-02garbage collect an unused variableTheo de Raadt
2010-05-18dont let sys/ioctl.h imply that you get the ioctls in dkio.h. thisDavid Gwynne
gets rid of #include <sys/dkio.h> in sys/ioctl.h and adds #include <sys/dkio.h> to the places that actually want and use the disk ioctls. this became an issue when krw@'s X build failed when he was testing a change to dkio.h. tested by krw@ help from and ok miod@
2010-05-03Switch newfs to opendev(3) - this simplies the code and will allow it toJoel Sing
benefit from planned changes to opendev(3). ok krw@ marco@
2010-04-23Recycle unused disklabel fields in order to create a disklabel uniqueJoel Sing
identifier, allowing the disk to be identified without relying on the device name. ok deraadt@ krw@ beck@ marco@ todd@
2010-03-20Make FFS2 the default format for file systems larger than INT_MAXKenneth R Westerback
512-byte blocks. Better than just blowing up. Tweak man page to document this and clarify various things. Inspired by problems noted during an install by Harald Dunkel. Suggestions and man page corrections from otto@ and jmc@ ok beck@
2008-08-08Admit b_blkno means block number; a block is DEV_BSIZE (a.k.a.Kenneth R Westerback
512) bytes; ffs is inextricably tied to using b_blkno and disklabel always uses sectorsize units. Thus use DEV_BSIZE units for all fields describing ffs filesystems and convert to/from sectors where required. This enables the creation and use of ffs filesystems on non-512 byte sectorsize devices. This diff allows i386 and sgi (the two test platforms) to find disklabels that are not on a sectorsize boundary. Same change to further archs coming. This is a no-op on 512-byte sectorsize devices. This work triggered by jsing@'s need to create ffs filesystems on sgi cdroms so we can create cdrom install media for sgi. sgi testing by jsing@ ok jsing@ pedro@ "looks sane" beck@ weingart@
2008-08-04refuse to run on block devices; prompted by marco; ok marco@ millert@Otto Moerbeek
deraadt@
2008-07-06Don't change the size of the partition being newfs'd when sectorsize,Kenneth R Westerback
either from the disklabel or via -S, is not 512 bytes. Disklabel partition sizes are sectors and not 512 byte blocks. One less 'block is 512 bytes' assumption. 2^32 or so to go. ok otto@ millert@
2008-06-27documentation tweak.Igor Sobrado
2008-06-24- move -S and -t into the main option descriptions: they were the onlyJason McIntyre
options left of the old tuning list, and it makes sense to have one list now - document -T. this was requested by todd (fries), and comes largely from the description in netbsd's page of the same name ok millert otto
2008-06-04warnx already prepends string with a colon, no need to manually add oneTobias Stoeckmann
here. ok millert, otto
2008-01-29More read/write result checking fixes to avoid unsigned comparisons vsKenneth R Westerback
-1. ok henning@ beck@ ray@
2008-01-15s/fragements/fragments/ in usage().Stuart Henderson
'please fix' jmc
2007-11-26revised diff that handles the no mfs parts correctlyTed Unangst
2007-11-25when running as newfs, there is no argv[1].. backout previousTheo de Raadt
2007-11-25Iruata Souza sent a diff that fixes weird occurences when mounting withTed Unangst
a relative path: use realpath to only mount with absolute names. ok deraadt thib
2007-11-05forgotten arg to printf, Tobias UlmerOtto Moerbeek
2007-06-26Enable creation of larger than 1TB FFS2 filesystems. Note that thisOtto Moerbeek
won't work yet. There remains sys/ufs work. ok deraadt@