Revision 069a4bcf

b/lib/netutils.py
52 52
_STRUCT_UCRED = "iII"
53 53
_STRUCT_UCRED_SIZE = struct.calcsize(_STRUCT_UCRED)
54 54

  
55
# Workaround a bug in some linux distributions that don't define SO_PEERCRED
56
try:
57
  _SO_PEERCRED = IN.SO_PEERCRED
58
except AttributeError:
59
  _SO_PEERCRED = 17
60

  
55 61
# Regexes used to find IP addresses in the output of ip.
56 62
_IP_RE_TEXT = r"[.:a-z0-9]+"      # separate for testing purposes
57 63
_IP_FAMILY_RE = re.compile(r"(?P<family>inet6?)\s+(?P<ip>%s)/" % _IP_RE_TEXT,
......
93 99
  @return: The PID, UID and GID of the connected foreign process.
94 100

  
95 101
  """
96
  peercred = sock.getsockopt(socket.SOL_SOCKET, IN.SO_PEERCRED,
102
  peercred = sock.getsockopt(socket.SOL_SOCKET, _SO_PEERCRED,
97 103
                             _STRUCT_UCRED_SIZE)
98 104
  return struct.unpack(_STRUCT_UCRED, peercred)
99 105

  

Also available in: Unified diff