|
xorp
|
00001 /* 00002 * obj/i686-pc-linux-gnu/xrl/interfaces/rib_xif.hh 00003 * vim:set sts=4 ts=8 ft=cpp: 00004 * 00005 * Copyright (c) 2001-2010 XORP, Inc and Others 00006 * See the XORP LICENSE.lgpl file for licensing, conditions, and warranties 00007 * on use. 00008 * 00009 * DO NOT EDIT THIS FILE - IT IS PROGRAMMATICALLY GENERATED 00010 * 00011 * Generated by 'clnt-gen'. 00012 */ 00013 00014 #ifndef __XRL_INTERFACES_RIB_XIF_HH__ 00015 #define __XRL_INTERFACES_RIB_XIF_HH__ 00016 00017 #undef XORP_LIBRARY_NAME 00018 #define XORP_LIBRARY_NAME "XifRib" 00019 00020 #include "libxorp/xlog.h" 00021 #include "libxorp/callback.hh" 00022 00023 #include "libxipc/xrl.hh" 00024 #include "libxipc/xrl_error.hh" 00025 #include "libxipc/xrl_sender.hh" 00026 00027 //#include <memory> 00028 00029 class XrlRibV0p1Client { 00030 public: 00031 XrlRibV0p1Client(XrlSender* s) : _sender(s) {} 00032 virtual ~XrlRibV0p1Client() {} 00033 00034 typedef XorpCallback1<void, const XrlError&>::RefPtr EnableRibCB; 00042 bool send_enable_rib( 00043 const char* dst_xrl_target_name, 00044 const EnableRibCB& cb 00045 ); 00046 00047 typedef XorpCallback1<void, const XrlError&>::RefPtr DisableRibCB; 00048 00049 bool send_disable_rib( 00050 const char* dst_xrl_target_name, 00051 const DisableRibCB& cb 00052 ); 00053 00054 typedef XorpCallback1<void, const XrlError&>::RefPtr StartRibCB; 00055 00056 bool send_start_rib( 00057 const char* dst_xrl_target_name, 00058 const StartRibCB& cb 00059 ); 00060 00061 typedef XorpCallback1<void, const XrlError&>::RefPtr StopRibCB; 00062 00063 bool send_stop_rib( 00064 const char* dst_xrl_target_name, 00065 const StopRibCB& cb 00066 ); 00067 00068 typedef XorpCallback1<void, const XrlError&>::RefPtr MakeErrorsFatalCB; 00076 bool send_make_errors_fatal( 00077 const char* dst_xrl_target_name, 00078 const MakeErrorsFatalCB& cb 00079 ); 00080 00081 typedef XorpCallback5<void, const XrlError&, const XrlAtomList*, const XrlAtomList*, const XrlAtomList*, const XrlAtomList*>::RefPtr GetRegisteredProtocolsCB; 00099 bool send_get_registered_protocols( 00100 const char* dst_xrl_target_name, 00101 const bool& ipv4, 00102 const bool& ipv6, 00103 const bool& unicast, 00104 const bool& multicast, 00105 const GetRegisteredProtocolsCB& cb 00106 ); 00107 00108 typedef XorpCallback1<void, const XrlError&>::RefPtr AddIgpTable4CB; 00126 bool send_add_igp_table4( 00127 const char* dst_xrl_target_name, 00128 const string& protocol, 00129 const string& target_class, 00130 const string& target_instance, 00131 const bool& unicast, 00132 const bool& multicast, 00133 const AddIgpTable4CB& cb 00134 ); 00135 00136 typedef XorpCallback1<void, const XrlError&>::RefPtr DeleteIgpTable4CB; 00137 00138 bool send_delete_igp_table4( 00139 const char* dst_xrl_target_name, 00140 const string& protocol, 00141 const string& target_class, 00142 const string& target_instance, 00143 const bool& unicast, 00144 const bool& multicast, 00145 const DeleteIgpTable4CB& cb 00146 ); 00147 00148 typedef XorpCallback1<void, const XrlError&>::RefPtr AddEgpTable4CB; 00149 00150 bool send_add_egp_table4( 00151 const char* dst_xrl_target_name, 00152 const string& protocol, 00153 const string& target_class, 00154 const string& target_instance, 00155 const bool& unicast, 00156 const bool& multicast, 00157 const AddEgpTable4CB& cb 00158 ); 00159 00160 typedef XorpCallback1<void, const XrlError&>::RefPtr DeleteEgpTable4CB; 00161 00162 bool send_delete_egp_table4( 00163 const char* dst_xrl_target_name, 00164 const string& protocol, 00165 const string& target_class, 00166 const string& target_instance, 00167 const bool& unicast, 00168 const bool& multicast, 00169 const DeleteEgpTable4CB& cb 00170 ); 00171 00172 typedef XorpCallback1<void, const XrlError&>::RefPtr AddRoute4CB; 00195 bool send_add_route4( 00196 const char* dst_xrl_target_name, 00197 const string& protocol, 00198 const bool& unicast, 00199 const bool& multicast, 00200 const IPv4Net& network, 00201 const IPv4& nexthop, 00202 const uint32_t& metric, 00203 const XrlAtomList& policytags, 00204 const AddRoute4CB& cb 00205 ); 00206 00207 typedef XorpCallback1<void, const XrlError&>::RefPtr ReplaceRoute4CB; 00208 00209 bool send_replace_route4( 00210 const char* dst_xrl_target_name, 00211 const string& protocol, 00212 const bool& unicast, 00213 const bool& multicast, 00214 const IPv4Net& network, 00215 const IPv4& nexthop, 00216 const uint32_t& metric, 00217 const XrlAtomList& policytags, 00218 const ReplaceRoute4CB& cb 00219 ); 00220 00221 typedef XorpCallback1<void, const XrlError&>::RefPtr DeleteRoute4CB; 00222 00223 bool send_delete_route4( 00224 const char* dst_xrl_target_name, 00225 const string& protocol, 00226 const bool& unicast, 00227 const bool& multicast, 00228 const IPv4Net& network, 00229 const DeleteRoute4CB& cb 00230 ); 00231 00232 typedef XorpCallback1<void, const XrlError&>::RefPtr AddInterfaceRoute4CB; 00262 bool send_add_interface_route4( 00263 const char* dst_xrl_target_name, 00264 const string& protocol, 00265 const bool& unicast, 00266 const bool& multicast, 00267 const IPv4Net& network, 00268 const IPv4& nexthop, 00269 const string& ifname, 00270 const string& vifname, 00271 const uint32_t& metric, 00272 const XrlAtomList& policytags, 00273 const AddInterfaceRoute4CB& cb 00274 ); 00275 00276 typedef XorpCallback1<void, const XrlError&>::RefPtr ReplaceInterfaceRoute4CB; 00277 00278 bool send_replace_interface_route4( 00279 const char* dst_xrl_target_name, 00280 const string& protocol, 00281 const bool& unicast, 00282 const bool& multicast, 00283 const IPv4Net& network, 00284 const IPv4& nexthop, 00285 const string& ifname, 00286 const string& vifname, 00287 const uint32_t& metric, 00288 const XrlAtomList& policytags, 00289 const ReplaceInterfaceRoute4CB& cb 00290 ); 00291 00292 typedef XorpCallback2<void, const XrlError&, const IPv4*>::RefPtr LookupRouteByDest4CB; 00306 bool send_lookup_route_by_dest4( 00307 const char* dst_xrl_target_name, 00308 const IPv4& addr, 00309 const bool& unicast, 00310 const bool& multicast, 00311 const LookupRouteByDest4CB& cb 00312 ); 00313 00314 typedef XorpCallback1<void, const XrlError&>::RefPtr NewVifCB; 00325 bool send_new_vif( 00326 const char* dst_xrl_target_name, 00327 const string& name, 00328 const NewVifCB& cb 00329 ); 00330 00331 typedef XorpCallback1<void, const XrlError&>::RefPtr AddVifAddr4CB; 00346 bool send_add_vif_addr4( 00347 const char* dst_xrl_target_name, 00348 const string& name, 00349 const IPv4& addr, 00350 const IPv4Net& subnet, 00351 const AddVifAddr4CB& cb 00352 ); 00353 00354 typedef XorpCallback1<void, const XrlError&>::RefPtr RedistEnable4CB; 00379 bool send_redist_enable4( 00380 const char* dst_xrl_target_name, 00381 const string& to_xrl_target, 00382 const string& from_protocol, 00383 const bool& unicast, 00384 const bool& multicast, 00385 const IPv4Net& network_prefix, 00386 const string& cookie, 00387 const RedistEnable4CB& cb 00388 ); 00389 00390 typedef XorpCallback1<void, const XrlError&>::RefPtr RedistDisable4CB; 00409 bool send_redist_disable4( 00410 const char* dst_xrl_target_name, 00411 const string& to_xrl_target, 00412 const string& from_protocol, 00413 const bool& unicast, 00414 const bool& multicast, 00415 const string& cookie, 00416 const RedistDisable4CB& cb 00417 ); 00418 00419 typedef XorpCallback1<void, const XrlError&>::RefPtr RedistTransactionEnable4CB; 00445 bool send_redist_transaction_enable4( 00446 const char* dst_xrl_target_name, 00447 const string& to_xrl_target, 00448 const string& from_protocol, 00449 const bool& unicast, 00450 const bool& multicast, 00451 const IPv4Net& network_prefix, 00452 const string& cookie, 00453 const RedistTransactionEnable4CB& cb 00454 ); 00455 00456 typedef XorpCallback1<void, const XrlError&>::RefPtr RedistTransactionDisable4CB; 00477 bool send_redist_transaction_disable4( 00478 const char* dst_xrl_target_name, 00479 const string& to_xrl_target, 00480 const string& from_protocol, 00481 const bool& unicast, 00482 const bool& multicast, 00483 const string& cookie, 00484 const RedistTransactionDisable4CB& cb 00485 ); 00486 00487 typedef XorpCallback7<void, const XrlError&, const bool*, const IPv4*, const uint32_t*, const uint32_t*, const IPv4*, const uint32_t*>::RefPtr RegisterInterest4CB; 00500 bool send_register_interest4( 00501 const char* dst_xrl_target_name, 00502 const string& target, 00503 const IPv4& addr, 00504 const RegisterInterest4CB& cb 00505 ); 00506 00507 typedef XorpCallback1<void, const XrlError&>::RefPtr DeregisterInterest4CB; 00523 bool send_deregister_interest4( 00524 const char* dst_xrl_target_name, 00525 const string& target, 00526 const IPv4& addr, 00527 const uint32_t& prefix_len, 00528 const DeregisterInterest4CB& cb 00529 ); 00530 00531 typedef XorpCallback1<void, const XrlError&>::RefPtr InsertPolicyRedistTagsCB; 00543 bool send_insert_policy_redist_tags( 00544 const char* dst_xrl_target_name, 00545 const string& protocol, 00546 const XrlAtomList& policytags, 00547 const InsertPolicyRedistTagsCB& cb 00548 ); 00549 00550 typedef XorpCallback1<void, const XrlError&>::RefPtr ResetPolicyRedistTagsCB; 00559 bool send_reset_policy_redist_tags( 00560 const char* dst_xrl_target_name, 00561 const ResetPolicyRedistTagsCB& cb 00562 ); 00563 00564 typedef XorpCallback3<void, const XrlError&, const XrlAtomList*, const XrlAtomList*>::RefPtr GetProtocolAdminDistancesCB; 00581 bool send_get_protocol_admin_distances( 00582 const char* dst_xrl_target_name, 00583 const bool& ipv4, 00584 const bool& unicast, 00585 const GetProtocolAdminDistancesCB& cb 00586 ); 00587 00588 typedef XorpCallback2<void, const XrlError&, const uint32_t*>::RefPtr GetProtocolAdminDistanceCB; 00605 bool send_get_protocol_admin_distance( 00606 const char* dst_xrl_target_name, 00607 const string& protocol, 00608 const bool& ipv4, 00609 const bool& unicast, 00610 const GetProtocolAdminDistanceCB& cb 00611 ); 00612 00613 typedef XorpCallback1<void, const XrlError&>::RefPtr SetProtocolAdminDistanceCB; 00633 bool send_set_protocol_admin_distance( 00634 const char* dst_xrl_target_name, 00635 const string& protocol, 00636 const bool& ipv4, 00637 const bool& ipv6, 00638 const bool& unicast, 00639 const bool& multicast, 00640 const uint32_t& admin_distance, 00641 const SetProtocolAdminDistanceCB& cb 00642 ); 00643 00644 typedef XorpCallback1<void, const XrlError&>::RefPtr AddIgpTable6CB; 00645 00646 bool send_add_igp_table6( 00647 const char* dst_xrl_target_name, 00648 const string& protocol, 00649 const string& target_class, 00650 const string& target_instance, 00651 const bool& unicast, 00652 const bool& multicast, 00653 const AddIgpTable6CB& cb 00654 ); 00655 00656 typedef XorpCallback1<void, const XrlError&>::RefPtr DeleteIgpTable6CB; 00657 00658 bool send_delete_igp_table6( 00659 const char* dst_xrl_target_name, 00660 const string& protocol, 00661 const string& target_class, 00662 const string& target_instance, 00663 const bool& unicast, 00664 const bool& multicast, 00665 const DeleteIgpTable6CB& cb 00666 ); 00667 00668 typedef XorpCallback1<void, const XrlError&>::RefPtr AddEgpTable6CB; 00669 00670 bool send_add_egp_table6( 00671 const char* dst_xrl_target_name, 00672 const string& protocol, 00673 const string& target_class, 00674 const string& target_instance, 00675 const bool& unicast, 00676 const bool& multicast, 00677 const AddEgpTable6CB& cb 00678 ); 00679 00680 typedef XorpCallback1<void, const XrlError&>::RefPtr DeleteEgpTable6CB; 00681 00682 bool send_delete_egp_table6( 00683 const char* dst_xrl_target_name, 00684 const string& protocol, 00685 const string& target_class, 00686 const string& target_instance, 00687 const bool& unicast, 00688 const bool& multicast, 00689 const DeleteEgpTable6CB& cb 00690 ); 00691 00692 typedef XorpCallback1<void, const XrlError&>::RefPtr AddRoute6CB; 00693 00694 bool send_add_route6( 00695 const char* dst_xrl_target_name, 00696 const string& protocol, 00697 const bool& unicast, 00698 const bool& multicast, 00699 const IPv6Net& network, 00700 const IPv6& nexthop, 00701 const uint32_t& metric, 00702 const XrlAtomList& policytags, 00703 const AddRoute6CB& cb 00704 ); 00705 00706 typedef XorpCallback1<void, const XrlError&>::RefPtr ReplaceRoute6CB; 00707 00708 bool send_replace_route6( 00709 const char* dst_xrl_target_name, 00710 const string& protocol, 00711 const bool& unicast, 00712 const bool& multicast, 00713 const IPv6Net& network, 00714 const IPv6& nexthop, 00715 const uint32_t& metric, 00716 const XrlAtomList& policytags, 00717 const ReplaceRoute6CB& cb 00718 ); 00719 00720 typedef XorpCallback1<void, const XrlError&>::RefPtr DeleteRoute6CB; 00721 00722 bool send_delete_route6( 00723 const char* dst_xrl_target_name, 00724 const string& protocol, 00725 const bool& unicast, 00726 const bool& multicast, 00727 const IPv6Net& network, 00728 const DeleteRoute6CB& cb 00729 ); 00730 00731 typedef XorpCallback1<void, const XrlError&>::RefPtr AddInterfaceRoute6CB; 00732 00733 bool send_add_interface_route6( 00734 const char* dst_xrl_target_name, 00735 const string& protocol, 00736 const bool& unicast, 00737 const bool& multicast, 00738 const IPv6Net& network, 00739 const IPv6& nexthop, 00740 const string& ifname, 00741 const string& vifname, 00742 const uint32_t& metric, 00743 const XrlAtomList& policytags, 00744 const AddInterfaceRoute6CB& cb 00745 ); 00746 00747 typedef XorpCallback1<void, const XrlError&>::RefPtr ReplaceInterfaceRoute6CB; 00748 00749 bool send_replace_interface_route6( 00750 const char* dst_xrl_target_name, 00751 const string& protocol, 00752 const bool& unicast, 00753 const bool& multicast, 00754 const IPv6Net& network, 00755 const IPv6& nexthop, 00756 const string& ifname, 00757 const string& vifname, 00758 const uint32_t& metric, 00759 const XrlAtomList& policytags, 00760 const ReplaceInterfaceRoute6CB& cb 00761 ); 00762 00763 typedef XorpCallback2<void, const XrlError&, const IPv6*>::RefPtr LookupRouteByDest6CB; 00777 bool send_lookup_route_by_dest6( 00778 const char* dst_xrl_target_name, 00779 const IPv6& addr, 00780 const bool& unicast, 00781 const bool& multicast, 00782 const LookupRouteByDest6CB& cb 00783 ); 00784 00785 typedef XorpCallback1<void, const XrlError&>::RefPtr AddVifAddr6CB; 00786 00787 bool send_add_vif_addr6( 00788 const char* dst_xrl_target_name, 00789 const string& name, 00790 const IPv6& addr, 00791 const IPv6Net& subnet, 00792 const AddVifAddr6CB& cb 00793 ); 00794 00795 typedef XorpCallback1<void, const XrlError&>::RefPtr RedistEnable6CB; 00820 bool send_redist_enable6( 00821 const char* dst_xrl_target_name, 00822 const string& to_xrl_target, 00823 const string& from_protocol, 00824 const bool& unicast, 00825 const bool& multicast, 00826 const IPv6Net& network_prefix, 00827 const string& cookie, 00828 const RedistEnable6CB& cb 00829 ); 00830 00831 typedef XorpCallback1<void, const XrlError&>::RefPtr RedistDisable6CB; 00850 bool send_redist_disable6( 00851 const char* dst_xrl_target_name, 00852 const string& to_xrl_target, 00853 const string& from_protocol, 00854 const bool& unicast, 00855 const bool& multicast, 00856 const string& cookie, 00857 const RedistDisable6CB& cb 00858 ); 00859 00860 typedef XorpCallback1<void, const XrlError&>::RefPtr RedistTransactionEnable6CB; 00886 bool send_redist_transaction_enable6( 00887 const char* dst_xrl_target_name, 00888 const string& to_xrl_target, 00889 const string& from_protocol, 00890 const bool& unicast, 00891 const bool& multicast, 00892 const IPv6Net& network_prefix, 00893 const string& cookie, 00894 const RedistTransactionEnable6CB& cb 00895 ); 00896 00897 typedef XorpCallback1<void, const XrlError&>::RefPtr RedistTransactionDisable6CB; 00918 bool send_redist_transaction_disable6( 00919 const char* dst_xrl_target_name, 00920 const string& to_xrl_target, 00921 const string& from_protocol, 00922 const bool& unicast, 00923 const bool& multicast, 00924 const string& cookie, 00925 const RedistTransactionDisable6CB& cb 00926 ); 00927 00928 typedef XorpCallback7<void, const XrlError&, const bool*, const IPv6*, const uint32_t*, const uint32_t*, const IPv6*, const uint32_t*>::RefPtr RegisterInterest6CB; 00941 bool send_register_interest6( 00942 const char* dst_xrl_target_name, 00943 const string& target, 00944 const IPv6& addr, 00945 const RegisterInterest6CB& cb 00946 ); 00947 00948 typedef XorpCallback1<void, const XrlError&>::RefPtr DeregisterInterest6CB; 00964 bool send_deregister_interest6( 00965 const char* dst_xrl_target_name, 00966 const string& target, 00967 const IPv6& addr, 00968 const uint32_t& prefix_len, 00969 const DeregisterInterest6CB& cb 00970 ); 00971 00972 protected: 00973 XrlSender* _sender; 00974 00975 private: 00976 static void unmarshall_enable_rib( 00977 const XrlError& e, 00978 XrlArgs* a, 00979 EnableRibCB cb 00980 ); 00981 00982 static void unmarshall_disable_rib( 00983 const XrlError& e, 00984 XrlArgs* a, 00985 DisableRibCB cb 00986 ); 00987 00988 static void unmarshall_start_rib( 00989 const XrlError& e, 00990 XrlArgs* a, 00991 StartRibCB cb 00992 ); 00993 00994 static void unmarshall_stop_rib( 00995 const XrlError& e, 00996 XrlArgs* a, 00997 StopRibCB cb 00998 ); 00999 01000 static void unmarshall_make_errors_fatal( 01001 const XrlError& e, 01002 XrlArgs* a, 01003 MakeErrorsFatalCB cb 01004 ); 01005 01006 static void unmarshall_get_registered_protocols( 01007 const XrlError& e, 01008 XrlArgs* a, 01009 GetRegisteredProtocolsCB cb 01010 ); 01011 01012 static void unmarshall_add_igp_table4( 01013 const XrlError& e, 01014 XrlArgs* a, 01015 AddIgpTable4CB cb 01016 ); 01017 01018 static void unmarshall_delete_igp_table4( 01019 const XrlError& e, 01020 XrlArgs* a, 01021 DeleteIgpTable4CB cb 01022 ); 01023 01024 static void unmarshall_add_egp_table4( 01025 const XrlError& e, 01026 XrlArgs* a, 01027 AddEgpTable4CB cb 01028 ); 01029 01030 static void unmarshall_delete_egp_table4( 01031 const XrlError& e, 01032 XrlArgs* a, 01033 DeleteEgpTable4CB cb 01034 ); 01035 01036 static void unmarshall_add_route4( 01037 const XrlError& e, 01038 XrlArgs* a, 01039 AddRoute4CB cb 01040 ); 01041 01042 static void unmarshall_replace_route4( 01043 const XrlError& e, 01044 XrlArgs* a, 01045 ReplaceRoute4CB cb 01046 ); 01047 01048 static void unmarshall_delete_route4( 01049 const XrlError& e, 01050 XrlArgs* a, 01051 DeleteRoute4CB cb 01052 ); 01053 01054 static void unmarshall_add_interface_route4( 01055 const XrlError& e, 01056 XrlArgs* a, 01057 AddInterfaceRoute4CB cb 01058 ); 01059 01060 static void unmarshall_replace_interface_route4( 01061 const XrlError& e, 01062 XrlArgs* a, 01063 ReplaceInterfaceRoute4CB cb 01064 ); 01065 01066 static void unmarshall_lookup_route_by_dest4( 01067 const XrlError& e, 01068 XrlArgs* a, 01069 LookupRouteByDest4CB cb 01070 ); 01071 01072 static void unmarshall_new_vif( 01073 const XrlError& e, 01074 XrlArgs* a, 01075 NewVifCB cb 01076 ); 01077 01078 static void unmarshall_add_vif_addr4( 01079 const XrlError& e, 01080 XrlArgs* a, 01081 AddVifAddr4CB cb 01082 ); 01083 01084 static void unmarshall_redist_enable4( 01085 const XrlError& e, 01086 XrlArgs* a, 01087 RedistEnable4CB cb 01088 ); 01089 01090 static void unmarshall_redist_disable4( 01091 const XrlError& e, 01092 XrlArgs* a, 01093 RedistDisable4CB cb 01094 ); 01095 01096 static void unmarshall_redist_transaction_enable4( 01097 const XrlError& e, 01098 XrlArgs* a, 01099 RedistTransactionEnable4CB cb 01100 ); 01101 01102 static void unmarshall_redist_transaction_disable4( 01103 const XrlError& e, 01104 XrlArgs* a, 01105 RedistTransactionDisable4CB cb 01106 ); 01107 01108 static void unmarshall_register_interest4( 01109 const XrlError& e, 01110 XrlArgs* a, 01111 RegisterInterest4CB cb 01112 ); 01113 01114 static void unmarshall_deregister_interest4( 01115 const XrlError& e, 01116 XrlArgs* a, 01117 DeregisterInterest4CB cb 01118 ); 01119 01120 static void unmarshall_insert_policy_redist_tags( 01121 const XrlError& e, 01122 XrlArgs* a, 01123 InsertPolicyRedistTagsCB cb 01124 ); 01125 01126 static void unmarshall_reset_policy_redist_tags( 01127 const XrlError& e, 01128 XrlArgs* a, 01129 ResetPolicyRedistTagsCB cb 01130 ); 01131 01132 static void unmarshall_get_protocol_admin_distances( 01133 const XrlError& e, 01134 XrlArgs* a, 01135 GetProtocolAdminDistancesCB cb 01136 ); 01137 01138 static void unmarshall_get_protocol_admin_distance( 01139 const XrlError& e, 01140 XrlArgs* a, 01141 GetProtocolAdminDistanceCB cb 01142 ); 01143 01144 static void unmarshall_set_protocol_admin_distance( 01145 const XrlError& e, 01146 XrlArgs* a, 01147 SetProtocolAdminDistanceCB cb 01148 ); 01149 01150 static void unmarshall_add_igp_table6( 01151 const XrlError& e, 01152 XrlArgs* a, 01153 AddIgpTable6CB cb 01154 ); 01155 01156 static void unmarshall_delete_igp_table6( 01157 const XrlError& e, 01158 XrlArgs* a, 01159 DeleteIgpTable6CB cb 01160 ); 01161 01162 static void unmarshall_add_egp_table6( 01163 const XrlError& e, 01164 XrlArgs* a, 01165 AddEgpTable6CB cb 01166 ); 01167 01168 static void unmarshall_delete_egp_table6( 01169 const XrlError& e, 01170 XrlArgs* a, 01171 DeleteEgpTable6CB cb 01172 ); 01173 01174 static void unmarshall_add_route6( 01175 const XrlError& e, 01176 XrlArgs* a, 01177 AddRoute6CB cb 01178 ); 01179 01180 static void unmarshall_replace_route6( 01181 const XrlError& e, 01182 XrlArgs* a, 01183 ReplaceRoute6CB cb 01184 ); 01185 01186 static void unmarshall_delete_route6( 01187 const XrlError& e, 01188 XrlArgs* a, 01189 DeleteRoute6CB cb 01190 ); 01191 01192 static void unmarshall_add_interface_route6( 01193 const XrlError& e, 01194 XrlArgs* a, 01195 AddInterfaceRoute6CB cb 01196 ); 01197 01198 static void unmarshall_replace_interface_route6( 01199 const XrlError& e, 01200 XrlArgs* a, 01201 ReplaceInterfaceRoute6CB cb 01202 ); 01203 01204 static void unmarshall_lookup_route_by_dest6( 01205 const XrlError& e, 01206 XrlArgs* a, 01207 LookupRouteByDest6CB cb 01208 ); 01209 01210 static void unmarshall_add_vif_addr6( 01211 const XrlError& e, 01212 XrlArgs* a, 01213 AddVifAddr6CB cb 01214 ); 01215 01216 static void unmarshall_redist_enable6( 01217 const XrlError& e, 01218 XrlArgs* a, 01219 RedistEnable6CB cb 01220 ); 01221 01222 static void unmarshall_redist_disable6( 01223 const XrlError& e, 01224 XrlArgs* a, 01225 RedistDisable6CB cb 01226 ); 01227 01228 static void unmarshall_redist_transaction_enable6( 01229 const XrlError& e, 01230 XrlArgs* a, 01231 RedistTransactionEnable6CB cb 01232 ); 01233 01234 static void unmarshall_redist_transaction_disable6( 01235 const XrlError& e, 01236 XrlArgs* a, 01237 RedistTransactionDisable6CB cb 01238 ); 01239 01240 static void unmarshall_register_interest6( 01241 const XrlError& e, 01242 XrlArgs* a, 01243 RegisterInterest6CB cb 01244 ); 01245 01246 static void unmarshall_deregister_interest6( 01247 const XrlError& e, 01248 XrlArgs* a, 01249 DeregisterInterest6CB cb 01250 ); 01251 01252 private: 01253 /* Declare cached Xrl pointers */ 01254 auto_ptr<Xrl> ap_xrl_enable_rib; 01255 auto_ptr<Xrl> ap_xrl_disable_rib; 01256 auto_ptr<Xrl> ap_xrl_start_rib; 01257 auto_ptr<Xrl> ap_xrl_stop_rib; 01258 auto_ptr<Xrl> ap_xrl_make_errors_fatal; 01259 auto_ptr<Xrl> ap_xrl_get_registered_protocols; 01260 auto_ptr<Xrl> ap_xrl_add_igp_table4; 01261 auto_ptr<Xrl> ap_xrl_delete_igp_table4; 01262 auto_ptr<Xrl> ap_xrl_add_egp_table4; 01263 auto_ptr<Xrl> ap_xrl_delete_egp_table4; 01264 auto_ptr<Xrl> ap_xrl_add_route4; 01265 auto_ptr<Xrl> ap_xrl_replace_route4; 01266 auto_ptr<Xrl> ap_xrl_delete_route4; 01267 auto_ptr<Xrl> ap_xrl_add_interface_route4; 01268 auto_ptr<Xrl> ap_xrl_replace_interface_route4; 01269 auto_ptr<Xrl> ap_xrl_lookup_route_by_dest4; 01270 auto_ptr<Xrl> ap_xrl_new_vif; 01271 auto_ptr<Xrl> ap_xrl_add_vif_addr4; 01272 auto_ptr<Xrl> ap_xrl_redist_enable4; 01273 auto_ptr<Xrl> ap_xrl_redist_disable4; 01274 auto_ptr<Xrl> ap_xrl_redist_transaction_enable4; 01275 auto_ptr<Xrl> ap_xrl_redist_transaction_disable4; 01276 auto_ptr<Xrl> ap_xrl_register_interest4; 01277 auto_ptr<Xrl> ap_xrl_deregister_interest4; 01278 auto_ptr<Xrl> ap_xrl_insert_policy_redist_tags; 01279 auto_ptr<Xrl> ap_xrl_reset_policy_redist_tags; 01280 auto_ptr<Xrl> ap_xrl_get_protocol_admin_distances; 01281 auto_ptr<Xrl> ap_xrl_get_protocol_admin_distance; 01282 auto_ptr<Xrl> ap_xrl_set_protocol_admin_distance; 01283 auto_ptr<Xrl> ap_xrl_add_igp_table6; 01284 auto_ptr<Xrl> ap_xrl_delete_igp_table6; 01285 auto_ptr<Xrl> ap_xrl_add_egp_table6; 01286 auto_ptr<Xrl> ap_xrl_delete_egp_table6; 01287 auto_ptr<Xrl> ap_xrl_add_route6; 01288 auto_ptr<Xrl> ap_xrl_replace_route6; 01289 auto_ptr<Xrl> ap_xrl_delete_route6; 01290 auto_ptr<Xrl> ap_xrl_add_interface_route6; 01291 auto_ptr<Xrl> ap_xrl_replace_interface_route6; 01292 auto_ptr<Xrl> ap_xrl_lookup_route_by_dest6; 01293 auto_ptr<Xrl> ap_xrl_add_vif_addr6; 01294 auto_ptr<Xrl> ap_xrl_redist_enable6; 01295 auto_ptr<Xrl> ap_xrl_redist_disable6; 01296 auto_ptr<Xrl> ap_xrl_redist_transaction_enable6; 01297 auto_ptr<Xrl> ap_xrl_redist_transaction_disable6; 01298 auto_ptr<Xrl> ap_xrl_register_interest6; 01299 auto_ptr<Xrl> ap_xrl_deregister_interest6; 01300 }; 01301 01302 #endif /* __XRL_INTERFACES_RIB_XIF_HH__ */