Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 1 Nov 1998 03:00:01 -0800 (PST)
From:      Joachim Kuebart <joki@kuebart.stuttgart.netsurf.de>
To:        freebsd-bugs@FreeBSD.ORG
Subject:   Re: kern/5038: FreeBSD can't read MS Joliet CDs.
Message-ID:  <199811011100.DAA23504@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/5038; it has been noted by GNATS.

From: Joachim Kuebart <joki@kuebart.stuttgart.netsurf.de>
To: lxv@nest.org
Cc: freebsd-gnats-submit@freebsd.org, joki@kuebart.stuttgart.netsurf.de
Subject: Re: kern/5038: FreeBSD can't read MS Joliet CDs.
Date: Sun, 1 Nov 1998 11:52:48 +0100 (CET)

 Alex Vasylenko wrote:
 > hi,
 > 
 > below is a diff from -stable (as of 10/30) sources to support Joliet
 > extensions to cd9660 filesystem (author Joachim Kuebart 
 > <joki@kuebart.stuttgart.netsurf.de>) ...
 > 
 > --Alex.
 > 
 > 
 > ===== ~/s/src/sys/isofs/cd9660
 > diff -u orig/cd9660_rrip.c ./cd9660_rrip.c
 > --- orig/cd9660_rrip.c	Sun Aug 17 06:28:37 1997
 > +++ ./cd9660_rrip.c	Fri Oct 30 23:48:14 1998
 > @@ -516,12 +518,11 @@
 >  	 *	 it will be padding 1 byte after the name
 >  	 */
 >  	pwhead = isodir->name + isonum_711(isodir->name_len);
 > -	if (!(isonum_711(isodir->name_len)&1))
 > -		pwhead++;
 > +	isochar(isodir->name, pwhead, ana->imp->joliet_level, &c);
 > +	pwhead += isonum_711(isodir->name_len) & 1;
 >  
 >  	/* If it's not the '.' entry of the root dir obey SP field */
 > -	if (*isodir->name != 0
 > -	    || isonum_733(isodir->extent) != ana->imp->root_extent)
 > +	if (c != 0 || isonum_733(isodir->extent) != ana->imp->root_extent)
 >  		pwhead += ana->imp->rr_skip;
 >  	else
 >  		pwhead += ana->imp->rr_skip0;
 
 This patch broke RRIP for me. It should be:
 
 ===== ~/s/src/sys/isofs/cd9660
 diff -u orig/cd9660_rrip.c ./cd9660_rrip.c
 --- orig/cd9660_rrip.c	Sun Aug 17 06:28:37 1997
 +++ ./cd9660_rrip.c	Fri Oct 30 23:48:14 1998
 @@ -518,10 +520,10 @@
  	pwhead = isodir->name + isonum_711(isodir->name_len);
 	if (!(isonum_711(isodir->name_len)&1))
 		pwhead++;
 +	isochar(isodir->name, pwhead, ana->imp->joliet_level, &c);
  
  	/* If it's not the '.' entry of the root dir obey SP field */
 -	if (*isodir->name != 0
 -	    || isonum_733(isodir->extent) != ana->imp->root_extent)
 +	if (c != 0 || isonum_733(isodir->extent) != ana->imp->root_extent)
  		pwhead += ana->imp->rr_skip;
  	else
  		pwhead += ana->imp->rr_skip0;
 
 I'm sorry I forgot to submit a follow-up when I noticed that. This
 applies to the -current patch as well, of course.
 
 cu Jo
 
 ---------------------------------------------------------------------
 Pray that there's intelligent life                    Joachim Kuebart
 Somewhere up in space                              Stuttgart, Germany
 'Cause there's bugger all down here on earth.
                               --- Monty Python

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message



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