[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#862598: marked as done (unblock: udfclient/0.8.8-1)



Your message dated Thu, 18 May 2017 20:08:00 +0000
with message-id <8c8150a1-8e11-c339-431b-c8be57f87681@thykier.net>
and subject line Re: Bug#862598: unblock: udfclient/0.8.7-1
has caused the Debian Bug report #862598,
regarding unblock: udfclient/0.8.8-1
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
862598: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=862598
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock

Please unblock package udfclient

New upstream version fixes CVE-2017-8305 (Buffer overflow in strlcpy
implementation), debian bug #861347. As protection for buffer overflows,
package has now enabled hardening. Source debdiff is attached.

unblock udfclient/0.8.7-1

-- 
Pali Rohár
pali.rohar@gmail.com
diff -Nru udfclient-0.8.7/cd_disect.c udfclient-0.8.8/cd_disect.c
--- udfclient-0.8.7/cd_disect.c	2017-01-16 15:35:03.000000000 +0100
+++ udfclient-0.8.8/cd_disect.c	2017-04-03 11:38:13.000000000 +0200
@@ -2,7 +2,7 @@
 
 /*
  * File "cd_disect.c" is part of the UDFclient toolkit.
- * File $Id: cd_disect.c,v 1.80 2016/04/25 20:55:30 reinoud Exp $ $Name:  $
+ * File $Id: cd_disect.c,v 1.81 2017/04/03 08:48:51 reinoud Exp $ $Name:  $
  *
  * Copyright (c) 2003, 2004, 2005, 2006, 2011
  * 	Reinoud Zandijk <reinoud@netbsd.org>
@@ -211,7 +211,7 @@
 		if (cntrl & 1) strcat(scrap, "; incremental  "); else strcat(scrap, "; uninterrupted");
 	} else {
 		strcat(scrap, "audio track");
-		if (cntrl & 1) strcat(scrap, "; pre-emphasis of 50/15 �s"); else strcat(scrap, "; no pre-emphasis");
+		if (cntrl & 1) strcat(scrap, "; pre-emphasis of 50/15 microseconds"); else strcat(scrap, "; no pre-emphasis");
 	}
 	if (cntrl & 2) strcat(scrap, "; copy prohibited");
 
@@ -1384,7 +1384,7 @@
 				if (cntrl & 1) printf("; incremental  "); else printf("; uninterrupted");
 			} else {
 				printf("audio track");
-				if (cntrl & 1) printf("; pre-emphasis of 50/15 �s"); else printf("; no pre-emphasis");
+				if (cntrl & 1) printf("; pre-emphasis of 50/15 microseconds"); else printf("; no pre-emphasis");
 			}
 			if (cntrl & 2) printf("; copy prohibited");
 			printf(")\n");
diff -Nru udfclient-0.8.7/configure udfclient-0.8.8/configure
--- udfclient-0.8.7/configure	2017-01-16 15:35:03.000000000 +0100
+++ udfclient-0.8.8/configure	2017-04-03 11:38:13.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for udfclient 0.8.7.
+# Generated by GNU Autoconf 2.69 for udfclient 0.8.8.
 #
 # Report bugs to <reinoud@NetBSD.org>.
 #
@@ -580,8 +580,8 @@
 # Identity of this package.
 PACKAGE_NAME='udfclient'
 PACKAGE_TARNAME='udfclient'
-PACKAGE_VERSION='0.8.7'
-PACKAGE_STRING='udfclient 0.8.7'
+PACKAGE_VERSION='0.8.8'
+PACKAGE_STRING='udfclient 0.8.8'
 PACKAGE_BUGREPORT='reinoud@NetBSD.org'
 PACKAGE_URL=''
 
@@ -1239,7 +1239,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures udfclient 0.8.7 to adapt to many kinds of systems.
+\`configure' configures udfclient 0.8.8 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1304,7 +1304,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of udfclient 0.8.7:";;
+     short | recursive ) echo "Configuration of udfclient 0.8.8:";;
    esac
   cat <<\_ACEOF
 
@@ -1384,7 +1384,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-udfclient configure 0.8.7
+udfclient configure 0.8.8
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1810,7 +1810,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by udfclient $as_me 0.8.7, which was
+It was created by udfclient $as_me 0.8.8, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -4537,7 +4537,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by udfclient $as_me 0.8.7, which was
+This file was extended by udfclient $as_me 0.8.8, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -4590,7 +4590,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-udfclient config.status 0.8.7
+udfclient config.status 0.8.8
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff -Nru udfclient-0.8.7/configure.ac udfclient-0.8.8/configure.ac
--- udfclient-0.8.7/configure.ac	2017-01-16 15:35:03.000000000 +0100
+++ udfclient-0.8.8/configure.ac	2017-04-03 11:38:13.000000000 +0200
@@ -2,7 +2,7 @@
 # Process this file with autoconf to produce a configure script.
 
 AC_PREREQ(2.57)
-AC_INIT([udfclient], [0.8.7], [reinoud@NetBSD.org])
+AC_INIT([udfclient], [0.8.8], [reinoud@NetBSD.org])
 #AC_CONFIG_SRCDIR([udf.c])
 AC_CANONICAL_HOST
 #AC_CONFIG_HEADER([config.h])
diff -Nru udfclient-0.8.7/debian/changelog udfclient-0.8.8/debian/changelog
--- udfclient-0.8.7/debian/changelog	2017-01-24 23:43:34.000000000 +0100
+++ udfclient-0.8.8/debian/changelog	2017-04-27 22:10:27.000000000 +0200
@@ -1,3 +1,14 @@
+udfclient (0.8.8-1) unstable; urgency=low
+
+  * New upstream release.
+    - CVE-2017-8305: Fix buffer overflow in strlcpy implementation
+      (Closes: #861347)
+  * Enable hardening.
+  * Install new man pages.
+  * Update debian/watch.
+
+ -- Pali Rohár <pali.rohar@gmail.com>  Thu, 27 Apr 2017 22:10:27 +0200
+
 udfclient (0.8.7-1) unstable; urgency=low
 
   * New upstream release.
diff -Nru udfclient-0.8.7/debian/manpages udfclient-0.8.8/debian/manpages
--- udfclient-0.8.7/debian/manpages	1970-01-01 01:00:00.000000000 +0100
+++ udfclient-0.8.8/debian/manpages	2017-04-27 21:51:04.000000000 +0200
@@ -0,0 +1,2 @@
+mmc_format.8
+newfs_udf.8
diff -Nru udfclient-0.8.7/debian/rules udfclient-0.8.8/debian/rules
--- udfclient-0.8.7/debian/rules	2016-07-28 23:22:14.000000000 +0200
+++ udfclient-0.8.8/debian/rules	2017-04-27 22:03:12.000000000 +0200
@@ -2,6 +2,7 @@
 # -*- makefile -*-
 
 export DH_VERBOSE=1
+export DEB_BUILD_MAINT_OPTIONS = hardening=+all
 
 %:
 	dh $@ --buildsystem=bmake
diff -Nru udfclient-0.8.7/debian/watch udfclient-0.8.8/debian/watch
--- udfclient-0.8.7/debian/watch	2016-07-28 23:22:14.000000000 +0200
+++ udfclient-0.8.8/debian/watch	2017-04-27 21:46:09.000000000 +0200
@@ -1,2 +1,2 @@
 version=3
-http://www.13thmonkey.org/udfclient/releases/UDFclient\.([^r].*)\.tgz
+http://www.13thmonkey.org/udfclient/releases/UDFclient\.([^r].*)\.tgz debian uupdate
diff -Nru udfclient-0.8.7/Makefile udfclient-0.8.8/Makefile
--- udfclient-0.8.7/Makefile	1970-01-01 01:00:00.000000000 +0100
+++ udfclient-0.8.8/Makefile	2017-04-03 13:11:21.000000000 +0200
@@ -0,0 +1,88 @@
+#
+# UDFclient toolkit
+#
+# Copyright 2003,2004,2005 Reinoud P.Zandijk
+#
+#
+# File $Id: Makefile.in,v 1.24 2017/01/10 09:52:30 reinoud Exp $ $Name:  $
+#
+
+srcdir=		.
+
+prefix=		/usr/local
+exec_prefix=	${prefix}
+sbindir=	${exec_prefix}/sbin
+mandir=		${datarootdir}/man
+bindir=		${exec_prefix}/bin
+datarootdir=	${prefix}/share
+
+CC=		clang
+LD=		$(CC)
+CPPFLAGS=	     -DNO_DIRENT_NAMLEN -DSCSI -DUSCSI_SCSIPI -DPACKAGE_NAME=\"udfclient\" -DPACKAGE_TARNAME=\"udfclient\" -DPACKAGE_VERSION=\"0.8.8\" -DPACKAGE_STRING=\"udfclient\ 0.8.8\" -DPACKAGE_BUGREPORT=\"reinoud@NetBSD.org\" -DPACKAGE_URL=\"\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_ENDIAN_H=1 -DHAVE_MACHINE_ENDIAN_H=1 -DHAVE_MACHINE_BSWAP_H=1 -DHAVE_SYS_BSWAP_H=1 -DHAVE_MACHINE_INT_FMTIO_H=1 -DHAVE_STRUCT_STAT_ST_ATIMESPEC=1 -DHAVE_STRUCT_STAT_ST_BIRTHTIMESPEC=1 -DHAVE_DEV_SCSIPI_SCSIPI_ALL_H=1 -I$(srcdir)
+CFLAGS=		-g -O2
+LDFLAGS=	
+
+INSTALL=	/usr/bin/install -c
+
+# NetBSD
+#CFLAGS+= -Wall \
+#	 -Wuninitialized \
+#	 -fno-strict-aliasing \
+#	 -Wextra -Werror
+#	 -Werror ${COPTS} \
+#	 -DNDEBUG
+
+# Anonymising this client (for comformity)
+#CFLAGS+= -D__ANONYMOUSUDF__
+
+#CFLAGS+= -fPIC -DPIC
+POSTOBJ+=  -lpthread -lc
+
+
+# For use with the cpuflags package
+#CPROCFLAGS != cpuflags
+CFLAGS+= ${CPROCFLAGS}
+
+
+# Main programs
+APPS=		udfdump udfclient newfs_udf cd_sessions 
+SCSI_APPS=	cd_disect mmc_format
+LIB=		osta.o udf.o udf_bmap.o udf_allocentries.o udf_discop.o uio.o
+LIB+=		udf_verbose.o udf_readwrite.o udf_unix.o vfs_dirhash.o
+USCSILIB=	uscsi_sense.o uscsi_subr.o
+
+CFLAGS+= -DNEEDS_ISPRINT $(CPPFLAGS)
+
+all: $(APPS) $(SCSI_APPS)
+
+install: $(APPS) $(SCSI_APPS)
+	$(INSTALL) -d $(DESTDIR)/$(bindir)
+	for app in $(APPS) $(SCSI_APPS); do \
+		echo "$(INSTALL) $$app $(DESTDIR)/$(bindir)/$$app"; \
+		$(INSTALL) $$app $(DESTDIR)/$(bindir)/$$app; \
+	done
+
+depend:
+	mkdep $(CFLAGS) *.c
+
+clean:
+	rm -f *.o *.a *.core core.* core .depend *~ *.bak $(APPS) $(SCSI_APPS)
+	rm -fr autom*.cache config.log config.status configure.lineno
+
+cleandir: clean
+	rm -f Makefile
+
+libuscsi.a: $(USCSILIB)
+	ar -rsc libuscsi.a $(USCSILIB)
+
+libudf.a: $(LIB)
+	ar -rsc libudf.a $(LIB)
+
+$(SCSI_APPS): $(.TARGET).o libuscsi.a
+	$(LD) -o $(.TARGET) $(LDFLAGS) $(.TARGET).o libuscsi.a $(POSTOBJ)
+
+$(APPS): $(.TARGET).o libuscsi.a libudf.a
+	$(LD) -o $(.TARGET) $(LDFLAGS) $(.TARGET).o libudf.a libuscsi.a $(POSTOBJ)
+
+
+# DO NOT DELETE
diff -Nru udfclient-0.8.7/Makefile.in udfclient-0.8.8/Makefile.in
--- udfclient-0.8.7/Makefile.in	2017-01-16 15:36:50.000000000 +0100
+++ udfclient-0.8.8/Makefile.in	2017-04-03 11:39:08.000000000 +0200
@@ -45,7 +45,7 @@
 
 
 # Main programs
-APPS=		udfdump udfclient newfs_udf cd_sessions
+APPS=		udfdump udfclient newfs_udf cd_sessions 
 SCSI_APPS=	cd_disect mmc_format
 LIB=		osta.o udf.o udf_bmap.o udf_allocentries.o udf_discop.o uio.o
 LIB+=		udf_verbose.o udf_readwrite.o udf_unix.o vfs_dirhash.o
diff -Nru udfclient-0.8.7/mmc_format.8 udfclient-0.8.8/mmc_format.8
--- udfclient-0.8.7/mmc_format.8	1970-01-01 01:00:00.000000000 +0100
+++ udfclient-0.8.8/mmc_format.8	2017-04-03 11:38:13.000000000 +0200
@@ -0,0 +1,136 @@
+.\" $NetBSD: mmcformat.8,v 1.6 2014/03/18 18:20:47 riastradh Exp $
+.\"
+.\" Copyright (c) 2008 Reinoud Zandijk
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in
+.\"    the documentation and/or other materials provided with the
+.\"    distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS
+.\" OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY
+.\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+.\" GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+.\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+.\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+.\"
+.\"
+.Dd May 9, 2008
+.Dt MMCFORMAT 8
+.Os
+.Sh NAME
+.Nm mmc_format
+.Nd format optical media
+.Sh SYNOPSIS
+.Nm
+.Op Fl BDFGHhIMOpRrSsw
+.Op Fl b Ar blockingnr
+.Op Fl c Ar cert-num
+.\" .Op X format is not implemented yet
+.Ar special
+.Sh DESCRIPTION
+The
+.Nm
+utility formats optical media conforming to the MMC standard.
+This includes CD, DVD, and Blu-Ray (BD) media.
+.Pp
+The options are as follows:
+.Bl -tag -width XbXblockingnrXX
+.It Fl B
+Blank media when possible before formatting it.
+.It Fl b Ar blockingnr
+Explicitly select packet size in sectors
+.Pq for CD-RW only .
+It is not recommended to change this from its default of 32.
+.It Fl c Ar cert-num
+Certify media for DVD-RAM / DV-RE.
+The argument cert-num specifies:
+.Bl -tag -offset indent
+.It 0
+no certification
+.It 1
+full certification
+.It 2
+quick certification
+.El
+.It Fl D
+Debug mode.
+Print all SCSI/ATAPI command errors.
+.It Fl F
+Format media.
+.It Fl G
+Grow last CD-RW/DVD-RW session.
+.It Fl H
+Show help and print formatting choices for the inserted media.
+.It Fl h
+Show help and print formatting choices for the inserted media.
+.It Fl I
+Show help and print formatting choices for the inserted media.
+.It Fl M
+Select MRW (Mount Rainier) error correcting background format.
+.It Fl O
+Old style CD-RW formatting; recommended for CD-RW.
+.It Fl p
+Explicitly set packet format.
+.It Fl R
+Restart previously stopped MCD-MRW or DVD+RW background format.
+.It Fl r
+Recompile defect list for DVD-RAM.
+.It Fl S
+Grow spare space DVD-RAM / BD-RE.
+.It Fl s
+Format DVD+MRW / BD-RE with extra spare space.
+.It Fl w
+Wait until completion of background format.
+.El
+.Sh NOTES
+Due to the enormous varieties in optical media,
+.Nm
+is made as generic as possible.
+This can result in confusion.
+.Sh EXAMPLES
+.Dl Ic mmc_format -B -O /dev/rcd0d
+.Pp
+Blanks and then formats a CD-RW disc using the
+.Dq old style
+format command.
+It is recommended to use this
+.Dq old style
+command unless your drive reports that it's not supported; in that case, resort
+to the default
+.Fl F .
+Note that a CD-RW disc can be reformatted without being blanked.
+Blanking switches between sequential and fixed packet writing by
+erasing the disc.
+This can also help to revive old discs.
+.Pp
+.Dl Ic mmc_format -F -M /dev/rcd0d
+.Pp
+Format a CD-RW or a DVD+RW to use MRW (Mount Rainier).
+This format tries to hide media flaws as much as possible by
+relocation.
+.Sh SEE ALSO
+.Xr scsictl 8
+.Sh HISTORY
+The
+.Nm
+command first appeared in
+.Nx 5.0 .
+.Sh AUTHORS
+.An Reinoud Zandijk Aq Mt reinoud@NetBSD.org
+.Sh BUGS
+.Nm
+could be merged with
+.Xr scsictl 8
+but that tool is very hard disk oriented.
diff -Nru udfclient-0.8.7/newfs_udf.c udfclient-0.8.8/newfs_udf.c
--- udfclient-0.8.7/newfs_udf.c	2017-01-17 22:21:38.000000000 +0100
+++ udfclient-0.8.8/newfs_udf.c	2017-04-03 11:38:13.000000000 +0200
@@ -2,7 +2,7 @@
 
 /*
  * File "newfs_udf.c" is part of the UDFclient toolkit.
- * File $Id: newfs_udf.c,v 1.45 2016/04/25 21:01:39 reinoud Exp $ $Name:  $
+ * File $Id: newfs_udf.c,v 1.46 2017/01/18 14:23:35 reinoud Exp $ $Name:  $
  *
  * Copyright (c) 2004, 2005, 2006, 2011
  * 	Reinoud Zandijk <reinoud@netbsd.org>
diff -Nru udfclient-0.8.7/newfs_udf.8 udfclient-0.8.8/newfs_udf.8
--- udfclient-0.8.7/newfs_udf.8	1970-01-01 01:00:00.000000000 +0100
+++ udfclient-0.8.8/newfs_udf.8	2017-04-03 11:38:13.000000000 +0200
@@ -0,0 +1,191 @@
+.\" $NetBSD: newfs_udf.8,v 1.18 2013/08/06 12:15:20 wiz Exp $
+.\"
+.\" Copyright (c) 2008 Reinoud Zandijk
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in
+.\"    the documentation and/or other materials provided with the
+.\"    distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS
+.\" OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY
+.\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+.\" GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+.\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+.\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+.\"
+.\"
+.Dd August 2, 2013
+.Dt NEWFS_UDF 8
+.Os
+.Sh NAME
+.Nm newfs_udf
+.Nd construct a new UDF file system
+.Sh SYNOPSIS
+.Nm
+.Op Fl cFM
+.Op Fl B Ar blockingsize
+.Op Fl L Ar loglabel
+.Op Fl P Ar discid
+.Op Fl p Ar percentage
+.Op Fl S Ar sectorsize
+.Op Fl s Ar size
+.Op Fl t Ar gmtoff
+.Op Fl V Ar max_udf
+.Op Fl v Ar min_udf
+.Ar special
+.Sh DESCRIPTION
+The
+.Nm
+utility creates an UDF file system on device
+.Ar special
+suitable for the media currently inserted.
+.Pp
+The options are as follow:
+.Bl -tag -width indent
+.It Fl B Ar blockingsize
+When creating image files, specify the blocking size or packetsize of the media
+to
+.Ar blockingsize .
+.It Fl c
+Perform a crude surface check first to weed out disc faults on rewritable
+media.
+.It Fl F
+Force file system construction on non-empty recordable media or create an
+image file.
+.It Fl L Ar loglabel
+Set the disc logical label to the specified
+.Ar loglabel .
+.It Fl M
+Disable metadata partition creation when selected UDF version or media dictates
+this.
+For strict conformance and interchange, don't disable this unless
+its causing problems.
+.It Fl P Ar discid
+Set the physical disc label to the specified
+.Ar discid .
+.Pp
+Prepend
+.Ar discid
+with volsetname separated with a ':' if wanted.
+For strict conformance and interchange, don't set this manually unless it has
+a unique hex number in the first 8 character positions.
+.It Fl p Ar percentage
+Percentage of partition to be initially reserved for metadata on the Metadata
+partition.
+It defaults to 20 %.
+.It Fl S Ar sectorsize
+Set the sectorsize for image files.
+For strict conformance and interchange, don't set this manually.
+.It Fl s Ar size
+For image files, set the file size to the humanized size
+.Ar size .
+.It Fl t Ar gmtoff
+Use the specified
+.Ar gmtoff
+as gmt time offset for recording times on the disc.
+.It Fl V Ar max_udf
+Select
+.Ar max_udf
+as the maximum UDF version to be supported.
+For UDF version 2.50, use
+.Dq 0x250
+or
+.Dq 2.50 .
+.It Fl v Ar min_udf
+Select
+.Ar min_udf
+as the minimum UDF version to be supported.
+For UDF version 2.01, use
+.Dq 0x201
+or
+.Dq 2.01 .
+.El
+.Sh NOTES
+The UDF file system is defined for the entire optical medium.
+It can only function on the entire CD/DVD/BD so the raw partition
+has to be specified for read/write actions.
+For
+.Nm
+this means specifying the raw device with the raw partition, i.e.
+.Pa /dev/rcd0d
+or
+.Pa /dev/rcd0c .
+.Pp
+Some rewritable optical media needs to be formatted first before it can be
+used by UDF.
+This can be done using
+.Xr mmcformat 8 .
+.Pp
+The default UDF version is version 2.01.
+.Sh EXAMPLES
+Create a file system, using the specified names on the device
+.Pa /dev/rcd0d
+with the default UDF version :
+.Bd -literal -offset indent
+newfs_udf -P "Encyclopedia:copy-nr-1" -L "volume 2" /dev/rcd0d
+.Ed
+.Pp
+Create a 4.8 GiB sparse file and configure it using
+.Xr vnconfig 8
+to be a 2048 sector size disc and create a new UDF file system on
+.Pa /dev/rvnd0d
+:
+.Bd -literal -offset indent
+dd if=/dev/zero of=bigdisk.2048.udf seek=9999999 count=1
+vnconfig -c vnd0 bigdisk.2048.udf 2048/1/1/1
+newfs_udf -L bigdisk /dev/rvnd0d
+.Ed
+.Pp
+Create a 2 GiB file and create a new UDF file system on it using the default
+512 byte sector size :
+.Bd -literal -offset indent
+newfs_udf -L bigdisk2 -F -s 2G bigdisk2.iso
+.Ed
+.Pp
+Create a 200 MiB file and create a new UDF file system on it using a sector size
+of 2048 :
+.Bd -literal -offset indent
+newfs_udf -L bigdisk2 -F -s 200M -S 2048 bigdisk3.iso
+.Ed
+.Pp
+Create a new UDF file system on the inserted USB stick using its
+native sectorsize of 512 :
+.Bd -literal -offset indent
+newfs_udf -L "My USB stick" /dev/rsd0d
+.Ed
+.Sh SEE ALSO
+.Xr disktab 5 ,
+.Xr disklabel 8 ,
+.Xr mmcformat 8 ,
+.Xr newfs 8
+.Sh HISTORY
+The
+.Nm
+command first appeared in
+.Nx 5.0 .
+.Sh AUTHORS
+.An Reinoud Zandijk Aq Mt reinoud@NetBSD.org
+.Sh BUGS
+The
+.Ar P
+and the
+.Ar S
+arguments have changed meaning.
+The meaning of
+.Ar S
+has been merged into
+.Ar P
+since
+.Nx 6.1 .
diff -Nru udfclient-0.8.7/Session.vim udfclient-0.8.8/Session.vim
--- udfclient-0.8.7/Session.vim	1970-01-01 01:00:00.000000000 +0100
+++ udfclient-0.8.8/Session.vim	2017-04-03 11:38:13.000000000 +0200
@@ -0,0 +1,301 @@
+let SessionLoad = 1
+if &cp | set nocp | endif
+let s:cpo_save=&cpo
+set cpo&vim
+imap <S-Right> <Down><Home>
+imap <S-Left> <Up><End>
+map  :bn<NL>
+map  :bp<NL>
+map Q gq
+nmap gx <Plug>NetrwBrowseX
+nnoremap <silent> <Plug>NetrwBrowseX :call netrw#NetrwBrowseX(expand("<cWORD>"),0)
+imap  gq{gq}
+imap c \cite{p}
+let &cpo=s:cpo_save
+unlet s:cpo_save
+set autoindent
+set background=dark
+set backspace=2
+set backup
+set cindent
+set comments=sr:/*,mb:*,el:*/,://
+set formatoptions=croql
+set guifont=Monospace\ 8
+set hidden
+set highlight=8:SpecialKey,@:NonText,d:Directory,e:ErrorMsg,i:IncSearch,l:IncSearch,m:MoreMsg,M:ModeMsg,n:LineNr,r:Question,s:StatusLine,S:StatusLineNC,t:Title,v:Visual,w:WarningMsg
+set hlsearch
+set mouse=a
+set ruler
+set termencoding=utf-8
+set textwidth=78
+set visualbell
+set window=79
+let s:so_save = &so | let s:siso_save = &siso | set so=0 siso=0
+let v:this_session=expand("<sfile>:p")
+silent only
+cd ~/UDF/src
+if expand('%') == '' && !&modified && line('$') <= 1 && getline(1) == ''
+  let s:wipebuf = bufnr('%')
+endif
+set shortmess=aoO
+badd +41 cd_disect.c
+badd +1 cd_sessions.c
+badd +1 config.h
+badd +1 defs.h
+badd +1 dirhash.h
+badd +136 ecma167-udf.h
+badd +1 mmc_format.c
+badd +31 newfs_udf.c
+badd +1 osta.c
+badd +1 osta.h
+badd +1 queue.h
+badd +5182 udf.c
+badd +527 udf.h
+badd +1 udf_allocentries.c
+badd +1 udf_bmap.c
+badd +1 udf_bswap.h
+badd +1 udf_discop.c
+badd +1 udf_discop.h
+badd +1 udf_readwrite.c
+badd +1 udf_unix.c
+badd +1 udf_unix.h
+badd +1370 udf_verbose.c
+badd +714 udfclient.c
+badd +206 udfdump.c
+badd +1 uio.c
+badd +1 uio.h
+badd +1 uscsi_sense.c
+badd +1 uscsi_subr.c
+badd +1 uscsilib.h
+badd +1 uscsilib_machdep.h
+badd +423 vfs_dirhash.c
+badd +554 /usr/src/sys/fs/udf/udf_vnops.c
+badd +4684 /usr/src/sys/fs/udf/udf_subr.c
+args cd_disect.c cd_sessions.c config.h defs.h dirhash.h ecma167-udf.h mmc_format.c newfs_udf.c osta.c osta.h queue.h udf.c udf.h udf_allocentries.c udf_bmap.c udf_bswap.h udf_discop.c udf_discop.h udf_readwrite.c udf_unix.c udf_unix.h udf_verbose.c udfclient.c udfdump.c uio.c uio.h uscsi_sense.c uscsi_subr.c uscsilib.h uscsilib_machdep.h vfs_dirhash.c
+edit vfs_dirhash.c
+set splitbelow splitright
+wincmd _ | wincmd |
+split
+1wincmd k
+wincmd w
+set nosplitbelow
+set nosplitright
+wincmd t
+set winheight=1 winwidth=1
+exe '1resize ' . ((&lines * 26 + 40) / 80)
+exe '2resize ' . ((&lines * 51 + 40) / 80)
+argglobal
+edit vfs_dirhash.c
+setlocal autoindent
+setlocal balloonexpr=
+setlocal nobinary
+setlocal bufhidden=
+setlocal buflisted
+setlocal buftype=
+setlocal cindent
+setlocal cinkeys=0{,0},0),:,0#,!^F,o,O,e
+setlocal cinoptions=
+setlocal cinwords=if,else,while,do,for,switch
+setlocal comments=sr:/*,mb:*,el:*/,://
+setlocal commentstring=/*%s*/
+setlocal complete=.,w,b,u,t,i
+setlocal completefunc=
+setlocal nocopyindent
+setlocal nocursorcolumn
+setlocal nocursorline
+setlocal define=
+setlocal dictionary=
+setlocal nodiff
+setlocal equalprg=
+setlocal errorformat=
+setlocal noexpandtab
+if &filetype != 'c'
+setlocal filetype=c
+endif
+setlocal foldcolumn=0
+setlocal foldenable
+setlocal foldexpr=0
+setlocal foldignore=#
+setlocal foldlevel=0
+setlocal foldmarker={{{,}}}
+setlocal foldmethod=manual
+setlocal foldminlines=1
+setlocal foldnestmax=20
+setlocal foldtext=foldtext()
+setlocal formatexpr=
+setlocal formatoptions=croql
+setlocal formatlistpat=^\\s*\\d\\+[\\]:.)}\\t\ ]\\s*
+setlocal grepprg=
+setlocal iminsert=0
+setlocal imsearch=0
+setlocal include=
+setlocal includeexpr=
+setlocal indentexpr=
+setlocal indentkeys=0{,0},:,0#,!^F,o,O,e
+setlocal noinfercase
+setlocal iskeyword=@,48-57,_,192-255
+setlocal keywordprg=
+setlocal nolinebreak
+setlocal nolisp
+setlocal nolist
+setlocal makeprg=
+setlocal matchpairs=(:),{:},[:]
+setlocal modeline
+setlocal modifiable
+setlocal nrformats=octal,hex
+setlocal nonumber
+setlocal numberwidth=4
+setlocal omnifunc=
+setlocal path=
+setlocal nopreserveindent
+setlocal nopreviewwindow
+setlocal quoteescape=\\
+setlocal noreadonly
+setlocal noscrollbind
+setlocal shiftwidth=8
+setlocal noshortname
+setlocal nosmartindent
+setlocal softtabstop=0
+setlocal nospell
+setlocal spellcapcheck=[.?!]\\_[\\])'\"\	\ ]\\+
+setlocal spellfile=
+setlocal spelllang=en
+setlocal statusline=
+setlocal suffixesadd=
+setlocal swapfile
+setlocal synmaxcol=3000
+if &syntax != 'c'
+setlocal syntax=c
+endif
+setlocal tabstop=8
+setlocal tags=
+setlocal textwidth=78
+setlocal thesaurus=
+setlocal nowinfixheight
+setlocal nowinfixwidth
+setlocal wrap
+setlocal wrapmargin=0
+silent! normal! zE
+let s:l = 341 - ((19 * winheight(0) + 13) / 26)
+if s:l < 1 | let s:l = 1 | endif
+exe s:l
+normal! zt
+341
+normal! 0
+wincmd w
+argglobal
+edit udf.c
+setlocal autoindent
+setlocal balloonexpr=
+setlocal nobinary
+setlocal bufhidden=
+setlocal buflisted
+setlocal buftype=
+setlocal cindent
+setlocal cinkeys=0{,0},0),:,0#,!^F,o,O,e
+setlocal cinoptions=
+setlocal cinwords=if,else,while,do,for,switch
+setlocal comments=sr:/*,mb:*,el:*/,://
+setlocal commentstring=/*%s*/
+setlocal complete=.,w,b,u,t,i
+setlocal completefunc=
+setlocal nocopyindent
+setlocal nocursorcolumn
+setlocal nocursorline
+setlocal define=
+setlocal dictionary=
+setlocal nodiff
+setlocal equalprg=
+setlocal errorformat=
+setlocal noexpandtab
+if &filetype != 'c'
+setlocal filetype=c
+endif
+setlocal foldcolumn=0
+setlocal foldenable
+setlocal foldexpr=0
+setlocal foldignore=#
+setlocal foldlevel=0
+setlocal foldmarker={{{,}}}
+setlocal foldmethod=manual
+setlocal foldminlines=1
+setlocal foldnestmax=20
+setlocal foldtext=foldtext()
+setlocal formatexpr=
+setlocal formatoptions=croql
+setlocal formatlistpat=^\\s*\\d\\+[\\]:.)}\\t\ ]\\s*
+setlocal grepprg=
+setlocal iminsert=0
+setlocal imsearch=0
+setlocal include=
+setlocal includeexpr=
+setlocal indentexpr=
+setlocal indentkeys=0{,0},:,0#,!^F,o,O,e
+setlocal noinfercase
+setlocal iskeyword=@,48-57,_,192-255
+setlocal keywordprg=
+setlocal nolinebreak
+setlocal nolisp
+setlocal nolist
+setlocal makeprg=
+setlocal matchpairs=(:),{:},[:]
+setlocal modeline
+setlocal modifiable
+setlocal nrformats=octal,hex
+setlocal nonumber
+setlocal numberwidth=4
+setlocal omnifunc=
+setlocal path=
+setlocal nopreserveindent
+setlocal nopreviewwindow
+setlocal quoteescape=\\
+setlocal noreadonly
+setlocal noscrollbind
+setlocal shiftwidth=8
+setlocal noshortname
+setlocal nosmartindent
+setlocal softtabstop=0
+setlocal nospell
+setlocal spellcapcheck=[.?!]\\_[\\])'\"\	\ ]\\+
+setlocal spellfile=
+setlocal spelllang=en
+setlocal statusline=
+setlocal suffixesadd=
+setlocal swapfile
+setlocal synmaxcol=3000
+if &syntax != 'c'
+setlocal syntax=c
+endif
+setlocal tabstop=8
+setlocal tags=
+setlocal textwidth=78
+setlocal thesaurus=
+setlocal nowinfixheight
+setlocal nowinfixwidth
+setlocal wrap
+setlocal wrapmargin=0
+silent! normal! zE
+let s:l = 5895 - ((22 * winheight(0) + 25) / 51)
+if s:l < 1 | let s:l = 1 | endif
+exe s:l
+normal! zt
+5895
+normal! 0
+wincmd w
+2wincmd w
+exe '1resize ' . ((&lines * 26 + 40) / 80)
+exe '2resize ' . ((&lines * 51 + 40) / 80)
+tabnext 1
+if exists('s:wipebuf')
+  silent exe 'bwipe ' . s:wipebuf
+endif
+unlet! s:wipebuf
+set winheight=1 winwidth=20 shortmess=filnxtToO
+let s:sx = expand("<sfile>:p:r")."x.vim"
+if file_readable(s:sx)
+  exe "source " . s:sx
+endif
+let &so = s:so_save | let &siso = s:siso_save
+doautoall SessionLoadPost
+unlet SessionLoad
+" vim: set ft=vim :
diff -Nru udfclient-0.8.7/udf.c udfclient-0.8.8/udf.c
--- udfclient-0.8.7/udf.c	2017-01-16 15:35:03.000000000 +0100
+++ udfclient-0.8.8/udf.c	2017-04-03 14:36:39.000000000 +0200
@@ -2,7 +2,7 @@
 
 /*
  * File "udf.c" is part of the UDFclient toolkit.
- * File $Id: udf.c,v 1.297 2016/04/27 08:05:46 reinoud Exp $ $Name:  $
+ * File $Id: udf.c,v 1.302 2017/04/03 12:36:21 reinoud Exp $ $Name:  $
  *
  * Copyright (c) 2003, 2004, 2005, 2006, 2011
  * 	Reinoud Zandijk <reinoud@netbsd.org>
@@ -992,12 +992,14 @@
 		return;
 	}
 	/* FILL in {atime, mtime, attrtime} TIMES! */
-#ifndef NO_STAT_BIRTHTIME
-	udf_timespec_to_timestamp(&stat->st_birthtimespec, ctime);
-#endif
 	udf_timespec_to_timestamp(&stat->st_atimespec,     atime);
 	udf_timespec_to_timestamp(&stat->st_mtimespec,     mtime);
 	udf_timespec_to_timestamp(&stat->st_ctimespec,     attrtime);
+#ifndef NO_STAT_BIRTHTIME
+	udf_timespec_to_timestamp(&stat->st_birthtimespec, ctime);
+#else
+	memcpy(ctime, mtime, sizeof(*ctime));
+#endif
 
 	return;
 }
@@ -3074,7 +3076,7 @@
 	struct udf_part_mapping	 *part_mapping, *data_part_mapping, *search_part_mapping;
 	union  udf_pmap		 *pmap;
 	uint32_t		  part_cnt, pmap_type, pmap_size;
-	int32_t			  data_part_num;
+	uint32_t		  data_part_num;
 	uint8_t 		 *pmap_pos;
 
 	logical = udf_search_logical_volume_in_primary(primary, incomming->logvol_id);
@@ -3601,7 +3603,7 @@
 	uint32_t		  spar_loc;
 	uint64_t		  first_vat_loc, vat_loc, last_vat_loc;
 	uint32_t		  sector_size, lb_size;
-	int			  part_num, spar_num, data_part_num, vpart_num;
+	uint32_t		  part_num, spar_num, data_part_num, vpart_num;
 	int			  session_num;
 	int			  error;
 
@@ -5081,7 +5083,7 @@
 
 int udf_create_empty_anchor_volume_descriptor(uint32_t sector_size, uint16_t dscr_ver, uint32_t main_vds_loc, uint32_t reserve_vds_loc, uint32_t length, struct anchor_vdp **vdp) {
 	assert(vdp);
-	assert(abs(main_vds_loc - reserve_vds_loc) >= length);
+	assert(main_vds_loc - reserve_vds_loc >= length);
 
 	*vdp = malloc(sector_size);
 	if (!*vdp) return ENOMEM;
diff -Nru udfclient-0.8.7/uscsi_sense.c udfclient-0.8.8/uscsi_sense.c
--- udfclient-0.8.7/uscsi_sense.c	2017-01-16 15:35:03.000000000 +0100
+++ udfclient-0.8.8/uscsi_sense.c	2017-04-03 11:38:13.000000000 +0200
@@ -603,9 +603,7 @@
 size_t
 strlcpy(char *dst, const char *src, size_t size)
 {
-	strncpy(dst, src, size-1);
-	dst[size] = '\0';
-
+	snprintf(dst, size, "%s", src);
 	return strlen(src);
 }
 

Attachment: signature.asc
Description: This is a digitally signed message part.


--- End Message ---
--- Begin Message ---
Pali Rohár:
> Package: release.debian.org
> Severity: normal
> User: release.debian.org@packages.debian.org
> Usertags: unblock
> 
> Please unblock package udfclient
> 
> New upstream version fixes CVE-2017-8305 (Buffer overflow in strlcpy
> implementation), debian bug #861347. As protection for buffer overflows,
> package has now enabled hardening. Source debdiff is attached.
> 
> unblock udfclient/0.8.7-1
> 

Unblocked, thanks.

~Niels

--- End Message ---

Reply to: