[Xorp-cvs] SF.net SVN: xorp:[11668] trunk/xorp/xrl/interfaces
bms_fbsd at users.sourceforge.net
bms_fbsd at users.sourceforge.net
Thu Dec 3 15:39:30 PST 2009
Revision: 11668
http://xorp.svn.sourceforge.net/xorp/?rev=11668&view=rev
Author: bms_fbsd
Date: 2009-12-03 23:39:30 +0000 (Thu, 03 Dec 2009)
Log Message:
-----------
Add explicit member type specifiers to all 'list' arguments/return values
in XORP's XIF IDL definitions.
This will later be used by Thrifted stub generation and translations.
Implementation note:
XrlAtomList is NOT a variant collection. It just happens to allow
those semantics in certain circumstances. The XORP code base actually
requires it holds a single type.
Thrift collections are not variant containers, and require that their
type be known upfront, therefore to make interworking possible,
we need to make this explicit in XIF IDL.
Obtained from: xorp-thrift branch
Modified Paths:
--------------
trunk/xorp/xrl/interfaces/fea_ifmgr.xif
trunk/xorp/xrl/interfaces/fea_rawpkt6.xif
trunk/xorp/xrl/interfaces/fea_rawpkt6_client.xif
trunk/xorp/xrl/interfaces/finder.xif
trunk/xorp/xrl/interfaces/olsr4.xif
trunk/xorp/xrl/interfaces/ospfv2.xif
trunk/xorp/xrl/interfaces/ospfv3.xif
trunk/xorp/xrl/interfaces/pim.xif
trunk/xorp/xrl/interfaces/policy_redist4.xif
trunk/xorp/xrl/interfaces/policy_redist6.xif
trunk/xorp/xrl/interfaces/rib.xif
trunk/xorp/xrl/interfaces/rip.xif
trunk/xorp/xrl/interfaces/ripng.xif
trunk/xorp/xrl/interfaces/rtrmgr.xif
trunk/xorp/xrl/interfaces/test_xrls.xif
trunk/xorp/xrl/interfaces/vrrp.xif
Modified: trunk/xorp/xrl/interfaces/fea_ifmgr.xif
===================================================================
--- trunk/xorp/xrl/interfaces/fea_ifmgr.xif 2009-12-03 23:22:37 UTC (rev 11667)
+++ trunk/xorp/xrl/interfaces/fea_ifmgr.xif 2009-12-03 23:39:30 UTC (rev 11668)
@@ -7,9 +7,9 @@
interface ifmgr/0.1 {
set_restore_original_config_on_shutdown ? enable:bool
- get_configured_interface_names -> ifnames:list
+ get_configured_interface_names -> ifnames:list<txt>
- get_configured_vif_names ? ifname:txt -> vifs:list
+ get_configured_vif_names ? ifname:txt -> vifs:list<txt>
get_configured_vif_flags ? ifname:txt \
& vif:txt \
@@ -23,9 +23,11 @@
& vif:txt \
-> pif_index:u32
- get_configured_vif_addresses4 ? ifname:txt & vif:txt -> addresses:list
+ get_configured_vif_addresses4 ? ifname:txt & vif:txt \
+ -> addresses:list<ipv4>
- get_configured_vif_addresses6 ? ifname:txt & vif:txt -> addresses:list
+ get_configured_vif_addresses6 ? ifname:txt & vif:txt \
+ -> addresses:list<ipv4>
get_configured_address_flags4 ? ifname:txt \
& vif:txt \
Modified: trunk/xorp/xrl/interfaces/fea_rawpkt6.xif
===================================================================
--- trunk/xorp/xrl/interfaces/fea_rawpkt6.xif 2009-12-03 23:22:37 UTC (rev 11667)
+++ trunk/xorp/xrl/interfaces/fea_rawpkt6.xif 2009-12-03 23:39:30 UTC (rev 11668)
@@ -42,8 +42,8 @@
& ip_tos:i32 \
& ip_router_alert:bool \
& ip_internet_control:bool \
- & ext_headers_type:list \
- & ext_headers_payload:list \
+ & ext_headers_type:list<u32> \
+ & ext_headers_payload:list<binary> \
& payload:binary
/**
Modified: trunk/xorp/xrl/interfaces/fea_rawpkt6_client.xif
===================================================================
--- trunk/xorp/xrl/interfaces/fea_rawpkt6_client.xif 2009-12-03 23:22:37 UTC (rev 11667)
+++ trunk/xorp/xrl/interfaces/fea_rawpkt6_client.xif 2009-12-03 23:39:30 UTC (rev 11668)
@@ -38,7 +38,7 @@
& ip_tos:i32 \
& ip_router_alert:bool \
& ip_internet_control:bool \
- & ext_headers_type:list \
- & ext_headers_payload:list \
+ & ext_headers_type:list<u32> \
+ & ext_headers_payload:list<binary> \
& payload:binary
}
Modified: trunk/xorp/xrl/interfaces/finder.xif
===================================================================
--- trunk/xorp/xrl/interfaces/finder.xif 2009-12-03 23:22:37 UTC (rev 11667)
+++ trunk/xorp/xrl/interfaces/finder.xif 2009-12-03 23:39:30 UTC (rev 11668)
@@ -52,39 +52,39 @@
/**
* Resolve Xrl
*/
- resolve_xrl ? xrl:txt -> resolutions:list
+ resolve_xrl ? xrl:txt -> resolutions:list<txt>
/**
* Get list of registered Xrl targets
*/
- get_xrl_targets -> target_names:list
+ get_xrl_targets -> target_names:list<txt>
/**
* Get list of Xrls registered by target
*/
- get_xrls_registered_by ? target_name:txt -> xrls:list
+ get_xrls_registered_by ? target_name:txt -> xrls:list<txt>
/**
* Get list of IPv4 hosts that clients should accept IPC requests
* from.
*/
- get_ipv4_permitted_hosts -> ipv4s:list
+ get_ipv4_permitted_hosts -> ipv4s:list<ipv4>
/**
* Get list of IPv4 nets that clients should accept IPC requests
* from.
*/
- get_ipv4_permitted_nets -> ipv4nets:list
+ get_ipv4_permitted_nets -> ipv4nets:list<ipv4net>
/**
* Get list of IPv6 hosts that clients should accept IPC requests
* from.
*/
- get_ipv6_permitted_hosts -> ipv6s:list
+ get_ipv6_permitted_hosts -> ipv6s:list<ipv6>
/**
* Get list of IPv6 nets that clients should accept IPC requests
* from.
*/
- get_ipv6_permitted_nets -> ipv6nets:list
+ get_ipv6_permitted_nets -> ipv6nets:list<ipv6net>
}
Modified: trunk/xorp/xrl/interfaces/olsr4.xif
===================================================================
--- trunk/xorp/xrl/interfaces/olsr4.xif 2009-12-03 23:22:37 UTC (rev 11667)
+++ trunk/xorp/xrl/interfaces/olsr4.xif 2009-12-03 23:39:30 UTC (rev 11668)
@@ -298,7 +298,7 @@
* Return a list of u32 type values. Each value is an internal
* ID that can be used with the get_interface_info XRL.
*/
- get_interface_list -> interfaces:list
+ get_interface_list -> interfaces:list<u32>
/**
* Get the per-interface information for the given interface.
@@ -369,7 +369,7 @@
* Return a list of u32 type values. Each value is an internal
* ID that can be used with the get_link_info XRL.
*/
- get_link_list -> links:list
+ get_link_list -> links:list<u32>
/**
* Get the information for a one-hop link.
@@ -405,7 +405,7 @@
* Return a list of u32 type values. Each value is an internal
* ID that can be used with the get_neighbor_info XRL.
*/
- get_neighbor_list -> neighbors:list
+ get_neighbor_list -> neighbors:list<u32>
/**
* Get the information for a one-hop neighbor.
@@ -444,7 +444,7 @@
* Return a list of u32 type values. Each value is an internal
* ID that can be used with the get_twohop_link_info XRL.
*/
- get_twohop_link_list -> twohop_links:list
+ get_twohop_link_list -> twohop_links:list<u32>
/**
* Get the information for a two-hop link.
@@ -472,7 +472,7 @@
* Return a list of u32 type values. Each value is an internal
* ID that can be used with the get_twohop_neighbor_info XRL.
*/
- get_twohop_neighbor_list -> twohop_neighbors:list
+ get_twohop_neighbor_list -> twohop_neighbors:list<u32>
/**
* Get the information for a two-hop neighbor.
@@ -503,7 +503,7 @@
* Return a list of u32 type values. Each value is an internal
* ID that can be used with the get_mid_entry XRL.
*/
- get_mid_entry_list -> mid_entries:list
+ get_mid_entry_list -> mid_entries:list<u32>
/**
* Get the information contained in a MID entry.
@@ -528,7 +528,7 @@
* Return a list of u32 type values. Each value is an internal
* ID that can be used with the get_tc_entry XRL.
*/
- get_tc_entry_list -> tc_entries:list
+ get_tc_entry_list -> tc_entries:list<u32>
/**
* Get the information contained in a TC entry.
@@ -555,7 +555,7 @@
* Return a list of u32 type values. Each value is an internal
* ID that can be used with the get_hna_entry XRL.
*/
- get_hna_entry_list -> hna_entries:list
+ get_hna_entry_list -> hna_entries:list<u32>
/**
* Get the information contained in a HNA entry.
Modified: trunk/xorp/xrl/interfaces/ospfv2.xif
===================================================================
--- trunk/xorp/xrl/interfaces/ospfv2.xif 2009-12-03 23:22:37 UTC (rev 11667)
+++ trunk/xorp/xrl/interfaces/ospfv2.xif 2009-12-03 23:39:30 UTC (rev 11668)
@@ -328,7 +328,7 @@
*
* Return a list of u32 type values. Each value is an area ID.
*/
- get_area_list -> areas:list
+ get_area_list -> areas:list<u32>
/**
* Get the list of neighbours.
@@ -336,7 +336,7 @@
* Return a list of u32 type values. Each value is an internal
* identifier that can be used with the get_neighbour_info XRL.
*/
- get_neighbour_list -> areas:list
+ get_neighbour_list -> areas:list<u32>
/**
* Get information on a neighbour.
Modified: trunk/xorp/xrl/interfaces/ospfv3.xif
===================================================================
--- trunk/xorp/xrl/interfaces/ospfv3.xif 2009-12-03 23:22:37 UTC (rev 11667)
+++ trunk/xorp/xrl/interfaces/ospfv3.xif 2009-12-03 23:39:30 UTC (rev 11668)
@@ -305,7 +305,7 @@
*
* Return a list of u32 type values. Each value is an area ID.
*/
- get_area_list -> areas:list
+ get_area_list -> areas:list<u32>
/**
* Get the list of neighbours.
@@ -313,7 +313,7 @@
* Return a list of u32 type values. Each value is an internal
* identifier that can be used with the get_neighbour_info XRL.
*/
- get_neighbour_list -> areas:list
+ get_neighbour_list -> areas:list<u32>
/**
* Get information on a neighbour.
Modified: trunk/xorp/xrl/interfaces/pim.xif
===================================================================
--- trunk/xorp/xrl/interfaces/pim.xif 2009-12-03 23:22:37 UTC (rev 11667)
+++ trunk/xorp/xrl/interfaces/pim.xif 2009-12-03 23:39:30 UTC (rev 11668)
@@ -435,21 +435,21 @@
* of all neighbors (one number per neighbor).
*/
pimstat_neighbors4 -> nbrs_number:u32 \
- & vifs:list \
- & addresses:list \
- & pim_versions:list \
- & dr_priorities:list \
- & holdtimes:list \
- & timeouts:list \
- & uptimes:list
+ & vifs:list<txt> \
+ & addresses:list<ipv4> \
+ & pim_versions:list<i32> \
+ & dr_priorities:list<i32> \
+ & holdtimes:list<i32> \
+ & timeouts:list<i32> \
+ & uptimes:list<i32>
pimstat_neighbors6 -> nbrs_number:u32 \
- & vifs:list \
- & addresses:list \
- & pim_versions:list \
- & dr_priorities:list \
- & holdtimes:list \
- & timeouts:list \
- & uptimes:list
+ & vifs:list<txt> \
+ & addresses:list<ipv6> \
+ & pim_versions:list<i32> \
+ & dr_priorities:list<i32> \
+ & holdtimes:list<i32> \
+ & timeouts:list<i32> \
+ & uptimes:list<i32>
/**
* Retrieve information about PIM interfaces.
@@ -497,20 +497,20 @@
* there will be a number of entries for that RP: one per group prefix.
*/
pimstat_rps4 -> rps_number:u32 \
- & addresses:list \
- & types:list \
- & priorities:list \
- & holdtimes:list \
- & timeouts:list \
- & group_prefixes:list
+ & addresses:list<ipv4> \
+ & types:list<txt> \
+ & priorities:list<i32> \
+ & holdtimes:list<i32> \
+ & timeouts:list<i32> \
+ & group_prefixes:list<ipv4net>
pimstat_rps6 -> rps_number:u32 \
- & addresses:list \
- & types:list \
- & priorities:list \
- & holdtimes:list \
- & timeouts:list \
- & group_prefixes:list
+ & addresses:list<ipv6> \
+ & types:list<txt> \
+ & priorities:list<i32> \
+ & holdtimes:list<i32> \
+ & timeouts:list<i32> \
+ & group_prefixes:list<ipv6net>
/**
* Clear all statistics
Modified: trunk/xorp/xrl/interfaces/policy_redist4.xif
===================================================================
--- trunk/xorp/xrl/interfaces/policy_redist4.xif 2009-12-03 23:22:37 UTC (rev 11667)
+++ trunk/xorp/xrl/interfaces/policy_redist4.xif 2009-12-03 23:39:30 UTC (rev 11668)
@@ -18,7 +18,7 @@
* @param policytags the set of policy-tags associated with the route.
*/
add_route4 ? network:ipv4net & unicast:bool & multicast:bool \
- & nexthop:ipv4 & metric:u32 & policytags:list
+ & nexthop:ipv4 & metric:u32 & policytags:list<u32>
/**
* Terminate route redistribution for an IPv4 route.
Modified: trunk/xorp/xrl/interfaces/policy_redist6.xif
===================================================================
--- trunk/xorp/xrl/interfaces/policy_redist6.xif 2009-12-03 23:22:37 UTC (rev 11667)
+++ trunk/xorp/xrl/interfaces/policy_redist6.xif 2009-12-03 23:39:30 UTC (rev 11668)
@@ -18,7 +18,7 @@
* @param policytags the set of policy-tags associated with the route.
*/
add_route6 ? network:ipv6net & unicast:bool & multicast:bool \
- & nexthop:ipv6 & metric:u32 & policytags:list
+ & nexthop:ipv6 & metric:u32 & policytags:list<u32>
/**
* Terminate route redistribution for an IPv6 route.
Modified: trunk/xorp/xrl/interfaces/rib.xif
===================================================================
--- trunk/xorp/xrl/interfaces/rib.xif 2009-12-03 23:22:37 UTC (rev 11667)
+++ trunk/xorp/xrl/interfaces/rib.xif 2009-12-03 23:39:30 UTC (rev 11668)
@@ -38,10 +38,10 @@
*/
get_registered_protocols ? ipv4:bool & ipv6:bool \
& unicast:bool & multicast:bool \
- -> ipv4_unicast_protocols:list \
- & ipv6_unicast_protocols:list \
- & ipv4_multicast_protocols:list \
- & ipv6_multicast_protocols:list
+ -> ipv4_unicast_protocols:list<txt> \
+ & ipv6_unicast_protocols:list<txt> \
+ & ipv4_multicast_protocols:list<txt> \
+ & ipv6_multicast_protocols:list<txt>
/**
* Add/delete an IGP or EGP table.
@@ -98,19 +98,19 @@
*/
add_route4 ? protocol:txt & unicast:bool & multicast:bool \
& network:ipv4net & nexthop:ipv4 & metric:u32 \
- & policytags:list
+ & policytags:list<u32>
add_route6 ? protocol:txt & unicast:bool & multicast:bool \
& network:ipv6net & nexthop:ipv6 & metric:u32 \
- & policytags:list
+ & policytags:list<u32>
replace_route4 ? protocol:txt & unicast:bool & multicast:bool \
& network:ipv4net & nexthop:ipv4 & metric:u32 \
- & policytags:list
+ & policytags:list<u32>
replace_route6 ? protocol:txt & unicast:bool & multicast:bool \
& network:ipv6net & nexthop:ipv6 & metric:u32 \
- & policytags:list
+ & policytags:list<u32>
delete_route4 ? protocol:txt & unicast:bool & multicast:bool \
& network:ipv4net
@@ -139,25 +139,25 @@
& unicast:bool & multicast:bool \
& network:ipv4net & nexthop:ipv4 \
& ifname:txt & vifname:txt & metric:u32 \
- & policytags:list
+ & policytags:list<u32>
add_interface_route6 ? protocol:txt \
& unicast:bool & multicast:bool \
& network:ipv6net & nexthop:ipv6 \
& ifname:txt & vifname:txt & metric:u32 \
- & policytags:list
+ & policytags:list<u32>
replace_interface_route4 ? protocol:txt \
& unicast:bool & multicast:bool \
& network:ipv4net & nexthop:ipv4 \
& ifname:txt & vifname:txt & metric:u32 \
- & policytags:list
+ & policytags:list<u32>
replace_interface_route6 ? protocol:txt \
& unicast:bool & multicast:bool \
& network:ipv6net & nexthop:ipv6 \
& ifname:txt & vifname:txt & metric:u32 \
- & policytags:list
+ & policytags:list<u32>
/**
* Lookup nexthop.
@@ -539,7 +539,7 @@
* @param policytags The set of policytags of interest for the protocol.
*
*/
- insert_policy_redist_tags ? protocol:txt & policytags:list
+ insert_policy_redist_tags ? protocol:txt & policytags:list<u32>
/**
* Reset the policy redistribution map.
@@ -564,8 +564,8 @@
*/
get_protocol_admin_distances ? ipv4:bool \
& unicast:bool \
- -> protocols:list \
- & admin_distances:list
+ -> protocols:list<txt> \
+ & admin_distances:list<u32>
/**
* Get administrative distance for an individual protocol in
Modified: trunk/xorp/xrl/interfaces/rip.xif
===================================================================
--- trunk/xorp/xrl/interfaces/rip.xif 2009-12-03 23:22:37 UTC (rev 11667)
+++ trunk/xorp/xrl/interfaces/rip.xif 2009-12-03 23:39:30 UTC (rev 11668)
@@ -349,9 +349,9 @@
/**
* Get addresses running RIP.
*/
- get_all_addresses -> ifnames:list \
- & vifnames:list \
- & addrs:list
+ get_all_addresses -> ifnames:list<txt> \
+ & vifnames:list<txt> \
+ & addrs:list<ipv4>
/**
* Get counters associated with interface / vif /address.
@@ -359,8 +359,8 @@
get_counters ? ifname:txt \
& vifname:txt \
& addr:ipv4 \
- -> counter_descriptions:list \
- & counter_values:list
+ -> counter_descriptions:list<txt> \
+ & counter_values:list<u32>
/**
* Get the list of peers associated with interface / vif / address.
@@ -368,16 +368,16 @@
get_peers ? ifname:txt \
& vifname:txt \
& addr:ipv4 \
- -> peers:list
+ -> peers:list<ipv4>
/**
* Get list of all peers known to RIP. There is a 1-to-1 correspondence
* between the items in the lists of peers, ifnames, vifnames, addrs.
*/
- get_all_peers -> peers:list \
- & ifnames:list \
- & vifnames:list \
- & addrs:list
+ get_all_peers -> peers:list<ipv4> \
+ & ifnames:list<txt> \
+ & vifnames:list<txt> \
+ & addrs:list<ipv4>
/**
* Get counters associated with peer of interface / vif /address.
@@ -390,8 +390,8 @@
& vifname:txt \
& addr:ipv4 \
& peer:ipv4 \
- -> counter_descriptions:list \
- & counter_values:list \
+ -> counter_descriptions:list<txt> \
+ & counter_values:list<u32> \
& peer_last_active:u32
/**
Modified: trunk/xorp/xrl/interfaces/ripng.xif
===================================================================
--- trunk/xorp/xrl/interfaces/ripng.xif 2009-12-03 23:22:37 UTC (rev 11667)
+++ trunk/xorp/xrl/interfaces/ripng.xif 2009-12-03 23:39:30 UTC (rev 11668)
@@ -294,9 +294,9 @@
/**
* Get addresses running RIP.
*/
- get_all_addresses -> ifnames:list \
- & vifnames:list \
- & addrs:list
+ get_all_addresses -> ifnames:list<txt> \
+ & vifnames:list<txt> \
+ & addrs:list<ipv6>
/**
* Get counters associated with interface / vif /address.
@@ -304,8 +304,8 @@
get_counters ? ifname:txt \
& vifname:txt \
& addr:ipv6 \
- -> counter_descriptions:list \
- & counter_values:list
+ -> counter_descriptions:list<txt> \
+ & counter_values:list<u32>
/**
* Get the list of peers associated with interface / vif / address.
@@ -313,16 +313,16 @@
get_peers ? ifname:txt \
& vifname:txt \
& addr:ipv6 \
- -> peers:list
+ -> peers:list<ipv6>
/**
* Get list of all peers known to RIP. There is a 1-to-1 correspondence
* between the items in the lists of peers, ifnames, vifnames, addrs.
*/
- get_all_peers -> peers:list \
- & ifnames:list \
- & vifnames:list \
- & addrs:list
+ get_all_peers -> peers:list<ipv6> \
+ & ifnames:list<txt> \
+ & vifnames:list<txt> \
+ & addrs:list<ipv6>
/**
* Get counters associated with peer of interface / vif /address.
@@ -335,8 +335,8 @@
& vifname:txt \
& addr:ipv6 \
& peer:ipv6 \
- -> counter_descriptions:list \
- & counter_values:list \
+ -> counter_descriptions:list<txt> \
+ & counter_values:list<u32> \
& peer_last_active:u32
/**
Modified: trunk/xorp/xrl/interfaces/rtrmgr.xif
===================================================================
--- trunk/xorp/xrl/interfaces/rtrmgr.xif 2009-12-03 23:22:37 UTC (rev 11667)
+++ trunk/xorp/xrl/interfaces/rtrmgr.xif 2009-12-03 23:39:30 UTC (rev 11668)
@@ -23,7 +23,7 @@
leave_config_mode ? token:txt
- get_config_users ? token:txt -> users:list
+ get_config_users ? token:txt -> users:list<u32>
get_running_config ? token:txt -> ready:bool & config:txt
Modified: trunk/xorp/xrl/interfaces/test_xrls.xif
===================================================================
--- trunk/xorp/xrl/interfaces/test_xrls.xif 2009-12-03 23:22:37 UTC (rev 11667)
+++ trunk/xorp/xrl/interfaces/test_xrls.xif 2009-12-03 23:39:30 UTC (rev 11668)
@@ -27,5 +27,6 @@
& data8:txt \
& data9:binary
- add_xrlX ? data:list
+ /* XXX: the list member type doesn't matter for this test. */
+ add_xrlX ? data:list<u32>
}
Modified: trunk/xorp/xrl/interfaces/vrrp.xif
===================================================================
--- trunk/xorp/xrl/interfaces/vrrp.xif 2009-12-03 23:22:37 UTC (rev 11667)
+++ trunk/xorp/xrl/interfaces/vrrp.xif 2009-12-03 23:39:30 UTC (rev 11668)
@@ -107,7 +107,7 @@
*
* @param ifs a list of interface names (strings).
*/
- get_ifs -> ifs:list
+ get_ifs -> ifs:list<txt>
/**
* For a given physical interface, get the virtual interfaces on which VRRP
@@ -117,7 +117,7 @@
* @param vifs a list of virtual interface names (strings).
*/
get_vifs ? ifname:txt \
- -> vifs:list
+ -> vifs:list<txt>
/**
* Get the virtual router IDs of all the VRRP instances running on a network
@@ -129,7 +129,7 @@
*/
get_vrids ? ifname:txt \
& vifname:txt \
- -> vrids:list
+ -> vrids:list<u32>
/**
* Get state information from a particular VRRP instance.
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Xorp-cvs
mailing list