New -as mkisofs option --lfa_flags

This commit is contained in:
2024-07-21 14:27:28 +02:00
parent 1a775c09df
commit 8397e587f3
5 changed files with 114 additions and 66 deletions

View File

@ -641,6 +641,7 @@ int Xorriso_genisofs_count_args(struct XorrisO *xorriso, int argc, char **argv,
"-untranslated-filenames", "-verbose", "-version", "-g", "-h",
"-no-mac-files", "-chrp-boot",
"--hardlinks", "--acl", "--xattr", "--xattr-any", "--md5", "--for_backup",
"--lfa_flags",
"--protective-msdos-label", "--boot-catalog-hide", "--no-emul-toc",
"--emul-toc", "-disallow_dir_id_ext", "--old-empty",
"--old-root-no-md5", "--old-root-devno", "--old-root-no-ino",
@ -870,6 +871,7 @@ int Xorriso_genisofs_help(struct XorrisO *xorriso, int flag)
" --acl Record eventual ACLs of files",
" --xattr Record eventual user space xattr of files",
" --xattr-any Record xattr of any namespace, not only user.",
" --lfa_flags Record Linux file attribute flags (chattr)",
" --md5 Compute and record MD5 checksums of data files",
" --scdbackup_tag PATH NAME With --md5 record a scdbackup checksum tag",
" --for_backup Use all options which improve backup fidelity",
@ -1619,6 +1621,8 @@ int Xorriso_genisofs(struct XorrisO *xorriso, char *whom,
Xorriso_option_xattr(xorriso, "on", 0);
} else if(strcmp(argpt, "--xattr-any")==0) {
Xorriso_option_xattr(xorriso, "any", 0);
} else if(strcmp(argpt, "--lfa_flags")==0) {
Xorriso_option_lfa_flags(xorriso, "default:on:no_restore", 0);
} else if(strcmp(argpt, "--md5")==0) {
Xorriso_option_md5(xorriso, "on", 0);
} else if(strcmp(argpt, "--scdbackup_tag")==0) {
@ -1633,6 +1637,8 @@ int Xorriso_genisofs(struct XorrisO *xorriso, char *whom,
Xorriso_option_acl(xorriso, "on", 0);
Xorriso_option_xattr(xorriso, "any", 0);
Xorriso_option_md5(xorriso, "on", 0);
Xorriso_option_lfa_flags(xorriso, "default:on:no_restore", 0);
} else if(strcmp(argpt, "-z")==0 ||
strcmp(argpt, "-transparent-compression")==0) {
Xorriso_option_zisofs(xorriso, "by_magic=on", 0);
@ -2063,6 +2069,7 @@ not_enough_args:;
strcmp(argpt, "--acl")==0 ||
strcmp(argpt, "--xattr")==0 ||
strcmp(argpt, "--xattr-any")==0 ||
strcmp(argpt, "--lfa_flags")==0 ||
strcmp(argpt, "--md5")==0 ||
strcmp(argpt, "--for_backup")==0) {
/* was already handled in first argument scan */;