]> git.llucax.com Git - z.facultad/75.74/practicos.git/blob - practicas/pipi-1ra-entrega/src/routetable.cpp
Cosas de Distribuidos I.
[z.facultad/75.74/practicos.git] / practicas / pipi-1ra-entrega / src / routetable.cpp
1 #include "routetable.h"
2 #ifdef DEBUG
3 #include <iostream>
4 #endif
5
6 RouteTable::RouteTable(Dev& default_iface): default_iface(default_iface)
7 {
8 }
9
10 void RouteTable::add(const IPAddr& net, const IPAddr& gw, unsigned metric, Dev& iface)
11 {
12     table[net] = Route(gw, metric, iface);
13 #ifdef DEBUG
14     std::cout << "Se agregó tabla para " << net << ": gw = " << gw
15         << ", metric = " << metric << "\n";
16 #endif
17 }
18
19 void RouteTable::del(const IPAddr& net)
20 {
21     table.erase(net);
22 }
23
24 RouteTable::Route* RouteTable::get(const IPAddr& dst)
25 {
26     // No existe
27     if (table.find(dst) == table.end())
28         return 0;
29     return &table[dst];
30 }
31
32 // vim: set et sw=4 sts=4 :