##// END OF EJS Templates
expose shell channel methods at the client level
expose shell channel methods at the client level

File last commit:

r9250:8d2ffbb1
r10294:a1e189cc
Show More
localinterfaces.py
51 lines | 1.6 KiB | text/x-python | PythonLexer
MinRK
added localinterfaces to utils
r3143 """Simple utility for building a list of local IPs using the socket module.
This module defines two constants:
Bernardo B. Marques
remove all trailling spaces
r4872 LOCALHOST : The loopback interface, or the first interface that points to this
MinRK
added localinterfaces to utils
r3143 machine. It will *almost* always be '127.0.0.1'
LOCAL_IPS : A list of IP addresses, loopback first, that point to this machine.
W. Trevor King
utils.localinterfaces: Add PUBLIC_IPS to consolidate socket logic...
r9250
PUBLIC_IPS : A list of public IP addresses that point to this machine.
Use these to tell remote clients where to find you.
MinRK
added localinterfaces to utils
r3143 """
#-----------------------------------------------------------------------------
Matthias BUSSONNIER
update copyright to 2011/20xx-2011...
r5390 # Copyright (C) 2010-2011 The IPython Development Team
MinRK
added localinterfaces to utils
r3143 #
# Distributed under the terms of the BSD License. The full license is in
# the file COPYING, distributed as part of this software.
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Imports
#-----------------------------------------------------------------------------
import socket
W. Trevor King
utils.localinterfaces: Uniquify LOCAL_IPS...
r9248 from .data import uniq_stable
MinRK
added localinterfaces to utils
r3143 #-----------------------------------------------------------------------------
# Code
#-----------------------------------------------------------------------------
LOCAL_IPS = []
try:
LOCAL_IPS = socket.gethostbyname_ex('localhost')[2]
except socket.gaierror:
pass
W. Trevor King
utils.localinterfaces: Add PUBLIC_IPS to consolidate socket logic...
r9250 PUBLIC_IPS = []
MinRK
added localinterfaces to utils
r3143 try:
W. Trevor King
utils.localinterfaces: Add PUBLIC_IPS to consolidate socket logic...
r9250 PUBLIC_IPS = socket.gethostbyname_ex(socket.gethostname())[2]
MinRK
added localinterfaces to utils
r3143 except socket.gaierror:
pass
W. Trevor King
utils.localinterfaces: Add PUBLIC_IPS to consolidate socket logic...
r9250 else:
PUBLIC_IPS = uniq_stable(PUBLIC_IPS)
LOCAL_IPS.extend(PUBLIC_IPS)
MinRK
added localinterfaces to utils
r3143
# include all-interface aliases: 0.0.0.0 and ''
LOCAL_IPS.extend(['0.0.0.0', ''])
W. Trevor King
utils.localinterfaces: Uniquify LOCAL_IPS...
r9248 LOCAL_IPS = uniq_stable(LOCAL_IPS)
MinRK
added localinterfaces to utils
r3143 LOCALHOST = LOCAL_IPS[0]