Warn of volid length for Joliet only if more than 16 characters (was: 16 bytes)

This commit is contained in:
2021-08-28 18:12:15 +02:00
parent 5011a5f7b0
commit 7dc45e3311
4 changed files with 65 additions and 4 deletions

View File

@ -57,6 +57,7 @@
#include "lib_mgt.h"
#include "iso_manip.h"
#include "write_run.h"
int Xorriso_abort(struct XorrisO *xorriso, int flag)
@ -1042,3 +1043,45 @@ int Xorriso_set_libisofs_now(struct XorrisO *xorriso, int flag)
return(ret);
}
/* Frontend to isoburn_conv_name_chars()
@param flag bit0= File name.
Do not omit version number if it would appear.
*/
int Xorriso_conv_name_chars(struct XorrisO *xorriso, char *name,
char **result, size_t *result_len,
int name_space, int flag)
{
int ret, relax_mem;
struct isoburn_imgen_opts *sopts= NULL;
*result= NULL;
*result_len= 0;
relax_mem= xorriso->relax_compliance;
ret= isoburn_igopt_new(&sopts, 0);
if(ret<=0) {
Xorriso_process_msg_queues(xorriso, 0);
ret= -1; goto ex;
}
if(!(flag & 1))
xorriso->relax_compliance|= isoburn_igopt_omit_version_numbers;
ret= Xorriso_make_iso_write_opts(xorriso, NULL, sopts, 0);
if(ret <= 0) {
ret= -1; goto ex;
}
ret= isoburn_conv_name_chars(sopts, name, strlen(name), result, result_len,
name_space);
if(ret <= 0) {
Xorriso_process_msg_queues(xorriso, 0);
ret= 0; goto ex;
}
ret= 1;
ex:;
isoburn_igopt_destroy(&sopts, 0);
xorriso->relax_compliance= relax_mem;
return(ret);
}