(self, devicename)
| 30 | return self.table_prefix + name |
| 31 | |
| 32 | def add_table(self, devicename): |
| 33 | tablenumber = 100 + int(devicename[3:]) |
| 34 | tablename = self.get_tablename(devicename) |
| 35 | str = "%s %s" % (tablenumber, tablename) |
| 36 | filename = "/etc/iproute2/rt_tables" |
| 37 | logging.info("Adding route table: " + str + " to " + filename + " if not present ") |
| 38 | if not CsHelper.definedinfile(filename, str): |
| 39 | CsHelper.execute("sudo echo " + str + " >> /etc/iproute2/rt_tables") |
| 40 | # remove "from all table tablename" if exists, else it will interfer with |
| 41 | # routing of unintended traffic |
| 42 | if self.findRule("from all lookup " + tablename): |
| 43 | CsHelper.execute("sudo ip rule delete from all table " + tablename) |
| 44 | |
| 45 | def flush_table(self, tablename): |
| 46 | CsHelper.execute("ip route flush table %s" % (tablename)) |
no test coverage detected