New API call iso_conv_name_chars(), provisory implementation
This commit is contained in:
@@ -7109,6 +7109,51 @@ int iso_image_hfsplus_get_blessed(IsoImage *img, IsoNode ***blessed_nodes,
|
||||
int *bless_max, int flag);
|
||||
|
||||
|
||||
/* ----------------------------- Character sets ---------------------------- */
|
||||
|
||||
/**
|
||||
* >>> *** NOT COMPLETELY IMPLEMENTED YET ***
|
||||
* >>> Convert the characters in name from local charset to another charset or
|
||||
* >>> to the representation of a particular ISO image name space.
|
||||
* >>> In the latter case it is assumed that the conversion result does not
|
||||
* >>> collide with any other converted name in the same directory.
|
||||
* >>> I.e. this function does not take into respect possible name changes
|
||||
* >>> due to collision handling.
|
||||
*
|
||||
* @param opts
|
||||
* Defines output charset, UCS-2 versus UTF-16 for Joliet,
|
||||
* and naming restrictions.
|
||||
* @param name
|
||||
* The input text which shall be converted.
|
||||
* @param result
|
||||
* Will return the conversion result. Terminated by a trailing zero byte.
|
||||
* Use free() to dispose it when no longer needed.
|
||||
* @param result_len
|
||||
* Will return the number of bytes in result (excluding trailing zero)
|
||||
* @param flag
|
||||
* Bitfield for control purposes.
|
||||
* bit0-bit7= Name space
|
||||
* 0= generic (to_charset is valid,
|
||||
* no reserved characters, no length limits)
|
||||
* 1= Rock Ridge (to_charset is valid)
|
||||
* 2= Joliet (to_charset gets overridden by UCS-2 or UTF-16)
|
||||
* 3= ECMA-119 (to_charset gets overridden by
|
||||
* dull ISO 9660 subset of ASCII)
|
||||
* 4= HFS+ (to_charset gets overridden by UTF-16BE)
|
||||
* bit8= Input text is a directory name
|
||||
* (matters for Joliet and ECMA-119)
|
||||
* bit15= Reverse operation (best to be done only with results of
|
||||
* previous conversions)
|
||||
* @return
|
||||
* 1 means success, <0 means error
|
||||
*
|
||||
* @since 1.3.6
|
||||
*/
|
||||
int iso_conv_name_chars(IsoWriteOpts *opts, char *name, size_t name_len,
|
||||
char **result, size_t *result_len, int flag);
|
||||
|
||||
|
||||
|
||||
/************ Error codes and return values for libisofs ********************/
|
||||
|
||||
/** successfully execution */
|
||||
|
Reference in New Issue
Block a user