[Bug 283112] New Cache files packed into the FreeBSD14.2 release ISO file but not into Beta3 ISO files

From: <bugzilla-noreply_at_freebsd.org>
Date: Mon, 30 Dec 2024 19:50:46 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=283112

--- Comment #21 from commit-hook@FreeBSD.org ---
A commit in branch main references this bug:

URL:
https://cgit.FreeBSD.org/src/commit/?id=1f31d437428014e864bcce1223cf7017180e2608

commit 1f31d437428014e864bcce1223cf7017180e2608
Author:     Ed Maste <emaste@FreeBSD.org>
AuthorDate: 2024-12-30 15:01:06 +0000
Commit:     Ed Maste <emaste@FreeBSD.org>
CommitDate: 2024-12-30 19:48:44 +0000

    makefs: Fix cd9660 duplicate directory names

    Previously we could create cd9660 images with duplicate short (level 2)
    names.

    cd9660_level2_convert_filename used a 30-character limit (for files and
    directories), not including the '.' separator.  cd9660_rename_filename
    used a 31-character limit, including the '.'.  Directory names 31
    characters or longer (without '.') were shortened to 30 characters, and
    if a collision occurred cd9660_rename_filename uniquified them starting
    with the 31st character.  Unfortunately the directory record's name_len
    was already set, so the unique part of the name was stripped off.

    Directories are up to 31 d-characters (i.e., A-Z 0-9 and _); there is no
    provision for a '.' in a directory name.  Increase the name length limit
    to 31 for directories, and exclude '.'s.

    This name mapping and deduplication code is still fragile and convoluted
    and would beenfit from a more holistic effort.

    PR:             283238, 283112
    Reviewed by:    imp
    Sponsored by:   The FreeBSD Foundation
    Differential Revision: https://reviews.freebsd.org/D48251

 usr.sbin/makefs/cd9660.c                     |  5 ++--
 usr.sbin/makefs/tests/makefs_cd9660_tests.sh | 39 ++++++++++++++++++++++++++--
 usr.sbin/makefs/tests/makefs_tests_common.sh |  2 +-
 3 files changed, 41 insertions(+), 5 deletions(-)

-- 
You are receiving this mail because:
You are the assignee for the bug.