Changeset 499

Show
Ignore:
Timestamp:
01/03/08 10:34:35 (1 year ago)
Author:
athomas
Message:

cly: Match fruity, but valid, hostnames like 10.1.1.1.com.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • cly/trunk/cly/builder.py

    r498 r499  
    908908    >>> parser.parse('123.34.67.89').vars['foo'] 
    909909    '123.34.67.89' 
    910     >>> parser.parse('123.34.67.256').remaining 
    911     '123.34.67.256' 
     910 
     911    Invalid IP addresses will not match: 
     912 
     913    >>> parser.parse('123.34.67.899').vars['foo'] 
     914    Traceback (most recent call last): 
     915    ... 
     916    KeyError: 'foo' 
     917 
     918    Also matches netmasks: 
     919 
     920    >>> parser.parse('255.255.255.0').vars['foo'] 
     921    '255.255.255.0' 
    912922    """ 
    913923    pattern = r'(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)' 
     
    937947    >>> parser.parse('www.example.com').vars['foo'] 
    938948    'www.example.com' 
    939     >>> parser.parse('123.34.67.89').vars['foo'] 
    940     '123.34.67.89
    941     """ 
    942  
    943     pattern = r'(?i)(%s)|(%s)' % (IP.pattern, Hostname.pattern) 
     949    >>> parser.parse('123.34.67.89.com').vars['foo'] 
     950    '123.34.67.89.com
     951    """ 
     952 
     953    pattern = r'(?i)(%s)(?!.)|(%s)' % (IP.pattern, Hostname.pattern) 
    944954 
    945955