Hi folks,
I have two environments where the same code works fine in one of them and fails in the other:

The working environment is RHEL 6.5 with:

curl-7.19.7-37.el6_4.x86_64
python-pycurl-7.19.0-8.el6.x86_64
libcurl-7.19.7-37.el6_4.i686
libcurl-7.19.7-37.el6_4.x86_64
libcurl-devel-7.19.7-37.el6_4.x86_64


The failing one is Amazon Linux (EC2 instance) with:

python-pycurl-7.19.0-8.7.amzn1.x86_64
libcurl-7.29.0-11.39.amzn1.x86_64
libcurl-devel-7.29.0-11.39.amzn1.x86_64
curl-7.29.0-11.39.amzn1.x86_64


The code on RHEL gives:

$ python
Python 2.6.6 (r266:84292, Sep  4 2013, 07:46:00)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from urlgrabber.grabber import URLGrabber
>>> g = URLGrabber(reget=None)
>>> g.urlgrab('https://s3.amazonaws.com/production.s3.rubygems.org/gems/columnize-0.3.6.gem', '/tmp/columnize.gem')
'/tmp/columnize.gem'
>>>



While on Amazon Linux:

$ python
Python 2.6.9 (unknown, Oct 29 2013, 19:58:13)
[GCC 4.6.3 20120306 (Red Hat 4.6.3-2)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from urlgrabber.grabber import URLGrabber
>>> g = URLGrabber(reget=None)
>>> g.urlgrab('https://s3.amazonaws.com/production.s3.rubygems.org/gems/columnize-0.3.6.gem', '/tmp/columnize.gem')
Traceback (most recent call last):
  File "<console>", line 1, in <module>
File "/home/celeryd/.virtualenvs/difio/lib/python2.6/site-packages/urlgrabber/grabber.py", line 976, in urlgrab
    return self._retry(opts, retryfunc, url, filename)
File "/home/celeryd/.virtualenvs/difio/lib/python2.6/site-packages/urlgrabber/grabber.py", line 880, in _retry
    r = apply(func, (opts,) + args, {})
File "/home/celeryd/.virtualenvs/difio/lib/python2.6/site-packages/urlgrabber/grabber.py", line 962, in retryfunc
    fo = PyCurlFileObject(url, filename, opts)
File "/home/celeryd/.virtualenvs/difio/lib/python2.6/site-packages/urlgrabber/grabber.py", line 1056, in __init__
    self._do_open()
File "/home/celeryd/.virtualenvs/difio/lib/python2.6/site-packages/urlgrabber/grabber.py", line 1307, in _do_open
    self._set_opts()
File "/home/celeryd/.virtualenvs/difio/lib/python2.6/site-packages/urlgrabber/grabber.py", line 1161, in _set_opts
    self.curl_obj.setopt(pycurl.SSL_VERIFYHOST, opts.ssl_verify_host)
error: (43, '')
>>>



In both environments urlgrabber==3.9.1 and the code is executed in a virtualenv (same packages, same codebase). As far as I can see in both environments python-pycurl is nearly the same while libcurl version is quite different.

According to curl's docs:

CURLE_BAD_FUNCTION_ARGUMENT (43) - Internal error. A function was called with a bad parameter.



Can you take a look at this or advise what may be going wrong?


--
Alex


_______________________________________________
Yum-devel mailing list
Yum-devel@lists.baseurl.org
http://lists.baseurl.org/mailman/listinfo/yum-devel

Reply via email to