Home | History | Annotate | only in /src/sbin/newfs_udf
History log of /src/sbin/newfs_udf
RevisionDateAuthorComments
 1.10 03-Jun-2023  lukem adapt to ${CC_WNO_ADDRESS_OF_PACKED_MEMBER}

Simplify CWARNFLAGS to use ${CC_WNO_ADDRESS_OF_PACKED_MEMBER}
which works for both clang and gcc, and remove compiler-specific
equivalents.
 1.9 03-Jun-2023  lukem bsd.own.mk: rename to CC_WNO_ADDRESS_OF_PACKED_MEMBER

Provide a single variable
CC_WNO_ADDRESS_OF_PACKED_MEMBER
with options for both clang and gcc, to replace
CLANG_NO_ADDR_OF_PACKED_MEMBER
CC_NO_ADDR_OF_PACKED_MEMBER
GCC_NO_ADDR_OF_PACKED_MEMBER

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
 1.8 06-Apr-2022  reinoud Refactor and rewrite of newfs_udf(8) and makefs(8) (-t udf) with a shared
section for fsck_udf(8).

Newfs_udf and makefs support predefined disc image profiles, harddisc
partitions (disklabel and wedges on all generic block devices) and all optical
media types on CD/DVD/BD writers.

Newfs_udf and makefs now also support formatting of UDF 2.50 with a metadata
partition.
 1.7 06-Sep-2020  mrg add support for new GCC 9 warnings that may be too much to fix
right now. new address-of-packed-member and format-overflow
warnings have new GCC_NO_ADDR_OF_PACKED_MEMBER amd
GCC_NO_FORMAT_OVERFLOW variables to remove these warnings.

apply to a bunch of the tree. mostly, these are real bugs that
should be fixed, but in many cases, only by removing the 'packed'
attribute from some structure that doesn't really need it. (i
looked at many different ones, and while perhaps 60-80% were
already properly aligned, it wasn't clear to me that the uses
were always coming from sane data vs network alignment, so it
doesn't seem safe to remove packed without careful research for
each affect struct.) clang already warned (and was not erroring)
for many of these cases, but gcc picked up dozens more.
 1.6 11-Jan-2017  joerg Disable a couple of warnings until further investigation.
 1.5 18-Mar-2014  riastradh branches: 1.5.8;
Merge riastradh-drm2 to HEAD.
 1.4 18-Jul-2013  reinoud Initial split up for making newfs_udf(8) routines suitable for makefs_udf(8)
 1.3 11-Apr-2009  lukem branches: 1.3.6; 1.3.12; 1.3.16;
Enable WARNS=4 by default except for:
dump dump_lfs fsck_ffs fsck_lfs fsdb mount_smbfs
newfs_ext2fs newfs_lfs resize_lfs setkey
 1.2 14-Jan-2009  he branches: 1.2.2;
Ensure that all the files in SRCS are *.c files (there were some
files matching *.o (!) in the list). Thanks to cube@ for spotting
what I could not see. Should fix issue with UPDATE builds across
the recent time_t merge and associated shared lib major bumps.
 1.1 14-May-2008  reinoud branches: 1.1.2; 1.1.4; 1.1.6;
Import writing part of the UDF file system making optical media like CD's
and DVD's behave like floppy discs. Writing is supported upto and including
version 2.01; version 2.50 and 2.60 will follow.

Also extending the UDF implementation to support symbolic links and
hardlinks.

Added are the mmcformat(8) tool to format rewritable CD/DVD discs and
newfs_udf(8).

Limitations:
all operations can be performed on the file system though the
sheduling is currently optimised for archiving workloads.

mv(1)/rename(2) is currently only implemented for non-directories.
 1.1.6.2 17-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2. Pull in things that are new,
and pull in some things that were missed in the last sync.
 1.1.6.1 14-May-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-17 04:43:59 +0000
 1.1.4.3 17-Jan-2009  mjf Sync with HEAD.
 1.1.4.2 02-Jun-2008  mjf Sync with HEAD.
 1.1.4.1 14-May-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-02 13:21:23 +0000
 1.1.2.2 18-May-2008  yamt sync with head.
 1.1.2.1 14-May-2008  yamt file Makefile was added on branch yamt-pf42 on 2008-05-18 12:30:54 +0000
 1.2.2.1 13-May-2009  jym Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
 1.3.16.1 23-Jul-2013  riastradh sync with HEAD
 1.3.12.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.3.6.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.5.8.1 20-Mar-2017  pgoyette Sync with HEAD
 1.18 06-Aug-2013  wiz Fix article.
 1.17 06-Aug-2013  wiz Sort sections. Remove superfluous Ed.
 1.16 06-Aug-2013  reinoud Clarify volumeset name restrictions when specifying it in newfs_udf(8)
 1.15 06-Aug-2013  reinoud Fix misplaced BUGS section and fix layout
 1.14 05-Aug-2013  wiz Sort.
 1.13 05-Aug-2013  reinoud Adjust newfs_udf to be sharing code with the new `makefs -t udf' to be
comitted.
 1.12 20-Jul-2013  wiz Use Mt for email addresses.
 1.11 02-Jul-2013  wiz branches: 1.11.2;
Sort sections. New sentence, new line. Fix macro.
 1.10 02-Jul-2013  reinoud Update newfs_udf to allow for creating file images with -F and specifying
sector sizes with -S.

For this i had to recycle the -S parameter but its preserved as an extension
to the -P parameter. These parameters are hardly ever use though since using
either or both the origional -S and the -P parameter without specific values
would break the standard. Also the -F now has a double meaning.
 1.9 29-Jun-2013  reinoud Small rewording of the examples section.
 1.8 28-Apr-2011  wiz branches: 1.8.4; 1.8.10;
Sort options and option descriptions. Fix a typo. New sentence, new line.
 1.7 23-Dec-2009  mbalmer Bump date.
 1.6 23-Dec-2009  mbalmer Fix typo in command output.
 1.5 18-Jan-2009  lukem Use KiB MiB GiB instead of Kb Mb Gb
 1.4 26-Jul-2008  reinoud branches: 1.4.2; 1.4.4;
Add UDF 2.50 metadata partition creation to newfs_udf(8). It allows a
percentage to the volume space to be pre-allocated for metadata on format.
Implementations that can't extent the metadata partitions can thus use the
discs too.

Note that the kernel UDF code can't write to UDF 2.50 metadata partitions
yet; this is a work-in-progress.

Also note that the default formatting version choice is still version 2.01
i.e. without the metadata partition.
 1.3 21-Jun-2008  wiz Sort options.
New sentence, new line.
Use more markup.
Drop trailing whitespace.
Bump date for previous.
 1.2 19-Jun-2008  reinoud Allow UDF versions to be both specified as a hex value and as a float
value. Its now possible to specify version 2.50 as "2.50" or "0x250".
 1.1 14-May-2008  reinoud branches: 1.1.2; 1.1.4;
Import writing part of the UDF file system making optical media like CD's
and DVD's behave like floppy discs. Writing is supported upto and including
version 2.01; version 2.50 and 2.60 will follow.

Also extending the UDF implementation to support symbolic links and
hardlinks.

Added are the mmcformat(8) tool to format rewritable CD/DVD discs and
newfs_udf(8).

Limitations:
all operations can be performed on the file system though the
sheduling is currently optimised for archiving workloads.

mv(1)/rename(2) is currently only implemented for non-directories.
 1.1.4.4 28-Sep-2008  mjf Sync with HEAD.
 1.1.4.3 29-Jun-2008  mjf Sync with HEAD.
 1.1.4.2 02-Jun-2008  mjf Sync with HEAD.
 1.1.4.1 14-May-2008  mjf file newfs_udf.8 was added on branch mjf-devfs2 on 2008-06-02 13:21:23 +0000
 1.1.2.2 18-May-2008  yamt sync with head.
 1.1.2.1 14-May-2008  yamt file newfs_udf.8 was added on branch yamt-pf42 on 2008-05-18 12:30:54 +0000
 1.4.4.2 09-Jan-2010  snj Pull up following revision(s) (requested by mbalmer in ticket #1209):
dist/pdisk/pdisk.c: revision 1.18
distrib/amiga/floppies/upgr/upgrade.sh: revision 1.9
sbin/newfs_udf/newfs_udf.8: revision 1.6
sbin/newfs_udf/udf_create.c: revision 1.17
Fix typo in command output.
 1.4.4.1 18-Feb-2009  snj branches: 1.4.4.1.4;
Pull up following revision(s) (requested by reinoud in ticket #444):
sbin/newfs_udf/newfs_udf.8: revision 1.5
sbin/newfs_udf/newfs_udf.c: revision 1.7
sbin/newfs_udf/udf_create.c: revision 1.14
Use KiB MiB GiB instead of Kb Mb Gb
 1.4.4.1.4.1 21-Apr-2010  matt sync to netbsd-5
 1.4.2.2 17-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2. Pull in things that are new,
and pull in some things that were missed in the last sync.
 1.4.2.1 26-Jul-2008  wrstuden file newfs_udf.8 was added on branch wrstuden-revivesa on 2008-09-17 04:43:59 +0000
 1.8.10.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.8.4.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.11.2.1 23-Jul-2013  riastradh sync with HEAD
 1.24 09-Apr-2022  riastradh newfs_udf(8): Nix trailing whitespace.

No functional change intended.
 1.23 06-Apr-2022  reinoud Refactor and rewrite of newfs_udf(8) and makefs(8) (-t udf) with a shared
section for fsck_udf(8).

Newfs_udf and makefs support predefined disc image profiles, harddisc
partitions (disklabel and wedges on all generic block devices) and all optical
media types on CD/DVD/BD writers.

Newfs_udf and makefs now also support formatting of UDF 2.50 with a metadata
partition.
 1.22 19-Sep-2021  andvar fix various typos in comments, messages and documentation.
 1.21 20-Aug-2021  andvar fix various typos in comments and log messages.
 1.20 05-Apr-2020  joerg Fix depenency on common symbols in sbin.
 1.19 09-Mar-2016  christos branches: 1.19.16;
PR/50920: David Binderman: fix leak
 1.18 09-Aug-2013  reinoud Fix possible 32 bit issues. In practice hard to reach but better be safe than
sorry.
 1.17 06-Aug-2013  reinoud Switch back program version to the version of the newfs_udf/makefs code.

While here, visit the 80 columns police :)
 1.16 06-Aug-2013  reinoud Oops, forgot to export a_udf_version() that checks if the input string is a
valid UDF version notation.
 1.15 05-Aug-2013  reinoud Adjust newfs_udf to be sharing code with the new `makefs -t udf' to be
comitted.
 1.14 18-Jul-2013  reinoud Initial split up for making newfs_udf(8) routines suitable for makefs_udf(8)
 1.13 02-Jul-2013  reinoud branches: 1.13.2;
Update newfs_udf to allow for creating file images with -F and specifying
sector sizes with -S.

For this i had to recycle the -S parameter but its preserved as an extension
to the -P parameter. These parameters are hardly ever use though since using
either or both the origional -S and the -P parameter without specific values
would break the standard. Also the -F now has a double meaning.
 1.12 26-May-2011  reinoud branches: 1.12.4; 1.12.10;
Fix accidental use of logical && instead of binary & in rare case.

Bug noticed by Joerg and clang :)
 1.11 21-Jan-2011  reinoud When requesting to disable metadata partitions, also disable low formatting.
When no meta and not low formatting we can lower the required UDF version.
 1.10 21-Jan-2011  reinoud Fix typo in comment
 1.9 04-Jan-2011  wiz branches: 1.9.2;
Fix memory leaks. Found by cppcheck.
 1.8 17-Sep-2009  reinoud Update TODO message; we can format with meta data partitions, only not yet for
BD-R, i.e. UDF 2.60.
 1.7 18-Jan-2009  lukem Use KiB MiB GiB instead of Kb Mb Gb
 1.6 18-Jan-2009  lukem * Fix -Wsign-compare issues.
* Add some XXXs noting where we might want to check for 16bit overflow.
* Use uintNN_t instead of int if the values is read from or written to
using udf_rwNN().
 1.5 05-Aug-2008  pooka branches: 1.5.2; 1.5.4;
Refactor mount utilities to provide a mount_fs_parseargs() routine.
Use this routine both in mount_fs and rump_fs to provide equivalent
command line parameters and therefore usage interchangeability.
While doing this, combine some common mountgoop to mountprog.h
 1.4 26-Jul-2008  reinoud Add UDF 2.50 metadata partition creation to newfs_udf(8). It allows a
percentage to the volume space to be pre-allocated for metadata on format.
Implementations that can't extent the metadata partitions can thus use the
discs too.

Note that the kernel UDF code can't write to UDF 2.50 metadata partitions
yet; this is a work-in-progress.

Also note that the default formatting version choice is still version 2.01
i.e. without the metadata partition.
 1.3 19-Jun-2008  reinoud Allow UDF versions to be both specified as a hex value and as a float
value. Its now possible to specify version 2.50 as "2.50" or "0x250".
 1.2 19-Jun-2008  reinoud If the written out descriptor contains a file descriptor or an extended
file descriptor, update the location of the extended attribute space if
present.
 1.1 14-May-2008  reinoud branches: 1.1.2; 1.1.4;
Import writing part of the UDF file system making optical media like CD's
and DVD's behave like floppy discs. Writing is supported upto and including
version 2.01; version 2.50 and 2.60 will follow.

Also extending the UDF implementation to support symbolic links and
hardlinks.

Added are the mmcformat(8) tool to format rewritable CD/DVD discs and
newfs_udf(8).

Limitations:
all operations can be performed on the file system though the
sheduling is currently optimised for archiving workloads.

mv(1)/rename(2) is currently only implemented for non-directories.
 1.1.4.4 28-Sep-2008  mjf Sync with HEAD.
 1.1.4.3 29-Jun-2008  mjf Sync with HEAD.
 1.1.4.2 02-Jun-2008  mjf Sync with HEAD.
 1.1.4.1 14-May-2008  mjf file newfs_udf.c was added on branch mjf-devfs2 on 2008-06-02 13:21:23 +0000
 1.1.2.2 18-May-2008  yamt sync with head.
 1.1.2.1 14-May-2008  yamt file newfs_udf.c was added on branch yamt-pf42 on 2008-05-18 12:30:54 +0000
 1.5.4.2 18-Feb-2009  snj Pull up following revision(s) (requested by reinoud in ticket #444):
sbin/newfs_udf/newfs_udf.8: revision 1.5
sbin/newfs_udf/newfs_udf.c: revision 1.7
sbin/newfs_udf/udf_create.c: revision 1.14
Use KiB MiB GiB instead of Kb Mb Gb
 1.5.4.1 18-Feb-2009  snj Pull up following revision(s) (requested by reinoud in ticket #444):
sbin/newfs_udf/newfs_udf.c: revision 1.6
sbin/newfs_udf/udf_create.c: revision 1.13
sbin/newfs_udf/udf_create.h: revision 1.3
* Fix -Wsign-compare issues.
* Add some XXXs noting where we might want to check for 16bit overflow.
* Use uintNN_t instead of int if the values is read from or written to
using udf_rwNN().
 1.5.2.2 17-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2. Pull in things that are new,
and pull in some things that were missed in the last sync.
 1.5.2.1 05-Aug-2008  wrstuden file newfs_udf.c was added on branch wrstuden-revivesa on 2008-09-17 04:43:59 +0000
 1.9.2.1 08-Feb-2011  bouyer Sync with HEAD
 1.12.10.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.12.4.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.13.2.1 23-Jul-2013  riastradh sync with HEAD
 1.19.16.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.9 09-Apr-2022  riastradh newfs_udf(8): Nix trailing whitespace.

No functional change intended.
 1.8 06-Apr-2022  reinoud Refactor and rewrite of newfs_udf(8) and makefs(8) (-t udf) with a shared
section for fsck_udf(8).

Newfs_udf and makefs support predefined disc image profiles, harddisc
partitions (disklabel and wedges on all generic block devices) and all optical
media types on CD/DVD/BD writers.

Newfs_udf and makefs now also support formatting of UDF 2.50 with a metadata
partition.
 1.7 05-Apr-2020  joerg Fix depenency on common symbols in sbin.
 1.6 30-Jun-2019  sevan branches: 1.6.2;
Add rcsid
 1.5 09-Aug-2013  reinoud branches: 1.5.4; 1.5.8; 1.5.22; 1.5.30;
Fix possible 32 bit issues. In practice hard to reach but better be safe than
sorry.
 1.4 06-Aug-2013  reinoud Switch back program version to the version of the newfs_udf/makefs code.

While here, visit the 80 columns police :)
 1.3 05-Aug-2013  reinoud Fix newfs(8) to compile again.
 1.2 05-Aug-2013  joerg Allow building UDF parts of makefs on !NetBSD.
 1.1 18-Jul-2013  reinoud branches: 1.1.2;
Initial split up for making newfs_udf(8) routines suitable for makefs_udf(8)
 1.1.2.2 23-Jul-2013  riastradh sync with HEAD
 1.1.2.1 18-Jul-2013  riastradh file newfs_udf.h was added on branch riastradh-drm2 on 2013-07-23 21:07:31 +0000
 1.5.30.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.5.30.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.5.22.1 07-May-2021  martin Pull up following revision(s) (requested by mrg in ticket #1678):

bin/pax/options.c: revision 1.119
usr.bin/config/scan.l: revision 1.32
usr.bin/make/main.c: revision 1.274
bin/pax/extern.h: revision 1.60
usr.bin/config/defs.h: revision 1.106
usr.bin/make/make.h: revision 1.105
sbin/newfs_udf/udf_create.c: revision 1.27 (patch)
sbin/newfs_udf/newfs_udf.h: revision 1.7 (patch)
usr.bin/config/main.c: revision 1.100
usr.sbin/installboot/Makefile: revisions 1.53,1.54 (patch)
usr.sbin/installboot/installboot.h: revision 1.41 (patch)
usr.sbin/installboot/machines.c: revisisons 1.41,1.42 (patch)

Avoid depending on common symbols.
 1.5.8.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.5.8.1 09-Aug-2013  tls file newfs_udf.h was added on branch tls-maxphys on 2014-08-20 00:02:27 +0000
 1.5.4.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.5.4.1 09-Aug-2013  yamt file newfs_udf.h was added on branch yamt-pagecache on 2014-05-22 11:37:31 +0000
 1.6.2.1 30-Apr-2021  martin Pull up following revision(s) (requested by mrg in ticket #1263):

bin/pax/options.c: revision 1.119
usr.bin/config/scan.l: revision 1.32
usr.bin/make/main.c: revision 1.274
bin/pax/extern.h: revision 1.60
usr.bin/config/defs.h: revision 1.106
usr.bin/make/make.h: revision 1.105
sbin/newfs_udf/udf_create.c: revision 1.27 (patch)
sbin/newfs_udf/newfs_udf.h: revision 1.7 (patch)
usr.bin/config/main.c: revision 1.100

Avoid depending on common symbols.
 1.14 05-Feb-2024  andvar fix various typos in comments.
 1.13 28-May-2022  andvar fix various typos in comments, mainly origional->original,
extened->extended, incomming->incoming.
 1.12 22-May-2022  andvar fix various small typos, mainly in comments.
 1.11 15-May-2022  andvar s/wich/which in comments.
 1.10 07-May-2022  reinoud Data is written out in fixed sized packets; discs are normally a multiple of
the packet size but they don't have to be so never write past the last sector.
 1.9 26-Apr-2022  reinoud Fix endian bug also in commented out code
 1.8 26-Apr-2022  reinoud Fix endian bug : Logblks recorded in fe/efe VAT is 64 bits
 1.7 26-Apr-2022  reinoud Fix endian bug in permission storage
 1.6 26-Apr-2022  reinoud Fix endian bug with VAT 1.50 format
 1.5 25-Apr-2022  reinoud Fix endian bug in logical volume creation for metadata/VAT partitions.
 1.4 22-Apr-2022  reinoud Fix endian issues with UDF extended attributes
 1.3 22-Apr-2022  reinoud Fix endian issues with fsck_udf/newfs_udf/makefs
 1.2 09-Apr-2022  riastradh newfs_udf(8): Nix trailing whitespace.

No functional change intended.
 1.1 06-Apr-2022  reinoud Refactor and rewrite of newfs_udf(8) and makefs(8) (-t udf) with a shared
section for fsck_udf(8).

Newfs_udf and makefs support predefined disc image profiles, harddisc
partitions (disklabel and wedges on all generic block devices) and all optical
media types on CD/DVD/BD writers.

Newfs_udf and makefs now also support formatting of UDF 2.50 with a metadata
partition.
 1.3 07-Aug-2022  andvar fix various typos in comments, documentation and messages.
mainly s/paramater/parameter/ and s/reduntant/redundant/.
 1.2 09-Apr-2022  riastradh newfs_udf(8): Nix trailing whitespace.

No functional change intended.
 1.1 06-Apr-2022  reinoud Refactor and rewrite of newfs_udf(8) and makefs(8) (-t udf) with a shared
section for fsck_udf(8).

Newfs_udf and makefs support predefined disc image profiles, harddisc
partitions (disklabel and wedges on all generic block devices) and all optical
media types on CD/DVD/BD writers.

Newfs_udf and makefs now also support formatting of UDF 2.50 with a metadata
partition.
 1.32 06-Apr-2022  reinoud Refactor and rewrite of newfs_udf(8) and makefs(8) (-t udf) with a shared
section for fsck_udf(8).

Newfs_udf and makefs support predefined disc image profiles, harddisc
partitions (disklabel and wedges on all generic block devices) and all optical
media types on CD/DVD/BD writers.

Newfs_udf and makefs now also support formatting of UDF 2.50 with a metadata
partition.
 1.31 06-Feb-2022  andvar fix various typos in comments, log messages and documentation.
mainly s/aparently/apparently/ and s/implmented/implemented/.
 1.30 20-Aug-2021  andvar fix various typos in comments and log messages.
 1.29 13-Apr-2021  mrg more GCC 10 fixes.

mDNSResponder: another wrong return local address

dhcp: ignore a seemingly impossible stringop overflow

hpacel: avoid maybe uninitialised error that is wrong.

rsh: avoid impossible malloc(0)

udf: cast pointers through (uintptr_t) to fool invalid boundary checks
 1.28 14-May-2020  msaitoh Remove extra semicolon.
 1.27 05-Apr-2020  joerg Fix depenency on common symbols in sbin.
 1.26 09-Dec-2018  christos branches: 1.26.2;
Address of packed member might not be aligned.
 1.25 16-Jun-2015  christos branches: 1.25.8; 1.25.14; 1.25.16;
fix error messages containing \n
 1.24 19-Oct-2013  christos fix unused variable warnings.
 1.23 10-Aug-2013  tron Fix tool build under Mac OS X by using gettimeofday(2) instead of
clock_gettime(2). This needs a proper auto-config check.
 1.22 06-Aug-2013  reinoud Switch back program version to the version of the newfs_udf/makefs code.

While here, visit the 80 columns police :)
 1.21 06-Aug-2013  reinoud Oops, forgot to export a_udf_version() that checks if the input string is a
valid UDF version notation.
 1.20 05-Aug-2013  joerg Allow building UDF parts of makefs on !NetBSD.
 1.19 05-Aug-2013  reinoud Fix memset() arguments to use the right type for sizeof() and streamline its
use of sizeof() to allways use the right type.
 1.18 05-Aug-2013  reinoud Adjust newfs_udf to be sharing code with the new `makefs -t udf' to be
comitted.
 1.17 23-Dec-2009  mbalmer branches: 1.17.6; 1.17.12;
Fix typo in command output.
 1.16 19-May-2009  reinoud Fix newfs_udf to create a valid disc images on bigendian machines.
 1.15 15-Feb-2009  dholland fix typo: "aprox." -> "approx." (approximate).
 1.14 18-Jan-2009  lukem branches: 1.14.2;
Use KiB MiB GiB instead of Kb Mb Gb
 1.13 18-Jan-2009  lukem * Fix -Wsign-compare issues.
* Add some XXXs noting where we might want to check for 16bit overflow.
* Use uintNN_t instead of int if the values is read from or written to
using udf_rwNN().
 1.12 26-Jul-2008  reinoud branches: 1.12.2; 1.12.4;
Add UDF 2.50 metadata partition creation to newfs_udf(8). It allows a
percentage to the volume space to be pre-allocated for metadata on format.
Implementations that can't extent the metadata partitions can thus use the
discs too.

Note that the kernel UDF code can't write to UDF 2.50 metadata partitions
yet; this is a work-in-progress.

Also note that the default formatting version choice is still version 2.01
i.e. without the metadata partition.
 1.11 24-Jun-2008  reinoud Use the new macros defined in ecma167-udf.h and also calculate the extended
attribute header crc check; not just the tag sum.
 1.10 22-Jun-2008  reinoud Rename functionname to be more in sync with the kernel function naming.
 1.9 22-Jun-2008  reinoud Initialise l_ea though technically not nessisary since its space is claimed
by a calloc() its more clear to explicitly initialise it to prevent
accidents might the routine be later changed.
 1.8 21-Jun-2008  reinoud DO set the birthtime please....
 1.7 20-Jun-2008  reinoud Factor out extended attribute header creation. The VAT and extended time
descriptors are now added by this function.

Extended attribute for birthtime added to (non-extended) file descriptors.
 1.6 19-Jun-2008  reinoud Remove superfluous crc and checksum calculations when we are already post
processing it later on writeout.
 1.5 19-Jun-2008  reinoud Don't keep a running pointer but calculate directly the data offset to
prepare for factoring out.
 1.4 19-Jun-2008  reinoud Move extended attribute header creation from VAT to all (non-extended) file
descriptor creations.
 1.3 19-Jun-2008  reinoud Clarify hack to move LVID sequence forward if there are bad blocks there
since the automatic bad block skipping is not yet done.
 1.2 19-Jun-2008  reinoud Fix commentZ
 1.1 14-May-2008  reinoud branches: 1.1.2; 1.1.4;
Import writing part of the UDF file system making optical media like CD's
and DVD's behave like floppy discs. Writing is supported upto and including
version 2.01; version 2.50 and 2.60 will follow.

Also extending the UDF implementation to support symbolic links and
hardlinks.

Added are the mmcformat(8) tool to format rewritable CD/DVD discs and
newfs_udf(8).

Limitations:
all operations can be performed on the file system though the
sheduling is currently optimised for archiving workloads.

mv(1)/rename(2) is currently only implemented for non-directories.
 1.1.4.4 28-Sep-2008  mjf Sync with HEAD.
 1.1.4.3 29-Jun-2008  mjf Sync with HEAD.
 1.1.4.2 02-Jun-2008  mjf Sync with HEAD.
 1.1.4.1 14-May-2008  mjf file udf_create.c was added on branch mjf-devfs2 on 2008-06-02 13:21:23 +0000
 1.1.2.2 18-May-2008  yamt sync with head.
 1.1.2.1 14-May-2008  yamt file udf_create.c was added on branch yamt-pf42 on 2008-05-18 12:30:54 +0000
 1.12.4.4 09-Jan-2010  snj Pull up following revision(s) (requested by mbalmer in ticket #1209):
dist/pdisk/pdisk.c: revision 1.18
distrib/amiga/floppies/upgr/upgrade.sh: revision 1.9
sbin/newfs_udf/newfs_udf.8: revision 1.6
sbin/newfs_udf/udf_create.c: revision 1.17
Fix typo in command output.
 1.12.4.3 06-Jun-2009  bouyer Pull up following revision(s) (requested by reinoud in ticket #770):
sys/fs/udf/udf_subr.c: revision 1.88, 1.89
sys/fs/udf/udf_bswap.h: revision 1.6, 1.7
sys/fs/udf/udf_allocation.c: revision 1.22, 1.23
sbin/newfs_udf/udf_create.c: revision 1.16
Fix *serious* bug in bswapping definitions for big endian machines.
ANSI-fy. No idea why they weren't so in the first place.
Fix newfs_udf to create a valid disc images on bigendian machines.
A descriptor's CRC lenth is 16 bit so use udf_rw16() on tag.desc_crc_len.
Forgot to use the udf_rw16() on the descriptor crc lengths of FID's!
Also fix a few dubiously formatted checks.
On creation of a new node, don't forget to set the length of the allocated
space in the right endian!
Account for the logical blocks recorded by the extent in the right endian!
 1.12.4.2 18-Feb-2009  snj branches: 1.12.4.2.4;
Pull up following revision(s) (requested by reinoud in ticket #444):
sbin/newfs_udf/newfs_udf.8: revision 1.5
sbin/newfs_udf/newfs_udf.c: revision 1.7
sbin/newfs_udf/udf_create.c: revision 1.14
Use KiB MiB GiB instead of Kb Mb Gb
 1.12.4.1 18-Feb-2009  snj Pull up following revision(s) (requested by reinoud in ticket #444):
sbin/newfs_udf/newfs_udf.c: revision 1.6
sbin/newfs_udf/udf_create.c: revision 1.13
sbin/newfs_udf/udf_create.h: revision 1.3
* Fix -Wsign-compare issues.
* Add some XXXs noting where we might want to check for 16bit overflow.
* Use uintNN_t instead of int if the values is read from or written to
using udf_rwNN().
 1.12.4.2.4.1 21-Apr-2010  matt sync to netbsd-5
 1.12.2.2 17-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2. Pull in things that are new,
and pull in some things that were missed in the last sync.
 1.12.2.1 26-Jul-2008  wrstuden file udf_create.c was added on branch wrstuden-revivesa on 2008-09-17 04:43:59 +0000
 1.14.2.1 13-May-2009  jym Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
 1.17.12.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.17.6.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.25.16.2 08-Apr-2020  martin Merge changes from current as of 20200406
 1.25.16.1 10-Jun-2019  christos Sync with HEAD
 1.25.14.1 26-Dec-2018  pgoyette Sync with HEAD, resolve a few conflicts
 1.25.8.1 07-May-2021  martin Pull up following revision(s) (requested by mrg in ticket #1678):

bin/pax/options.c: revision 1.119
usr.bin/config/scan.l: revision 1.32
usr.bin/make/main.c: revision 1.274
bin/pax/extern.h: revision 1.60
usr.bin/config/defs.h: revision 1.106
usr.bin/make/make.h: revision 1.105
sbin/newfs_udf/udf_create.c: revision 1.27 (patch)
sbin/newfs_udf/newfs_udf.h: revision 1.7 (patch)
usr.bin/config/main.c: revision 1.100
usr.sbin/installboot/Makefile: revisions 1.53,1.54 (patch)
usr.sbin/installboot/installboot.h: revision 1.41 (patch)
usr.sbin/installboot/machines.c: revisisons 1.41,1.42 (patch)

Avoid depending on common symbols.
 1.26.2.1 30-Apr-2021  martin Pull up following revision(s) (requested by mrg in ticket #1263):

bin/pax/options.c: revision 1.119
usr.bin/config/scan.l: revision 1.32
usr.bin/make/main.c: revision 1.274
bin/pax/extern.h: revision 1.60
usr.bin/config/defs.h: revision 1.106
usr.bin/make/make.h: revision 1.105
sbin/newfs_udf/udf_create.c: revision 1.27 (patch)
sbin/newfs_udf/newfs_udf.h: revision 1.7 (patch)
usr.bin/config/main.c: revision 1.100

Avoid depending on common symbols.
 1.8 06-Apr-2022  reinoud Refactor and rewrite of newfs_udf(8) and makefs(8) (-t udf) with a shared
section for fsck_udf(8).

Newfs_udf and makefs support predefined disc image profiles, harddisc
partitions (disklabel and wedges on all generic block devices) and all optical
media types on CD/DVD/BD writers.

Newfs_udf and makefs now also support formatting of UDF 2.50 with a metadata
partition.
 1.7 09-Aug-2013  reinoud Fix possible 32 bit issues. In practice hard to reach but better be safe than
sorry.
 1.6 06-Aug-2013  reinoud Oops, forgot to export a_udf_version() that checks if the input string is a
valid UDF version notation.
 1.5 05-Aug-2013  joerg Allow building UDF parts of makefs on !NetBSD.
 1.4 05-Aug-2013  reinoud Adjust newfs_udf to be sharing code with the new `makefs -t udf' to be
comitted.
 1.3 18-Jan-2009  lukem branches: 1.3.8; 1.3.14;
* Fix -Wsign-compare issues.
* Add some XXXs noting where we might want to check for 16bit overflow.
* Use uintNN_t instead of int if the values is read from or written to
using udf_rwNN().
 1.2 26-Jul-2008  reinoud branches: 1.2.2; 1.2.4;
Add UDF 2.50 metadata partition creation to newfs_udf(8). It allows a
percentage to the volume space to be pre-allocated for metadata on format.
Implementations that can't extent the metadata partitions can thus use the
discs too.

Note that the kernel UDF code can't write to UDF 2.50 metadata partitions
yet; this is a work-in-progress.

Also note that the default formatting version choice is still version 2.01
i.e. without the metadata partition.
 1.1 14-May-2008  reinoud branches: 1.1.2; 1.1.4;
Import writing part of the UDF file system making optical media like CD's
and DVD's behave like floppy discs. Writing is supported upto and including
version 2.01; version 2.50 and 2.60 will follow.

Also extending the UDF implementation to support symbolic links and
hardlinks.

Added are the mmcformat(8) tool to format rewritable CD/DVD discs and
newfs_udf(8).

Limitations:
all operations can be performed on the file system though the
sheduling is currently optimised for archiving workloads.

mv(1)/rename(2) is currently only implemented for non-directories.
 1.1.4.3 28-Sep-2008  mjf Sync with HEAD.
 1.1.4.2 02-Jun-2008  mjf Sync with HEAD.
 1.1.4.1 14-May-2008  mjf file udf_create.h was added on branch mjf-devfs2 on 2008-06-02 13:21:23 +0000
 1.1.2.2 18-May-2008  yamt sync with head.
 1.1.2.1 14-May-2008  yamt file udf_create.h was added on branch yamt-pf42 on 2008-05-18 12:30:54 +0000
 1.2.4.1 18-Feb-2009  snj Pull up following revision(s) (requested by reinoud in ticket #444):
sbin/newfs_udf/newfs_udf.c: revision 1.6
sbin/newfs_udf/udf_create.c: revision 1.13
sbin/newfs_udf/udf_create.h: revision 1.3
* Fix -Wsign-compare issues.
* Add some XXXs noting where we might want to check for 16bit overflow.
* Use uintNN_t instead of int if the values is read from or written to
using udf_rwNN().
 1.2.2.2 17-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2. Pull in things that are new,
and pull in some things that were missed in the last sync.
 1.2.2.1 26-Jul-2008  wrstuden file udf_create.h was added on branch wrstuden-revivesa on 2008-09-17 04:43:59 +0000
 1.3.14.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.3.8.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.12 06-Apr-2022  reinoud Refactor and rewrite of newfs_udf(8) and makefs(8) (-t udf) with a shared
section for fsck_udf(8).

Newfs_udf and makefs support predefined disc image profiles, harddisc
partitions (disklabel and wedges on all generic block devices) and all optical
media types on CD/DVD/BD writers.

Newfs_udf and makefs now also support formatting of UDF 2.50 with a metadata
partition.
 1.11 01-Sep-2021  andvar fix few typos in comments.
 1.10 22-Aug-2021  andvar s/priviledge/privilege/ in comments/log messages and fix one typo in descriptor.
 1.9 02-Jan-2015  reinoud Fix volumesetname to comply to UDF 2.01 [2.2.2.5]
 1.8 25-Aug-2013  reinoud branches: 1.8.4; 1.8.8;
Add the blockingnr determination for the -rom versions
 1.7 06-Aug-2013  reinoud Fix memory leaks found by Coverity and fix memoryleaks in the new code
 1.6 05-Aug-2013  reinoud Fix newfs(8) to compile again.
 1.5 05-Aug-2013  joerg Allow building UDF parts of makefs on !NetBSD.
 1.4 05-Aug-2013  reinoud Fix memset() arguments to use the right type for sizeof() and streamline its
use of sizeof() to allways use the right type.
 1.3 05-Aug-2013  reinoud Adjust newfs_udf to be sharing code with the new `makefs -t udf' to be
comitted.
 1.2 18-Jul-2013  reinoud branches: 1.2.2;
Add comment to udf_do_rootdir(). Might eventually be moved to newfs_udf(8)
 1.1 18-Jul-2013  reinoud Initial split up for making newfs_udf(8) routines suitable for makefs_udf(8)
 1.2.2.2 23-Jul-2013  riastradh sync with HEAD
 1.2.2.1 18-Jul-2013  riastradh file udf_write.c was added on branch riastradh-drm2 on 2013-07-23 21:07:31 +0000
 1.8.8.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.8.8.1 25-Aug-2013  tls file udf_write.c was added on branch tls-maxphys on 2014-08-20 00:02:27 +0000
 1.8.4.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.8.4.1 25-Aug-2013  yamt file udf_write.c was added on branch yamt-pagecache on 2014-05-22 11:37:31 +0000
 1.5 06-Apr-2022  reinoud Refactor and rewrite of newfs_udf(8) and makefs(8) (-t udf) with a shared
section for fsck_udf(8).

Newfs_udf and makefs support predefined disc image profiles, harddisc
partitions (disklabel and wedges on all generic block devices) and all optical
media types on CD/DVD/BD writers.

Newfs_udf and makefs now also support formatting of UDF 2.50 with a metadata
partition.
 1.4 05-Aug-2013  reinoud branches: 1.4.4; 1.4.8;
Fix newfs(8) to compile again.
 1.3 05-Aug-2013  joerg Allow building UDF parts of makefs on !NetBSD.
 1.2 05-Aug-2013  reinoud Adjust newfs_udf to be sharing code with the new `makefs -t udf' to be
comitted.
 1.1 18-Jul-2013  reinoud branches: 1.1.2;
Initial split up for making newfs_udf(8) routines suitable for makefs_udf(8)
 1.1.2.2 23-Jul-2013  riastradh sync with HEAD
 1.1.2.1 18-Jul-2013  riastradh file udf_write.h was added on branch riastradh-drm2 on 2013-07-23 21:07:31 +0000
 1.4.8.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.4.8.1 05-Aug-2013  tls file udf_write.h was added on branch tls-maxphys on 2014-08-20 00:02:27 +0000
 1.4.4.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.4.4.1 05-Aug-2013  yamt file udf_write.h was added on branch yamt-pagecache on 2014-05-22 11:37:31 +0000
 1.2 10-May-2023  rillig newfs_udf: fix wording in comment
 1.1 05-Aug-2013  reinoud branches: 1.1.4; 1.1.8;
Adjust newfs_udf to be sharing code with the new `makefs -t udf' to be
comitted.
 1.1.8.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.8.1 05-Aug-2013  tls file unicode.h was added on branch tls-maxphys on 2014-08-20 00:02:27 +0000
 1.1.4.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.4.1 05-Aug-2013  yamt file unicode.h was added on branch yamt-pagecache on 2014-05-22 11:37:31 +0000

RSS XML Feed