python attributeError 'SSLTimeoutError' after upgrade

Bug #1434991 reported by Clemente Aguiar
26
This bug affects 4 people
Affects Status Importance Assigned to Milestone
pywbem (Ubuntu)
In Progress
Medium
Unassigned
Trusty
Confirmed
Medium
Unassigned
Utopic
Won't Fix
Medium
Unassigned
Vivid
In Progress
Medium
Unassigned

Bug Description

Description: Ubuntu 14.04.2 LTS

I use use a nagios script called check_esxi_hardware.py to check several esxi platforms.
After last uBuntu upgrade it stopped working giving the following error:

##########
Traceback (most recent call last):
  File "/usr/lib/nagios/plugins/check_esxi_hardware.py", line 619, in <module>
    instance_list = wbemclient.EnumerateInstances(classe)
  File "/usr/lib/pymodules/python2.7/pywbem/cim_operations.py", line 421, in EnumerateInstances
    **params)
  File "/usr/lib/pymodules/python2.7/pywbem/cim_operations.py", line 183, in imethodcall
    no_verification = self.no_verification)
  File "/usr/lib/pymodules/python2.7/pywbem/cim_http.py", line 268, in wbem_request
    h.endheaders()
  File "/usr/lib/python2.7/httplib.py", line 969, in endheaders
    self._send_output(message_body)
  File "/usr/lib/python2.7/httplib.py", line 829, in _send_output
    self.send(msg)
  File "/usr/lib/pymodules/python2.7/pywbem/cim_http.py", line 115, in send
    self.connect()
  File "/usr/lib/pymodules/python2.7/pywbem/cim_http.py", line 167, in connect
    except ( Err.SSLError, SSL.SSLError, SSL.SSLTimeoutError
AttributeError: 'module' object has no attribute 'SSLTimeoutError'
############

- 'module' here refers to m2crypto. This look like an incompatibility between
the versions of python-m2crypto and python-pywbem.

- python-m2crypto did not exist before the upgrade

Here is the comparison of installed python packages, before and after the upgrade, and

$ diff python-packages-no-problem.txt python-packages-problem.txt
2d1
< ii libfile-copy-recursive-perl 0.38-1 all Perl extension for recursively copying files and directories
8d6
< rc libpython3.3-minimal:amd64 3.3.2-7ubuntu3.1 amd64 Minimal subset of the Python language (version 3.3)
19a18
> ii python-m2crypto 0.21.1-3ubuntu5 amd64 a crypto and SSL toolkit for Python
21d19
< ii python-newt 0.52.15-2ubuntu5 amd64 NEWT module for Python
27,28c25,26
< ii python-pywbem 0.7.0-4 all Python WBEM Client and Provider Interface
< ii python-requests 2.2.1-1ubuntu0.1 all elegant and simple HTTP library for Python, built for human beings
---
> ii python-pywbem 0.7.0-4ubuntu1~14.04.1 all Python WBEM Client and Provider Interface
> ii python-requests 2.2.1-1ubuntu0.2 all elegant and simple HTTP library for Python, built for human beings
51a50
> ii python3-newt 0.52.15-2ubuntu5 amd64 NEWT module for Python3
56,57d54
< rc python3.3 3.3.2-7ubuntu3.1 amd64 Interactive high-level object-oriented language (version 3.3)
< rc python3.3-minimal 3.3.2-7ubuntu3.1 amd64 Minimal subset of the Python language (version 3.3)

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in python-defaults (Ubuntu):
status: New → Confirmed
Matthias Klose (doko)
affects: python-defaults (Ubuntu) → pywbem (Ubuntu)
Revision history for this message
Brian Murray (brian-murray) wrote :

Louis - Could you have a look at this since your did the SRU for pywbem?

Changed in pywbem (Ubuntu):
assignee: nobody → Louis Bouchard (louis-bouchard)
tags: added: regression-update trusty
Revision history for this message
Louis Bouchard (louis) wrote :

ok, will do

Revision history for this message
Louis Bouchard (louis) wrote :

Also exists in Vivid as well as in Debian : https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=780264

Changed in pywbem (Ubuntu Trusty):
status: New → Confirmed
Changed in pywbem (Ubuntu Utopic):
status: New → Confirmed
Changed in pywbem (Ubuntu Trusty):
assignee: nobody → Louis Bouchard (louis-bouchard)
Changed in pywbem (Ubuntu Utopic):
assignee: nobody → Louis Bouchard (louis-bouchard)
Revision history for this message
Louis Bouchard (louis) wrote :

After looking thoroughly at the upstream code for m2crypto, it looks like this SSLTimeoutError exception never existed. I have pinged the upstream maintainer of M2Crypto go get confirmation.

Then I will get it fixed for all releases & will request a fix for debian as well.

Changed in pywbem (Ubuntu):
importance: Undecided → Medium
Changed in pywbem (Ubuntu Trusty):
importance: Undecided → Medium
Changed in pywbem (Ubuntu Utopic):
importance: Undecided → Medium
Louis Bouchard (louis)
Changed in pywbem (Ubuntu):
status: Confirmed → In Progress
Revision history for this message
Louis Bouchard (louis) wrote :

I have submitted a fix to debian. Waiting to hear from the maintainer

Revision history for this message
Claudio Kuenzler (napsty) wrote :

I have released a new version of check_esxi_hardware which adds compatibility between the old/unpatched pywbem 0.7.0 and patched pywbem 0.7.0. Other distros (e.g. openSUSE) was also affected by it.
Please check it out on http://www.claudiokuenzler.com/nagios-plugins/check_esxi_hardware.php

However the whole pywbem upstream and Linux distro patching must be looked at separately and improved. For years now the same version (0.7.0) was used. Upstream seemed dead, came back in September 2014 and seems dead again. Distros started applying own patches without having an official upstream release etc. That's sad :-(

Revision history for this message
Rolf Leggewie (r0lf) wrote :

utopic has seen the end of its life and is no longer receiving any updates. Marking the utopic task for this ticket as "Won't Fix".

Changed in pywbem (Ubuntu Utopic):
status: Confirmed → Won't Fix
Louis Bouchard (louis)
Changed in pywbem (Ubuntu):
assignee: Louis Bouchard (louis) → nobody
Changed in pywbem (Ubuntu Trusty):
assignee: Louis Bouchard (louis) → nobody
Changed in pywbem (Ubuntu Utopic):
assignee: Louis Bouchard (louis) → nobody
Changed in pywbem (Ubuntu Vivid):
assignee: Louis Bouchard (louis) → nobody
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.