summaryrefslogtreecommitdiffstats
path: root/usr.sbin/makefs
diff options
context:
space:
mode:
authormarius <marius@FreeBSD.org>2014-04-25 21:20:22 +0000
committermarius <marius@FreeBSD.org>2014-04-25 21:20:22 +0000
commit0adda655335e0cde0d9a207119fada63997ce8aa (patch)
treef87e727b8f5b9a0fcf11781474d00816e3dd0840 /usr.sbin/makefs
parented891fed445cb2a60ef55f1f325788b3a1ae83bf (diff)
downloadFreeBSD-src-0adda655335e0cde0d9a207119fada63997ce8aa.zip
FreeBSD-src-0adda655335e0cde0d9a207119fada63997ce8aa.tar.gz
MFC: r260041
Record the IEEE P1282 Rock Ridge version 1.12 POSIX File Serial Number, i. e. the POSIX:5.6.1 st_ino field, which can be used to detect hard links in the file system. This is also the default in mkisofs(8) and according to its man page, no system only being able to cope with Rock Ridge version 1.10 is known to exist. PR: 185138 Submitted by: Kurt Lidl
Diffstat (limited to 'usr.sbin/makefs')
-rw-r--r--usr.sbin/makefs/cd9660/iso9660_rrip.c5
-rw-r--r--usr.sbin/makefs/cd9660/iso9660_rrip.h2
2 files changed, 4 insertions, 3 deletions
diff --git a/usr.sbin/makefs/cd9660/iso9660_rrip.c b/usr.sbin/makefs/cd9660/iso9660_rrip.c
index 40acf40..5382857 100644
--- a/usr.sbin/makefs/cd9660/iso9660_rrip.c
+++ b/usr.sbin/makefs/cd9660/iso9660_rrip.c
@@ -634,7 +634,7 @@ cd9660_createSL(cd9660node *node)
int
cd9660node_rrip_px(struct ISO_SUSP_ATTRIBUTES *v, fsnode *pxinfo)
{
- v->attr.rr_entry.PX.h.length[0] = 36;
+ v->attr.rr_entry.PX.h.length[0] = 44;
v->attr.rr_entry.PX.h.version[0] = 1;
cd9660_bothendian_dword(pxinfo->inode->st.st_mode,
v->attr.rr_entry.PX.mode);
@@ -644,8 +644,9 @@ cd9660node_rrip_px(struct ISO_SUSP_ATTRIBUTES *v, fsnode *pxinfo)
v->attr.rr_entry.PX.uid);
cd9660_bothendian_dword(pxinfo->inode->st.st_gid,
v->attr.rr_entry.PX.gid);
+ cd9660_bothendian_dword(pxinfo->inode->st.st_ino,
+ v->attr.rr_entry.PX.serial);
- /* Ignoring the serial number for now */
return 1;
}
diff --git a/usr.sbin/makefs/cd9660/iso9660_rrip.h b/usr.sbin/makefs/cd9660/iso9660_rrip.h
index 3653ac6..3570301 100644
--- a/usr.sbin/makefs/cd9660/iso9660_rrip.h
+++ b/usr.sbin/makefs/cd9660/iso9660_rrip.h
@@ -103,7 +103,7 @@ typedef struct {
u_char links [ISODCL(13,20)];
u_char uid [ISODCL(21,28)];
u_char gid [ISODCL(29,36)];
- u_char serial [ISODCL(37,44)];/* Not used */
+ u_char serial [ISODCL(37,44)];
} ISO_RRIP_PX;
typedef struct {
OpenPOWER on IntegriCloud