def __init__(self, cf, eventQueue): Thread.__init__(self) self.minPackCount=cf.getint("SlackPhone", "minpacketcount") self.wirelessinterface = cf.get("SlackPhone", "wlaninterface") self.broadcast=netinfo.get_broadcast(self.wirelessinterface) self.gateway=netinfo.get_routes(self.wirelessinterface)[0]["gateway"] self.device = cf.get("SlackPhone", "inetdevice") self.startDev = cf.get("SlackPhone", "startdevice") self.devices = pcapy.findalldevs() self.valid_packet = globals()[ "valid_%s_packet"%cf.get("SlackPhone", "phonetype")] logging.info( self.devices) try: self.filter = cf.get("SlackPhone", "tcpfilter") except: self.filter = None try: phonemap = cf.get("SlackPhone", "phonemap") except: phonemap = None try: self.phonemap = json.loads( phonemap ) except Exception, e: logging.exception(e) self.phonemap = {}
def run_send(self): while True: log.info("Broadcasting local repos") for repo in self.core.repos.values(): for iface in netinfo.list_active_devs(): self.socket.sendto( repo.encrypt(repo.uuid.decode("hex")), (netinfo.get_broadcast(iface), 54545) ) sleep(15) # low for debugging, probably want this higher
# www.sassan.me.uk # pypi.python.org/pypi/pynetinfo/ # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA import netinfo for dev in netinfo.list_active_devs(): print "*********************************" print dev print "mac: " + netinfo.get_hwaddr(dev) print "ip: " + netinfo.get_ip(dev) print "netmask: " + netinfo.get_netmask(dev) print "broadcast: " + netinfo.get_broadcast(dev) print "######################################" for route in netinfo.get_routes(): print route['dest'] + "/" + route['netmask'] + " -> " + route['gateway'] #netinfo.del_route("", "192.168.0.0", "164.11.222.253", "255.255.255.0");
import netinfo for dev in netinfo.list_active_devs(): print "*********************************" print dev print "mac: "+netinfo.get_hwaddr(dev) print "ip: "+netinfo.get_ip(dev) print "netmask: "+netinfo.get_netmask(dev) print "broadcast: "+netinfo.get_broadcast(dev) print "######################################" for route in netinfo.get_routes(): print route['dest']+"/"+route['netmask']+" -> "+route['gateway'] #netinfo.del_route("", "192.168.0.0", "164.11.222.253", "255.255.255.0");
def getBroadcastAddress(): interface = getDefaultGatewayInterfaceName() return netinfo.get_broadcast(interface)