diff options
author | Ed Maste <emaste@FreeBSD.org> | 2023-04-18 13:57:29 +0000 |
---|---|---|
committer | Ed Maste <emaste@FreeBSD.org> | 2023-04-20 16:20:56 +0000 |
commit | dd9059b3e9a1711d54c1d511a2cbb23e6e23f556 (patch) | |
tree | b64090b0cdfed6f5ddfbd22385697797fa225b06 | |
parent | 5fd1a67e885e834cda8f1d122e9b0f9d47977e54 (diff) | |
download | src-dd9059b3e9a1711d54c1d511a2cbb23e6e23f556.tar.gz src-dd9059b3e9a1711d54c1d511a2cbb23e6e23f556.zip |
makefs: set cd9660 Rock Ridge timestamps for . and ..
DOT and DOTDOT entries have special handling, and previously only Rock
Ridge PX (POSIX attributes) entries were attached. Add TF (timestamp)
entries as well.
PR: 203531
Reported by: Thomas Schmitt <scdbackup@gmx.net>
Reviewed by: markj
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D39662
-rw-r--r-- | usr.sbin/makefs/cd9660/iso9660_rrip.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/usr.sbin/makefs/cd9660/iso9660_rrip.c b/usr.sbin/makefs/cd9660/iso9660_rrip.c index 1107688aa21e..e1b8fc993a3a 100644 --- a/usr.sbin/makefs/cd9660/iso9660_rrip.c +++ b/usr.sbin/makefs/cd9660/iso9660_rrip.c @@ -394,6 +394,12 @@ cd9660_rrip_initialize_node(iso9660_disk *diskStructure, cd9660node *node, SUSP_ENTRY_RRIP_PX, "PX", SUSP_LOC_ENTRY); cd9660node_rrip_px(current, parent->node); TAILQ_INSERT_TAIL(&node->head, current, rr_ll); + + /* TF - timestamp */ + current = cd9660node_susp_create_node(SUSP_TYPE_RRIP, + SUSP_ENTRY_RRIP_TF, "TF", SUSP_LOC_ENTRY); + cd9660node_rrip_tf(current, parent->node); + TAILQ_INSERT_TAIL(&node->head, current, rr_ll); } } else if (node->type & CD9660_TYPE_DOTDOT) { if (grandparent != NULL && grandparent->node != NULL && @@ -403,6 +409,12 @@ cd9660_rrip_initialize_node(iso9660_disk *diskStructure, cd9660node *node, SUSP_ENTRY_RRIP_PX, "PX", SUSP_LOC_ENTRY); cd9660node_rrip_px(current, grandparent->node); TAILQ_INSERT_TAIL(&node->head, current, rr_ll); + + /* TF - timestamp */ + current = cd9660node_susp_create_node(SUSP_TYPE_RRIP, + SUSP_ENTRY_RRIP_TF, "TF", SUSP_LOC_ENTRY); + cd9660node_rrip_tf(current, grandparent->node); + TAILQ_INSERT_TAIL(&node->head, current, rr_ll); } /* Handle PL */ if (parent != NULL && parent->rr_real_parent != NULL) { |