Skip to content

hanging on long domain with double dots inside #269

@nitr0man

Description

@nitr0man

validators-0.20.0 hangs on long domain with 2 consequent dots

In [2]: validators.url('http://a.b.c.d.e..com/')
Out[2]: ValidationFailure(func=url, args={'value': 'http://a.b.c.d.e..com/', 'public': False})

In [3]: validators.url('http://www.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb.cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc.dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd.eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee..com')
^C---------------------------------------------------------------------------
KeyboardInterrupt                         Traceback (most recent call last)
<ipython-input-3-96130bac0982> in <cell line: 1>()
----> 1 validators.url('http://www.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb.cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc.dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd.eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee..com')

~/.virtualenvs/pbn/lib/python3.8/site-packages/decorator.py in fun(*args, **kw)
    230             if not kwsyntax:
    231                 args, kw = fix(args, kw, sig)
--> 232             return caller(func, *(extras + args), **kw)
    233     fun.__name__ = func.__name__
    234     fun.__doc__ = func.__doc__

~/.virtualenvs/pbn/lib/python3.8/site-packages/validators/utils.py in wrapper(func, *args, **kwargs)
     77     """
     78     def wrapper(func, *args, **kwargs):
---> 79         value = func(*args, **kwargs)
     80         if not value:
     81             return ValidationFailure(

~/.virtualenvs/pbn/lib/python3.8/site-packages/validators/url.py in url(value, public)
    146     :param public: (default=False) Set True to only allow a public IP address
    147     """
--> 148     result = pattern.match(value)
    149     if not public:
    150         return result

Metadata

Metadata

Assignees

No one assigned

    Labels

    duplicateIssue/PR: Redundant

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions