Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 27 Jul 2013 15:28:31 +0000 (UTC)
From:      Marius Strobl <marius@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r253707 - in head/usr.sbin/makefs: . cd9660
Message-ID:  <201307271528.r6RFSVIB025265@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: marius
Date: Sat Jul 27 15:28:31 2013
New Revision: 253707
URL: http://svnweb.freebsd.org/changeset/base/253707

Log:
  - Set the System Identifier in the Primary Volume Descriptor to FreeBSD
    rather than NetBSD.
  - Correctly set the Expiration Time in the Primary Volume Descriptor;
    according to ISO 9660 8.4.26.1 unspecified date and time are denoted
    by the digit 0 in RBP 1 to 16 but the number 0 in RBP 17. [1]
  - Merge iso9660_rrip.c rev. 1.11 from NetBSD: name_len should be read
    as unsigned byte. [2]
    Note: This is according to ISO 9660 9.1.10.
  - Rock Ridge TF entries should use a length of 5, because after the 4
    bytes of generic SUSP header there is one byte of flags. See typedef
    of ISO_RRIP_TF in iso9660_rrip.h. [1]
  
  Submitted by:	Thomas Schmitt [1]
  Obtained from:	NetBSD [2]
  MFC after:	3 days

Modified:
  head/usr.sbin/makefs/cd9660.c
  head/usr.sbin/makefs/cd9660/iso9660_rrip.c

Modified: head/usr.sbin/makefs/cd9660.c
==============================================================================
--- head/usr.sbin/makefs/cd9660.c	Sat Jul 27 15:02:19 2013	(r253706)
+++ head/usr.sbin/makefs/cd9660.c	Sat Jul 27 15:28:31 2013	(r253707)
@@ -230,7 +230,7 @@ cd9660_set_defaults(void)
 	memset(diskStructure.primaryDescriptor.abstract_file_id, 0x20,37);
 	memset(diskStructure.primaryDescriptor.bibliographic_file_id, 0x20,37);
 
-	strcpy(diskStructure.primaryDescriptor.system_id,"NetBSD");
+	strcpy(diskStructure.primaryDescriptor.system_id, "FreeBSD");
 
 	cd9660_defaults_set = 1;
 
@@ -681,7 +681,8 @@ cd9660_finalize_PVD(void)
 	cd9660_set_date(diskStructure.primaryDescriptor.expiration_date, now);
 	*/
 
-	memset(diskStructure.primaryDescriptor.expiration_date, '0' ,17);
+	memset(diskStructure.primaryDescriptor.expiration_date, '0', 16);
+	diskStructure.primaryDescriptor.expiration_date[16] = 0;
 	cd9660_time_8426(
 	    (unsigned char *)diskStructure.primaryDescriptor.effective_date,
 	    tim);

Modified: head/usr.sbin/makefs/cd9660/iso9660_rrip.c
==============================================================================
--- head/usr.sbin/makefs/cd9660/iso9660_rrip.c	Sat Jul 27 15:02:19 2013	(r253706)
+++ head/usr.sbin/makefs/cd9660/iso9660_rrip.c	Sat Jul 27 15:28:31 2013	(r253707)
@@ -1,4 +1,4 @@
-/*	$NetBSD: iso9660_rrip.c,v 1.10 2011/05/29 17:07:58 tsutsui Exp $	*/
+/*	$NetBSD: iso9660_rrip.c,v 1.11 2012/04/29 13:32:21 joerg Exp $	*/
 
 /*
  * Copyright (c) 2005 Daniel Watt, Walter Deignan, Ryan Gabrys, Alan
@@ -419,9 +419,9 @@ cd9660_rrip_initialize_node(cd9660node *
 		}
 		else if ((node->node != NULL) &&
 			((strlen(node->node->name) !=
-			    (int)node->isoDirRecord->name_len[0]) ||
+			    (uint8_t)node->isoDirRecord->name_len[0]) ||
 			(memcmp(node->node->name,node->isoDirRecord->name,
-				(int) node->isoDirRecord->name_len[0]) != 0))) {
+				(uint8_t)node->isoDirRecord->name_len[0]) != 0))) {
 			cd9660_rrip_NM(node);
 		}
 
@@ -685,7 +685,7 @@ int
 cd9660node_rrip_tf(struct ISO_SUSP_ATTRIBUTES *p, fsnode *_node)
 {
 	p->attr.rr_entry.TF.flags[0] = TF_MODIFY | TF_ACCESS | TF_ATTRIBUTES;
-	p->attr.rr_entry.TF.h.length[0] = 4;
+	p->attr.rr_entry.TF.h.length[0] = 5;
 	p->attr.rr_entry.TF.h.version[0] = 1;
 
 	/*



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201307271528.r6RFSVIB025265>