1 2from pr2modules.bsd.pf_route import (if_msg, 3 rt_msg, 4 if_announcemsg, 5 ifma_msg, 6 ifa_msg) 7 8RTM_ADD = 0x1 # Add Route 9RTM_DELETE = 0x2 # Delete Route 10RTM_CHANGE = 0x3 # Change Metrics or flags 11RTM_GET = 0x4 # Report Metrics 12RTM_LOSING = 0x5 # Kernel Suspects Partitioning 13RTM_REDIRECT = 0x6 # Told to use different route 14RTM_MISS = 0x7 # Lookup failed on this address 15RTM_LOCK = 0x8 # Fix specified metrics 16RTM_RESOLVE = 0xb # Req to resolve dst to LL addr 17RTM_NEWADDR = 0xc # Address being added to iface 18RTM_DELADDR = 0xd # Address being removed from iface 19RTM_IFINFO = 0xe # Iface going up/down etc 20RTM_NEWMADDR = 0xf # Mcast group membership being added to if 21RTM_DELMADDR = 0x10 # Mcast group membership being deleted 22RTM_IFANNOUNCE = 0x11 # Iface arrival/departure 23RTM_IEEE80211 = 0x12 # IEEE80211 wireless event 24 25 26class RTMSocketBase(object): 27 28 msg_map = {RTM_ADD: rt_msg, 29 RTM_DELETE: rt_msg, 30 RTM_CHANGE: rt_msg, 31 RTM_GET: rt_msg, 32 RTM_LOSING: rt_msg, 33 RTM_REDIRECT: rt_msg, 34 RTM_MISS: rt_msg, 35 RTM_LOCK: rt_msg, 36 RTM_RESOLVE: rt_msg, 37 RTM_NEWADDR: ifa_msg, 38 RTM_DELADDR: ifa_msg, 39 RTM_IFINFO: if_msg, 40 RTM_NEWMADDR: ifma_msg, 41 RTM_DELMADDR: ifma_msg, 42 RTM_IFANNOUNCE: if_announcemsg, 43 RTM_IEEE80211: if_announcemsg} 44