Bug 782549 - traceback can occur starting subscription-manager-gui with expired entitlements
Summary: traceback can occur starting subscription-manager-gui with expired entitlements
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: subscription-manager
Version: 5.8
Hardware: Unspecified
OS: Unspecified
urgent
high
Target Milestone: rc
: ---
Assignee: John Sefler
QA Contact: Entitlement Bugs
URL:
Whiteboard:
: 783146 (view as bug list)
Depends On:
Blocks: 715031 783146
TreeView+ depends on / blocked
 
Reported: 2012-01-17 16:42 UTC by John Sefler
Modified: 2012-02-28 19:49 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-02-21 06:44:28 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
subscription-manager-gui started successfully with an expired entitlement cert installed (46.64 KB, image/png)
2012-01-17 21:59 UTC, John Sefler
no flags Details
subscription-manager-gui started successfully with an expired entitlement cert installed (193.45 KB, image/png)
2012-01-27 20:26 UTC, John Sefler
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2012:0154 0 normal SHIPPED_LIVE subscription-manager bug fix update 2012-02-20 15:06:04 UTC

Description John Sefler 2012-01-17 16:42:35 UTC
Description of problem:
If you advance the time on your system to a date when your entitlement certs will be expired, then you cannot start the subscription-manager-gui.   A traceback occurs.

Note... Restarting rhsmcertd or waiting til the next rhsmcertd.certfrequency refresh should theoretically cleanup the expired entitlements and fix the problem.  However this case (PART 2) does not appear to be working either.




Version-Release number of selected component (if applicable):
[root@jsefler-onprem-5server ~]# rpm -qa | grep subscription-manager
subscription-manager-migration-data-1.10-1.el5
subscription-manager-firstboot-0.98.13-1.el5
subscription-manager-gnome-0.98.13-1.el5
subscription-manager-0.98.13-1.el5
subscription-manager-migration-0.98.13-1.el5


How reproducible:


Steps to Reproduce:


[root@jsefler-onprem-5server ~]# date
Tue Jan 17 11:27:54 EST 2012
[root@jsefler-onprem-5server ~]# subscription-manager register --username testuser1 --password password --org admin
The system has been registered with id: d3df2bbc-b7ba-4e67-88a2-bf4fae485d72 
[root@jsefler-onprem-5server ~]# subscription-manager subscribe --pool 8a90f85734e931ef0134e932dc9602ae
Successfully consumed a subscription from the pool with id 8a90f85734e931ef0134e932dc9602ae
[root@jsefler-onprem-5server ~]# subscription-manager list --consumed
+-------------------------------------------+
    Consumed Product Subscriptions
+-------------------------------------------+

ProductName:          	Awesome OS for x86_64 Bits
ContractNumber:       	23                       
AccountNumber:        	12331131231              
SerialNumber:         	2633477391629394079      
Active:               	True                     
QuantityUsed:         	1                        
Begins:               	12/15/2011               
Expires:              	02/14/2013               

[root@jsefler-onprem-5server ~]# date 021500002013Fri Feb 15 00:00:00 EST 2013
[root@jsefler-onprem-5server ~]# subscription-manager-gui 

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton'

(subscription-manager-gui:28897): libglade-WARNING **: unknown attribute `swapped' for <signal>.

(subscription-manager-gui:28897): libglade-WARNING **: unknown attribute `swapped' for <signal>.

(subscription-manager-gui:28897): libglade-WARNING **: unknown attribute `swapped' for <signal>.

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'
/usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_new: assertion `drawable != NULL' failed
  self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file))
/usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_copy: assertion `GDK_IS_GC (dst_gc)' failed
  self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file))
/usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_set_values: assertion `GDK_IS_GC (gc)' failed
  self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file))
/usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_set_dashes: assertion `GDK_IS_GC (gc)' failed
  self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file))

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:28897): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'
global name 'order' is not defined
[root@jsefler-onprem-5server ~]# 



[root@jsefler-onprem-5server ~]# tail -f /var/log/rhsm/rhsm.log

2013-02-15 00:00:10,258 [ERROR]  @subscription-manager-gui:134 - global name 'order' is not defined
Traceback (most recent call last):
  File "/usr/sbin/subscription-manager-gui", line 117, in ?
    main = managergui.MainWindow()
  File "/usr/share/rhsm/subscription_manager/gui/managergui.py", line 214, in __init__
    prod_dir=self.product_dir)
  File "/usr/share/rhsm/subscription_manager/gui/installedtab.py", line 99, in __init__
    self.update_products()
  File "/usr/share/rhsm/subscription_manager/gui/installedtab.py", line 156, in update_products
    entry['validity_note'] = \
NameError: global name 'order' is not defined





PART 2:
NOW If I reststart rhsmcertd, then my entitlements should theoretically clear out and I "should" be able to start the gui.   As you see below, the list --consumed appears empty, but it is not - and I still cannot start the gui...


[root@jsefler-onprem-5server ~]# service rhsmcertd restart
Stopping rhsmcertd                                         [  OK  ]
Starting rhsmcertd 240 1440                                [  OK  ]
[root@jsefler-onprem-5server ~]# subscription-manager list --consumed
No Consumed subscription pools to list
[root@jsefler-onprem-5server ~]# ls /etc/pki/entitlement/
2633477391629394079-key.pem  2633477391629394079.pem
[root@jsefler-onprem-5server ~]# subscription-manager-gui 

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton'

(subscription-manager-gui:29079): libglade-WARNING **: unknown attribute `swapped' for <signal>.

(subscription-manager-gui:29079): libglade-WARNING **: unknown attribute `swapped' for <signal>.

(subscription-manager-gui:29079): libglade-WARNING **: unknown attribute `swapped' for <signal>.

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'
/usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_new: assertion `drawable != NULL' failed
  self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file))
/usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_copy: assertion `GDK_IS_GC (dst_gc)' failed
  self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file))
/usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_set_values: assertion `GDK_IS_GC (gc)' failed
  self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file))
/usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_set_dashes: assertion `GDK_IS_GC (gc)' failed
  self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file))

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:29079): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'
global name 'order' is not defined





[root@jsefler-onprem-5server ~]# tail -f /var/log/rhsm/rhsm.log


2013-02-15 00:02:02,759 [INFO]  @connection.py:362 - Using certificate authentication: key = /etc/pki/consumer/key.pem, cert = /etc/pki/consumer/cert.pem, ca = /etc/rhsm/ca/, insecure = False
2013-02-15 00:02:02,760 [INFO]  @connection.py:375 - Connection Built: host: jsefler-f14-5candlepin.usersys.redhat.com, port: 8443, handler: /candlepin
2013-02-15 00:02:03,004 [DEBUG]  @cert_sorter.py:105 - Sorting product and entitlement cert status for: 2013-02-15 05:02:03.004364+00:00
2013-02-15 00:02:03,064 [DEBUG]  @cert_sorter.py:185 - Installed product IDs: ['100000000000060', '1000000000000023', '1144', '100000000000011', '100000000000010', '100000000000013', '100000000000012', '100000000000015', '27060', '69', '50001', '50002', '100000000000224', '100000000000222', '100000000000223', '1', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000006', '100000000000007', '100000000000004', '100000000000005', '100000000000002', '100000000000003', '100000000000000', '100000000000001', '100000000000020', '100000000000022', '100000000000009', '917571', '100000000000008', '37090', '37070']
2013-02-15 00:02:03,069 [DEBUG]  @cert_sorter.py:201 - Checking certificate: 2633477391629394079
2013-02-15 00:02:03,074 [DEBUG]  @cert_sorter.py:213 -   expired: 2013-02-14 05:00:00+00:00
2013-02-15 00:02:03,077 [DEBUG]  @cert_sorter.py:112 - valid entitled products: []
2013-02-15 00:02:03,077 [DEBUG]  @cert_sorter.py:113 - expired entitled products: ['100000000000002']
2013-02-15 00:02:03,077 [DEBUG]  @cert_sorter.py:114 - partially entitled products: []
2013-02-15 00:02:03,077 [DEBUG]  @cert_sorter.py:115 - unentitled products: ['100000000000006', '1000000000000023', '1144', '100000000000011', '100000000000010', '100000000000013', '100000000000012', '100000000000015', '27060', '69', '50001', '50002', '100000000000224', '100000000000222', '100000000000223', '1', '37090', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000060', '100000000000007', '100000000000004', '100000000000005', '100000000000003', '100000000000000', '100000000000001', '100000000000020', '100000000000022', '100000000000009', '100000000000008', '917571', '37070']
2013-02-15 00:02:03,077 [DEBUG]  @cert_sorter.py:116 - future products: []
2013-02-15 00:02:03,077 [DEBUG]  @cert_sorter.py:117 - partial stacks: []
2013-02-15 00:02:03,077 [DEBUG]  @cert_sorter.py:118 - valid stacks: []
2013-02-15 00:02:03,081 [DEBUG]  @connection.py:200 - Loading CA PEM certificates from: /etc/rhsm/ca/
2013-02-15 00:02:03,082 [DEBUG]  @connection.py:183 - Loading CA certificate: '/etc/rhsm/ca/jsefler-f14-5candlepin.pem'
2013-02-15 00:02:03,082 [DEBUG]  @connection.py:183 - Loading CA certificate: '/etc/rhsm/ca/candlepin-stage.pem'
2013-02-15 00:02:03,082 [DEBUG]  @connection.py:183 - Loading CA certificate: '/etc/rhsm/ca/redhat-uep.pem'
2013-02-15 00:02:03,083 [DEBUG]  @connection.py:221 - Making request: GET /candlepin/consumers/d3df2bbc-b7ba-4e67-88a2-bf4fae485d72
2013-02-15 00:02:03,135 [ERROR]  @certmgr.py:131 - Error while updating certificates using daemon
2013-02-15 00:02:03,136 [ERROR]  @certmgr.py:133 - certificate verify failed
Traceback (most recent call last):
  File "/usr/share/rhsm/subscription_manager/certmgr.py", line 124, in ?
    main(options)
  File "/usr/share/rhsm/subscription_manager/certmgr.py", line 103, in main
    updates = mgr.update(options.autoheal)
  File "/usr/share/rhsm/subscription_manager/certmgr.py", line 79, in update
    updates += lib.update()
  File "/usr/share/rhsm/subscription_manager/certlib.py", line 61, in update
    return self._do_update()
  File "/usr/share/rhsm/subscription_manager/certlib.py", line 104, in _do_update
    consumer = self.uep.getConsumer(uuid)
  File "/usr/lib/python2.4/site-packages/rhsm/connection.py", line 502, in getConsumer
    return self.conn.request_get(method)
  File "/usr/lib/python2.4/site-packages/rhsm/connection.py", line 267, in request_get
    return self._request("GET", method)
  File "/usr/lib/python2.4/site-packages/rhsm/connection.py", line 227, in _request
    conn.request(request_type, handler, body=body, headers=headers)
  File "/usr/lib64/python2.4/httplib.py", line 810, in request
    self._send_request(method, url, body, headers)
  File "/usr/lib64/python2.4/httplib.py", line 833, in _send_request
    self.endheaders()
  File "/usr/lib64/python2.4/httplib.py", line 804, in endheaders
    self._send_output()
  File "/usr/lib64/python2.4/httplib.py", line 685, in _send_output
    self.send(msg)
  File "/usr/lib64/python2.4/httplib.py", line 652, in send
    self.connect()
  File "/usr/lib64/python2.4/site-packages/M2Crypto/httpslib.py", line 47, in connect
    self.sock.connect((self.host, self.port))
  File "/usr/lib64/python2.4/site-packages/M2Crypto/SSL/Connection.py", line 174, in connect
    ret = self.connect_ssl()
  File "/usr/lib64/python2.4/site-packages/M2Crypto/SSL/Connection.py", line 167, in connect_ssl
    return m2.ssl_connect(self.ssl, self._timeout)
SSLError: certificate verify failed
2013-02-15 00:02:03,446 [INFO]  @connection.py:362 - Using certificate authentication: key = /etc/pki/consumer/key.pem, cert = /etc/pki/consumer/cert.pem, ca = /etc/rhsm/ca/, insecure = False
2013-02-15 00:02:03,446 [INFO]  @connection.py:375 - Connection Built: host: jsefler-f14-5candlepin.usersys.redhat.com, port: 8443, handler: /candlepin
2013-02-15 00:02:03,696 [DEBUG]  @cert_sorter.py:105 - Sorting product and entitlement cert status for: 2013-02-15 05:02:03.696736+00:00
2013-02-15 00:02:03,749 [DEBUG]  @cert_sorter.py:185 - Installed product IDs: ['100000000000060', '1000000000000023', '1144', '100000000000011', '100000000000010', '100000000000013', '100000000000012', '100000000000015', '27060', '69', '50001', '50002', '100000000000224', '100000000000222', '100000000000223', '1', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000006', '100000000000007', '100000000000004', '100000000000005', '100000000000002', '100000000000003', '100000000000000', '100000000000001', '100000000000020', '100000000000022', '100000000000009', '917571', '100000000000008', '37090', '37070']
2013-02-15 00:02:03,754 [DEBUG]  @cert_sorter.py:201 - Checking certificate: 2633477391629394079
2013-02-15 00:02:03,760 [DEBUG]  @cert_sorter.py:213 -   expired: 2013-02-14 05:00:00+00:00
2013-02-15 00:02:03,762 [DEBUG]  @cert_sorter.py:112 - valid entitled products: []
2013-02-15 00:02:03,762 [DEBUG]  @cert_sorter.py:113 - expired entitled products: ['100000000000002']
2013-02-15 00:02:03,762 [DEBUG]  @cert_sorter.py:114 - partially entitled products: []
2013-02-15 00:02:03,762 [DEBUG]  @cert_sorter.py:115 - unentitled products: ['100000000000006', '1000000000000023', '1144', '100000000000011', '100000000000010', '100000000000013', '100000000000012', '100000000000015', '27060', '69', '50001', '50002', '100000000000224', '100000000000222', '100000000000223', '1', '37090', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000060', '100000000000007', '100000000000004', '100000000000005', '100000000000003', '100000000000000', '100000000000001', '100000000000020', '100000000000022', '100000000000009', '100000000000008', '917571', '37070']
2013-02-15 00:02:03,763 [DEBUG]  @cert_sorter.py:116 - future products: []
2013-02-15 00:02:03,763 [DEBUG]  @cert_sorter.py:117 - partial stacks: []
2013-02-15 00:02:03,763 [DEBUG]  @cert_sorter.py:118 - valid stacks: []
2013-02-15 00:02:03,771 [INFO]  @repolib.py:107 - repos updated: 0
2013-02-15 00:02:03,885 [DEBUG]  @cert_sorter.py:105 - Sorting product and entitlement cert status for: 2013-02-15 05:02:03.885230+00:00
2013-02-15 00:02:03,946 [DEBUG]  @cert_sorter.py:185 - Installed product IDs: ['100000000000060', '1000000000000023', '1144', '100000000000011', '100000000000010', '100000000000013', '100000000000012', '100000000000015', '27060', '69', '50001', '50002', '100000000000224', '100000000000222', '100000000000223', '1', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000006', '100000000000007', '100000000000004', '100000000000005', '100000000000002', '100000000000003', '100000000000000', '100000000000001', '100000000000020', '100000000000022', '100000000000009', '917571', '100000000000008', '37090', '37070']
2013-02-15 00:02:03,950 [DEBUG]  @cert_sorter.py:201 - Checking certificate: 2633477391629394079
2013-02-15 00:02:03,951 [DEBUG]  @cert_sorter.py:213 -   expired: 2013-02-14 05:00:00+00:00
2013-02-15 00:02:03,954 [DEBUG]  @cert_sorter.py:112 - valid entitled products: []
2013-02-15 00:02:03,954 [DEBUG]  @cert_sorter.py:113 - expired entitled products: ['100000000000002']
2013-02-15 00:02:03,954 [DEBUG]  @cert_sorter.py:114 - partially entitled products: []
2013-02-15 00:02:03,954 [DEBUG]  @cert_sorter.py:115 - unentitled products: ['100000000000006', '1000000000000023', '1144', '100000000000011', '100000000000010', '100000000000013', '100000000000012', '100000000000015', '27060', '69', '50001', '50002', '100000000000224', '100000000000222', '100000000000223', '1', '37090', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000060', '100000000000007', '100000000000004', '100000000000005', '100000000000003', '100000000000000', '100000000000001', '100000000000020', '100000000000022', '100000000000009', '100000000000008', '917571', '37070']
2013-02-15 00:02:03,954 [DEBUG]  @cert_sorter.py:116 - future products: []
2013-02-15 00:02:03,954 [DEBUG]  @cert_sorter.py:117 - partial stacks: []
2013-02-15 00:02:03,954 [DEBUG]  @cert_sorter.py:118 - valid stacks: []
2013-02-15 00:02:03,956 [INFO]  @factlib.py:52 - Facts have not changed, skipping upload.
2013-02-15 00:02:03,958 [DEBUG]  @connection.py:200 - Loading CA PEM certificates from: /etc/rhsm/ca/
2013-02-15 00:02:03,958 [DEBUG]  @connection.py:183 - Loading CA certificate: '/etc/rhsm/ca/jsefler-f14-5candlepin.pem'
2013-02-15 00:02:03,959 [DEBUG]  @connection.py:183 - Loading CA certificate: '/etc/rhsm/ca/candlepin-stage.pem'
2013-02-15 00:02:03,959 [DEBUG]  @connection.py:183 - Loading CA certificate: '/etc/rhsm/ca/redhat-uep.pem'
2013-02-15 00:02:03,960 [DEBUG]  @connection.py:221 - Making request: GET /candlepin/
2013-02-15 00:02:03,967 [ERROR]  @certmgr.py:131 - Error while updating certificates using daemon
2013-02-15 00:02:03,967 [ERROR]  @certmgr.py:133 - certificate verify failed
Traceback (most recent call last):
  File "/usr/share/rhsm/subscription_manager/certmgr.py", line 124, in ?
    main(options)
  File "/usr/share/rhsm/subscription_manager/certmgr.py", line 103, in main
    updates = mgr.update(options.autoheal)
  File "/usr/share/rhsm/subscription_manager/certmgr.py", line 79, in update
    updates += lib.update()
  File "/usr/share/rhsm/subscription_manager/certlib.py", line 61, in update
    return self._do_update()
  File "/usr/share/rhsm/subscription_manager/cache.py", line 46, in _do_update
    return profile_mgr.update_check(self.uep, consumer_uuid)
  File "/usr/share/rhsm/subscription_manager/cache.py", line 208, in update_check
    if not uep.supports_resource(PACKAGES_RESOURCE):
  File "/usr/lib/python2.4/site-packages/rhsm/connection.py", line 402, in supports_resource
    self._load_supported_resources()
  File "/usr/lib/python2.4/site-packages/rhsm/connection.py", line 389, in _load_supported_resources
    resources_list = self.conn.request_get("/")
  File "/usr/lib/python2.4/site-packages/rhsm/connection.py", line 267, in request_get
    return self._request("GET", method)
  File "/usr/lib/python2.4/site-packages/rhsm/connection.py", line 227, in _request
    conn.request(request_type, handler, body=body, headers=headers)
  File "/usr/lib64/python2.4/httplib.py", line 810, in request
    self._send_request(method, url, body, headers)
  File "/usr/lib64/python2.4/httplib.py", line 833, in _send_request
    self.endheaders()
  File "/usr/lib64/python2.4/httplib.py", line 804, in endheaders
    self._send_output()
  File "/usr/lib64/python2.4/httplib.py", line 685, in _send_output
    self.send(msg)
  File "/usr/lib64/python2.4/httplib.py", line 652, in send
    self.connect()
  File "/usr/lib64/python2.4/site-packages/M2Crypto/httpslib.py", line 47, in connect
    self.sock.connect((self.host, self.port))
  File "/usr/lib64/python2.4/site-packages/M2Crypto/SSL/Connection.py", line 174, in connect
    ret = self.connect_ssl()
  File "/usr/lib64/python2.4/site-packages/M2Crypto/SSL/Connection.py", line 167, in connect_ssl
    return m2.ssl_connect(self.ssl, self._timeout)
SSLError: certificate verify failed
2013-02-15 00:02:18,990 [INFO]  @connection.py:362 - Using certificate authentication: key = /etc/pki/consumer/key.pem, cert = /etc/pki/consumer/cert.pem, ca = /etc/rhsm/ca/, insecure = False
2013-02-15 00:02:18,990 [INFO]  @connection.py:375 - Connection Built: host: jsefler-f14-5candlepin.usersys.redhat.com, port: 8443, handler: /candlepin
2013-02-15 00:02:27,255 [INFO]  @connection.py:362 - Using certificate authentication: key = /etc/pki/consumer/key.pem, cert = /etc/pki/consumer/cert.pem, ca = /etc/rhsm/ca/, insecure = False
2013-02-15 00:02:27,256 [INFO]  @connection.py:375 - Connection Built: host: jsefler-f14-5candlepin.usersys.redhat.com, port: 8443, handler: /candlepin
2013-02-15 00:02:27,256 [DEBUG]  @managergui.py:150 - Loading consumer info from identity certificates.
2013-02-15 00:02:27,606 [DEBUG]  @cert_sorter.py:105 - Sorting product and entitlement cert status for: 2013-02-15 05:02:27.606200+00:00
2013-02-15 00:02:27,671 [DEBUG]  @cert_sorter.py:185 - Installed product IDs: ['100000000000060', '1000000000000023', '1144', '100000000000011', '100000000000010', '100000000000013', '100000000000012', '100000000000015', '27060', '69', '50001', '50002', '100000000000224', '100000000000222', '100000000000223', '1', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000006', '100000000000007', '100000000000004', '100000000000005', '100000000000002', '100000000000003', '100000000000000', '100000000000001', '100000000000020', '100000000000022', '100000000000009', '917571', '100000000000008', '37090', '37070']
2013-02-15 00:02:27,676 [DEBUG]  @cert_sorter.py:201 - Checking certificate: 2633477391629394079
2013-02-15 00:02:27,683 [DEBUG]  @cert_sorter.py:213 -   expired: 2013-02-14 05:00:00+00:00
2013-02-15 00:02:27,686 [DEBUG]  @cert_sorter.py:112 - valid entitled products: []
2013-02-15 00:02:27,686 [DEBUG]  @cert_sorter.py:113 - expired entitled products: ['100000000000002']
2013-02-15 00:02:27,686 [DEBUG]  @cert_sorter.py:114 - partially entitled products: []
2013-02-15 00:02:27,686 [DEBUG]  @cert_sorter.py:115 - unentitled products: ['100000000000006', '1000000000000023', '1144', '100000000000011', '100000000000010', '100000000000013', '100000000000012', '100000000000015', '27060', '69', '50001', '50002', '100000000000224', '100000000000222', '100000000000223', '1', '37090', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000060', '100000000000007', '100000000000004', '100000000000005', '100000000000003', '100000000000000', '100000000000001', '100000000000020', '100000000000022', '100000000000009', '100000000000008', '917571', '37070']
2013-02-15 00:02:27,686 [DEBUG]  @cert_sorter.py:116 - future products: []
2013-02-15 00:02:27,687 [DEBUG]  @cert_sorter.py:117 - partial stacks: []
2013-02-15 00:02:27,687 [DEBUG]  @cert_sorter.py:118 - valid stacks: []
2013-02-15 00:02:27,729 [DEBUG]  @cert_sorter.py:105 - Sorting product and entitlement cert status for: 2013-02-15 05:02:27.688794+00:00
2013-02-15 00:02:27,781 [DEBUG]  @cert_sorter.py:185 - Installed product IDs: ['100000000000060', '1000000000000023', '1144', '100000000000011', '100000000000010', '100000000000013', '100000000000012', '100000000000015', '27060', '69', '50001', '50002', '100000000000224', '100000000000222', '100000000000223', '1', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000006', '100000000000007', '100000000000004', '100000000000005', '100000000000002', '100000000000003', '100000000000000', '100000000000001', '100000000000020', '100000000000022', '100000000000009', '917571', '100000000000008', '37090', '37070']
2013-02-15 00:02:27,786 [DEBUG]  @cert_sorter.py:201 - Checking certificate: 2633477391629394079
2013-02-15 00:02:27,787 [DEBUG]  @cert_sorter.py:213 -   expired: 2013-02-14 05:00:00+00:00
2013-02-15 00:02:27,789 [DEBUG]  @cert_sorter.py:112 - valid entitled products: []
2013-02-15 00:02:27,789 [DEBUG]  @cert_sorter.py:113 - expired entitled products: ['100000000000002']
2013-02-15 00:02:27,789 [DEBUG]  @cert_sorter.py:114 - partially entitled products: []
2013-02-15 00:02:27,790 [DEBUG]  @cert_sorter.py:115 - unentitled products: ['100000000000006', '1000000000000023', '1144', '100000000000011', '100000000000010', '100000000000013', '100000000000012', '100000000000015', '27060', '69', '50001', '50002', '100000000000224', '100000000000222', '100000000000223', '1', '37090', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000060', '100000000000007', '100000000000004', '100000000000005', '100000000000003', '100000000000000', '100000000000001', '100000000000020', '100000000000022', '100000000000009', '100000000000008', '917571', '37070']
2013-02-15 00:02:27,790 [DEBUG]  @cert_sorter.py:116 - future products: []
2013-02-15 00:02:27,790 [DEBUG]  @cert_sorter.py:117 - partial stacks: []
2013-02-15 00:02:27,790 [DEBUG]  @cert_sorter.py:118 - valid stacks: []
2013-02-15 00:02:27,790 [DEBUG]  @validity.py:64 - Found unentitled products or partial stacks.
2013-02-15 00:02:27,924 [DEBUG]  @cert_sorter.py:105 - Sorting product and entitlement cert status for: 2013-02-15 05:02:27.923945+00:00
2013-02-15 00:02:27,980 [DEBUG]  @cert_sorter.py:185 - Installed product IDs: ['100000000000060', '1000000000000023', '1144', '100000000000011', '100000000000010', '100000000000013', '100000000000012', '100000000000015', '27060', '69', '50001', '50002', '100000000000224', '100000000000222', '100000000000223', '1', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000006', '100000000000007', '100000000000004', '100000000000005', '100000000000002', '100000000000003', '100000000000000', '100000000000001', '100000000000020', '100000000000022', '100000000000009', '917571', '100000000000008', '37090', '37070']
2013-02-15 00:02:27,985 [DEBUG]  @cert_sorter.py:201 - Checking certificate: 2633477391629394079
2013-02-15 00:02:27,986 [DEBUG]  @cert_sorter.py:213 -   expired: 2013-02-14 05:00:00+00:00
2013-02-15 00:02:27,988 [DEBUG]  @cert_sorter.py:112 - valid entitled products: []
2013-02-15 00:02:27,988 [DEBUG]  @cert_sorter.py:113 - expired entitled products: ['100000000000002']
2013-02-15 00:02:27,988 [DEBUG]  @cert_sorter.py:114 - partially entitled products: []
2013-02-15 00:02:27,989 [DEBUG]  @cert_sorter.py:115 - unentitled products: ['100000000000006', '1000000000000023', '1144', '100000000000011', '100000000000010', '100000000000013', '100000000000012', '100000000000015', '27060', '69', '50001', '50002', '100000000000224', '100000000000222', '100000000000223', '1', '37090', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000060', '100000000000007', '100000000000004', '100000000000005', '100000000000003', '100000000000000', '100000000000001', '100000000000020', '100000000000022', '100000000000009', '100000000000008', '917571', '37070']
2013-02-15 00:02:27,989 [DEBUG]  @cert_sorter.py:116 - future products: []
2013-02-15 00:02:27,989 [DEBUG]  @cert_sorter.py:117 - partial stacks: []
2013-02-15 00:02:27,989 [DEBUG]  @cert_sorter.py:118 - valid stacks: []
2013-02-15 00:02:27,990 [DEBUG]  @cert_sorter.py:105 - Sorting product and entitlement cert status for: 2013-02-15 05:02:27.990443+00:00
2013-02-15 00:02:28,041 [DEBUG]  @cert_sorter.py:185 - Installed product IDs: ['100000000000060', '1000000000000023', '1144', '100000000000011', '100000000000010', '100000000000013', '100000000000012', '100000000000015', '27060', '69', '50001', '50002', '100000000000224', '100000000000222', '100000000000223', '1', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000006', '100000000000007', '100000000000004', '100000000000005', '100000000000002', '100000000000003', '100000000000000', '100000000000001', '100000000000020', '100000000000022', '100000000000009', '917571', '100000000000008', '37090', '37070']
2013-02-15 00:02:28,046 [DEBUG]  @cert_sorter.py:201 - Checking certificate: 2633477391629394079
2013-02-15 00:02:28,047 [DEBUG]  @cert_sorter.py:213 -   expired: 2013-02-14 05:00:00+00:00
2013-02-15 00:02:28,049 [DEBUG]  @cert_sorter.py:112 - valid entitled products: []
2013-02-15 00:02:28,049 [DEBUG]  @cert_sorter.py:113 - expired entitled products: ['100000000000002']
2013-02-15 00:02:28,050 [DEBUG]  @cert_sorter.py:114 - partially entitled products: []
2013-02-15 00:02:28,050 [DEBUG]  @cert_sorter.py:115 - unentitled products: ['100000000000006', '1000000000000023', '1144', '100000000000011', '100000000000010', '100000000000013', '100000000000012', '100000000000015', '27060', '69', '50001', '50002', '100000000000224', '100000000000222', '100000000000223', '1', '37090', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000060', '100000000000007', '100000000000004', '100000000000005', '100000000000003', '100000000000000', '100000000000001', '100000000000020', '100000000000022', '100000000000009', '100000000000008', '917571', '37070']
2013-02-15 00:02:28,050 [DEBUG]  @cert_sorter.py:116 - future products: []
2013-02-15 00:02:28,050 [DEBUG]  @cert_sorter.py:117 - partial stacks: []
2013-02-15 00:02:28,050 [DEBUG]  @cert_sorter.py:118 - valid stacks: []
2013-02-15 00:02:28,155 [DEBUG]  @cert_sorter.py:105 - Sorting product and entitlement cert status for: 2013-02-15 05:02:28.155235+00:00
2013-02-15 00:02:28,218 [DEBUG]  @cert_sorter.py:185 - Installed product IDs: ['100000000000060', '1000000000000023', '1144', '100000000000011', '100000000000010', '100000000000013', '100000000000012', '100000000000015', '27060', '69', '50001', '50002', '100000000000224', '100000000000222', '100000000000223', '1', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000006', '100000000000007', '100000000000004', '100000000000005', '100000000000002', '100000000000003', '100000000000000', '100000000000001', '100000000000020', '100000000000022', '100000000000009', '917571', '100000000000008', '37090', '37070']
2013-02-15 00:02:28,224 [DEBUG]  @cert_sorter.py:201 - Checking certificate: 2633477391629394079
2013-02-15 00:02:28,225 [DEBUG]  @cert_sorter.py:213 -   expired: 2013-02-14 05:00:00+00:00
2013-02-15 00:02:28,227 [DEBUG]  @cert_sorter.py:112 - valid entitled products: []
2013-02-15 00:02:28,228 [DEBUG]  @cert_sorter.py:113 - expired entitled products: ['100000000000002']
2013-02-15 00:02:28,228 [DEBUG]  @cert_sorter.py:114 - partially entitled products: []
2013-02-15 00:02:28,228 [DEBUG]  @cert_sorter.py:115 - unentitled products: ['100000000000006', '1000000000000023', '1144', '100000000000011', '100000000000010', '100000000000013', '100000000000012', '100000000000015', '27060', '69', '50001', '50002', '100000000000224', '100000000000222', '100000000000223', '1', '37090', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000060', '100000000000007', '100000000000004', '100000000000005', '100000000000003', '100000000000000', '100000000000001', '100000000000020', '100000000000022', '100000000000009', '100000000000008', '917571', '37070']
2013-02-15 00:02:28,228 [DEBUG]  @cert_sorter.py:116 - future products: []
2013-02-15 00:02:28,228 [DEBUG]  @cert_sorter.py:117 - partial stacks: []
2013-02-15 00:02:28,228 [DEBUG]  @cert_sorter.py:118 - valid stacks: []
2013-02-15 00:02:28,230 [DEBUG]  @cert_sorter.py:105 - Sorting product and entitlement cert status for: 2013-02-15 05:02:28.230034+00:00
2013-02-15 00:02:28,283 [DEBUG]  @cert_sorter.py:185 - Installed product IDs: ['100000000000060', '1000000000000023', '1144', '100000000000011', '100000000000010', '100000000000013', '100000000000012', '100000000000015', '27060', '69', '50001', '50002', '100000000000224', '100000000000222', '100000000000223', '1', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000006', '100000000000007', '100000000000004', '100000000000005', '100000000000002', '100000000000003', '100000000000000', '100000000000001', '100000000000020', '100000000000022', '100000000000009', '917571', '100000000000008', '37090', '37070']
2013-02-15 00:02:28,288 [DEBUG]  @cert_sorter.py:201 - Checking certificate: 2633477391629394079
2013-02-15 00:02:28,289 [DEBUG]  @cert_sorter.py:213 -   expired: 2013-02-14 05:00:00+00:00
2013-02-15 00:02:28,291 [DEBUG]  @cert_sorter.py:112 - valid entitled products: []
2013-02-15 00:02:28,291 [DEBUG]  @cert_sorter.py:113 - expired entitled products: ['100000000000002']
2013-02-15 00:02:28,292 [DEBUG]  @cert_sorter.py:114 - partially entitled products: []
2013-02-15 00:02:28,292 [DEBUG]  @cert_sorter.py:115 - unentitled products: ['100000000000006', '1000000000000023', '1144', '100000000000011', '100000000000010', '100000000000013', '100000000000012', '100000000000015', '27060', '69', '50001', '50002', '100000000000224', '100000000000222', '100000000000223', '1', '37090', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000060', '100000000000007', '100000000000004', '100000000000005', '100000000000003', '100000000000000', '100000000000001', '100000000000020', '100000000000022', '100000000000009', '100000000000008', '917571', '37070']
2013-02-15 00:02:28,292 [DEBUG]  @cert_sorter.py:116 - future products: []
2013-02-15 00:02:28,292 [DEBUG]  @cert_sorter.py:117 - partial stacks: []
2013-02-15 00:02:28,292 [DEBUG]  @cert_sorter.py:118 - valid stacks: []
2013-02-15 00:02:28,389 [ERROR]  @subscription-manager-gui:134 - global name 'order' is not defined
Traceback (most recent call last):
  File "/usr/sbin/subscription-manager-gui", line 117, in ?
    main = managergui.MainWindow()
  File "/usr/share/rhsm/subscription_manager/gui/managergui.py", line 214, in __init__
    prod_dir=self.product_dir)
  File "/usr/share/rhsm/subscription_manager/gui/installedtab.py", line 99, in __init__
    self.update_products()
  File "/usr/share/rhsm/subscription_manager/gui/installedtab.py", line 156, in update_products
    entry['validity_note'] = \
NameError: global name 'order' is not defined





ADDITIONAL NOTE...
My consumer cert is still valid...
[root@jsefler-onprem-5server ~]# date
Fri Feb 15 00:07:34 EST 2013
[root@jsefler-onprem-5server ~]# openssl x509 -text -in /etc/pki/consumer/cert.pem | grep Validity -A2
        Validity
            Not Before: Jan 17 16:27:22 2012 GMT
            Not After : Jan 17 16:27:22 2013 GMT

Comment 1 John Sefler 2012-01-17 18:02:19 UTC
Upon further review of PART 2 of the bug above.  This is explained by an expired candlepin certificate which cuts off communication with the candlepin server...

[root@jsefler-onprem-5server ~]# openssl x509 -text -in /etc/rhsm/ca/jsefler-f14-5candlepin.pem | grep -A1 Validity
        Validity
            Not Before: Jan 17 01:04:40 2012 GMT

Nevertheless the following traceback is still valid when starting the subscription-manager-gui with expired entitlement certs present...

Traceback (most recent call last):
  File "/usr/sbin/subscription-manager-gui", line 117, in ?
    main = managergui.MainWindow()
  File "/usr/share/rhsm/subscription_manager/gui/managergui.py", line 214, in
__init__
    prod_dir=self.product_dir)
  File "/usr/share/rhsm/subscription_manager/gui/installedtab.py", line 99, in
__init__
    self.update_products()
  File "/usr/share/rhsm/subscription_manager/gui/installedtab.py", line 156, in
update_products
    entry['validity_note'] = \
NameError: global name 'order' is not defined

Comment 2 John Sefler 2012-01-17 18:04:59 UTC
(In reply to comment #1)
> Upon further review of PART 2 of the bug above.  This is explained by an
> expired candlepin certificate which cuts off communication with the candlepin
> server...
> 
> [root@jsefler-onprem-5server ~]# openssl x509 -text -in
> /etc/rhsm/ca/jsefler-f14-5candlepin.pem | grep -A1 Validity
>         Validity
>             Not Before: Jan 17 01:04:40 2012 GMT
> 
Ooops! I meant to show this:

[root@jsefler-onprem-5server ~]# openssl x509 -text -in /etc/rhsm/ca/jsefler-f14-5candlepin.pem | grep -A2 Validity
        Validity
            Not Before: Jan 17 01:04:40 2012 GMT
            Not After : Jan 16 01:04:40 2013 GMT

Comment 3 Michael Stead 2012-01-17 19:08:59 UTC
Committed in master branch: 37a4cb59341e22ed3175eb42db7a73b8beb043e9

Let me know when to push to 5.8.

Comment 5 John Sefler 2012-01-17 21:59:30 UTC
Created attachment 555861 [details]
subscription-manager-gui started successfully with an expired entitlement cert installed

Verifying master continuous integration build....
[root@jsefler-onprem-5server ~]# rpm -q subscription-manager
subscription-manager-0.99.4-1.git.6.37a4cb5.el5


[root@jsefler-onprem-5server ~]# date
Tue Jan 17 16:23:51 EST 2012
[root@jsefler-onprem-5server ~]# subscription-manager register --username testuser1 --password password --org admin
The system has been registered with id: 0af4536f-1a39-402a-8ea1-2097cfe64665 
[root@jsefler-onprem-5server ~]# subscription-manager subscribe --pool 8a90f85734ed80940134ed81a8bf02ae
Successfully consumed a subscription from the pool with id 8a90f85734ed80940134ed81a8bf02ae
[root@jsefler-onprem-5server ~]# subscription-manager list --consumed
+-------------------------------------------+
    Consumed Product Subscriptions
+-------------------------------------------+

ProductName:          	Awesome OS for x86_64 Bits
ContractNumber:       	23                       
AccountNumber:        	12331131231              
SerialNumber:         	2583914229535062073      
Active:               	True                     
QuantityUsed:         	1                        
Begins:               	01/16/2012               
Expires:              	01/15/2013               

[root@jsefler-onprem-5server ~]# 
[root@jsefler-onprem-5server ~]# date 021500002013
Fri Feb 15 00:00:00 EST 2013
[root@jsefler-onprem-5server ~]# subscription-manager-gui
(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton'

(subscription-manager-gui:2473): libglade-WARNING **: unknown attribute `swapped' for <signal>.

(subscription-manager-gui:2473): libglade-WARNING **: unknown attribute `swapped' for <signal>.

(subscription-manager-gui:2473): libglade-WARNING **: unknown attribute `swapped' for <signal>.

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'
/usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_new: assertion `drawable != NULL' failed
  self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file))
/usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_copy: assertion `GDK_IS_GC (dst_gc)' failed
  self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file))
/usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_set_values: assertion `GDK_IS_GC (gc)' failed
  self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file))
/usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_set_dashes: assertion `GDK_IS_GC (gc)' failed
  self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file))

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `invisible_char_set' for class `GtkEntry'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned'

(subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'
/usr/sbin/subscription-manager-gui:126: GtkWarning: gdk_draw_line: assertion `gc != NULL' failed
  sys.exit(gtk.main() or 0)

VERIFIED ^^^
THE subscription-manager-gui NOW STARTS WITHOUT ANY TRACEBACK AND THE GUI CORRECTLY SHOWS THE EXPIRED ENTITLEMENT CERT ON My Subscriptions TAB IN RED.  SEE ATTACHED SCREENSHOT.



NOW LET'S DEMONSTRATE THAT RESTARTING THE RHSMCERTD WILL CLEAN OUT THE EXPIRED ENTITITLEMENTS....

First turn off auto-heal...
[root@jsefler-onprem-5server ~]# curl -k -u testuser1:password --request PUT --data '{"autoheal":false}' --header 'accept:application/json' --header 'content-type: application/json' https://jsefler-f14-5candlepin.usersys.redhat.com:8443/candlepin/consumers/cd428ef1-fee1-450c-81cf-26f1d66b395b 
[root@jsefler-onprem-5server ~]# curl -k -u testuser1:password --request GET  --header 'accept:application/json' --header 'content-type: application/json' https://jsefler-f14-5candlepin.usersys.redhat.com:8443/candlepin/consumers/cd428ef1-fee1-450c-81cf-26f1d66b395b | python -m simplejson/tool |  grep heal
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 17507    0 17507    0     0  59429      0 --:--:-- --:--:-- --:--:-- 8491k
    "autoheal": false, 
[root@jsefler-onprem-5server ~]# 

[root@jsefler-onprem-5server ~]# ls /etc/pki/entitlement/
2583914229535062073-key.pem  2583914229535062073.pem
[root@jsefler-onprem-5server ~]# subscription-manager list --installed
+-------------------------------------------+
    Installed Product Status
+-------------------------------------------+
ProductName:          	Awesome OS for x86_64 Bits
Version:              	3.11                     
Arch:                 	x86_64                   
Status:               	Expired                  
Starts:               	01/16/2012               
Expires:              	01/15/2013  

[root@jsefler-onprem-5server ~]# service rhsmcertd restart
Stopping rhsmcertd                                         [  OK  ]
Starting rhsmcertd 240 1440                                [  OK  ]
[root@jsefler-onprem-5server ~]# ls /etc/pki/entitlement/
[root@jsefler-onprem-5server ~]# subscription-manager list --installed
+-------------------------------------------+
    Installed Product Status
+-------------------------------------------+
ProductName:          	Awesome OS for x86_64 Bits
Version:              	3.11                     
Arch:                 	x86_64                   
Status:               	Not Subscribed           
Starts:               	None                     
Expires:              	None  

^^^ VERIFIED...  Restarting the rhsmcertd (with the consumer's autoheal set to false) successfully cleans out the expired entitlement.  Moreover, the My Subscriptions tab in the subscription-manager-gui automatically empties the expired entitlement.



The fixes in master are VERIFIED.
I recommend merging the fix to rhel58 branch too.

Comment 8 Michael Stead 2012-01-23 17:43:33 UTC
Merged into 5.8 branch: b01e41e876fe2a28e55d76b1fe12b11d9f0c1a6b

Comment 10 John Sefler 2012-01-27 20:21:57 UTC
Verifying Version from RHEL-5.8-Server-RC-1.1 compose...

[root@jsefler-rhel58server-rc11 ~]# rpm -q subscription-manager
subscription-manager-0.98.14-1.el5


[root@jsefler-rhel58server-rc11 ~]# date
Fri Jan 27 15:11:13 EST 2012
[root@jsefler-rhel58server-rc11 ~]# subscription-manager register --username qa --autosubscribe
Password: 
The system has been registered with id: 1eaa2f09-7eaf-41a6-ad67-8ec6c1fe80f8 
Installed Product Current Status:
ProductName:          	Red Hat Enterprise Linux Server
Status:               	Subscribed               

[root@jsefler-rhel58server-rc11 ~]# subscription-manager list --consumed | grep "Red Hat Enterprise Linux Server" -A8
ProductName:          	Red Hat Enterprise Linux Server
ContractNumber:       	2596950                  
AccountNumber:        	477931                   
SerialNumber:         	2864922396993651779      
Active:               	True                     
QuantityUsed:         	1                        
Begins:               	10/05/2011               
Expires:              	01/01/2022               

[root@jsefler-rhel58server-rc11 ~]# date 020100002022
Tue Feb  1 00:00:00 EST 2022
[root@jsefler-rhel58server-rc11 ~]# subscription-manager-gui

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton'

(subscription-manager-gui:4409): libglade-WARNING **: unknown attribute `swapped' for <signal>.

(subscription-manager-gui:4409): libglade-WARNING **: unknown attribute `swapped' for <signal>.

(subscription-manager-gui:4409): libglade-WARNING **: unknown attribute `swapped' for <signal>.

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'
/usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_new: assertion `drawable != NULL' failed
  self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file))
/usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_copy: assertion `GDK_IS_GC (dst_gc)' failed
  self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file))
/usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_set_values: assertion `GDK_IS_GC (gc)' failed
  self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file))
/usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_set_dashes: assertion `GDK_IS_GC (gc)' failed
  self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file))

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `invisible_char_set' for class `GtkEntry'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned'

(subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox'
/usr/sbin/subscription-manager-gui:122: GtkWarning: gdk_draw_line: assertion `gc != NULL' failed
  sys.exit(gtk.main() or 0)

VERIFIED ^^^
THE subscription-manager-gui NOW STARTS WITHOUT ANY non-glade TRACEBACK AND THE GUI CORRECTLY SHOWS THE EXPIRED PRODUCT STATUS ON My Installed Software TAB. 
SEE ATTACHED SCREENSHOT.

Comment 11 John Sefler 2012-01-27 20:26:20 UTC
Created attachment 557941 [details]
subscription-manager-gui started successfully with an expired entitlement cert installed

[root@jsefler-rhel58server-rc11 ~]# rpm -q subscription-manager-gnome
subscription-manager-gnome-0.98.14-1.el5

moving to VERIFIED

Comment 12 errata-xmlrpc 2012-02-21 06:44:28 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.

http://rhn.redhat.com/errata/RHBA-2012-0154.html

Comment 13 Jiri Pallich 2012-02-28 19:49:59 UTC
*** Bug 783146 has been marked as a duplicate of this bug. ***


Note You need to log in before you can comment on or make changes to this bug.