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

@@ -599,7 +599,8 @@ int Xorriso_count_args(struct XorrisO *xorriso, int argc, char **argv,
"options_from_file","osirrox","outdev","out_charset","overwrite",
"pacifier","padding","path_list","pathspecs","pkt_output",
"preparer_id","print","print_info","print_mark","prompt",
"prog","prog_help","publisher","quoted_not_list","quoted_path_list",
"prog","prog_help","projid","publisher",
"quoted_not_list","quoted_path_list",
"read_fs","read_speed","reassure","report_about",
"report_el_torito","report_system_area","rockridge",
"rom_toc_scan","rr_reloc_dir","scsi_dev_family","scsi_log",
@@ -640,6 +641,7 @@ int Xorriso_count_args(struct XorrisO *xorriso, int argc, char **argv,
"compare_l","concat","cp_clone","cp_rax","cp_rx","cpr","cpri","cpax","cpx",
"du","dui","dus","dusi","dux","dusx","external_filter","extract_l",
"file_size_limit","find","findi","finds","findx",
"get_projid","get_projidi","get_projid_r","get_projid_ri",
"getfacl","getfacli","getfacl_r","getfacl_ri",
"getfattr","getfattri","getfattr_r","getfattr_ri","hide",
"launch_frontend","lsattr","lsattri","lsattrd","lsaddrdi",
@@ -647,6 +649,7 @@ int Xorriso_count_args(struct XorrisO *xorriso, int argc, char **argv,
"lsx","lslx","lsdx","lsdlx","map_l","mv","mvi","mkdir","mkdiri",
"not_paths","rm","rmi","rm_r","rm_ri","rmdir","rmdiri",
"update_l","update_li","update_lx","update_lxi",
"set_projid","set_projidi","set_projid_r","set_projid_ri",
"setfacl","setfacli","setfacl_list","setfacl_listi",
"setfacl_r","setfacl_ri","setfattr","setfattri",
"setfattr_r","setfattr_ri",
@@ -746,7 +749,7 @@ int Xorriso_cmd_sorting_rank(struct XorrisO *xorriso,
"* Influencing the behavior of image loading:",
"read_speed", "load", "displacement", "read_fs",
"assert_volid", "in_charset", "auto_charset",
"for_backup", "hardlinks", "acl", "xattr", "md5", "lfa_flags",
"for_backup", "hardlinks", "acl", "xattr", "md5", "lfa_flags", "projid",
"ecma119_map", "joliet_map",
"disk_dev_ino", "rom_toc_scan", "calm_drive", "ban_stdio_write",
"data_cache_size",
@@ -781,8 +784,8 @@ int Xorriso_cmd_sorting_rank(struct XorrisO *xorriso,
"* Navigation in ISO image and disk filesystem (2):",
"ls", "lsd", "lsl", "lsdl", "lsx", "lsdx", "lslx", "lsdlx",
"lsattr", "lsattri", "lsattrd", "lsaddrdi",
"getfacl", "getfacl_r", "getfattr", "getfattr_r", "du", "dus",
"lsattr", "lsattrd", "get_projid", "get_projid_r",
"dux", "dusx", "findx",
"compare", "compare_r", "compare_l", "show_stream", "show_stream_r",
@@ -791,7 +794,8 @@ int Xorriso_cmd_sorting_rank(struct XorrisO *xorriso,
"rm", "rm_r", "rmdir", "move", "mv",
"chown", "chown_r", "chgrp", "chgrp_r", "chmod", "chmod_r", "setfacl",
"setfacl_r", "setfacl_list", "setfattr", "setfattr_r", "setfattr_list",
"chattr", "chattr_r", "alter_date", "alter_date_r", "hide",
"chattr", "chattr_r", "set_projid", "set_projid_r",
"alter_date", "alter_date_r", "hide",
"* Filters for data file content:",
"external_filter", "unregister_filter", "close_filter_list",
@@ -1446,6 +1450,13 @@ next_command:;
(*idx)++;
ret= Xorriso_option_genisoimage_completion(xorriso, arg1, 0);
} else if(strcmp(cmd, "get_projid") == 0 || strcmp(cmd, "get_projidi") == 0) {
ret= Xorriso_option_get_projid(xorriso, argc, argv, idx, 0);
} else if(strcmp(cmd, "get_projid_r") == 0 ||
strcmp(cmd, "get_projid_ri") == 0) {
ret= Xorriso_option_get_projid(xorriso, argc, argv, idx, 1);
} else if(strcmp(cmd,"getfacl")==0 || strcmp(cmd,"getfacli")==0) {
ret= Xorriso_option_getfacli(xorriso, argc, argv, idx, 0);
@@ -1752,6 +1763,10 @@ next_command:;
(*idx)++;
ret= Xorriso_option_prog(xorriso, arg1, 0);
} else if(strcmp(cmd,"projid") == 0) {
(*idx)++;
ret= Xorriso_option_projid(xorriso, arg1, 0);
} else if(strcmp(cmd,"publisher")==0) {
(*idx)++;
Xorriso_option_publisher(xorriso, arg1, 0);
@@ -1866,6 +1881,15 @@ next_command:;
ret= Xorriso_option_mount(xorriso, arg1, arg2,
argv[(*idx)-2], argv[(*idx)-1], 2);
} else if(strcmp(cmd, "set_projid") == 0 || strcmp(cmd, "set_projidi") == 0) {
(*idx)++;
ret= Xorriso_option_set_projid(xorriso, arg1, argc, argv, idx, 0);
} else if(strcmp(cmd, "set_projid_r") == 0 ||
strcmp(cmd, "set_projid_ri") == 0) {
(*idx)++;
ret= Xorriso_option_set_projid(xorriso, arg1, argc, argv, idx, 1);
} else if(strcmp(cmd,"setfacl")==0 || strcmp(cmd,"setfacli")==0) {
(*idx)+= 1;
ret= Xorriso_option_setfacli(xorriso, arg1, argc, argv, idx, 0);