class IfConfig
|
Base class for pushing and pulling interface configurations down to
the particular platform. More... |
|
|
Public Methods
- IfConfig (EventLoop& eventloop, IfConfigUpdateReporterBase& ur,
IfConfigErrorReporterBase& er)
- virtual ~IfConfig ()
- EventLoop& eventloop ()
- inline IfConfigErrorReporterBase& er ()
- IfTree& live_config ()
- void set_live_config (const IfTree& it)
- int register_ifc_get (IfConfigGet *ifc_get)
- int register_ifc_set (IfConfigSet *ifc_set)
- int register_ifc_observer (IfConfigObserver *ifc_observer)
- IfConfigGet& ifc_get ()
- IfConfigSet& ifc_set ()
- IfConfigObserver& ifc_observer ()
- int set_dummy ()
- int start ()
- int stop ()
- bool push_config (const IfTree& config)
- const IfTree& pull_config ()
- void flush_config ()
- IfTreeInterface * get_if (IfTree& it, const string& ifname)
- IfTreeVif * get_vif (IfTree& it, const string& ifname,
const string& vifname)
- const string& push_error () const
- void report_update (const IfTreeInterface& fi,
bool is_all_interfaces_reportee)
- void report_update (const IfTreeInterface& fi, const IfTreeVif& fv,
bool is_all_interfaces_reportee)
- void report_update (const IfTreeInterface& fi,
const IfTreeVif& fv,
const IfTreeAddr4& fa,
bool is_all_interfaces_reportee)
- void report_update (const IfTreeInterface& fi,
const IfTreeVif& fv,
const IfTreeAddr6& fa,
bool is_all_interfaces_reportee)
- void report_updates (const IfTree& it, bool is_all_interfaces_reportee)
- void map_ifindex (uint32_t index, const string& name)
- void unmap_ifindex (uint32_t index)
- const char* get_ifname (uint32_t index)
Base class for pushing and pulling interface configurations down to
the particular platform.
Constructor.
Parameters:
eventloop | the event loop.
|
ur | update reporter that receives updates through when
configurations are pushed down and when triggered
spontaneously on the underlying platform.
|
er | error reporter that errors are propagated through when
configurations are pushed down.
|
[virtual]
Virtual destructor (in case this class is used as base class).
Get error reporter associated with IfConfig.
IfTree& live_config ()
| live_config |
void set_live_config (const IfTree& it)
| set_live_config |
int register_ifc_get (IfConfigGet *ifc_get)
| register_ifc_get |
int register_ifc_set (IfConfigSet *ifc_set)
| register_ifc_set |
int register_ifc_observer (IfConfigObserver *ifc_observer)
| register_ifc_observer |
int set_dummy ()
| set_dummy |
Setup the unit to behave as dummy (for testing purpose).
Returns: XORP_OK on success, otherwise XORP_ERROR.
Start operation.
Returns: XORP_OK on success, otherwise XORP_ERROR.
Stop operation.
Returns: XORP_OK on success, otherwise XORP_ERROR.
bool push_config (const IfTree& config)
| push_config |
Push IfTree structure down to platform. Errors are reported
via the constructor supplied ErrorReporter instance.
Parameters:
config | the configuration to be pushed down.
|
Returns: true on success, otherwise false.
const IfTree& pull_config ()
| pull_config |
Pull up current config from platform.
Returns: the platform IfTree.
void flush_config ()
| flush_config |
IfTreeVif * get_vif (IfTree& it, const string& ifname,
const string& vifname)
| get_vif |
const string& push_error ()
| push_error |
[const]
Get error message associated with push operation.
void report_update (const IfTreeInterface& fi,
bool is_all_interfaces_reportee)
| report_update |
Check IfTreeInterface and report updates to IfConfigUpdateReporter.
Check IfTreeVif and report updates to IfConfigUpdateReporter.
Check IfTreeAddr4 and report updates to IfConfigUpdateReporter.
Check IfTreeAddr6 and report updates to IfConfigUpdateReporter.
void report_updates (const IfTree& it, bool is_all_interfaces_reportee)
| report_updates |
Check every item within IfTree and report updates to
IfConfigUpdateReporter.
void map_ifindex (uint32_t index, const string& name)
| map_ifindex |
void unmap_ifindex (uint32_t index)
| unmap_ifindex |
const char* get_ifname (uint32_t index)
| get_ifname |
Generated by: pavlin on possum.icir.org on Mon Jun 9 13:23:54 2003, using kdoc 2.0a54+XORP. |