Mercurial > hg > silvermirror
view silvermirror/utils.py @ 11:0c11c8102fba
more robust way of getting interfaces
author | k0s <k0scist@gmail.com> |
---|---|
date | Wed, 17 Feb 2010 16:17:25 +0000 |
parents | abb358e2434c |
children | d081ca2e8696 |
line wrap: on
line source
#!/usr/bin/env python import netifaces import os def home(): # XXX needed? better way of doing? return os.environ['HOME'] def ip_addresses(): """dictionary of ip4 addresses for the machine""" interfaces = [] for i in netifaces.interfaces(): try: value = netifaces.ifaddresses(i).get(2) if value: interfaces.append(i) except ValueError: continue return dict([(i, netifaces.ifaddresses(i)[2][0]['addr']) for i in interfaces ]) if __name__ == '__main__': for name, value in sorted(ip_addresses().items()): print '%s : %s' % (name, value)