New commands -projid, -get_projid, -get_projid_r, -set_projid, -set_projid_r, -find test -has_projid, -find actions get_projid, set_projid, get_projid_minmax

This commit is contained in:
2024-11-03 20:04:54 +01:00
parent 923bfa0be9
commit 32bfa95973
25 changed files with 1168 additions and 214 deletions

View File

@ -182,7 +182,14 @@ static int Xorriso_grasp_loaded_aaip(struct XorrisO *xorriso, IsoImage *volset,
if(!(xorriso->do_aaip & (1 << 11))) {
/* lfa_flags not enabled for "read" */
ret= Xorriso_remove_all_lfa_flags(xorriso, 0);
ret= Xorriso_tree_remove_isofs_var(xorriso, "isofs.fa", 0);
if(ret <= 0)
goto ex;
}
if(!(xorriso->do_aaip & (1 << 17))) {
/* projid not enabled */
ret= Xorriso_tree_remove_isofs_var(xorriso, "isofs.pi", 0);
if(ret <= 0)
goto ex;
}
@ -276,7 +283,7 @@ int Xorriso_make_read_options(struct XorrisO *xorriso,
if(xorriso->read_fs & 2)
ext|= isoburn_ropt_nojoliet;
if((xorriso->ino_behavior & (1 | 2)) &&
!(xorriso->do_aaip & (1 | 4 | 32 | (1 << 11)))
!(xorriso->do_aaip & (1 | 4 | 32 | (1 << 11) | (1 << 17)))
&& !(xorriso->do_md5 & 1) && !(xorriso->do_hfsplus))
ext|= isoburn_ropt_noaaip;
if(!(xorriso->do_aaip & 1))
@ -285,6 +292,8 @@ int Xorriso_make_read_options(struct XorrisO *xorriso,
ext|= isoburn_ropt_noea;
if(xorriso->do_aaip & (1 << 11))
ext|= isoburn_ropt_lfa_flags;
if(xorriso->do_aaip & (1 << 17))
ext|= isoburn_ropt_projid;
if(xorriso->do_aaip & (1 << 15))
ext|= isoburn_ropt_lfa_only_settable;
if(xorriso->ino_behavior & 1)
@ -479,6 +488,8 @@ int Xorriso_aquire_drive(struct XorrisO *xorriso, char *adr, char *show_adr,
}
if(xorriso->do_aaip & (1 << 11))
aquire_flag|= 1 << 11;
if(xorriso->do_aaip & (1 << 17))
aquire_flag|= 1 << 12;
if(xorriso->do_aaip & (1 << 15))
aquire_flag|= 1 << 15;
if(flag & 128)