// -*- c-basic-offset: 4 -*-
#ifndef CLICK_STATICIPLOOKUP_HH
#define CLICK_STATICIPLOOKUP_HH
#include "lineariplookup.hh"
CLICK_DECLS
/*
=c
StaticIPLookup(ADDR1/MASK1 [GW1] OUT1, ADDR2/MASK2 [GW2] OUT2, ...)
=s iproute
simple static IP routing table
=d
B<Note:> Lookups and table updates with StaticIPLookup are extremely slow; the
RadixIPLookup, DirectIPLookup, and RangeIPLookup elements should be preferred
in almost all cases. See IPRouteTable for a performance comparison. We
provide StaticIPLookup nevertheless for its simplicity.
This element acts like LinearIPLookup, but does not allow dynamic adding and
deleting of routes.
=h table read-only
Outputs a human-readable version of the current routing table.
=h lookup read-only
Reports the OUTput port and GW corresponding to an address.
=a RadixIPLookup, DirectIPLookup, RangeIPLookup, LinearIPLookup,
SortedIPLookup, LinuxIPLookup, IPRouteTable */
class StaticIPLookup : public LinearIPLookup { public:
StaticIPLookup();
~StaticIPLookup();
const char *class_name() const { return "StaticIPLookup"; }
void add_handlers();
int add_route(const IPRoute&, bool, IPRoute*, ErrorHandler *);
int remove_route(const IPRoute&, IPRoute*, ErrorHandler *);
};
CLICK_ENDDECLS
#endif
syntax highlighted by Code2HTML, v. 0.9.1