[Yum-devel] [PATCH] Add ip_resolve option, because ipv6 is ugly and smells bad

Seth Vidal skvidal at fedoraproject.org
Wed Apr 21 18:35:30 UTC 2010



On Tue, 20 Apr 2010, James Antill wrote:

> ---
> urlgrabber/grabber.py |   15 +++++++++++++++
> 1 files changed, 15 insertions(+), 0 deletions(-)
>
> diff --git a/urlgrabber/grabber.py b/urlgrabber/grabber.py
> index 4797436..af07d43 100644
> --- a/urlgrabber/grabber.py
> +++ b/urlgrabber/grabber.py
> @@ -248,6 +248,11 @@ GENERAL ARGUMENTS (kwargs)
>
>     Maximum size (in bytes) of the headers.
>
> +  self.ip_resolve = 'whatever'
> +
> +    What type of name to IP resolving to use, default is to do both IPV4 and
> +    IPV6.
> +
>
> RETRY RELATED ARGUMENTS
>
> @@ -806,6 +811,7 @@ class URLGrabberOptions:
>         self.close_connection = 0
>         self.range = None
>         self.user_agent = 'urlgrabber/%s' % __version__
> +        self.ip_resolve = None
>         self.keepalive = 1
>         self.proxies = None
>         self.reget = None
> @@ -1171,6 +1177,15 @@ class PyCurlFileObject():
>             self.curl_obj.setopt(pycurl.VERBOSE, True)
>         if opts.user_agent:
>             self.curl_obj.setopt(pycurl.USERAGENT, opts.user_agent)
> +        if opts.ip_resolve:
> +            # Default is: IPRESOLVE_WHATEVER
> +            ipr = opts.ip_resolve.lower()
> +            if ipr == 'whatever': # Do we need this?
> +                self.curl_obj.setopt(pycurl.IPRESOLVE,pycurl.IPRESOLVE_WHATEVER)
> +            if ipr == 'ipv4':
> +                self.curl_obj.setopt(pycurl.IPRESOLVE, pycurl.IPRESOLVE_V4)
> +            if ipr == 'ipv6':
> +                self.curl_obj.setopt(pycurl.IPRESOLVE, pycurl.IPRESOLVE_V6)
>
>         # maybe to be options later
>         self.curl_obj.setopt(pycurl.FOLLOWLOCATION, True)

ACK

but just so we're clear 'whatever' feels like a silly name, but that 
should be addressed to the curl/pycurl maintainers.
-sv



More information about the Yum-devel mailing list