libcdio-devel
[Top][All Lists]
Advanced

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

[Libcdio-devel] [PATCH 0/2] Add Rock Ridge CE record processing


From: Pete Batard
Subject: [Libcdio-devel] [PATCH 0/2] Add Rock Ridge CE record processing
Date: Tue, 28 Feb 2023 20:48:04 +0000
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.7.2

The current libcdio parses Rock Ridge CE records but does not process them.

This creates issues when trying to handle an ISO-9660 image like Debian's 'firmware-11.6.0-amd64-netinst.iso', which can be downloaded from https://cdimage.debian.org/cdimage/unofficial/non-free/cd-including-firmware/current/amd64/iso-cd/, since this image has some of the Rock Ridge symbolic links for the entries found in the /firmware/ directory defined in a CE record (such as '/firmware/firmware-ath9k-htc_1.4.0-106-gc583009+dfsg1-1_all.deb').

This patch series adds CE record processing and also applies some clean up to the current Rock Ridge code.

Note: As I found out after wasting a couple hours figuring out why one of the CE SL entries was not processed as expected, you really don't want to feed a char based array to from_733(), as the *signed* char values will be sign-extended, and you may end up with a 0xffffffc4 value instead of the expected 0x000000c4 when processing a 0xc4000000000000c4 entry!

Regards,

/Pete

Pete Batard (2):
  Clean up rock.h and fix the use of signed chars in iso_su_ce_s
  Add processing of Rock Ridge CE records

 include/cdio/rock.h | 18 +++++------
 lib/iso9660/rock.c  | 79 ++++++++++++++++++++++++++-------------------
 2 files changed, 54 insertions(+), 43 deletions(-)

--
2.39.1.windows.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]