From owner-freebsd-hackers Fri Nov 14 07:54:16 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id HAA08338 for hackers-outgoing; Fri, 14 Nov 1997 07:54:16 -0800 (PST) (envelope-from owner-freebsd-hackers) Received: from keith.private (dial97.203708.gcn.net.tw [203.70.8.97]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id HAA08328 for ; Fri, 14 Nov 1997 07:54:09 -0800 (PST) (envelope-from keith@keith.private) Received: (from keith@localhost) by keith.private (8.8.7/8.7.3) id XAA01463; Fri, 14 Nov 1997 23:53:17 +0800 (CST) Message-ID: <19971114235317.02926@email.gcn.net.tw> Date: Fri, 14 Nov 1997 23:53:17 +0800 From: Keith Jang To: Eugeny Kuzakov Cc: hackers@freebsd.org Subject: Re: Where to commit patches? [MS Joliet Ext. to CD9660] Reply-To: keith@email.gcn.net.tw References: <346B729B.167EB0E7@email.gcn.net.tw> <346CB3E6.D78E80FD@lab321.ru> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.75 In-Reply-To: <346CB3E6.D78E80FD@lab321.ru>; from Eugeny Kuzakov on Fri, Nov 14, 1997 at 08:26:14PM +0000 Sender: owner-freebsd-hackers@freebsd.org X-Loop: FreeBSD.org Precedence: bulk On Fri, Nov 14, 1997 at 08:26:14PM +0000, Eugeny Kuzakov wrote: > Keith Jang wrote: > > > > I've added some code to the existing CD9660 part, to > > let it recognize MS Joliet CD and the long filenames > > on it. I would like to commit it, of course. The handbook > Can you post it to this mailing list or to me ? I've searched the spec of Joliet for weeks, and the only thing I could find is the Linux patch. Therefore I must steal from it. :> Joliet uses Supplementary Volume Descriptor to store its data. SVD has the same format as Primary Volume Descriptor, except for byte position 8 & 89-120. The first three bytes starting from the 89th identifies a Joliet CD. The first two must be 0x25 & 0x2f. The third represents the level, 0x40, 0x43, 0x45 for level 1, 2, 3, respectively. The extent of Root Directory Record in SVD is different from that in PVD. So that the old code follows PVD->root, and obtains filenames like xxx~1. The patch just follows SVD->root to get the right one. The filename in directory record are stored as unicode. Since I have no idea of unicode, for now just strip null bytes. Are there any *free* unicode resources on the net? That's all I know about Joliet. :) This patch is only sufficient to read long filenames. Maybe I'll add an option to make it treat U/L cases the same. It does not utilize the three Joliet levels, neither the unicode support (I'm not sure whether unicode is supported in FreeBSD.)