Mercurial > hg > aboriginal
view sources/toys/unique-port.sh @ 1196:1cdd44f2bac2
If some clever sysadmin claimed 1024-65535 for local ports, punt.
author | Rob Landley <rob@landley.net> |
---|---|
date | Thu, 05 Aug 2010 13:10:07 -0500 |
parents | 94b0b4ef1157 |
children |
line wrap: on
line source
unique_port() { # Try to find an unused port number for each running instance of the program. START=8192 RANGE=$[$(awk '{print $1}' /proc/sys/net/ipv4/ip_local_port_range)-$START] if [ $RANGE -lt 8 ] then START=$[$(awk '{print $2}' /proc/sys/net/ipv4/ip_local_port_range)] RANGE=$[65535-$START] if [ $RANGE -lt 8 ] then START=16384 RANGE=32768 fi fi echo $[($$%$RANGE)+$START] }