Bug 1204877

Summary: fix "delay" parameter checking
Product: Red Hat Enterprise Linux 7 Reporter: Ryan McCabe <rmccabe>
Component: fence-virtAssignee: Ryan McCabe <rmccabe>
Status: CLOSED ERRATA QA Contact: cluster-qe <cluster-qe>
Severity: low Docs Contact:
Priority: medium    
Version: 7.2CC: cluster-maint, cluster-qe, jpokorny, mgrac, mjuricek, rbalakri, rbednar
Target Milestone: rcKeywords: EasyFix, Patch
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: fence-virt-0.3.2-3.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1204873 Environment:
Last Closed: 2016-11-04 07:37: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:
Embargoed:
Bug Depends On: 1204873    
Bug Blocks:    

Description Ryan McCabe 2015-03-23 16:38:06 UTC
+++ This bug was initially created as a clone of Bug #1204873 +++

Due to copy-paste mistake, one will not ever receive a diagnostic
feedback about inapropriate value of "delay" parameter.

Patch/pull-request link to follow.

Please clone for RHEL 7 (if applicable).

--- Additional comment from Jan Pokorný on 2015-03-23 12:36:22 EDT ---

https://github.com/ClusterLabs/fence-virt/pull/4

Comment 3 Roman Bednář 2016-05-20 13:36:09 UTC
Adding QA ack. 

Test: pass a value of 0 or lower to delay parameter of fence-virt fence agent.
Expected result: feedback about inappropriate value.

Comment 5 Martin Juricek 2016-08-29 13:35:10 UTC
Marking Verified in version fence-virt-0.3.2-5.el7, invalid value of the "delay" parameter is checked and reported.



1) BEFORE fix - fence-virt-0.3.2-2.el7.x86_64
=============

# time fence_xvm -H virt-159.cluster-qe.lab.eng.brq.redhat.com -o status -w 15
Status: ON

real    0m15.054s
user    0m0.035s
sys     0m0.005s

# time fence_xvm -H virt-159.cluster-qe.lab.eng.brq.redhat.com -o monitor -w 15

real    0m15.043s
user    0m0.038s
sys     0m0.005s

# time fence_xvm -H virt-159.cluster-qe.lab.eng.brq.redhat.com -o reboot -w 15

real    0m17.820s
user    0m0.037s
sys     0m0.004s

# time fence_xvm -H virt-159.cluster-qe.lab.eng.brq.redhat.com -o reboot -w '-15'

real    0m2.833s
user    0m0.035s
sys     0m0.005s



# time fence_virt -D /dev/ttyS1 -H vm1 -o status -w 15
Status: ON

real    0m15.306s
user    0m0.000s
sys     0m0.003s

# time fence_virt -D /dev/ttyS1 -H vm1 -o monitor -w 15

real    0m15.304s
user    0m0.001s
sys     0m0.001s

# time fence_virt -D /dev/ttyS1 -H vm1 -o reboot -w 15

real    0m16.764s
user    0m0.001s
sys     0m0.002s

# time fence_virt -D /dev/ttyS1 -H vm1 -o reboot -w '-15'

real    0m1.774s
user    0m0.001s
sys     0m0.002s




2) AFTER fix - fence-virt-0.3.2-5.el7.x86_64
============

# time fence_xvm -H virt-159.cluster-qe.lab.eng.brq.redhat.com -o status -w 15
Status: ON

real    0m0.046s
user    0m0.034s
sys     0m0.006s

# time fence_xvm -H virt-159.cluster-qe.lab.eng.brq.redhat.com -o monitor -w 15

real    0m0.041s
user    0m0.037s
sys     0m0.003s

# time fence_xvm -H virt-159.cluster-qe.lab.eng.brq.redhat.com -o reboot -w 15 

real    0m17.799s
user    0m0.035s
sys     0m0.005s

# time fence_xvm -H virt-159.cluster-qe.lab.eng.brq.redhat.com -o reboot -w '-15' 
Invalid delay: '-15'
usage: fence_xvm [args]
  -d                    Specify (stdin) or increment (command line) debug level
  -i <family>           IP Family ([auto], ipv4, ipv6)                         
  -a <address>          Multicast address (default=225.0.0.12 / ff05::3:1)     
  -p <port>             TCP, Multicast, or VMChannel IP port (default=1229)    
  -r <retrans>          Multicast retransmit time (in 1/10sec; default=20)     
  -C <auth>             Authentication (none, sha1, [sha256], sha512)          
  -c <hash>             Packet hash strength (none, sha1, [sha256], sha512)    
  -k <file>             Shared key file (default=/etc/cluster/fence_xvm.key)   
  -H <domain>           Virtual Machine (domain name) to fence                 
  -u                    Treat [domain] as UUID instead of domain name. This is 
                        provided for compatibility with older fence_xvmd       
                        installations.                                         
  -o <operation>        Fencing action (null, off, on, [reboot], status, list, 
                        monitor, metadata)                                     
  -t <timeout>          Fencing timeout (in seconds; default=30)               
  -?                    Help (alternate)                                       
  -h                    Help                                                   
  -V                    Display version and exit                               
  -w <delay>            Fencing delay (in seconds; default=0)                  


real    0m0.003s
user    0m0.002s
sys     0m0.002s



# time fence_virt -D /dev/ttyS1 -H vm1 -o status -w 15
Status: ON

real    0m0.306s
user    0m0.001s
sys     0m0.002s

# time fence_virt -D /dev/ttyS1 -H vm1 -o monitor -w 15

real    0m0.304s
user    0m0.000s
sys     0m0.003s

# time fence_virt -D /dev/ttyS1 -H vm1 -o reboot -w 15

real    0m16.769s
user    0m0.000s
sys     0m0.003s

# time fence_virt -D /dev/ttyS1 -H vm1 -o reboot -w '-15'
Invalid delay: '-15'
usage: fence_virt [args]
  -d                    Specify (stdin) or increment (command line) debug level
  -D <device>           Serial device (default=/dev/ttyS1)                     
  -P <param>            Serial Parameters (default=115200,8N1)                 
  -A <address>          VM Channel IP address (default=10.0.2.179)             
  -p <port>             TCP, Multicast, or VMChannel IP port (default=1229)    
  -H <domain>           Virtual Machine (domain name) to fence                 
  -o <operation>        Fencing action (null, off, on, [reboot], status, list, 
                        monitor, metadata)                                     
  -t <timeout>          Fencing timeout (in seconds; default=30)               
  -?                    Help (alternate)                                       
  -h                    Help                                                   
  -V                    Display version and exit                               
  -T <address>          IP address to connect to in TCP mode (default=127.0.0.1
                        / ::1)                                                 
  -C <auth>             Authentication (none, sha1, [sha256], sha512)          
  -c <hash>             Packet hash strength (none, sha1, [sha256], sha512)    
  -k <file>             Shared key file (default=/etc/cluster/fence_xvm.key)   
  -w <delay>            Fencing delay (in seconds; default=0)                  


real    0m0.002s
user    0m0.001s
sys     0m0.001s

Comment 7 errata-xmlrpc 2016-11-04 07:37:10 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2016-2492.html