Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 502378
Collapse All | Expand All

(-)/usr/lib/python-exec/python2.7/policyd-spf.orig (-1 / +6 lines)
Lines 43-48 Link Here
43
syslog.openlog(os.path.basename(sys.argv[0]), syslog.LOG_PID, syslog.LOG_MAIL)
43
syslog.openlog(os.path.basename(sys.argv[0]), syslog.LOG_PID, syslog.LOG_MAIL)
44
policydspfsupp._setExceptHook()
44
policydspfsupp._setExceptHook()
45
45
46
from struct import unpack as struct_unpack                                                                                                                 
47
from socket import inet_ntoa, inet_aton                                                                                                                    
48
def addr2bin(addr):                                                                                                                                        
49
    return struct_unpack('!l', inet_aton(addr))[0]                                                                                                         
50
46
#############################################
51
#############################################
47
def _cidrmatch(connectip, ipaddrs, n):
52
def _cidrmatch(connectip, ipaddrs, n):
48
    """Match connect IP against a list of other IP addresses. From pyspf."""
53
    """Match connect IP against a list of other IP addresses. From pyspf."""
Lines 56-62 Link Here
56
            bin = spf.bin2long6
61
            bin = spf.bin2long6
57
        else:
62
        else:
58
            MASK = 0xFFFFFFFF
63
            MASK = 0xFFFFFFFF
59
            bin = spf.addr2bin
64
            bin = addr2bin
60
        c = ~(MASK >> n) & MASK & bin(connectip)
65
        c = ~(MASK >> n) & MASK & bin(connectip)
61
        for ip in [bin(ip) for ip in ipaddrs]:
66
        for ip in [bin(ip) for ip in ipaddrs]:
62
            if c == ~(MASK >> n) & MASK & ip: return True
67
            if c == ~(MASK >> n) & MASK & ip: return True

Return to bug 502378