New API calls isoburn_igopt_set_gpt_guid(), isoburn_igopt_get_gpt_guid()
This commit is contained in:
@ -1987,6 +1987,47 @@ int isoburn_igopt_set_part_like_isohybrid(struct isoburn_imgen_opts *opts,
|
||||
int isoburn_igopt_get_part_like_isohybrid(struct isoburn_imgen_opts *opts,
|
||||
int *alike);
|
||||
|
||||
/** Control whether the emerging GPT gets a pseudo-randomly generated disk GUID
|
||||
or whether it gets a user supplied GUID.
|
||||
The partition GUIDs will be generated in a reproducible way by exoring a
|
||||
little-endian 32 bit counter with the disk GUID beginning at byte offset 9.
|
||||
@since 1.4.6
|
||||
@param opts
|
||||
The option set to be manipulated.
|
||||
@param guid
|
||||
16 bytes of user supplied GUID.
|
||||
The upper 4 bit of guid[6] and guid[7] should bear the value 4 to
|
||||
express the version 4 in both endiannesses. Bit 7 of byte[8] should
|
||||
be set to 1 and bit 6 be set to 0, in order to express the RFC 4122
|
||||
variant of GUID, where version 4 means "random".
|
||||
@param mode
|
||||
0 = ignore parameter guid and produce the GPT disk GUID by a
|
||||
pseudo-random algorithm. This is the default setting.
|
||||
1 = use parameter guid as GPT disk GUID
|
||||
2 = ignore parameter guid and derive the GPT disk GUID from
|
||||
parameter uuid of isoburn_igopt_set_pvd_times().
|
||||
The 16 bytes of uuid get copied and bytes 6, 7, 8 get their
|
||||
upper bits changed to comply to RFC 4122.
|
||||
If no such uuid is given when ISO production starts, then
|
||||
mode 2 defaults to mode 0.
|
||||
*/
|
||||
int isoburn_igopt_set_gpt_guid(struct isoburn_imgen_opts *opts,
|
||||
uint8_t guid[16], int mode);
|
||||
|
||||
/** Inquire the current setting of isoburn_igopt_set_gpt_guid().
|
||||
@since 1.4.6
|
||||
@param opts
|
||||
The option set to be inquired.
|
||||
@param guid
|
||||
Returns the current guid if current mode is 1.
|
||||
@param mode
|
||||
Returns the current value.
|
||||
@return
|
||||
<=0 = error, 1 = success
|
||||
*/
|
||||
int isoburn_igopt_get_gpt_guid(struct isoburn_imgen_opts *opts,
|
||||
uint8_t guid[16], int *mode);
|
||||
|
||||
|
||||
/** Set a name for the system area. This setting is ignored unless system area
|
||||
type 3 "SUN Disk Label" is in effect by iso_write_opts_set_system_area().
|
||||
|
Reference in New Issue
Block a user