Bug 1008417

Summary: Need update helpout of part-set-gpt-type
Product: Red Hat Enterprise Linux 7 Reporter: bfan
Component: libguestfsAssignee: Richard W.M. Jones <rjones>
Status: CLOSED CURRENTRELEASE QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: medium    
Version: 7.0CC: leiwang, mbooth, rjones, wshi
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: libguestfs-1.22.6-20.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1063316 (view as bug list) Environment:
Last Closed: 2014-06-13 11:18:10 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On: 1063316    
Bug Blocks:    

Description bfan 2013-09-16 10:37:02 UTC
Description of problem:
1. For sgdisk, -t, --typecode=partnum:{hexcode|GUID}, it can accept hexcode as input
   For guestfish, we'd better update the helpout of part-set-gpt-type according to sgdisk, tells that hexcode is valid, command does not return error.

2. If gives a non-guid format value, sgdisk will give a default guid, like:
# sgdisk /dev/sdb -t 1:f
Exact type match not found for type code 000F; assigning type code for
'Linux filesystem'

For part-set-gpt-type, if gives a non-guid format value for gpt, the default value is returned, it's equal to mbr's guid (0FC63DAF-8483-4772-8E79-3D69D8477DE4).
it does not match gpt, we also need update helpout for this

 
Version-Release number of selected component (if applicable):
libguestfs-1.22.6-8.el7.x86_64


How reproducible:
100%

 
Steps to Reproduce:
1. check for mbr
><fs> part-disk /dev/sda mbr
><fs> part-get-gpt-type /dev/sda 1
0FC63DAF-8483-4772-8E79-3D69D8477DE4

2. check for gpt
><fs> part-disk /dev/sda gpt
><fs> part-get-gpt-type /dev/sda 1
EBD0A0A2-B9E5-4433-87C0-68B6B72699C7

3. set an invalid guid for gpt
><fs> part-set-gpt-type /dev/sda 1 f
><fs> part-get-gpt-type /dev/sda 1
0FC63DAF-8483-4772-8E79-3D69D8477DE4


Actual result:


Expect result:


Additional info:

Comment 1 Richard W.M. Jones 2013-09-26 10:07:52 UTC
Reassigning to Matt who wrote the code and uses the API.

https://github.com/libguestfs/libguestfs/blob/7c535c501b1ce131ae98dd948b22fc260d659d1b/daemon/parted.c#L761

Matt: Should we check if the guid parameter is invalid
and bail out?

Comment 2 Matthew Booth 2013-10-03 13:48:42 UTC
I'd say yes. That way we're less likely to be affected by changes in the behaviour of gdisk.

Comment 4 Richard W.M. Jones 2014-02-11 12:32:22 UTC
Koji build underway:
http://brewweb.devel.redhat.com/brew/taskinfo?taskID=7027095

Comment 6 bfan 2014-02-12 03:21:49 UTC
Verified with libguestfs-1.22.6-20.el7.x86_64

Check valid GUID value
><fs> part-get-gpt-type /dev/sda 1
EBD0A0A2-B9E5-4433-87C0-68B6B72699C7

Check invalid GUID value
><fs> part-set-gpt-type /dev/sda 1 f
libguestfs: error: part_set_gpt_type: guid: parameter is not a valid GUID

It gives a clear error message, so bug is fixed.

Comment 7 Ludek Smid 2014-06-13 11:18:10 UTC
This request was resolved in Red Hat Enterprise Linux 7.0.

Contact your manager or support representative in case you have further questions about the request.