[CI][doc][build] Trim src folder files trailing blanks (#15162)

- Run pre-commit tox profile to trim all trailing blanks
- Use several commits with a per-folder based strategy
  to ease their merge

Issue #15114

Signed-off-by: Guillaume Lambert <guillaume.lambert@orange.com>
This commit is contained in:
Guilt 2023-05-24 19:01:43 +02:00 committed by GitHub
parent 6745691eb5
commit a73d443c1d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
192 changed files with 1216 additions and 1216 deletions

View File

@ -7,7 +7,7 @@ all:
gcc plugin_test.c $(IFLAGS) $(CFLAGS) -o plugin_test.o
gcc mock_helper.c $(IFLAGS) $(CFLAGS) -o mock_helper.o
gcc ../plugin.c $(IFLAGS) $(CFLAGS) $(MFLAG) -o plugin.o
gcc plugin_test.o mock_helper.o plugin.o -o plugin_test -lc -lcunit
gcc plugin_test.o mock_helper.o plugin.o -o plugin_test -lc -lcunit
test:
# run unit test, if UT failed, build will break

View File

@ -106,7 +106,7 @@ void *dlopen(const char *filename, int flags)
mock_dlerror = mock_dlerror_failed;
return NULL;
}
// all other case return mock handle
mock_dlerror = NULL;
return mock_plugin_handle;
@ -133,21 +133,21 @@ void *dlsym(void *restrict handle, const char *restrict symbol)
mock_dlerror = mock_dlerror_failed;
return NULL;
}
case TEST_SCEANRIO_PLUGIN_UNINIT_NOT_EXIT:
if (strcmp(symbol, "plugin_uninit") == 0)
{
mock_dlerror = mock_dlerror_failed;
return NULL;
}
case TEST_SCEANRIO_PLUGIN_INIT_NOT_EXIT:
if (strcmp(symbol, "plugin_init") == 0)
{
mock_dlerror = mock_dlerror_failed;
return NULL;
}
case TEST_SCEANRIO_PLUGIN_INIT_SUCCESS:
if (strcmp(symbol, "plugin_init") == 0)
{
@ -165,7 +165,7 @@ void *dlsym(void *restrict handle, const char *restrict symbol)
return mock_on_shell_execve;
}
}
return mock_plugin_default_function_handle;
}

View File

@ -16,7 +16,7 @@ int start_up() {
/* Test plugin not exist scenario */
void testcase_try_load_plugin_by_path_not_exist() {
set_test_scenario(TEST_SCEANRIO_PLUGIN_NOT_EXIT);
try_load_plugin_by_path("./testplugin.so");
CU_ASSERT_STRING_EQUAL(mock_itrace_message_buffer, "Plugin: can't load plugin ./testplugin.so: MOCK error\n");
@ -25,7 +25,7 @@ void testcase_try_load_plugin_by_path_not_exist() {
/* Test plugin exist but not support shell_execve scenario */
void testcase_try_load_plugin_by_path_execve_not_exist() {
set_test_scenario(TEST_SCEANRIO_PLUGIN_EXECVE_NOT_EXIT);
try_load_plugin_by_path("./testplugin.so");
CU_ASSERT_STRING_EQUAL(mock_itrace_message_buffer, "Plugin: can't find on_shell_execve function ./testplugin.so: MOCK error\n");
@ -34,18 +34,18 @@ void testcase_try_load_plugin_by_path_execve_not_exist() {
/* Test plugin exist but not support plugin_uninit scenario */
void testcase_try_load_plugin_by_path_plugin_uninit_not_exist() {
set_test_scenario(TEST_SCEANRIO_PLUGIN_UNINIT_NOT_EXIT);
try_load_plugin_by_path("./testplugin.so");
CU_ASSERT_STRING_EQUAL(mock_itrace_message_buffer, "Plugin: can't find plugin_uninit function ./testplugin.so: MOCK error\n");
}
/* Test plugin exist but not support plugin_init scenario */
void testcase_try_load_plugin_by_path_plugin_init_not_exist() {
set_test_scenario(TEST_SCEANRIO_PLUGIN_INIT_NOT_EXIT);
try_load_plugin_by_path("./testplugin.so");
CU_ASSERT_STRING_EQUAL(mock_itrace_message_buffer, "Plugin: can't find plugin_init function ./testplugin.so: MOCK error\n");
}
@ -54,22 +54,22 @@ void testcase_try_load_plugin_by_path_plugin_init_success() {
set_test_scenario(TEST_SCEANRIO_PLUGIN_INIT_SUCCESS);
set_memory_allocate_count(0);
set_plugin_init_status(PLUGIN_NOT_INITIALIZE);
try_load_plugin_by_path("./testplugin.so");
// check plugin init success
CU_ASSERT_EQUAL(get_plugin_init_status(), PLUGIN_INITIALIZED);
// check API success
CU_ASSERT_STRING_EQUAL(mock_itrace_message_buffer, "Plugin: plugin ./testplugin.so loaded\n");
// check global plugin list not empty and contains correct pluginglobal_plugin_list
CU_ASSERT_NOT_EQUAL(global_plugin_list, NULL);
CU_ASSERT_EQUAL(global_plugin_list->plugin_handle, TEST_MOCK_PLUGIN_HANDLE);
// release all loaded plugins
free_loaded_plugins();
// check if memory fully released
CU_ASSERT_EQUAL(global_plugin_list, NULL);
CU_ASSERT_EQUAL(get_memory_allocate_count(), 0);
@ -80,16 +80,16 @@ void testcase_release_loaded_plugin() {
set_test_scenario(TEST_SCEANRIO_PLUGIN_INIT_SUCCESS);
set_memory_allocate_count(0);
try_load_plugin_by_path("./testplugin.so");
// check memory allocated
CU_ASSERT_NOT_EQUAL(get_memory_allocate_count(), 0);
// check plugin init success
CU_ASSERT_EQUAL(get_plugin_init_status(), PLUGIN_INITIALIZED);
// release all loaded plugins
free_loaded_plugins();
// check if memory fully released
CU_ASSERT_EQUAL(global_plugin_list, NULL);
CU_ASSERT_EQUAL(get_memory_allocate_count(), 0);
@ -100,22 +100,22 @@ void testcase_load_plugin_by_config() {
set_test_scenario(TEST_SCEANRIO_PLUGIN_INIT_SUCCESS);
set_memory_allocate_count(0);
load_plugin_by_config("./bash_plugins.conf");
// check memory allocated
CU_ASSERT_NOT_EQUAL(get_memory_allocate_count(), 0);
// check plugin init success
CU_ASSERT_EQUAL(get_plugin_init_status(), PLUGIN_INITIALIZED);
// check target plugin in config file loaded
CU_ASSERT_STRING_EQUAL(mock_itrace_message_buffer, "Plugin: plugin /usr/lib/bash-plugins/another_test_plugin.so loaded\n");
// check there are 2 plugins loaded
CU_ASSERT_EQUAL(get_memory_allocate_count(), 2);
// release all loaded plugins
free_loaded_plugins();
// check if memory fully released
CU_ASSERT_EQUAL(global_plugin_list, NULL);
printf("Count %d\n", get_memory_allocate_count());
@ -127,16 +127,16 @@ void testcase_invoke_plugin_on_shell_execve() {
set_test_scenario(TEST_SCEANRIO_PLUGIN_INIT_SUCCESS);
set_memory_allocate_count(0);
load_plugin_by_config("./bash_plugins.conf");
// invoke plugin method
char** pargv = (char**)0x5234;
invoke_plugin_on_shell_execve("testuser", "testcommand", pargv);
printf(mock_onshell_execve_command_buffer);
CU_ASSERT_STRING_EQUAL(mock_onshell_execve_command_buffer, "on_shell_execve: user: testuser, level: 1, command: testcommand, argv: 0x5234\n");
// release all loaded plugins
free_loaded_plugins();
// check if memory fully released
CU_ASSERT_EQUAL(global_plugin_list, NULL);
printf("Count %d\n", get_memory_allocate_count());
@ -198,7 +198,7 @@ int main(void) {
CU_cleanup_registry();
return CU_get_error();
}
if (CU_get_error() != CUE_SUCCESS) {
fprintf(stderr, "Error adding test: (%d)%s\n", CU_get_error(), CU_get_error_msg());
}
@ -211,7 +211,7 @@ int main(void) {
}
CU_basic_show_failures(CU_get_failure_list());
// use failed UT count as return value
return CU_get_number_of_failure_records();
}

View File

@ -19,7 +19,7 @@ else ifeq ($(CROSS_BUILD_ENVIRON), y)
else
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
endif
popd
mv $(DERIVED_TARGET) $* $(DEST)/

View File

@ -6,7 +6,7 @@ Standards-Version: 3.9.3
Section: net
Package: gobgp
Priority: extra
Priority: extra
Architecture: amd64
Depends: ${shlibs:Depends}, ${misc:Depends}
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: gobgp BGP daemon

View File

@ -31,7 +31,7 @@ case "$1" in
echo /etc/gobgp/gobgpd.conf not found
fi
;;
stop)
kill -9 $(echo /var/run/gobgpd.pid)
;;

View File

@ -1,3 +1,3 @@
#!/usr/bin/make -f
%:
#!/usr/bin/make -f
%:
dh $@ --with systemd

View File

@ -487,17 +487,17 @@ enum MCLAG_DOMAIN_CFG_OP_TYPE {
MCLAG_CFG_OPER_ADD = 1, //Add domain
MCLAG_CFG_OPER_DEL = 2, //Delete domain
MCLAG_CFG_OPER_UPDATE = 3, //update domain
MCLAG_CFG_OPER_ATTR_DEL = 4 //Attribute del
MCLAG_CFG_OPER_ATTR_DEL = 4 //Attribute del
};
enum MCLAG_DOMAIN_CFG_ATTR_BMAP_FLAGS {
MCLAG_CFG_ATTR_NONE = 0x0,
MCLAG_CFG_ATTR_SRC_ADDR = 0x1,
MCLAG_CFG_ATTR_PEER_ADDR = 0x2,
MCLAG_CFG_ATTR_PEER_LINK = 0x4,
MCLAG_CFG_ATTR_KEEPALIVE_INTERVAL = 0x8,
MCLAG_CFG_ATTR_SESSION_TIMEOUT = 0x10
MCLAG_CFG_ATTR_NONE = 0x0,
MCLAG_CFG_ATTR_SRC_ADDR = 0x1,
MCLAG_CFG_ATTR_PEER_ADDR = 0x2,
MCLAG_CFG_ATTR_PEER_LINK = 0x4,
MCLAG_CFG_ATTR_KEEPALIVE_INTERVAL = 0x8,
MCLAG_CFG_ATTR_SESSION_TIMEOUT = 0x10
};
struct IccpSyncdHDr

View File

@ -270,9 +270,9 @@ typedef struct system_dbg_counter_info
uint32_t peer_link_down_counter;
uint32_t warmboot_counter;
uint32_t rx_peer_invalid_msg_counter; //counts partial msgs received as sending end is not sending partial msgs
uint32_t rx_peer_hdr_read_sock_err_counter; //counts socket header read errors
uint32_t rx_peer_hdr_read_sock_err_counter; //counts socket header read errors
uint32_t rx_peer_hdr_read_sock_zero_len_counter; //counts socket header read zero length
uint32_t rx_peer_tlv_read_sock_err_counter; //counts socket data/tlv read errors
uint32_t rx_peer_tlv_read_sock_err_counter; //counts socket data/tlv read errors
uint32_t rx_peer_tlv_read_sock_zero_len_counter; //counts socket data/tlv read zero length
uint32_t socket_close_err_counter; //socket close failure
uint32_t socket_cleanup_counter; //socket cleanup outside of session down

View File

@ -103,7 +103,7 @@ int iccp_mclag_config_dump(char * *buf, int *num, int mclag_id)
state_info.keepalive_time = csm->keepalive_time;
state_info.session_timeout = csm->session_timeout;
logconfig = logger_get_configuration();
memcpy(state_info.loglevel, log_level_to_string(logconfig->log_level), strlen( log_level_to_string(logconfig->log_level)));

View File

@ -122,7 +122,7 @@ void iccp_csm_init(struct CSM* csm)
memset(csm->peer_ip, 0, INET_ADDRSTRLEN);
memset(csm->iccp_info.sender_name, 0, MAX_L_ICC_SENDER_NAME);
csm->iccp_info.icc_rg_id = 0x0;
csm->keepalive_time = CONNECT_INTERVAL_SEC;
csm->keepalive_time = CONNECT_INTERVAL_SEC;
csm->session_timeout = HEARTBEAT_TIMEOUT_SEC;
}
@ -217,7 +217,7 @@ void iccp_csm_finalize(struct CSM* csm)
LIST_REMOVE(cif,csm_next);
free(cif);
}
/* Release iccp_csm */
pthread_mutex_destroy(&(csm->conn_mutex));
iccp_csm_msg_list_finalize(csm);

View File

@ -515,7 +515,7 @@ static void do_ndisc_learn_from_kernel(struct ndmsg *ndm, struct rtattr *tb[], i
}
}
}
}
}
}
if (!(csm && lif_po)) {
@ -1204,7 +1204,7 @@ void do_ndisc_update_from_reply_packet(unsigned int ifindex, char *ipv6_addr, ui
ndisc_info->op_type = ndisc_msg->op_type;
sprintf(ndisc_info->ifname, "%s", ndisc_msg->ifname);
memcpy(ndisc_info->mac_addr, ndisc_msg->mac_addr, ETHER_ADDR_LEN);
ICCPD_LOG_DEBUG(__FUNCTION__, "Update ND for %s", show_ipv6_str((char *)ndisc_msg->ipv6_addr));
ICCPD_LOG_DEBUG(__FUNCTION__, "Update ND for %s", show_ipv6_str((char *)ndisc_msg->ipv6_addr));
}
break;
}
@ -1330,7 +1330,7 @@ int add_pending_vlan_mbr(struct PendingVlanMbrIf* mbr_if, uint16_t vid)
struct VLAN_ID *vlan = NULL;
struct VLAN_ID vlan_key = { 0 };
char vlan_name[16] = "";
if (!mbr_if)
if (!mbr_if)
{
return MCLAG_ERROR;
}
@ -1340,7 +1340,7 @@ int add_pending_vlan_mbr(struct PendingVlanMbrIf* mbr_if, uint16_t vid)
vlan_key.vid = vid;
vlan = RB_FIND(vlan_rb_tree, &(mbr_if->vlan_tree), &vlan_key);
if (!vlan)
{
vlan = (struct VLAN_ID*)malloc(sizeof(struct VLAN_ID));
@ -1364,7 +1364,7 @@ void del_pending_vlan_mbr(struct PendingVlanMbrIf* mbr_if, uint16_t vid)
{
struct VLAN_ID *vlan = NULL;
struct VLAN_ID vlan_key = { 0 };
if (!mbr_if)
if (!mbr_if)
{
return;
}
@ -1372,7 +1372,7 @@ void del_pending_vlan_mbr(struct PendingVlanMbrIf* mbr_if, uint16_t vid)
vlan_key.vid = vid;
vlan = RB_FIND(vlan_rb_tree, &(mbr_if->vlan_tree), &vlan_key);
if (vlan != NULL)
{
VLAN_RB_REMOVE(vlan_rb_tree, &(mbr_if->vlan_tree), vlan);
@ -1398,7 +1398,7 @@ void del_all_pending_vlan_mbrs(struct PendingVlanMbrIf* lif)
return;
}
//update vlan membership for a given interface; this function can be called
//update vlan membership for a given interface; this function can be called
//whenever vlan membership is received from mclagsyncd and local interface is not found
void update_pending_vlan_mbr(char *mbr_if_name, unsigned int vlan_id, int add_flag)
{
@ -1414,10 +1414,10 @@ void update_pending_vlan_mbr(char *mbr_if_name, unsigned int vlan_id, int add_f
ICCPD_LOG_DEBUG(__FUNCTION__, "update pending vlan:%d member for if:%s event:%s \n", vlan_id, mbr_if_name, add_flag ? "add":"delete");
mbr_if = find_pending_vlan_mbr_if(sys, mbr_if_name);
//if mbr_if not found create
//if mbr_if not found create
if (!mbr_if)
{
if (!add_flag)
if (!add_flag)
{
return;
}
@ -1432,12 +1432,12 @@ void update_pending_vlan_mbr(char *mbr_if_name, unsigned int vlan_id, int add_f
RB_INIT(vlan_rb_tree, &mbr_if->vlan_tree);
LIST_INSERT_HEAD(&(sys->pending_vlan_mbr_if_list), mbr_if, if_next);
}
if (add_flag)
if (add_flag)
{
//add to pending vlan member if
add_pending_vlan_mbr(mbr_if, vlan_id);
}
else
}
else
{
//delete from pending vlan member if
del_pending_vlan_mbr(mbr_if, vlan_id);
@ -1445,13 +1445,13 @@ void update_pending_vlan_mbr(char *mbr_if_name, unsigned int vlan_id, int add_f
}
//move pending vlan membership from pending member interface to system lif
//move pending vlan membership from pending member interface to system lif
void move_pending_vlan_mbr_to_lif(struct System *sys, struct LocalInterface* lif)
{
struct PendingVlanMbrIf *mbr_if;
struct VLAN_ID* vlan = NULL;
struct VLAN_ID* vlan_temp = NULL;
if (!sys || !lif)
if (!sys || !lif)
{
return;
}
@ -1504,7 +1504,7 @@ void vlan_mbrship_change_handler(unsigned int vlan_id, char *mbr_if_name, int ad
if (!lif)
{
ICCPD_LOG_NOTICE(__FUNCTION__, "Rx vlan:%d mbr if:%s event %s; No MCLAG If", vlan_id, mbr_if_name, add_flag ? "add":"delete");
update_pending_vlan_mbr(mbr_if_name, vlan_id, add_flag);
update_pending_vlan_mbr(mbr_if_name, vlan_id, add_flag);
return;
}
ICCPD_LOG_DEBUG(__FUNCTION__, "Rx vlan:%d mbr if:%s event %s", vlan_id, mbr_if_name, add_flag ? "add":"delete");

View File

@ -573,7 +573,7 @@ static int iccp_netlink_set_portchannel_iff_flag(
char* saveptr;
struct LocalInterface* member_if;
char *tmp_member_buf = NULL;
if (!lif_po)
return MCLAG_ERROR;
@ -649,7 +649,7 @@ void update_if_ipmac_on_standby(struct LocalInterface* lif_po, int dir)
return;
pif = peer_if_find_by_name(csm, lif_po->name);
/*Set new mac only if remote MLAG interface also exists */
if (pif && (memcmp( lif_po->mac_addr, MLACP(csm).remote_system.system_id, ETHER_ADDR_LEN) != 0))
{
@ -659,7 +659,7 @@ void update_if_ipmac_on_standby(struct LocalInterface* lif_po, int dir)
ICCPD_LOG_NOTICE(__FUNCTION__,
"%s Change the system-id of %s from [%02X:%02X:%02X:%02X:%02X:%02X] to [%02X:%02X:%02X:%02X:%02X:%02X], dir %d",
(csm->role_type == STP_ROLE_STANDBY) ? "Standby" : "Active",
lif_po->name, lif_po->mac_addr[0], lif_po->mac_addr[1], lif_po->mac_addr[2],
lif_po->name, lif_po->mac_addr[0], lif_po->mac_addr[1], lif_po->mac_addr[2],
lif_po->mac_addr[3], lif_po->mac_addr[4], lif_po->mac_addr[5],
MLACP(csm).remote_system.system_id[0], MLACP(csm).remote_system.system_id[1],
MLACP(csm).remote_system.system_id[2], MLACP(csm).remote_system.system_id[3],
@ -776,9 +776,9 @@ void recover_if_ipmac_on_standby(struct LocalInterface *lif_po, int dir)
iccp_netlink_if_shutdown_set(lif_po->ifindex);
iccp_netlink_if_startup_set(lif_po->ifindex);
/* Set the interface MAC address back to its local address so that subsequent vlan member
* add processing (local_if_add_vlan) will not use the old MAC address for
* add processing (local_if_add_vlan) will not use the old MAC address for
* update_if_ipmac_on_standby()
*/
*/
memcpy(lif_po->mac_addr, MLACP(csm).system_id, ETHER_ADDR_LEN);
}
@ -986,14 +986,14 @@ void iccp_event_handler_obj_input_newlink(struct nl_object *obj, void *arg)
if ((strncmp(ifname,
if_whitelist[i].ifname, strlen(if_whitelist[i].ifname)) == 0))
{
/*if the iface exists, but the ifindex changed, then delete old
* interface and add the new interface
* possible scenario is due to many kernel events, there is
* possiblility of losing if deletion event and just
* getting a add of same iface with new ifindex.
* to address this possibility if add event of interface is
* received with new ifindex different from old interace,
* received with new ifindex different from old interace,
* then delete the old ifindex interface and add new if with new
* ifindex
*/
@ -2174,7 +2174,7 @@ int iccp_handle_events(struct System * sys)
int i;
int err;
int max_nfds;
struct mLACPHeartbeatTLV dummy_tlv;
struct mLACPHeartbeatTLV dummy_tlv;
max_nfds = ICCP_EVENT_FDS_COUNT + sys->readfd_count;
@ -2230,7 +2230,7 @@ int iccp_handle_events(struct System * sys)
{
if (scheduler_csm_read_callback(csm) != MCLAG_ERROR)
{
//consider any msg from peer as heartbeat update, this will be in scenarios of scaled msg sync b/w peers
//consider any msg from peer as heartbeat update, this will be in scenarios of scaled msg sync b/w peers
mlacp_fsm_update_heartbeat(csm, &dummy_tlv);
}
break;
@ -2334,7 +2334,7 @@ void update_vlan_if_mac_on_standby(struct LocalInterface* lif_vlan, int dir)
ICCPD_LOG_DEBUG(__FUNCTION__,
"%s Change the system-id of %s from [%02X:%02X:%02X:%02X:%02X:%02X] to [%02X:%02X:%02X:%02X:%02X:%02X], dir %d",
(csm->role_type == STP_ROLE_STANDBY) ? "Standby" : "Active",
lif_vlan->name, lif_vlan->mac_addr[0], lif_vlan->mac_addr[1], lif_vlan->mac_addr[2],
lif_vlan->name, lif_vlan->mac_addr[0], lif_vlan->mac_addr[1], lif_vlan->mac_addr[2],
lif_vlan->mac_addr[3], lif_vlan->mac_addr[4], lif_vlan->mac_addr[5],
system_mac[0], system_mac[1], system_mac[2], system_mac[3], system_mac[4], system_mac[5], dir);

View File

@ -867,7 +867,7 @@ void mlacp_fsm_transit(struct CSM* csm)
if (csm->warm_reboot_disconn_time != 0)
{
/*After peer warm reboot and disconnect, if peer connection is not establised more than 90s,
/*After peer warm reboot and disconnect, if peer connection is not establised more than 90s,
recover peer disconnection to normal process, such as add peer age flag for MACs etc*/
if ((time(NULL) - csm->warm_reboot_disconn_time) >= WARM_REBOOT_TIMEOUT)
{
@ -1017,7 +1017,7 @@ void mlacp_sync_mac(struct CSM* csm)
RB_FOREACH (mac_msg, mac_rb_tree, &MLACP(csm).mac_rb)
{
/*If MAC with local age flag, dont sync to peer. Such MAC only exist when peer is warm-reboot.
If peer is warm-reboot, peer age flag is not set when connection is lost.
If peer is warm-reboot, peer age flag is not set when connection is lost.
When MAC is aged in local switch, this MAC is not deleted for no peer age flag.
After warm-reboot, this MAC must be learnt by peer and sync to local switch*/
if (!(mac_msg->age_flag & MAC_AGE_LOCAL))

View File

@ -559,7 +559,7 @@ void set_peerlink_mlag_port_learn(struct LocalInterface *lif, int enable)
return;
}
/* Send request to Mclagsyncd to enable or disable traffic on
/* Send request to Mclagsyncd to enable or disable traffic on
* MLAG interface
*/
static int mlacp_link_set_traffic_dist_mode(
@ -1939,7 +1939,7 @@ static void update_l2_mac_state(struct CSM *csm,
}
// Dont set local learn unless learned from MCLAGSYNCD.
// When interface is UP MAC addresses gets re-learned
// When interface is UP MAC addresses gets re-learned
#if 0
/*this may be peerlink is not configured and portchannel is down*/
/*when this portchannel up, add the mac back to ASIC*/
@ -2130,7 +2130,7 @@ void mlacp_mlag_intf_detach_handler(struct CSM* csm, struct LocalInterface* loca
ICCPD_LOG_DEBUG("ICCP_FSM",
"MLAG_IF(%s) %s Detach: state %s, po_active %d, traffic_dis %d, sync_state %s",
local_if_is_l3_mode(local_if) ? "L3" : "L2",
local_if->name,
local_if->name,
(local_if->state == PORT_STATE_UP) ? "up" : "down",
local_if->po_active, local_if->is_traffic_disable,
mlacp_state(csm));
@ -2147,14 +2147,14 @@ void mlacp_mlag_intf_detach_handler(struct CSM* csm, struct LocalInterface* loca
else
update_l3_po_state(csm, local_if, 0);
//If the traffic is disabled due to interface flap; while coming up, if
//mclag interface is removed before receiving ack, it will be in
//blocked state; to address timing scenario unblock Tx/Rx of
//traffic on this portchannel if the traffic is blocked on this port
if(local_if->is_traffic_disable)
{
if ( !csm->peer_link_if || !(strcmp(csm->peer_link_if->name, local_if->name)) )
if ( !csm->peer_link_if || !(strcmp(csm->peer_link_if->name, local_if->name)) )
{
mlacp_link_enable_traffic_distribution(local_if);
}
@ -2178,7 +2178,7 @@ void mlacp_peer_mlag_intf_delete_handler(struct CSM* csm, char *mlag_if_name)
ICCPD_LOG_DEBUG("ICCP_FSM",
"MLAG_IF(%s) %s Peer IF Delete Event: state %s, po_active %d, traffic_dis %d, sync_state %s",
local_if_is_l3_mode(local_if) ? "L3" : "L2",
local_if->name,
local_if->name,
(local_if->state == PORT_STATE_UP) ? "up" : "down",
local_if->po_active, local_if->is_traffic_disable,
mlacp_state(csm));
@ -3084,11 +3084,11 @@ int iccp_mclagsyncd_mclag_domain_cfg_handler(struct System *sys, char *msg_buf)
struct mclag_domain_cfg_info* cfg_info;
int count, i = 0;
char system_mac_str[ETHER_ADDR_STR_LEN];
msg_hdr = (struct IccpSyncdHDr *)msg_buf;
count = (msg_hdr->len- sizeof(struct IccpSyncdHDr ))/sizeof(struct mclag_domain_cfg_info);
ICCPD_LOG_DEBUG(__FUNCTION__, "recv domain cfg msg ; count %d ",count);
ICCPD_LOG_DEBUG(__FUNCTION__, "recv domain cfg msg ; count %d ",count);
for (i = 0; i < count; i++)
{
@ -3096,7 +3096,7 @@ int iccp_mclagsyncd_mclag_domain_cfg_handler(struct System *sys, char *msg_buf)
memcpy(system_mac_str, mac_addr_to_str(cfg_info->system_mac), sizeof(system_mac_str));
ICCPD_LOG_NOTICE(__FUNCTION__, "recv cfg msg ; domain_id:%d op_type:%d attr_bmap:0x%x local_ip:%s peer_ip:%s peer_ifname:%s system_mac:%s session_timeout:%d keepalive_time:%d",cfg_info->domain_id, cfg_info->op_type, cfg_info->attr_bmap, cfg_info->local_ip, cfg_info->peer_ip, cfg_info->peer_ifname, system_mac_str, cfg_info->session_timeout, cfg_info->keepalive_time);
ICCPD_LOG_NOTICE(__FUNCTION__, "recv cfg msg ; domain_id:%d op_type:%d attr_bmap:0x%x local_ip:%s peer_ip:%s peer_ifname:%s system_mac:%s session_timeout:%d keepalive_time:%d",cfg_info->domain_id, cfg_info->op_type, cfg_info->attr_bmap, cfg_info->local_ip, cfg_info->peer_ip, cfg_info->peer_ifname, system_mac_str, cfg_info->session_timeout, cfg_info->keepalive_time);
if (cfg_info->op_type == MCLAG_CFG_OPER_ADD || cfg_info->op_type == MCLAG_CFG_OPER_UPDATE) //mclag domain create/update
{
@ -3153,7 +3153,7 @@ int iccp_mclagsyncd_mclag_domain_cfg_handler(struct System *sys, char *msg_buf)
if(cfg_info->attr_bmap & MCLAG_CFG_ATTR_PEER_LINK)
{
unset_peer_link(cfg_info->domain_id);
}
}
else if(cfg_info->attr_bmap & MCLAG_CFG_ATTR_KEEPALIVE_INTERVAL)
{
//reset to default
@ -3183,16 +3183,16 @@ int iccp_mclagsyncd_mclag_iface_cfg_handler(struct System *sys, char *msg_buf)
struct IccpSyncdHDr * msg_hdr;
struct mclag_iface_cfg_info* cfg_info;
int count, i = 0;
msg_hdr = (struct IccpSyncdHDr *)msg_buf;
count = (msg_hdr->len- sizeof(struct IccpSyncdHDr))/sizeof(struct mclag_iface_cfg_info);
ICCPD_LOG_DEBUG(__FUNCTION__, "recv domain cfg msg ; count %d ",count);
ICCPD_LOG_DEBUG(__FUNCTION__, "recv domain cfg msg ; count %d ",count);
for (i =0; i<count; i++)
{
cfg_info = (struct mclag_iface_cfg_info*)((char *)(msg_buf) + sizeof(struct IccpSyncdHDr) + i * sizeof(struct mclag_iface_cfg_info));
ICCPD_LOG_NOTICE(__FUNCTION__, "recv mclag iface cfg msg ; domain_id:%d op_type:%d mclag_iface:%s ",cfg_info->domain_id, cfg_info->op_type, cfg_info->mclag_iface);
ICCPD_LOG_NOTICE(__FUNCTION__, "recv mclag iface cfg msg ; domain_id:%d op_type:%d mclag_iface:%s ",cfg_info->domain_id, cfg_info->op_type, cfg_info->mclag_iface);
if (cfg_info->op_type == MCLAG_CFG_OPER_ADD)
{
@ -3236,7 +3236,7 @@ int iccp_mclagsyncd_mclag_unique_ip_cfg_handler(struct System *sys, char *msg_bu
}
}
if (!unq_ip_if)
if (!unq_ip_if)
{
unq_ip_if = (struct Unq_ip_If_info *)malloc(sizeof(struct Unq_ip_If_info));
if (!unq_ip_if)
@ -3359,7 +3359,7 @@ int iccp_receive_fdb_handler_from_syncd(struct System *sys, char *msg_buf)
msg_hdr = (struct IccpSyncdHDr *)msg_buf;
count = (msg_hdr->len- sizeof(struct IccpSyncdHDr))/sizeof(struct mclag_fdb_info);
ICCPD_LOG_DEBUG(__FUNCTION__, "recv msg fdb count %d ",count );
ICCPD_LOG_DEBUG(__FUNCTION__, "recv msg fdb count %d ",count );
for (i =0; i<count;i++)
{
@ -3592,7 +3592,7 @@ int iccp_mclagsyncd_msg_handler(struct System *sys)
{
iccp_mclagsyncd_vlan_mbr_update_handler(sys, &msg_buf[pos]);
}
else
else
{
ICCPD_LOG_ERR(__FUNCTION__, "recv unknown msg type %d ", msg_hdr->type);
pos += msg_hdr->len;
@ -3612,10 +3612,10 @@ int iccp_mclagsyncd_msg_handler(struct System *sys)
{
int rc;
/* Update traffic distribution only if local interface is still bound to MLAG */
/* Update traffic distribution only if local interface is still bound to MLAG */
if (!lif || !lif->csm)
return;
/* Expecting ACK from peer only after reaching EXCHANGE state */
if (MLACP(lif->csm).current_state != MLACP_STATE_EXCHANGE)
return;
@ -4197,7 +4197,7 @@ int mclagd_ctl_interactive_process(int client_fd)
case INFO_TYPE_DUMP_MAC:
mclagd_ctl_handle_dump_mac(client_fd, req->mclag_id);
break;
break;
case INFO_TYPE_DUMP_LOCAL_PORTLIST:
mclagd_ctl_handle_dump_local_portlist(client_fd, req->mclag_id);
@ -4218,7 +4218,7 @@ int mclagd_ctl_interactive_process(int client_fd)
case INFO_TYPE_CONFIG_LOGLEVEL:
mclagd_ctl_handle_config_loglevel(client_fd, req->mclag_id);
break;
default:
return MCLAG_ERROR;
}

View File

@ -579,7 +579,7 @@ int local_if_add_vlan(struct LocalInterface* local_if, uint16_t vid)
vlan_key.vid = vid;
vlan = RB_FIND(vlan_rb_tree, &(local_if->vlan_tree), &vlan_key);
if (!vlan)
{
vlan = (struct VLAN_ID*)malloc(sizeof(struct VLAN_ID));
@ -609,7 +609,7 @@ int local_if_add_vlan(struct LocalInterface* local_if, uint16_t vid)
update_vlan_if_mac_on_standby(vlan->vlan_itf, 1);
}
}
else
else
{
ICCPD_LOG_WARN(__FUNCTION__, "skip VLAN MAC update for vlan %d interface %s ", vid, local_if->name);
}
@ -625,7 +625,7 @@ void local_if_del_vlan(struct LocalInterface* local_if, uint16_t vid)
vlan_key.vid = vid;
vlan = RB_FIND(vlan_rb_tree, &(local_if->vlan_tree), &vlan_key);
if (vlan != NULL)
{
VLAN_RB_REMOVE(vlan_rb_tree, &(local_if->vlan_tree), vlan);
@ -666,7 +666,7 @@ int peer_if_add_vlan(struct PeerInterface* peer_if, uint16_t vlan_id)
vlan_key.vid = vlan_id;
peer_vlan = RB_FIND(vlan_rb_tree, &(peer_if->vlan_tree), &vlan_key);
if (!peer_vlan)
{
peer_vlan = (struct VLAN_ID*)malloc(sizeof(struct VLAN_ID));

View File

@ -48,7 +48,7 @@
*
******************************************************/
//this needs to be fine tuned
//this needs to be fine tuned
#define PEER_SOCK_SND_BUF_LEN (6 * 1024 * 1024)
#define PEER_SOCK_RCV_BUF_LEN (6 * 1024 * 1024)
#define RECV_RETRY_INTERVAL_USEC 100000
@ -388,7 +388,7 @@ void scheduler_init()
//no need to create iccpd config from startup file, it will be done through
//cli
iccp_config_from_file(sys->config_file_path);
/*Get kernel ARP info */
iccp_neigh_get_init();

View File

@ -822,7 +822,7 @@ libnl3 (3.0-2) unstable; urgency=low
libnl3 (3.0-1.1) unstable; urgency=low
* Non-maintainer upload with agreement from Heiko Stuebner
* Add libnl3-udeb package with seperate build for
* Add libnl3-udeb package with seperate build for
debian-installer (Closes: #635962).
-- Gaudenz Steinlin <gaudenz@debian.org> Fri, 29 Jul 2011 23:25:48 +0200
@ -876,7 +876,7 @@ libnl (1.1-5) unstable; urgency=low
libnl (1.1-4) unstable; urgency=low
* debian/control
* debian/control
- Add ${misc:Depends} to all binary packages.
- Bump Build-Depends on debhelper to (>= 7).
* debian/compat
@ -958,7 +958,7 @@ libnl (1.0~pre6-5) unstable; urgency=low
- Add XS-Vcs-* fields.
- Replace Build-Depends: tetex-bin with texlive-latex-base. teTeX is now
gone, superseded by texlive.
- Add Build-Depends: graphviz, gs-gpl | gs-esp.
- Add Build-Depends: graphviz, gs-gpl | gs-esp.
The "dot" program is needed for generating the diagram image and "gs"
for the ps to png conversion.
@ -967,7 +967,7 @@ libnl (1.0~pre6-5) unstable; urgency=low
libnl (1.0~pre6-4) unstable; urgency=medium
* Autobuilders do not distinguish between build-arch and build-indep, they
simply run build. So we have to move doxygen and tetex-bin from
simply run build. So we have to move doxygen and tetex-bin from
Build-Depends-Indep to Build-Depends. Closes: #408719
* Urgency medium, as it fixes a FTBFS bug.
@ -989,7 +989,7 @@ libnl (1.0~pre6-3) unstable; urgency=low
libnl (1.0~pre6-2) unstable; urgency=low
* Update maintainer email address to biebl@debian.org.
* Update maintainer email address to biebl@debian.org.
-- Michael Biebl <biebl@debian.org> Thu, 19 Oct 2006 20:16:09 +0200
@ -997,7 +997,7 @@ libnl (1.0~pre6-1) unstable; urgency=low
* New upstream release.
* Removed 20-autoconf-dirs.patch, merged upstream.
* Updated debian/copyright, libnl is now licensed under the LGPL 2.1.
* Updated debian/copyright, libnl is now licensed under the LGPL 2.1.
* Updated debian/watch.
-- Michael Biebl <biebl@teco.edu> Fri, 18 Aug 2006 00:40:34 +0200
@ -1015,7 +1015,7 @@ libnl (1.0~pre6~svn30-1) unstable; urgency=low
libnl (0.99+1.0.svn21-4) unstable; urgency=low
* Do not create bogus /usr/lib/pkg-config directory. Closes: #364601
* Do not create bogus /usr/lib/pkg-config directory. Closes: #364601
-- Michael Biebl <biebl@teco.edu> Mon, 24 Apr 2006 15:40:23 +0200

View File

@ -15,7 +15,7 @@ Section: libs
Pre-Depends: ${misc:Pre-Depends}
Depends: ${misc:Depends}, ${shlibs:Depends}
Multi-Arch: same
Description: library for dealing with netlink sockets
Description: library for dealing with netlink sockets
This is a library for applications dealing with netlink sockets.
The library provides an interface for raw netlink messaging and various
netlink family specific interfaces.
@ -133,8 +133,8 @@ Section: libdevel
Depends: libnl-3-dev (= ${binary:Version}), libnl-genl-3-dev (= ${binary:Version}), libnl-nf-3-dev (= ${binary:Version}), libnl-route-3-dev (= ${binary:Version}), libnl-cli-3-200 (= ${binary:Version}), ${misc:Depends}
Multi-Arch: same
Description: development library and headers for libnl-cli-3
This is a library for applications dealing with netlink sockets.
The library provides an interface for raw netlink messaging and various
This is a library for applications dealing with netlink sockets.
The library provides an interface for raw netlink messaging and various
netlink family specific interfaces.
.
This package contains the files that are needed to build applications using
@ -225,7 +225,7 @@ Architecture: linux-any
XC-Package-Type: udeb
Section: debian-installer
Depends: ${misc:Depends}, ${shlibs:Depends}
Description: library for dealing with netlink sockets
Description: library for dealing with netlink sockets
This is a library for applications dealing with netlink sockets.
The library provides an interface for raw netlink messaging and various
netlink family specific interfaces.

View File

@ -9,9 +9,9 @@ Upstream Author:
Thomas Graf <tgraf@suug.ch>
Copyright:
Copyright:
lib/route/addr.c
lib/route/addr.c
include/netlink/route/addr.h
Copyright (c) Thomas Graf <tgraf@suug.ch>
@ -90,7 +90,7 @@ src/cls/basic.c
src/nl-addr-delete.c:
This library is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published
it under the terms of the GNU General Public License as published
by the Free Software Foundation version 2 of the License.
This program is distributed in the hope that it will be useful, but
@ -147,7 +147,7 @@ lib/xfrm/lifetime.c
All other *.c and *.h files not mentioned above:
This library is free software; you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published
it under the terms of the GNU Lesser General Public License as published
by the Free Software Foundation version 2.1 of the License.
This program is distributed in the hope that it will be useful, but
@ -156,5 +156,5 @@ All other *.c and *.h files not mentioned above:
General Public License for more details.
On Debian GNU/Linux systems, the complete text of the GNU Lesser General
Public License can be found in /usr/share/common-licenses/LGPL-2.1
Public License can be found in /usr/share/common-licenses/LGPL-2.1

View File

@ -14,7 +14,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
# Apply patch series
stg init
stg import -s ../patch/series
ifeq ($(CROSS_BUILD_ENVIRON), y)
dpkg-buildpackage -rfakeroot -b -us -uc -a$(CONFIGURED_ARCH) -Pcross,nocheck -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
else

View File

@ -39,7 +39,7 @@ $(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
sed -i 's/\/usr\/sbin\/ntpd {/\/usr\/sbin\/ntpd flags=(attach_disconnected complain) {/' debian/apparmor-profile
ifeq ($(CROSS_BUILD_ENVIRON), y)
sed -i 's/dh_auto_configure \--/dh_auto_configure -- --with-yielding-select=yes /g' debian/rules
sed -i 's/dh_auto_configure \--/dh_auto_configure -- --with-yielding-select=yes /g' debian/rules
echo ". $(CONFIG_SITE)" > fix.ntp.cross-config.$(CONFIGURED_ARCH)
echo "unset with_openssl_libdir" >> fix.ntp.cross-config.$(CONFIGURED_ARCH)
echo "unset with_openssl_incdir" >> fix.ntp.cross-config.$(CONFIGURED_ARCH)

View File

@ -1,7 +1,7 @@
#!/usr/bin/make -f
%:
dh $@
dh $@
override_dh_fixperms:
dh_fixperms

View File

@ -37,7 +37,7 @@ test: test_nss_radius.c $(LIBNSS_SOURCE) $(CACHE_SOURCE) \
$(LIBNSS_SOURCE) test_nss_radius.c
$(CC) $(CFLAGS) $(LDFLAGS) -g -DTEST_RADIUS_NSS -o test_cache_radius \
$(CACHE_SOURCE)
.PHONY: all clean distclean test

View File

@ -11,7 +11,7 @@ libpam-radius-auth (1.4.0-3~deb10u1) buster; urgency=medium
* Rebuild for buster.
* Revert packaging changes:
- Lower Standards-Version to 4.2.0
- Lower Debhelper compat level to 11
- Lower Debhelper compat level to 11
-- Salvatore Bonaccorso <carnil@debian.org> Sat, 11 Jul 2020 21:24:48 +0200

View File

@ -51,7 +51,7 @@ class AdvertiseRouteMgr(Manager):
APP which config the data should be responsible to pass a valid IP prefix
"""
return True
log_err("BGPAdvertiseRouteMgr:: Invalid data %s for advertised route %s" % (data, key))
return False

View File

@ -267,8 +267,8 @@ class BGPAllowListMgr(Manager):
log_debug("BGPAllowListMgr::__update_prefix_list. af='%s' prefix-list name=%s" % (af, pl_name))
'''
Need to check exist and equality of the allowed prefix list.
A. If exist and equal, no operation needed.
B. If exist but not equal, first delete then add prefix based on the data from condig db and constants.
A. If exist and equal, no operation needed.
B. If exist but not equal, first delete then add prefix based on the data from condig db and constants.
C. If non-exist, directly add prefix based on the data from condig db and constants.
'''
exist, correct = self.__is_prefix_list_valid(af, pl_name, allow_list, constant_list)
@ -308,7 +308,7 @@ class BGPAllowListMgr(Manager):
2001:cdba:0000:0000:0000:0000:3257:9652
2001:cdba:0:0:0:0:3257:9652
2001:cdba::3257:9652
after normalize, all would be normalized to
after normalize, all would be normalized to
2001:cdba::3257:9652
'''
normalize_list = []
@ -347,7 +347,7 @@ class BGPAllowListMgr(Manager):
config_list.append(rule)
# Return double Ture, when running configuraiton is identical with config db + constants.
return True, expect_set == set(self.__normalize_ipnetwork(af, config_list))
return True, expect_set == set(self.__normalize_ipnetwork(af, config_list))
def __update_community(self, community_name, community_value):
"""

View File

@ -128,7 +128,7 @@ class BGPPeerMgrBase(Manager):
if self.check_deployment_id:
deps.append(("CONFIG_DB", swsscommon.CFG_DEVICE_METADATA_TABLE_NAME, "localhost/deployment_id"))
if self.peer_type == 'internal':
if self.peer_type == 'internal':
deps.append(("CONFIG_DB", swsscommon.CFG_LOOPBACK_INTERFACE_TABLE_NAME, "Loopback4096"))
super(BGPPeerMgrBase, self).__init__(

View File

@ -47,7 +47,7 @@ class DeviceGlobalCfgMgr(Manager):
self.cfg_mgr.update()
self.isolate_unisolate_device(data["tsa_enabled"])
self.directory.put(self.db_name, self.table_name, "tsa_enabled", data["tsa_enabled"])
return True
return True
return False
def del_handler(self, key):
@ -62,7 +62,7 @@ class DeviceGlobalCfgMgr(Manager):
if tsa_status == "true":
cmds = cfg.replace("#012", "\n").split("\n")
log_notice("DeviceGlobalCfgMgr:: Device is isolated. Applying TSA route-maps")
cmd = self.get_ts_routemaps(cmds, self.tsa_template)
cmd = self.get_ts_routemaps(cmds, self.tsa_template)
return cmd
def isolate_unisolate_device(self, tsa_status):
@ -88,22 +88,22 @@ class DeviceGlobalCfgMgr(Manager):
def __generate_routemaps_from_template(self, route_map_names, template):
cmd = "\n"
for rm in sorted(route_map_names):
# For packet-based chassis, the bgp session between the linecards are also considered internal sessions
# For packet-based chassis, the bgp session between the linecards are also considered internal sessions
# While isolating a single linecard, these sessions should not be skipped
if "_INTERNAL_" in rm or "VOQ_" in rm:
continue
continue
if "V4" in rm:
ipv="V4" ; ipp="ip"
elif "V6" in rm:
ipv="V6" ; ipp="ipv6"
ipv="V6" ; ipp="ipv6"
else:
continue
continue
cmd += template.render(route_map_name=rm,ip_version=ipv,ip_protocol=ipp, constants=self.constants)
cmd += "\n"
return cmd
def __extract_out_route_map_names(self, cmds):
route_map_names = set()
route_map_names = set()
out_route_map = re.compile(r'^\s*neighbor \S+ route-map (\S+) out$')
for line in cmds:
result = out_route_map.match(line)

View File

@ -21,7 +21,7 @@ class StaticRouteMgr(Manager):
db,
table,
)
self.directory.subscribe([("CONFIG_DB", swsscommon.CFG_DEVICE_METADATA_TABLE_NAME, "localhost/bgp_asn"),], self.on_bgp_asn_change)
self.static_routes = {}
self.vrf_pending_redistribution = set()
@ -41,7 +41,7 @@ class StaticRouteMgr(Manager):
intf_list = arg_list(data['ifname']) if 'ifname' in data else None
dist_list = arg_list(data['distance']) if 'distance' in data else None
nh_vrf_list = arg_list(data['nexthop-vrf']) if 'nexthop-vrf' in data else None
route_tag = self.ROUTE_ADVERTISE_DISABLE_TAG if 'advertise' in data and data['advertise'] == "false" else self.ROUTE_ADVERTISE_ENABLE_TAG
route_tag = self.ROUTE_ADVERTISE_DISABLE_TAG if 'advertise' in data and data['advertise'] == "false" else self.ROUTE_ADVERTISE_ENABLE_TAG
try:
ip_nh_set = IpNextHopSet(is_ipv6, bkh_list, nh_list, intf_list, dist_list, nh_vrf_list)

View File

@ -1,6 +1,6 @@
{
"CONFIG_DB__DEVICE_METADATA": {
"localhost": {
"localhost": {
"type": "LeafRouter"
}
},

View File

@ -1,6 +1,6 @@
{
"CONFIG_DB__DEVICE_METADATA": {
"localhost": {
"localhost": {
"type": "SpineRouter"
}
}

View File

@ -204,9 +204,9 @@ def test_set_handler_with_community_and_deny_action():
'route-map ALLOW_LIST_DEPLOYMENT_ID_5_V6 permit 10',
' match ipv6 address prefix-list PL_ALLOW_LIST_DEPLOYMENT_ID_5_COMMUNITY_1010:2020_V6',
' match community COMMUNITY_ALLOW_LIST_DEPLOYMENT_ID_5_COMMUNITY_1010:2020',
'route-map ALLOW_LIST_DEPLOYMENT_ID_5_V4 permit 65535',
' set community no-export additive',
'route-map ALLOW_LIST_DEPLOYMENT_ID_5_V6 permit 65535',
'route-map ALLOW_LIST_DEPLOYMENT_ID_5_V4 permit 65535',
' set community no-export additive',
'route-map ALLOW_LIST_DEPLOYMENT_ID_5_V6 permit 65535',
' set community no-export additive'
]
)
@ -325,9 +325,9 @@ def test_set_handler_no_community_with_deny_action():
' match ip address prefix-list PL_ALLOW_LIST_DEPLOYMENT_ID_5_COMMUNITY_empty_V4',
'route-map ALLOW_LIST_DEPLOYMENT_ID_5_V6 permit 30000',
' match ipv6 address prefix-list PL_ALLOW_LIST_DEPLOYMENT_ID_5_COMMUNITY_empty_V6',
'route-map ALLOW_LIST_DEPLOYMENT_ID_5_V4 permit 65535',
' set community no-export additive',
'route-map ALLOW_LIST_DEPLOYMENT_ID_5_V6 permit 65535',
'route-map ALLOW_LIST_DEPLOYMENT_ID_5_V4 permit 65535',
' set community no-export additive',
'route-map ALLOW_LIST_DEPLOYMENT_ID_5_V6 permit 65535',
' set community no-export additive'
]
)

View File

@ -17,7 +17,7 @@ def load_constant_files():
for path in paths:
constant_files += [os.path.abspath(os.path.join(path, name)) for name in os.listdir(path)
if os.path.isfile(os.path.join(path, name)) and name.startswith("constants")]
return constant_files
@ -55,7 +55,7 @@ def constructor(constants_path):
return m
@patch('bgpcfgd.managers_bgp.log_info')
def test_update_peer_up(mocked_log_info):
def test_update_peer_up(mocked_log_info):
for constant in load_constant_files():
m = constructor(constant)
res = m.set_handler("10.10.10.1", {"admin_status": "up"})
@ -63,7 +63,7 @@ def test_update_peer_up(mocked_log_info):
mocked_log_info.assert_called_with("Peer 'default|10.10.10.1' admin state is set to 'up'")
@patch('bgpcfgd.managers_bgp.log_info')
def test_update_peer_up_ipv6(mocked_log_info):
def test_update_peer_up_ipv6(mocked_log_info):
for constant in load_constant_files():
m = constructor(constant)
res = m.set_handler("fc00:10::1", {"admin_status": "up"})
@ -71,7 +71,7 @@ def test_update_peer_up_ipv6(mocked_log_info):
mocked_log_info.assert_called_with("Peer 'default|fc00:10::1' admin state is set to 'up'")
@patch('bgpcfgd.managers_bgp.log_info')
def test_update_peer_down(mocked_log_info):
def test_update_peer_down(mocked_log_info):
for constant in load_constant_files():
m = constructor(constant)
res = m.set_handler("10.10.10.1", {"admin_status": "down"})

View File

@ -126,9 +126,9 @@ def test_to_canonical_empty():
!
!
!
!
"""
to_canonical_common(raw_config, [])
@ -139,11 +139,11 @@ router bgp 12345
bgp router-id 1020
address-family ipv4
neighbor PEER_V4 peer-group
neighbor PEER_V4 route-map A10 in
neighbor PEER_V4 route-map A10 in
exit-address-family
address-family ipv6
neighbor PEER_V6 peer-group
neighbor PEER_V6 route-map A20 in
neighbor PEER_V6 route-map A20 in
exit-address-family
route-map A10 permit 10
!

View File

@ -37,7 +37,7 @@ def constructor():
cfg_mgr.update = update
cfg_mgr.push = push
cfg_mgr.get_config = get_config
constants = deepcopy(global_constants)
common_objs = {
'directory': Directory(),
@ -46,12 +46,12 @@ def constructor():
'constants': constants
}
mgr = bgpcfgd.managers_device_global.DeviceGlobalCfgMgr(common_objs, "CONFIG_DB", swsscommon.CFG_BGP_DEVICE_GLOBAL_TABLE_NAME)
cfg_mgr.update()
cfg_mgr.update()
return mgr
@patch('bgpcfgd.managers_device_global.log_debug')
def test_isolate_device(mocked_log_info):
def test_isolate_device(mocked_log_info):
m = constructor()
res = m.set_handler("STATE", {"tsa_enabled": "true"})
assert res, "Expect True return value for set_handler"
@ -59,7 +59,7 @@ def test_isolate_device(mocked_log_info):
assert m.cfg_mgr.get_config() == get_string_from_file("/result_all_isolate.conf")
@patch('bgpcfgd.managers_device_global.log_debug')
def test_unisolate_device(mocked_log_info):
def test_unisolate_device(mocked_log_info):
m = constructor()
res = m.set_handler("STATE", {"tsa_enabled": "false"})
assert res, "Expect True return value for set_handler"
@ -75,8 +75,8 @@ def test_check_state_and_get_tsa_routemaps():
m.set_handler("STATE", {"tsa_enabled": "false"})
res = m.check_state_and_get_tsa_routemaps(m.cfg_mgr.get_config())
assert res == ""
def test_get_tsa_routemaps():
def test_get_tsa_routemaps():
m = constructor()
assert m.get_ts_routemaps([], m.tsa_template) == ""
@ -84,7 +84,7 @@ def test_get_tsa_routemaps():
expected_res = get_string_from_file("/result_isolate.conf")
assert res == expected_res
def test_get_tsb_routemaps():
def test_get_tsb_routemaps():
m = constructor()
assert m.get_ts_routemaps([], m.tsb_template) == ""
@ -100,13 +100,13 @@ def get_string_from_file(filename):
return cfg
@patch('bgpcfgd.managers_device_global.log_err')
def test_set_handler_failure_case(mocked_log_info):
def test_set_handler_failure_case(mocked_log_info):
m = constructor()
res = m.set_handler("STATE", {})
assert res == False, "Expect False return value for invalid data passed to set_handler"
mocked_log_info.assert_called_with("DeviceGlobalCfgMgr:: data is None")
def test_del_handler():
def test_del_handler():
m = constructor()
res = m.del_handler("STATE")
assert res, "Expect True return value for del_handler"

View File

@ -3,7 +3,7 @@ Version: 1.0
Section: devel
Priority: optional
Architecture: all
Depends:
Depends:
Maintainer: SONiC <sonic@microsoft.com>
Description: sonic build hooks
Hooks the build tools, such as apt-get, wget, pip, etc.

View File

@ -373,7 +373,7 @@ update_version_file()
done
sort -u $tmp_file > $version_file
rm -f $tmp_file
if [[ "${version_name}" == *-deb ]]; then
update_preference_deb
fi

View File

@ -12,7 +12,7 @@ DIST=$(grep VERSION_CODENAME /etc/os-release | cut -d= -f2)
mkdir -p $TARGET_PATH
chmod a+rw $TARGET_PATH
# Skip the package that does have a static build version.
# Skip the package that does have a static build version.
# SAI package versions are changed too frequently.
SKIP_VERSION_PACKAGE="libsaibcm|libpaibcm|linuxptp|@ file://"
dpkg-query -W -f '${Package}==${Version}\n' | grep -Ev "${SKIP_VERSION_PACKAGE}" > "${TARGET_PATH}/versions-deb-${DIST}-${ARCH}"

View File

@ -21,6 +21,6 @@ if [ ! -z "$(get_version_cache_option)" ]; then
DPkg::Post-Invoke { "rm -f /var/cache/apt/archives/*.deb /var/cache/apt/archives/partial/*.deb /var/cache/apt/*.bin || true"; };
APT::Update::Post-Invoke { "rm -f /var/cache/apt/archives/*.deb /var/cache/apt/archives/partial/*.deb /var/cache/apt/*.bin || true"; };
EOF
fi

View File

@ -4,7 +4,7 @@ IMAGENAME=$1
. /usr/local/share/buildinfo/scripts/buildinfo_base.sh
set -x
set -x
if [ ! -z "$(get_version_cache_option)" ]; then
@ -18,7 +18,7 @@ fi
apt-get -s clean -y
apt-get -s autoclean -y
apt-get -s autoremove -y
#apt-get -s autoremove -y --purge
#apt-get -s autoremove -y --purge
rm -f /var/cache/apt/archives/*.deb /var/cache/apt/*.bin
if [[ ! ${IMAGENAME} =~ -slave- ]]; then

View File

@ -118,7 +118,7 @@ def generate_l2_config(data):
if 'uplinks' in data:
uplinks = data['uplinks']
data.pop('uplinks')
if 'downlinks' in data:
downlinks = data['downlinks']
data.pop('downlinks')

View File

@ -48,7 +48,7 @@ BACKEND_ASIC_SUB_ROLE = 'BackEnd'
dualtor_cable_types = ["active-active", "active-standby"]
# Default Virtual Network Index (VNI)
# Default Virtual Network Index (VNI)
vni_default = 8000
# Defination of custom acl table types
@ -475,7 +475,7 @@ def parse_dpg(dpg, hname):
tunnelintfs_qos_remap_config = defaultdict(dict)
for child in dpg:
"""
"""
In Multi-NPU platforms the acl intfs are defined only for the host not for individual asic.
There is just one aclintf node in the minigraph
Get the aclintfs node first.
@ -499,7 +499,7 @@ def parse_dpg(dpg, hname):
if vni_element.text.isdigit():
vni = int(vni_element.text)
else:
print("VNI must be an integer (use default VNI %d instead)" % vni_default, file=sys.stderr)
print("VNI must be an integer (use default VNI %d instead)" % vni_default, file=sys.stderr)
ipintfs = child.find(str(QName(ns, "IPInterfaces")))
intfs = {}
@ -553,7 +553,7 @@ def parse_dpg(dpg, hname):
pc_intfs = []
pcs = {}
pc_members = {}
intfs_inpc = [] # List to hold all the LAG member interfaces
intfs_inpc = [] # List to hold all the LAG member interfaces
for pcintf in pcintfs.findall(str(QName(ns, "PortChannel"))):
pcintfname = pcintf.find(str(QName(ns, "Name"))).text
pcintfmbr = pcintf.find(str(QName(ns, "AttachTo"))).text
@ -787,7 +787,7 @@ def parse_dpg(dpg, hname):
else:
is_bmc_data = True
acl_table_types['BMCDATA'] = acl_table_type_defination['BMCDATA']
# if acl is classified as mirror (erpsan) or acl interface
# if acl is classified as mirror (erpsan) or acl interface
# are binded then do not classify as Control plane.
# For multi-asic platforms it's possible there is no
# interface are binded to everflow in host namespace.
@ -838,9 +838,9 @@ def parse_dpg(dpg, hname):
mg_tunnels = child.find(str(QName(ns, "TunnelInterfaces")))
if mg_tunnels is not None:
table_key_to_mg_key_map = {"encap_ecn_mode": "EcnEncapsulationMode",
"ecn_mode": "EcnDecapsulationMode",
"dscp_mode": "DifferentiatedServicesCodePointMode",
table_key_to_mg_key_map = {"encap_ecn_mode": "EcnEncapsulationMode",
"ecn_mode": "EcnDecapsulationMode",
"dscp_mode": "DifferentiatedServicesCodePointMode",
"ttl_mode": "TtlMode"}
tunnel_qos_remap_table_key_to_mg_key_map = {
@ -860,7 +860,7 @@ def parse_dpg(dpg, hname):
# If the minigraph has the key, add the corresponding config DB key to the table
if mg_key in mg_tunnel.attrib:
tunnelintfs[tunnel_type][tunnel_name][table_key] = mg_tunnel.attrib[mg_key]
tunnelintfs_qos_remap_config[tunnel_type][tunnel_name] = {
"tunnel_type": mg_tunnel.attrib["Type"].upper(),
}
@ -1209,12 +1209,12 @@ def parse_deviceinfo(meta, hwsku):
return port_speeds, port_descriptions, sys_ports
# Function to check if IP address is present in the key.
# Function to check if IP address is present in the key.
# If it is present, then the key would be a tuple.
def is_ip_prefix_in_key(key):
return (isinstance(key, tuple))
# Special parsing for spine chassis frontend
# Special parsing for spine chassis frontend
def parse_spine_chassis_fe(results, vni, lo_intfs, phyport_intfs, pc_intfs, pc_members, devices):
chassis_vnet ='VnetFE'
chassis_vxlan_tunnel = 'TunnelInt'
@ -1239,29 +1239,29 @@ def parse_spine_chassis_fe(results, vni, lo_intfs, phyport_intfs, pc_intfs, pc_m
# For each IP interface
for intf in phyport_intfs:
# A IP interface may have multiple entries.
# A IP interface may have multiple entries.
# For example, "Ethernet0": {}", "Ethernet0|192.168.1.1": {}"
# We only care about the one without IP information
if is_ip_prefix_in_key(intf) == True:
continue
continue
neighbor_router = results['DEVICE_NEIGHBOR'][intf]['name']
# If the neighbor router is an external router
# If the neighbor router is an external router
if devices[neighbor_router]['type'] != chassis_backend_role:
# Enslave the interface to a Vnet
phyport_intfs[intf] = {'vnet_name': chassis_vnet}
# For each port channel IP interface
for pc_intf in pc_intfs:
# A port channel IP interface may have multiple entries.
# A port channel IP interface may have multiple entries.
# For example, "Portchannel0": {}", "Portchannel0|192.168.1.1": {}"
# We only care about the one without IP information
if is_ip_prefix_in_key(pc_intf) == True:
continue
continue
intf_name = None
# Get a physical interface that belongs to this port channel
intf_name = None
# Get a physical interface that belongs to this port channel
for pc_member in pc_members:
if pc_member[0] == pc_intf:
intf_name = pc_member[1]
@ -1274,10 +1274,10 @@ def parse_spine_chassis_fe(results, vni, lo_intfs, phyport_intfs, pc_intfs, pc_m
# Get the neighbor router of this port channel interface
neighbor_router = results['DEVICE_NEIGHBOR'][intf_name]['name']
# If the neighbor router is an external router
# If the neighbor router is an external router
if devices[neighbor_router]['type'] != chassis_backend_role:
# Enslave the port channel interface to a Vnet
pc_intfs[pc_intf] = {'vnet_name': chassis_vnet}
pc_intfs[pc_intf] = {'vnet_name': chassis_vnet}
###############################################################################
#
@ -1306,10 +1306,10 @@ def filter_acl_table_bindings(acls, neighbors, port_channels, pc_members, sub_ro
return filter_acl_table_for_backend(acls, vlan_members)
filter_acls = {}
# If the asic role is BackEnd no ACL Table (Ctrl/Data/Everflow) is binded.
# This will be applicable in Multi-NPU Platforms.
if sub_role == BACKEND_ASIC_SUB_ROLE:
return filter_acls
@ -1317,7 +1317,7 @@ def filter_acl_table_bindings(acls, neighbors, port_channels, pc_members, sub_ro
# List of Backplane ports
backplane_port_list = [v for k,v in port_alias_map.items() if v.startswith(backplane_prefix())]
# Get the front panel port channel.
for port_channel_intf in port_channels:
backend_port_channel = any(lag_member[1] in backplane_port_list \
@ -1349,12 +1349,12 @@ def filter_acl_table_bindings(acls, neighbors, port_channels, pc_members, sub_ro
if port in port_channels and port not in front_port_channel_intf:
continue
front_panel_ports.append(port)
# Filters out inactive front-panel ports from the binding list for mirror
# ACL tables. We define an "active" port as one that is a member of a
# front pannel port channel or one that is connected to a neighboring device via front panel port.
active_ports = [port for port in front_panel_ports if port in neighbors.keys() or port in front_port_channel_intf]
if not active_ports:
print('Warning: mirror table {} in ACL_TABLE does not have any ports bound to it'.format(acl_table), file=sys.stderr)
@ -1421,7 +1421,7 @@ def parse_xml(filename, platform=None, port_config_file=None, asic_name=None, hw
filename -- minigraph file name
platform -- device platform
port_config_file -- port config file name
asic_name -- asic name; to parse multi-asic device minigraph to
asic_name -- asic name; to parse multi-asic device minigraph to
generate asic specific configuration.
"""
@ -1501,7 +1501,7 @@ def parse_xml(filename, platform=None, port_config_file=None, asic_name=None, hw
docker_routing_config_mode = child.text
(ports, alias_map, alias_asic_map) = get_port_config(hwsku=hwsku, platform=platform, port_config_file=port_config_file, asic_name=asic_name, hwsku_config_file=hwsku_config_file)
port_names_map.update(ports)
port_alias_map.update(alias_map)
port_alias_asic_map.update(alias_asic_map)
@ -1592,7 +1592,7 @@ def parse_xml(filename, platform=None, port_config_file=None, asic_name=None, hw
print("Warning: more than one peer switch was found. Only the first will be parsed: {}".format(results['PEER_SWITCH'].keys()[0]))
results['DEVICE_METADATA']['localhost']['peer_switch'] = list(results['PEER_SWITCH'].keys())[0]
# Enable tunnel_qos_remap if downstream_redundancy_types(T1) or redundancy_type(T0) = Gemini/Libra
enable_tunnel_qos_map = False
if platform and 'kvm' in platform:
@ -1607,8 +1607,8 @@ def parse_xml(filename, platform=None, port_config_file=None, asic_name=None, hw
if len(system_defaults) > 0:
results['SYSTEM_DEFAULTS'] = system_defaults
# for this hostname, if sub_role is defined, add sub_role in
# for this hostname, if sub_role is defined, add sub_role in
# device_metadata
if sub_role is not None:
current_device['sub_role'] = sub_role
@ -1743,7 +1743,7 @@ def parse_xml(filename, platform=None, port_config_file=None, asic_name=None, hw
port_default_speed = port_speeds_default.get(port_name, None)
port_png_speed = port_speed_png[port_name]
# when the port speed is changes from 400g to 100g/40g
# when the port speed is changes from 400g to 100g/40g
# update the port lanes, use the first 4 lanes of the 400G port to support 100G/40G port
if port_default_speed == '400000' and (port_png_speed == '100000' or port_png_speed == '40000'):
port_lanes = ports[port_name].get('lanes', '').split(',')

File diff suppressed because it is too large Load Diff

View File

@ -411,7 +411,7 @@
<AttachTo>etp19</AttachTo>
<Address>200.200.200.10</Address>
<Type>FineGrainedECMPGroupMember</Type>
</IPNextHop>
</IPNextHop>
<IPNextHop>
<ElementType>IPNextHop</ElementType>
<Name i:nil="true" />
@ -481,7 +481,7 @@
<AttachTo>etp19</AttachTo>
<Address>200:200:200:200::10</Address>
<Type>FineGrainedECMPGroupMember</Type>
</IPNextHop>
</IPNextHop>
</IPNextHops>
</DeviceDataPlaneInfo>
</DpgDec>

View File

@ -1,11 +1,11 @@
{
"PORT|Ethernet0": {
"lanes": "29,30,31,32",
"description": "config_db:switch-01t1:port1",
"pfc_asym": "off",
"mtu": "9100",
"alias": "fortyGigE0/0",
"admin_status": "up",
"lanes": "29,30,31,32",
"description": "config_db:switch-01t1:port1",
"pfc_asym": "off",
"mtu": "9100",
"alias": "fortyGigE0/0",
"admin_status": "up",
"speed": "10000"
},
"PORT|Ethernet4": {

View File

@ -1,9 +1,9 @@
# name lanes alias index asic_port_name role
# name lanes alias index asic_port_name role
Ethernet0 33,34,35,36 Ethernet1/1 0 Eth0-ASIC0 Ext
Ethernet4 29,30,31,32 Ethernet1/2 1 Eth1-ASIC0 Ext
Ethernet8 41,42,43,44 Ethernet1/3 2 Eth2-ASIC0 Ext
Ethernet12 37,38,39,40 Ethernet1/4 3 Eth3-ASIC0 Ext
Ethernet-BP0 13,14,15,16 Eth4-ASIC0 0 Eth4-ASIC0 Int
Ethernet-BP4 17,18,19,20 Eth5-ASIC0 1 Eth5-ASIC0 Int
Ethernet-BP8 21,22,23,24 Eth6-ASIC0 2 Eth6-ASIC0 Int
Ethernet-BP12 25,26,27,28 Eth7-ASIC0 3 Eth7-ASIC0 Int
Ethernet4 29,30,31,32 Ethernet1/2 1 Eth1-ASIC0 Ext
Ethernet8 41,42,43,44 Ethernet1/3 2 Eth2-ASIC0 Ext
Ethernet12 37,38,39,40 Ethernet1/4 3 Eth3-ASIC0 Ext
Ethernet-BP0 13,14,15,16 Eth4-ASIC0 0 Eth4-ASIC0 Int
Ethernet-BP4 17,18,19,20 Eth5-ASIC0 1 Eth5-ASIC0 Int
Ethernet-BP8 21,22,23,24 Eth6-ASIC0 2 Eth6-ASIC0 Int
Ethernet-BP12 25,26,27,28 Eth7-ASIC0 3 Eth7-ASIC0 Int

View File

@ -1,4 +1,4 @@
# name lanes alias index asic_port_name role
# name lanes alias index asic_port_name role
Ethernet0 33,34,35,36 Ethernet1/1 0 Eth0-ASIC0 Ext
Ethernet4 29,30,31,32 Ethernet1/2 1 Eth1-ASIC0 Ext
Ethernet8 41,42,43,44 Ethernet1/3 2 Eth2-ASIC0 Ext

View File

@ -910,9 +910,9 @@
</EthernetInterfaces>
<FlowControl>true</FlowControl>
<Height>0</Height>
<HwSku>Arista-7050-QX-32S</HwSku>
<HwSku>Arista-7050-QX-32S</HwSku>
<ManagementInterfaces/>
</DeviceInfo>
</DeviceInfo>
</DeviceInfos>
<MetadataDeclaration>
<Devices xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution">

View File

@ -806,7 +806,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.2/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::2/96</d5p1:IPPrefix>
</AddressV6>
@ -836,7 +836,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.3/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::3/96</d5p1:IPPrefix>
</AddressV6>
@ -866,7 +866,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.4/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::4/96</d5p1:IPPrefix>
</AddressV6>
@ -896,7 +896,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.5/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::5/96</d5p1:IPPrefix>
</AddressV6>
@ -926,7 +926,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.6/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::6/96</d5p1:IPPrefix>
</AddressV6>
@ -956,7 +956,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.7/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::7/96</d5p1:IPPrefix>
</AddressV6>
@ -986,7 +986,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.8/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::8/96</d5p1:IPPrefix>
</AddressV6>
@ -1016,7 +1016,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.9/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::9/96</d5p1:IPPrefix>
</AddressV6>
@ -1046,7 +1046,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.10/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::a/96</d5p1:IPPrefix>
</AddressV6>
@ -1076,7 +1076,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.11/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::b/96</d5p1:IPPrefix>
</AddressV6>
@ -1106,7 +1106,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.12/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::c/96</d5p1:IPPrefix>
</AddressV6>
@ -1136,7 +1136,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.13/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::d/96</d5p1:IPPrefix>
</AddressV6>
@ -1166,7 +1166,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.14/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::e/96</d5p1:IPPrefix>
</AddressV6>
@ -1196,7 +1196,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.15/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::f/96</d5p1:IPPrefix>
</AddressV6>
@ -1226,7 +1226,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.16/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::10/96</d5p1:IPPrefix>
</AddressV6>
@ -1256,7 +1256,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.17/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::11/96</d5p1:IPPrefix>
</AddressV6>
@ -1286,7 +1286,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.18/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::12/96</d5p1:IPPrefix>
</AddressV6>
@ -1316,7 +1316,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.19/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::13/96</d5p1:IPPrefix>
</AddressV6>
@ -1346,7 +1346,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.20/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::14/96</d5p1:IPPrefix>
</AddressV6>
@ -1376,7 +1376,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.21/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::15/96</d5p1:IPPrefix>
</AddressV6>
@ -1406,7 +1406,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.22/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::16/96</d5p1:IPPrefix>
</AddressV6>
@ -1436,7 +1436,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.23/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::17/96</d5p1:IPPrefix>
</AddressV6>
@ -1466,7 +1466,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.24/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::18/96</d5p1:IPPrefix>
</AddressV6>
@ -1496,7 +1496,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.25/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::19/96</d5p1:IPPrefix>
</AddressV6>

View File

@ -806,7 +806,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.2/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::2/96</d5p1:IPPrefix>
</AddressV6>
@ -836,7 +836,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.3/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::3/96</d5p1:IPPrefix>
</AddressV6>
@ -866,7 +866,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.4/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::4/96</d5p1:IPPrefix>
</AddressV6>
@ -896,7 +896,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.5/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::5/96</d5p1:IPPrefix>
</AddressV6>
@ -926,7 +926,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.6/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::6/96</d5p1:IPPrefix>
</AddressV6>
@ -956,7 +956,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.7/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::7/96</d5p1:IPPrefix>
</AddressV6>
@ -986,7 +986,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.8/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::8/96</d5p1:IPPrefix>
</AddressV6>
@ -1016,7 +1016,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.9/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::9/96</d5p1:IPPrefix>
</AddressV6>
@ -1046,7 +1046,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.10/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::a/96</d5p1:IPPrefix>
</AddressV6>
@ -1076,7 +1076,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.11/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::b/96</d5p1:IPPrefix>
</AddressV6>
@ -1106,7 +1106,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.12/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::c/96</d5p1:IPPrefix>
</AddressV6>
@ -1136,7 +1136,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.13/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::d/96</d5p1:IPPrefix>
</AddressV6>
@ -1166,7 +1166,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.14/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::e/96</d5p1:IPPrefix>
</AddressV6>
@ -1196,7 +1196,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.15/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::f/96</d5p1:IPPrefix>
</AddressV6>
@ -1226,7 +1226,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.16/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::10/96</d5p1:IPPrefix>
</AddressV6>
@ -1256,7 +1256,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.17/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::11/96</d5p1:IPPrefix>
</AddressV6>
@ -1286,7 +1286,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.18/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::12/96</d5p1:IPPrefix>
</AddressV6>
@ -1316,7 +1316,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.19/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::13/96</d5p1:IPPrefix>
</AddressV6>
@ -1346,7 +1346,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.20/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::14/96</d5p1:IPPrefix>
</AddressV6>
@ -1376,7 +1376,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.21/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::15/96</d5p1:IPPrefix>
</AddressV6>
@ -1406,7 +1406,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.22/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::16/96</d5p1:IPPrefix>
</AddressV6>
@ -1436,7 +1436,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.23/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::17/96</d5p1:IPPrefix>
</AddressV6>
@ -1466,7 +1466,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.24/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::18/96</d5p1:IPPrefix>
</AddressV6>
@ -1496,7 +1496,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.25/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::19/96</d5p1:IPPrefix>
</AddressV6>

View File

@ -1254,7 +1254,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.2/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::2/96</d5p1:IPPrefix>
</AddressV6>
@ -1284,7 +1284,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.3/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::3/96</d5p1:IPPrefix>
</AddressV6>
@ -1314,7 +1314,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.4/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::4/96</d5p1:IPPrefix>
</AddressV6>
@ -1344,7 +1344,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.5/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::5/96</d5p1:IPPrefix>
</AddressV6>
@ -1374,7 +1374,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.6/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::6/96</d5p1:IPPrefix>
</AddressV6>
@ -1404,7 +1404,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.7/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::7/96</d5p1:IPPrefix>
</AddressV6>
@ -1434,7 +1434,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.8/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::8/96</d5p1:IPPrefix>
</AddressV6>
@ -1464,7 +1464,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.9/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::9/96</d5p1:IPPrefix>
</AddressV6>
@ -1494,7 +1494,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.10/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::a/96</d5p1:IPPrefix>
</AddressV6>
@ -1524,7 +1524,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.11/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::b/96</d5p1:IPPrefix>
</AddressV6>
@ -1554,7 +1554,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.12/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::c/96</d5p1:IPPrefix>
</AddressV6>
@ -1584,7 +1584,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.13/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::d/96</d5p1:IPPrefix>
</AddressV6>
@ -1614,7 +1614,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.14/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::e/96</d5p1:IPPrefix>
</AddressV6>
@ -1644,7 +1644,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.15/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::f/96</d5p1:IPPrefix>
</AddressV6>
@ -1674,7 +1674,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.16/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::10/96</d5p1:IPPrefix>
</AddressV6>
@ -1704,7 +1704,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.17/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::11/96</d5p1:IPPrefix>
</AddressV6>
@ -1734,7 +1734,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.18/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::12/96</d5p1:IPPrefix>
</AddressV6>
@ -1764,7 +1764,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.19/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::13/96</d5p1:IPPrefix>
</AddressV6>
@ -1794,7 +1794,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.20/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::14/96</d5p1:IPPrefix>
</AddressV6>
@ -1824,7 +1824,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.21/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::15/96</d5p1:IPPrefix>
</AddressV6>
@ -1854,7 +1854,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.22/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::16/96</d5p1:IPPrefix>
</AddressV6>
@ -1884,7 +1884,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.23/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::17/96</d5p1:IPPrefix>
</AddressV6>
@ -1914,7 +1914,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.24/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::18/96</d5p1:IPPrefix>
</AddressV6>
@ -1944,7 +1944,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.25/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::19/96</d5p1:IPPrefix>
</AddressV6>
@ -1974,7 +1974,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.26/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::1a/96</d5p1:IPPrefix>
</AddressV6>
@ -2004,7 +2004,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.27/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::1b/96</d5p1:IPPrefix>
</AddressV6>
@ -2034,7 +2034,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.28/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::1c/96</d5p1:IPPrefix>
</AddressV6>
@ -2064,7 +2064,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.29/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::1d/96</d5p1:IPPrefix>
</AddressV6>
@ -2094,7 +2094,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.30/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::1e/96</d5p1:IPPrefix>
</AddressV6>
@ -2124,7 +2124,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.31/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::1f/96</d5p1:IPPrefix>
</AddressV6>
@ -2154,7 +2154,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.32/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::20/96</d5p1:IPPrefix>
</AddressV6>
@ -2184,7 +2184,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.33/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::21/96</d5p1:IPPrefix>
</AddressV6>
@ -2214,7 +2214,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.34/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::22/96</d5p1:IPPrefix>
</AddressV6>
@ -2244,7 +2244,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.35/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::23/96</d5p1:IPPrefix>
</AddressV6>
@ -2274,7 +2274,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.36/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::24/96</d5p1:IPPrefix>
</AddressV6>
@ -2304,7 +2304,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.37/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::25/96</d5p1:IPPrefix>
</AddressV6>
@ -2334,7 +2334,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.38/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::26/96</d5p1:IPPrefix>
</AddressV6>
@ -2364,7 +2364,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.39/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::27/96</d5p1:IPPrefix>
</AddressV6>
@ -2394,7 +2394,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.40/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::28/96</d5p1:IPPrefix>
</AddressV6>
@ -2424,7 +2424,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.41/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::29/96</d5p1:IPPrefix>
</AddressV6>
@ -2454,7 +2454,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.42/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::2a/96</d5p1:IPPrefix>
</AddressV6>
@ -2484,7 +2484,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.43/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::2b/96</d5p1:IPPrefix>
</AddressV6>
@ -2514,7 +2514,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.44/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::2c/96</d5p1:IPPrefix>
</AddressV6>
@ -2544,7 +2544,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.45/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::2d/96</d5p1:IPPrefix>
</AddressV6>
@ -2574,7 +2574,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.46/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::2e/96</d5p1:IPPrefix>
</AddressV6>
@ -2604,7 +2604,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.47/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::2f/96</d5p1:IPPrefix>
</AddressV6>
@ -2634,7 +2634,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.48/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::30/96</d5p1:IPPrefix>
</AddressV6>
@ -2664,7 +2664,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.49/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::31/96</d5p1:IPPrefix>
</AddressV6>
@ -2694,7 +2694,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.50/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::32/96</d5p1:IPPrefix>
</AddressV6>
@ -2724,7 +2724,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.51/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::33/96</d5p1:IPPrefix>
</AddressV6>
@ -2754,7 +2754,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.52/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::34/96</d5p1:IPPrefix>
</AddressV6>
@ -2784,7 +2784,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.53/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::35/96</d5p1:IPPrefix>
</AddressV6>
@ -2814,7 +2814,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.54/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::36/96</d5p1:IPPrefix>
</AddressV6>
@ -2844,7 +2844,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.55/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::37/96</d5p1:IPPrefix>
</AddressV6>
@ -2874,7 +2874,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.56/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::38/96</d5p1:IPPrefix>
</AddressV6>
@ -2904,7 +2904,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.57/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::39/96</d5p1:IPPrefix>
</AddressV6>

View File

@ -1254,7 +1254,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.2/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::2/96</d5p1:IPPrefix>
</AddressV6>
@ -1284,7 +1284,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.3/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::3/96</d5p1:IPPrefix>
</AddressV6>
@ -1314,7 +1314,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.4/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::4/96</d5p1:IPPrefix>
</AddressV6>
@ -1344,7 +1344,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.5/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::5/96</d5p1:IPPrefix>
</AddressV6>
@ -1374,7 +1374,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.6/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::6/96</d5p1:IPPrefix>
</AddressV6>
@ -1404,7 +1404,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.7/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::7/96</d5p1:IPPrefix>
</AddressV6>
@ -1434,7 +1434,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.8/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::8/96</d5p1:IPPrefix>
</AddressV6>
@ -1464,7 +1464,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.9/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::9/96</d5p1:IPPrefix>
</AddressV6>
@ -1494,7 +1494,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.10/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::a/96</d5p1:IPPrefix>
</AddressV6>
@ -1524,7 +1524,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.11/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::b/96</d5p1:IPPrefix>
</AddressV6>
@ -1554,7 +1554,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.12/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::c/96</d5p1:IPPrefix>
</AddressV6>
@ -1584,7 +1584,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.13/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::d/96</d5p1:IPPrefix>
</AddressV6>
@ -1614,7 +1614,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.14/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::e/96</d5p1:IPPrefix>
</AddressV6>
@ -1644,7 +1644,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.15/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::f/96</d5p1:IPPrefix>
</AddressV6>
@ -1674,7 +1674,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.16/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::10/96</d5p1:IPPrefix>
</AddressV6>
@ -1704,7 +1704,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.17/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::11/96</d5p1:IPPrefix>
</AddressV6>
@ -1734,7 +1734,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.18/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::12/96</d5p1:IPPrefix>
</AddressV6>
@ -1764,7 +1764,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.19/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::13/96</d5p1:IPPrefix>
</AddressV6>
@ -1794,7 +1794,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.20/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::14/96</d5p1:IPPrefix>
</AddressV6>
@ -1824,7 +1824,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.21/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::15/96</d5p1:IPPrefix>
</AddressV6>
@ -1854,7 +1854,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.22/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::16/96</d5p1:IPPrefix>
</AddressV6>
@ -1884,7 +1884,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.23/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::17/96</d5p1:IPPrefix>
</AddressV6>
@ -1914,7 +1914,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.24/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::18/96</d5p1:IPPrefix>
</AddressV6>
@ -1944,7 +1944,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.25/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::19/96</d5p1:IPPrefix>
</AddressV6>
@ -1974,7 +1974,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.26/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::1a/96</d5p1:IPPrefix>
</AddressV6>
@ -2004,7 +2004,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.27/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::1b/96</d5p1:IPPrefix>
</AddressV6>
@ -2034,7 +2034,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.28/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::1c/96</d5p1:IPPrefix>
</AddressV6>
@ -2064,7 +2064,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.29/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::1d/96</d5p1:IPPrefix>
</AddressV6>
@ -2094,7 +2094,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.30/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::1e/96</d5p1:IPPrefix>
</AddressV6>
@ -2124,7 +2124,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.31/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::1f/96</d5p1:IPPrefix>
</AddressV6>
@ -2154,7 +2154,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.32/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::20/96</d5p1:IPPrefix>
</AddressV6>
@ -2184,7 +2184,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.33/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::21/96</d5p1:IPPrefix>
</AddressV6>
@ -2214,7 +2214,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.34/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::22/96</d5p1:IPPrefix>
</AddressV6>
@ -2244,7 +2244,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.35/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::23/96</d5p1:IPPrefix>
</AddressV6>
@ -2274,7 +2274,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.36/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::24/96</d5p1:IPPrefix>
</AddressV6>
@ -2304,7 +2304,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.37/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::25/96</d5p1:IPPrefix>
</AddressV6>
@ -2334,7 +2334,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.38/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::26/96</d5p1:IPPrefix>
</AddressV6>
@ -2364,7 +2364,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.39/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::27/96</d5p1:IPPrefix>
</AddressV6>
@ -2394,7 +2394,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.40/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::28/96</d5p1:IPPrefix>
</AddressV6>
@ -2424,7 +2424,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.41/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::29/96</d5p1:IPPrefix>
</AddressV6>
@ -2454,7 +2454,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.42/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::2a/96</d5p1:IPPrefix>
</AddressV6>
@ -2484,7 +2484,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.43/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::2b/96</d5p1:IPPrefix>
</AddressV6>
@ -2514,7 +2514,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.44/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::2c/96</d5p1:IPPrefix>
</AddressV6>
@ -2544,7 +2544,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.45/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::2d/96</d5p1:IPPrefix>
</AddressV6>
@ -2574,7 +2574,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.46/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::2e/96</d5p1:IPPrefix>
</AddressV6>
@ -2604,7 +2604,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.47/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::2f/96</d5p1:IPPrefix>
</AddressV6>
@ -2634,7 +2634,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.48/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::30/96</d5p1:IPPrefix>
</AddressV6>
@ -2664,7 +2664,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.49/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::31/96</d5p1:IPPrefix>
</AddressV6>
@ -2694,7 +2694,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.50/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::32/96</d5p1:IPPrefix>
</AddressV6>
@ -2724,7 +2724,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.51/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::33/96</d5p1:IPPrefix>
</AddressV6>
@ -2754,7 +2754,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.52/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::34/96</d5p1:IPPrefix>
</AddressV6>
@ -2784,7 +2784,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.53/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::35/96</d5p1:IPPrefix>
</AddressV6>
@ -2814,7 +2814,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.54/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::36/96</d5p1:IPPrefix>
</AddressV6>
@ -2844,7 +2844,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.55/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::37/96</d5p1:IPPrefix>
</AddressV6>
@ -2874,7 +2874,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.56/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::38/96</d5p1:IPPrefix>
</AddressV6>
@ -2904,7 +2904,7 @@
<ElementType>Server</ElementType>
<Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>192.168.0.57/26</d5p1:IPPrefix>
</Address>
</Address>
<AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
<d5p1:IPPrefix>fc02:1000::39/96</d5p1:IPPrefix>
</AddressV6>

View File

@ -914,8 +914,8 @@
<HoldTime>10</HoldTime>
<KeepAliveTime>3</KeepAliveTime>
</BGPSession>
<BGPSession>
<StartRouter>ASIC0</StartRouter>
<EndRouter>ASIC1</EndRouter>

View File

@ -914,8 +914,8 @@
<HoldTime>10</HoldTime>
<KeepAliveTime>3</KeepAliveTime>
</BGPSession>
<BGPSession>
<StartRouter>ASIC0</StartRouter>
<EndRouter>str3-7800-lc2-1</EndRouter>

View File

@ -1,57 +1,57 @@
# name lanes alias index speed
Ethernet0 2304,2305,2306,2307 etp0a 0 100000
Ethernet4 2308,2309,2310,2311 etp0b 0 100000
Ethernet8 2320,2321,2322,2323 etp1a 1 100000
Ethernet12 2324,2325,2326,2327 etp1b 1 100000
Ethernet16 2312,2313,2314,2315 etp2a 2 100000
Ethernet20 2316,2317,2318,2319 etp2b 2 100000
Ethernet24 2056,2057,2058,2059 etp3a 3 100000
Ethernet28 2060,2061,2062,2063 etp3b 3 100000
Ethernet32 1792,1793,1794,1795 etp4a 4 100000
Ethernet36 1796,1797,1798,1799 etp4b 4 100000
Ethernet40 2048,2049,2050,2051 etp5a 5 100000
Ethernet44 2052,2053,2054,2055 etp5b 5 100000
Ethernet48 2560,2561,2562,2563 etp6a 6 100000
Ethernet52 2564,2565,2566,2567 etp6b 6 100000
Ethernet56 2824,2825,2826,2827 etp7a 7 100000
Ethernet60 2828,2829,2830,2831 etp7b 7 100000
Ethernet64 2832,2833,2834,2835 etp8a 8 100000
Ethernet68 2836,2837,2838,2839 etp8b 8 100000
Ethernet72 2816,2817,2818,2819 etp9a 9 100000
Ethernet76 2820,2821,2822,2823 etp9b 9 100000
Ethernet80 2568,2569,2570,2571 etp10a 10 100000
Ethernet84 2572,2573,2574,2575 etp10b 10 100000
Ethernet88 2576,2577,2578,2579 etp11a 11 100000
Ethernet92 2580,2581,2582,2583 etp11b 11 100000
Ethernet96 1536,1537,1538,1539,1540,1541,1542,1543 etp12 12 400000
Ethernet104 1800,1801,1802,1803,1804,1805,1806,1807 etp13 13 400000
Ethernet112 1552,1553,1554,1555,1556,1557,1558,1559 etp14 14 400000
Ethernet120 1544,1545,1546,1547,1548,1549,1550,1551 etp15 15 400000
Ethernet128 1296,1297,1298,1299,1300,1301,1302,1303 etp16 16 400000
Ethernet136 1288,1289,1290,1291,1292,1293,1294,1295 etp17 17 400000
Ethernet144 1280,1281,1282,1283,1284,1285,1286,1287 etp18 18 400000
Ethernet152 1032,1033,1034,1035,1036,1037,1038,1039 etp19 19 400000
Ethernet160 264,265,266,267 etp20a 20 100000
Ethernet164 268,269,270,271 etp20b 20 100000
Ethernet168 272,273,274,275 etp21a 21 100000
Ethernet172 276,277,278,279 etp21b 21 100000
Ethernet176 16,17,18,19 etp22a 22 100000
Ethernet180 20,21,22,23 etp22b 22 100000
Ethernet184 0,1,2,3 etp23a 23 100000
Ethernet188 4,5,6,7 etp23b 23 100000
Ethernet192 256,257,258,259 etp24a 24 100000
Ethernet196 260,261,262,263 etp24b 24 100000
Ethernet200 8,9,10,11 etp25a 25 100000
Ethernet204 12,13,14,15 etp25b 25 100000
Ethernet208 1024,1025,1026,1027 etp26a 26 100000
Ethernet212 1028,1029,1030,1031 etp26b 26 100000
Ethernet216 768,769,770,771 etp27a 27 100000
Ethernet220 772,773,774,775 etp27b 27 100000
Ethernet224 524,525,526,527 etp28a 28 100000
Ethernet228 520,521,522,523 etp28b 28 100000
Ethernet232 776,777,778,779 etp29a 29 100000
Ethernet236 780,781,782,783 etp29b 29 100000
Ethernet240 516,517,518,519 etp30a 30 100000
Ethernet244 512,513,514,515 etp30b 30 100000
Ethernet248 528,529,530,531 etp31a 31 100000
# name lanes alias index speed
Ethernet0 2304,2305,2306,2307 etp0a 0 100000
Ethernet4 2308,2309,2310,2311 etp0b 0 100000
Ethernet8 2320,2321,2322,2323 etp1a 1 100000
Ethernet12 2324,2325,2326,2327 etp1b 1 100000
Ethernet16 2312,2313,2314,2315 etp2a 2 100000
Ethernet20 2316,2317,2318,2319 etp2b 2 100000
Ethernet24 2056,2057,2058,2059 etp3a 3 100000
Ethernet28 2060,2061,2062,2063 etp3b 3 100000
Ethernet32 1792,1793,1794,1795 etp4a 4 100000
Ethernet36 1796,1797,1798,1799 etp4b 4 100000
Ethernet40 2048,2049,2050,2051 etp5a 5 100000
Ethernet44 2052,2053,2054,2055 etp5b 5 100000
Ethernet48 2560,2561,2562,2563 etp6a 6 100000
Ethernet52 2564,2565,2566,2567 etp6b 6 100000
Ethernet56 2824,2825,2826,2827 etp7a 7 100000
Ethernet60 2828,2829,2830,2831 etp7b 7 100000
Ethernet64 2832,2833,2834,2835 etp8a 8 100000
Ethernet68 2836,2837,2838,2839 etp8b 8 100000
Ethernet72 2816,2817,2818,2819 etp9a 9 100000
Ethernet76 2820,2821,2822,2823 etp9b 9 100000
Ethernet80 2568,2569,2570,2571 etp10a 10 100000
Ethernet84 2572,2573,2574,2575 etp10b 10 100000
Ethernet88 2576,2577,2578,2579 etp11a 11 100000
Ethernet92 2580,2581,2582,2583 etp11b 11 100000
Ethernet96 1536,1537,1538,1539,1540,1541,1542,1543 etp12 12 400000
Ethernet104 1800,1801,1802,1803,1804,1805,1806,1807 etp13 13 400000
Ethernet112 1552,1553,1554,1555,1556,1557,1558,1559 etp14 14 400000
Ethernet120 1544,1545,1546,1547,1548,1549,1550,1551 etp15 15 400000
Ethernet128 1296,1297,1298,1299,1300,1301,1302,1303 etp16 16 400000
Ethernet136 1288,1289,1290,1291,1292,1293,1294,1295 etp17 17 400000
Ethernet144 1280,1281,1282,1283,1284,1285,1286,1287 etp18 18 400000
Ethernet152 1032,1033,1034,1035,1036,1037,1038,1039 etp19 19 400000
Ethernet160 264,265,266,267 etp20a 20 100000
Ethernet164 268,269,270,271 etp20b 20 100000
Ethernet168 272,273,274,275 etp21a 21 100000
Ethernet172 276,277,278,279 etp21b 21 100000
Ethernet176 16,17,18,19 etp22a 22 100000
Ethernet180 20,21,22,23 etp22b 22 100000
Ethernet184 0,1,2,3 etp23a 23 100000
Ethernet188 4,5,6,7 etp23b 23 100000
Ethernet192 256,257,258,259 etp24a 24 100000
Ethernet196 260,261,262,263 etp24b 24 100000
Ethernet200 8,9,10,11 etp25a 25 100000
Ethernet204 12,13,14,15 etp25b 25 100000
Ethernet208 1024,1025,1026,1027 etp26a 26 100000
Ethernet212 1028,1029,1030,1031 etp26b 26 100000
Ethernet216 768,769,770,771 etp27a 27 100000
Ethernet220 772,773,774,775 etp27b 27 100000
Ethernet224 524,525,526,527 etp28a 28 100000
Ethernet228 520,521,522,523 etp28b 28 100000
Ethernet232 776,777,778,779 etp29a 29 100000
Ethernet236 780,781,782,783 etp29b 29 100000
Ethernet240 516,517,518,519 etp30a 30 100000
Ethernet244 512,513,514,515 etp30b 30 100000
Ethernet248 528,529,530,531 etp31a 31 100000
Ethernet252 532,533,534,535 etp31b 31 100000

View File

@ -725,7 +725,7 @@
</a:DeviceMetadata>
</Devices>
<Properties xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution"/>
</MetadataDeclaration>
</MetadataDeclaration>
<LinkMetadataDeclaration>
<Link xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution">
<a:LinkMetadata>

View File

@ -914,8 +914,8 @@
<HoldTime>10</HoldTime>
<KeepAliveTime>3</KeepAliveTime>
</BGPSession>
<BGPSession>
<StartRouter>ASIC0</StartRouter>
<EndRouter>ASIC1</EndRouter>

View File

@ -154,8 +154,8 @@
<HoldTime>10</HoldTime>
<KeepAliveTime>3</KeepAliveTime>
</BGPSession>
<BGPSession>
<StartRouter>ASIC0</StartRouter>
<EndRouter>ASIC1</EndRouter>

View File

@ -15,7 +15,7 @@
"AZURE": {
"0": "0",
"1": "1",
"2": "1",
"2": "1",
"3": "3",
"4": "4",
"5": "5",
@ -26,7 +26,7 @@
"AZURE_UPLINK": {
"0": "0",
"1": "1",
"2": "2",
"2": "2",
"3": "3",
"4": "4",
"5": "5",

View File

@ -289,7 +289,7 @@
"PORT_QOS_MAP": {
"Ethernet2": {
"dscp_to_tc_map" : "AZURE",
"tc_to_queue_map" : "AZURE",
"tc_to_pg_map" : "AZURE",
@ -298,7 +298,7 @@
"pfcwd_sw_enable" : "3,4"
},
"Ethernet4": {
"dscp_to_tc_map" : "AZURE",
"tc_to_queue_map" : "AZURE",
"tc_to_pg_map" : "AZURE",
@ -307,7 +307,7 @@
"pfcwd_sw_enable" : "3,4"
},
"Ethernet6": {
"dscp_to_tc_map" : "AZURE",
"tc_to_queue_map" : "AZURE",
"tc_to_pg_map" : "AZURE",
@ -316,7 +316,7 @@
"pfcwd_sw_enable" : "3,4"
},
"Ethernet8": {
"dscp_to_tc_map" : "AZURE",
"tc_to_queue_map" : "AZURE",
"tc_to_pg_map" : "AZURE",
@ -325,7 +325,7 @@
"pfcwd_sw_enable" : "3,4"
},
"Ethernet10": {
"dscp_to_tc_map" : "AZURE",
"tc_to_queue_map" : "AZURE",
"tc_to_pg_map" : "AZURE",
@ -334,7 +334,7 @@
"pfcwd_sw_enable" : "3,4"
},
"Ethernet12": {
"dscp_to_tc_map" : "AZURE",
"tc_to_queue_map" : "AZURE",
"tc_to_pg_map" : "AZURE",
@ -343,7 +343,7 @@
"pfcwd_sw_enable" : "3,4"
},
"Ethernet14": {
"dscp_to_tc_map" : "AZURE",
"tc_to_queue_map" : "AZURE",
"tc_to_pg_map" : "AZURE",
@ -352,7 +352,7 @@
"pfcwd_sw_enable" : "3,4"
},
"Ethernet16": {
"dscp_to_tc_map" : "AZURE",
"tc_to_queue_map" : "AZURE",
"tc_to_pg_map" : "AZURE",
@ -361,7 +361,7 @@
"pfcwd_sw_enable" : "3,4"
},
"Ethernet18": {
"dscp_to_tc_map" : "AZURE",
"tc_to_queue_map" : "AZURE",
"tc_to_pg_map" : "AZURE",
@ -370,7 +370,7 @@
"pfcwd_sw_enable" : "3,4"
},
"Ethernet20": {
"dscp_to_tc_map" : "AZURE",
"tc_to_queue_map" : "AZURE",
"tc_to_pg_map" : "AZURE",
@ -379,7 +379,7 @@
"pfcwd_sw_enable" : "3,4"
},
"Ethernet22": {
"dscp_to_tc_map" : "AZURE",
"tc_to_queue_map" : "AZURE",
"tc_to_pg_map" : "AZURE",
@ -388,7 +388,7 @@
"pfcwd_sw_enable" : "3,4"
},
"Ethernet24": {
"dscp_to_tc_map" : "AZURE",
"tc_to_queue_map" : "AZURE",
"tc_to_pg_map" : "AZURE",
@ -397,7 +397,7 @@
"pfcwd_sw_enable" : "3,4"
},
"Ethernet26": {
"dscp_to_tc_map" : "AZURE",
"tc_to_queue_map" : "AZURE",
"tc_to_pg_map" : "AZURE",
@ -406,7 +406,7 @@
"pfcwd_sw_enable" : "3,4"
},
"Ethernet28": {
"dscp_to_tc_map" : "AZURE",
"tc_to_queue_map" : "AZURE",
"tc_to_pg_map" : "AZURE",
@ -415,7 +415,7 @@
"pfcwd_sw_enable" : "3,4"
},
"Ethernet30": {
"dscp_to_tc_map" : "AZURE",
"tc_to_queue_map" : "AZURE",
"tc_to_pg_map" : "AZURE",
@ -424,7 +424,7 @@
"pfcwd_sw_enable" : "3,4"
},
"Ethernet32": {
"dscp_to_tc_map" : "AZURE",
"tc_to_queue_map" : "AZURE",
"tc_to_pg_map" : "AZURE",
@ -433,7 +433,7 @@
"pfcwd_sw_enable" : "3,4"
},
"Ethernet34": {
"dscp_to_tc_map" : "AZURE",
"tc_to_queue_map" : "AZURE",
"tc_to_pg_map" : "AZURE",
@ -442,7 +442,7 @@
"pfcwd_sw_enable" : "3,4"
},
"Ethernet36": {
"dscp_to_tc_map" : "AZURE",
"tc_to_queue_map" : "AZURE",
"tc_to_pg_map" : "AZURE",
@ -451,7 +451,7 @@
"pfcwd_sw_enable" : "3,4"
},
"Ethernet38": {
"dscp_to_tc_map" : "AZURE",
"tc_to_queue_map" : "AZURE",
"tc_to_pg_map" : "AZURE",
@ -460,7 +460,7 @@
"pfcwd_sw_enable" : "3,4"
},
"Ethernet48": {
"dscp_to_tc_map" : "AZURE",
"tc_to_queue_map" : "AZURE",
"tc_to_pg_map" : "AZURE",

View File

@ -379,7 +379,7 @@
<DeviceLocation i:nil="true"/>
<ManagementAddress xmlns:a="Microsoft.Search.Autopilot.NetMux">
<a:IPPrefix>10.7.0.196/26</a:IPPrefix>
</ManagementAddress>
</ManagementAddress>
<HwSku>Force10-S6000</HwSku>
</Device>
<Device i:type="SmartCable">

View File

@ -314,7 +314,7 @@
<DeviceLocation i:nil="true"/>
<ManagementAddress xmlns:a="Microsoft.Search.Autopilot.NetMux">
<a:IPPrefix>10.7.0.196/26</a:IPPrefix>
</ManagementAddress>
</ManagementAddress>
<HwSku>Force10-S6000</HwSku>
</Device>
<Device i:type="Server">

View File

@ -314,7 +314,7 @@
<DeviceLocation i:nil="true"/>
<ManagementAddress xmlns:a="Microsoft.Search.Autopilot.NetMux">
<a:IPPrefix>10.7.0.196/26</a:IPPrefix>
</ManagementAddress>
</ManagementAddress>
<HwSku>Force10-S6000</HwSku>
</Device>
<Device i:type="Server">

View File

@ -314,7 +314,7 @@
<DeviceLocation i:nil="true"/>
<ManagementAddress xmlns:a="Microsoft.Search.Autopilot.NetMux">
<a:IPPrefix>10.7.0.196/26</a:IPPrefix>
</ManagementAddress>
</ManagementAddress>
<HwSku>Force10-S6000</HwSku>
</Device>
<Device i:type="Server">

View File

@ -359,7 +359,7 @@
<DeviceLocation i:nil="true"/>
<ManagementAddress xmlns:a="Microsoft.Search.Autopilot.NetMux">
<a:IPPrefix>10.7.0.196/26</a:IPPrefix>
</ManagementAddress>
</ManagementAddress>
<HwSku>Force10-S6000</HwSku>
</Device>
<Device i:type="SmartCable">

View File

@ -109,7 +109,7 @@
<Vrf i:nil="true"/>
</BGPPeer>
<BGPPeer>
<Address>10.1.0.32</Address>
<Address>10.1.0.32</Address>
<a:Name>BGPSLBPassive</a:Name>
<a:PeersRange>10.10.10.10/26;100.100.100.100/26</a:PeersRange>
</BGPPeer>

View File

@ -109,7 +109,7 @@
<Vrf i:nil="true"/>
</BGPPeer>
<BGPPeer>
<Address>10.1.0.32</Address>
<Address>10.1.0.32</Address>
<a:Name>BGPSLBPassive</a:Name>
<a:PeersRange>10.10.10.10/26;100.100.100.100/26</a:PeersRange>
</BGPPeer>

View File

@ -2133,9 +2133,9 @@
</EthernetInterfaces>
<FlowControl>true</FlowControl>
<Height>0</Height>
<HwSku>ACS-MSN2700</HwSku>
<HwSku>ACS-MSN2700</HwSku>
<ManagementInterfaces/>
</DeviceInfo>
</DeviceInfo>
</DeviceInfos>
<MetadataDeclaration>
<Devices xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution">

View File

@ -127,7 +127,7 @@
<Name>PortChannel8</Name>
<AttachTo>Ethernet16;Ethernet20</AttachTo>
<SubInterface/>
</PortChannel>
</PortChannel>
</PortChannelInterfaces>
<VlanInterfaces/>
<IPInterfaces>
@ -201,11 +201,11 @@
<Devices>
<Device i:type="SpineChassisFrontendRouter">
<Hostname>SpineFront01</Hostname>
<HwSku>Force10-S6000</HwSku>
<HwSku>Force10-S6000</HwSku>
</Device>
<Device i:type="SpineChassisFrontendRouter">
<Hostname>SpineFront02</Hostname>
<HwSku>Force10-S6000</HwSku>
<HwSku>Force10-S6000</HwSku>
</Device>
<Device i:type="LeafRouter">
<Hostname>Leaf01</Hostname>
@ -611,9 +611,9 @@
</EthernetInterfaces>
<FlowControl>false</FlowControl>
<Height>0</Height>
<HwSku>Force10-S6000</HwSku>
<HwSku>Force10-S6000</HwSku>
<ManagementInterfaces/>
</DeviceInfo>
</DeviceInfo>
</DeviceInfos>
<MetadataDeclaration>
<Devices xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution">

View File

@ -165,11 +165,11 @@
<Devices>
<Device i:type="SpineChassisFrontendRouter">
<Hostname>SpineFront01</Hostname>
<HwSku>Force10-S6000</HwSku>
<HwSku>Force10-S6000</HwSku>
</Device>
<Device i:type="SpineChassisFrontendRouter">
<Hostname>SpineFront02</Hostname>
<HwSku>Force10-S6000</HwSku>
<HwSku>Force10-S6000</HwSku>
</Device>
<Device i:type="LeafRouter">
<Hostname>Leaf01</Hostname>
@ -575,9 +575,9 @@
</EthernetInterfaces>
<FlowControl>false</FlowControl>
<Height>0</Height>
<HwSku>Force10-S6000</HwSku>
<HwSku>Force10-S6000</HwSku>
<ManagementInterfaces/>
</DeviceInfo>
</DeviceInfo>
</DeviceInfos>
<MetadataDeclaration>
<Devices xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution">

View File

@ -164,11 +164,11 @@
<Devices>
<Device i:type="SpineChassisFrontendRouter">
<Hostname>SpineFront01</Hostname>
<HwSku>Force10-S6000</HwSku>
<HwSku>Force10-S6000</HwSku>
</Device>
<Device i:type="SpineChassisFrontendRouter">
<Hostname>SpineFront02</Hostname>
<HwSku>Force10-S6000</HwSku>
<HwSku>Force10-S6000</HwSku>
</Device>
<Device i:type="LeafRouter">
<Hostname>Leaf01</Hostname>
@ -574,9 +574,9 @@
</EthernetInterfaces>
<FlowControl>false</FlowControl>
<Height>0</Height>
<HwSku>Force10-S6000</HwSku>
<HwSku>Force10-S6000</HwSku>
<ManagementInterfaces/>
</DeviceInfo>
</DeviceInfo>
</DeviceInfos>
<MetadataDeclaration>
<Devices xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution">

View File

@ -304,7 +304,7 @@ class TestCfgGen(TestCase):
argument = ['-m', self.ecmp_graph, '-p', self.mlnx_port_config, '-v', 'FG_NHG']
output = self.run_script(argument)
print(output.strip())
self.assertEqual(utils.to_dict(output.strip()),
self.assertEqual(utils.to_dict(output.strip()),
utils.to_dict(
"{'fgnhg_v4': {'match_mode': 'nexthop-based', 'bucket_size': 120}, "
"'fgnhg_v6': {'match_mode': 'nexthop-based', 'bucket_size': 120}}"
@ -378,7 +378,7 @@ class TestCfgGen(TestCase):
utils.to_dict(
"{'Ethernet124': {'name': 'ARISTA04T1', 'port': 'Ethernet1/1'}, "
"'Ethernet120': {'name': 'ARISTA03T1', 'port': 'Ethernet1/1'}, "
"'Ethernet4': {'name': 'Servers0', 'port': 'eth0'}, "
"'Ethernet4': {'name': 'Servers0', 'port': 'eth0'}, "
"'Ethernet116': {'name': 'ARISTA02T1', 'port': 'Ethernet1/1'}, "
"'Ethernet100': {'name': 'Servers100', 'port': 'eth0'}, "
"'Ethernet112': {'name': 'ARISTA01T1', 'port': 'Ethernet1/1'}}")
@ -619,7 +619,7 @@ class TestCfgGen(TestCase):
)
def test_minigraph_extra_ethernet_interfaces(self, **kwargs):
graph_file = kwargs.get('graph_file', self.sample_graph_simple)
graph_file = kwargs.get('graph_file', self.sample_graph_simple)
argument = ['-m', graph_file, '-p', self.port_config, '-v', "PORT"]
output = self.run_script(argument)
@ -982,7 +982,7 @@ class TestCfgGen(TestCase):
"'Vlan2000': {'dhcpv6_servers': ['fc02:2000::3', 'fc02:2000::4']}}"
)
)
def test_minigraph_bgp_packet_chassis_peer(self):
argument = ['-m', self.packet_chassis_graph, '-p', self.packet_chassis_port_ini, '-n', "asic1", '-v', "BGP_INTERNAL_NEIGHBOR[\'8.0.0.1\']"]
output = self.run_script(argument)
@ -1052,7 +1052,7 @@ class TestCfgGen(TestCase):
"'Ethernet120': {'lanes': '16,17,18,19', 'alias': 'Ethernet16/1', 'index': '16', 'role': 'Ext', 'speed': '100000', 'asic_port_name': 'Eth120-ASIC0', 'fec': 'rs', 'description': 'ARISTA17T3:Ethernet1', 'mtu': '9100', 'tpid': '0x8100', 'pfc_asym': 'off', 'admin_status': 'up'}, "
"'Ethernet128': {'lanes': '8,9,10,11', 'alias': 'Ethernet17/1', 'index': '17', 'role': 'Ext', 'speed': '100000', 'asic_port_name': 'Eth128-ASIC0', 'fec': 'rs', 'description': 'ARISTA18T3:Ethernet1', 'mtu': '9100', 'tpid': '0x8100', 'pfc_asym': 'off', 'admin_status': 'up'}, "
"'Ethernet136': {'lanes': '0,1,2,3', 'alias': 'Ethernet18/1', 'index': '18', 'role': 'Ext', 'speed': '100000', 'asic_port_name': 'Eth136-ASIC0', 'fec': 'rs', 'description': 'ARISTA18T3:Ethernet2', 'mtu': '9100', 'tpid': '0x8100', 'pfc_asym': 'off', 'admin_status': 'up'}, "
"'Ethernet-Rec0': {'lanes': '221', 'alias': 'Recirc0/0', 'index': '37', 'role': 'Rec', 'speed': '400000', 'asic_port_name': 'Rcy0-ASIC0', 'description': 'Recirc0/0', 'mtu': '9100', 'tpid': '0x8100', 'pfc_asym': 'off', 'admin_status': 'up'},"
"'Ethernet-Rec0': {'lanes': '221', 'alias': 'Recirc0/0', 'index': '37', 'role': 'Rec', 'speed': '400000', 'asic_port_name': 'Rcy0-ASIC0', 'description': 'Recirc0/0', 'mtu': '9100', 'tpid': '0x8100', 'pfc_asym': 'off', 'admin_status': 'up'},"
"'Ethernet-IB0': {'lanes': '222', 'alias': 'Recirc0/1', 'index': '38', 'role': 'Inb', 'speed': '400000', 'asic_port_name': 'Rcy1-ASIC0', 'description': 'Recirc0/1', 'mtu': '9100', 'tpid': '0x8100', 'pfc_asym': 'off', 'admin_status': 'up'}}"
)
)

View File

@ -227,13 +227,13 @@ class TestCfgGenCaseInsensitive(TestCase):
'hwsku': 'server-sku',
'type': 'Server'
},
'switch-01t1': {
'switch-01t1': {
'lo_addr': '10.1.0.186/32',
'deployment_id': '2',
'hwsku': 'Force10-S6000',
'type': 'LeafRouter',
'mgmt_addr': '10.7.0.196/26'
},
'mgmt_addr': '10.7.0.196/26'
},
'server1-SC': {
'lo_addr_v6': '::/0',
'mgmt_addr': '0.0.0.0/0',
@ -299,7 +299,7 @@ class TestCfgGenCaseInsensitive(TestCase):
'address_ipv4': "25.1.1.10"
}
}
output = self.run_script(argument)
self.assertEqual(
utils.to_dict(output.strip()),
@ -308,7 +308,7 @@ class TestCfgGenCaseInsensitive(TestCase):
def test_mux_cable_parsing(self):
result = minigraph.parse_xml(self.sample_graph, port_config_file=self.port_config)
expected_mux_cable_ports = ["Ethernet4", "Ethernet8"]
port_table = result['PORT']
for port_name, port in port_table.items():
@ -349,7 +349,7 @@ class TestCfgGenCaseInsensitive(TestCase):
output = subprocess.check_output(["sed", "-i", 's/%s/%s/g' % (BACKEND_TOR_ROUTER, TOR_ROUTER), graph_file], stderr=subprocess.STDOUT)
else:
output = subprocess.check_output(["sed", "-i", 's/%s/%s/g' % (BACKEND_TOR_ROUTER, TOR_ROUTER), graph_file])
def test_minigraph_tunnel_table(self):
argument = ['-m', self.sample_graph, '-p', self.port_config, '-v', "TUNNEL"]
expected_tunnel = {
@ -436,7 +436,7 @@ class TestCfgGenCaseInsensitive(TestCase):
utils.to_dict(output.strip()),
expected_table
)
def test_dhcp_table(self):
argument = ['-m', self.sample_graph, '-p', self.port_config, '-v', "DHCP_RELAY"]
expected = {
@ -458,12 +458,12 @@ class TestCfgGenCaseInsensitive(TestCase):
utils.to_dict(output.strip()),
expected
)
def test_minigraph_mirror_dscp(self):
result = minigraph.parse_xml(self.sample_graph, port_config_file=self.port_config)
self.assertTrue('EVERFLOW_DSCP' in result['ACL_TABLE'])
everflow_dscp_entry = result['ACL_TABLE']['EVERFLOW_DSCP']
self.assertEqual(everflow_dscp_entry['type'], 'MIRROR_DSCP')
self.assertEqual(everflow_dscp_entry['stage'], 'ingress')
expected_ports = ['PortChannel01', 'Ethernet12', 'Ethernet8', 'Ethernet0']

View File

@ -1,21 +1,21 @@
# name lanes alias index role speed asic_port_name
Ethernet0 72,73,74,75,76,77,78,79 Ethernet1/1 1 Ext 400000 Eth0-ASIC0
Ethernet8 80,81,82,83,84,85,86,87 Ethernet2/1 2 Ext 400000 Eth8-ASIC0
Ethernet16 88,89,90,91,92,93,94,95 Ethernet3/1 3 Ext 400000 Eth16-ASIC0
Ethernet24 96,97,98,99,100,101,102,103 Ethernet4/1 4 Ext 400000 Eth24-ASIC0
Ethernet32 104,105,106,107,108,109,110,111 Ethernet5/1 5 Ext 400000 Eth32-ASIC0
Ethernet40 112,113,114,115,116,117,118,119 Ethernet6/1 6 Ext 400000 Eth40-ASIC0
Ethernet48 120,121,122,123,124,125,126,127 Ethernet7/1 7 Ext 400000 Eth48-ASIC0
Ethernet56 128,129,130,131,132,133,134,135 Ethernet8/1 8 Ext 400000 Eth56-ASIC0
Ethernet64 136,137,138,139,140,141,142,143 Ethernet9/1 9 Ext 400000 Eth64-ASIC0
Ethernet72 64,65,66,67,68,69,70,71 Ethernet10/1 10 Ext 400000 Eth72-ASIC0
Ethernet80 56,57,58,59,60,61,62,63 Ethernet11/1 11 Ext 400000 Eth80-ASIC0
Ethernet88 48,49,50,51,52,53,54,55 Ethernet12/1 12 Ext 400000 Eth88-ASIC0
Ethernet96 40,41,42,43,44,45,46,47 Ethernet13/1 13 Ext 400000 Eth96-ASIC0
Ethernet104 32,33,34,35,36,37,38,39 Ethernet14/1 14 Ext 400000 Eth104-ASIC0
Ethernet112 24,25,26,27,28,29,30,31 Ethernet15/1 15 Ext 400000 Eth112-ASIC0
Ethernet120 16,17,18,19,20,21,22,23 Ethernet16/1 16 Ext 400000 Eth120-ASIC0
Ethernet128 8,9,10,11,12,13,14,15 Ethernet17/1 17 Ext 400000 Eth128-ASIC0
Ethernet136 0,1,2,3,4,5,6,7 Ethernet18/1 18 Ext 400000 Eth136-ASIC0
Ethernet-Rec0 221 Recirc0/0 37 Rec 400000 Rcy0-ASIC0
Ethernet-IB0 222 Recirc0/1 38 Inb 400000 Rcy1-ASIC0
# name lanes alias index role speed asic_port_name
Ethernet0 72,73,74,75,76,77,78,79 Ethernet1/1 1 Ext 400000 Eth0-ASIC0
Ethernet8 80,81,82,83,84,85,86,87 Ethernet2/1 2 Ext 400000 Eth8-ASIC0
Ethernet16 88,89,90,91,92,93,94,95 Ethernet3/1 3 Ext 400000 Eth16-ASIC0
Ethernet24 96,97,98,99,100,101,102,103 Ethernet4/1 4 Ext 400000 Eth24-ASIC0
Ethernet32 104,105,106,107,108,109,110,111 Ethernet5/1 5 Ext 400000 Eth32-ASIC0
Ethernet40 112,113,114,115,116,117,118,119 Ethernet6/1 6 Ext 400000 Eth40-ASIC0
Ethernet48 120,121,122,123,124,125,126,127 Ethernet7/1 7 Ext 400000 Eth48-ASIC0
Ethernet56 128,129,130,131,132,133,134,135 Ethernet8/1 8 Ext 400000 Eth56-ASIC0
Ethernet64 136,137,138,139,140,141,142,143 Ethernet9/1 9 Ext 400000 Eth64-ASIC0
Ethernet72 64,65,66,67,68,69,70,71 Ethernet10/1 10 Ext 400000 Eth72-ASIC0
Ethernet80 56,57,58,59,60,61,62,63 Ethernet11/1 11 Ext 400000 Eth80-ASIC0
Ethernet88 48,49,50,51,52,53,54,55 Ethernet12/1 12 Ext 400000 Eth88-ASIC0
Ethernet96 40,41,42,43,44,45,46,47 Ethernet13/1 13 Ext 400000 Eth96-ASIC0
Ethernet104 32,33,34,35,36,37,38,39 Ethernet14/1 14 Ext 400000 Eth104-ASIC0
Ethernet112 24,25,26,27,28,29,30,31 Ethernet15/1 15 Ext 400000 Eth112-ASIC0
Ethernet120 16,17,18,19,20,21,22,23 Ethernet16/1 16 Ext 400000 Eth120-ASIC0
Ethernet128 8,9,10,11,12,13,14,15 Ethernet17/1 17 Ext 400000 Eth128-ASIC0
Ethernet136 0,1,2,3,4,5,6,7 Ethernet18/1 18 Ext 400000 Eth136-ASIC0
Ethernet-Rec0 221 Recirc0/0 37 Rec 400000 Rcy0-ASIC0
Ethernet-IB0 222 Recirc0/1 38 Inb 400000 Rcy1-ASIC0

View File

@ -914,8 +914,8 @@
<HoldTime>10</HoldTime>
<KeepAliveTime>3</KeepAliveTime>
</BGPSession>
<BGPSession>
<StartRouter>ASIC0</StartRouter>
<EndRouter>ASIC1</EndRouter>

View File

@ -98,7 +98,7 @@ def read_data(is_config, feature, fields):
def read_config(feature):
""" Read requried feature config """
set_owner, no_fallback, state = read_data(True, feature,
set_owner, no_fallback, state = read_data(True, feature,
[(SET_OWNER, "local"), (NO_FALLBACK, False), (STATE, "disabled")])
return (set_owner, not no_fallback, state)
@ -143,13 +143,13 @@ def container_version(feature):
for env in envs:
if env.startswith("IMAGE_VERSION="):
version = env.split('=')[1]
syslog.syslog(syslog.LOG_INFO, "docker get image version for {}".format(feature))
except (docker.errors.NotFound, docker.errors.APIError) as err:
syslog.syslog(syslog.LOG_ERR, "docker get image version for {} failed with {}".
format(feature, str(err)))
return version
@ -164,11 +164,11 @@ def set_label(feature, create):
# redundant set (data already exist) can still raise subscriber
# notification. So check & set.
# Redundant delete (data doesn't exist) does not raise any
# Redundant delete (data doesn't exist) does not raise any
# subscriber notification. So no need to pre-check for delete.
#
tbl.set(KUBE_LABEL_SET_KEY, [(fld, "true" if create else "false")])
def update_data(feature, data):
if remote_ctr_enabled:
@ -180,13 +180,13 @@ def update_data(feature, data):
def container_id(feature):
"""
Return the container ID for the feature.
if current_owner is local, use feature name as the start/stop
of local image is synchronous.
of local image is synchronous.
Else get it from FEATURE table in STATE-DB
:param feature: Name of the feature to start.
"""
init()
@ -202,19 +202,19 @@ def container_id(feature):
def container_start(feature, **kwargs):
"""
Starts a container for given feature.
Starts from local image and/or trigger kubernetes to deploy the image
for this feature. Marks the feature state up in STATE-DB FEATURE table.
If feature's set_owner is local, invoke docker start.
If feature's set_owner is kube, it creates a node label that
would trigger kubernetes to start the container. With kube as
would trigger kubernetes to start the container. With kube as
owner, if fallback is enabled and remote_state==none, it starts
the local image using docker, which will run until kube
deployment occurs.
:param feature: Name of the feature to start.
"""
START_LOCAL = 1
START_KUBE = 2
@ -279,7 +279,7 @@ def container_stop(feature, **kwargs):
Marks the feature state down in STATE-DB FEATURE table.
:param feature: Name of the feature to stop.
"""
debug_msg("BEGIN")
@ -336,7 +336,7 @@ def container_kill(feature, **kwargs):
Instruct/ensure kube terminates, by removing label.
:param feature: Name of the feature to kill.
"""
debug_msg("BEGIN")
@ -383,7 +383,7 @@ def container_wait(feature, **kwargs):
table and exit.
:param feature: Name of the feature to wait.
"""
debug_msg("BEGIN")

View File

@ -70,7 +70,7 @@ def read_data(feature):
def read_fields(state_db, feature, fields):
# Read directly from STATE-DB, given fields
# for given feature.
# for given feature.
# Fields is a list of tuples (<field name>, <default val>)
#
tbl = swsscommon.Table(state_db, 'FEATURE')
@ -100,11 +100,11 @@ def drop_label(state_db, feature, version):
# Mark given feature version as dropped in labels.
# Update is done in state-db.
# ctrmgrd sets it with kube API server per reaschability
tbl = swsscommon.Table(state_db, KUBE_LABEL_TABLE)
name = _get_local_version_key(feature)
tbl.set(KUBE_LABEL_SET_KEY, [(name, version)])
def update_data(state_db, feature, data):
# Update STATE-DB entry for this feature with given data
@ -166,7 +166,7 @@ def update_state(state_db, feature, owner=None, version=None):
sets owner, version & container-id for this feature in state-db.
If owner is local, update label to block remote deploying same version or
if kube, sets state to "running".
if kube, sets state to "running".
"""
data = {
@ -197,7 +197,7 @@ def do_freeze(feat, m):
if UNIT_TESTING:
break
time.sleep(60)
def container_up(feature, owner, version):
"""
@ -208,7 +208,7 @@ def container_up(feature, owner, version):
This call does the basic check for if this starting-container can be allowed
to run based on current state, and owner & version of this starting
container.
container.
If allowed to proceed, this info is recorded in state-db and return
to enable container start the main application. Else it proceeds to
@ -245,7 +245,7 @@ def container_up(feature, owner, version):
else:
debug_msg("{}: Skip remote_state({}) update".format(feature, mode))
i = 0
while (mode != "ready"):
if (i % 10) == 0:
@ -253,7 +253,7 @@ def container_up(feature, owner, version):
i += 1
time.sleep(2)
mode, db_version = read_fields(state_db,
mode, db_version = read_fields(state_db,
feature, [(REMOTE_STATE, "none"), (VERSION, "")])
if version != db_version:
# looks like another instance has overwritten. Exit for now.
@ -279,7 +279,7 @@ def main():
parser.add_argument("-f", "--feature", required=True)
parser.add_argument("-o", "--owner", choices=["local", "kube"], required=True)
parser.add_argument("-v", "--version", required=True)
args = parser.parse_args()
container_up(args.feature, args.owner, args.version)

View File

@ -12,7 +12,7 @@ UNIT_TESTING = 0
# NOTE:
# Unable to use python-iptables as that does not create rules per ip-tables default
# which is nf_tables. So rules added via iptc package will not be listed under
# "sudo iptables -t nat -L -n". But available in kernel. To list, we need to
# "sudo iptables -t nat -L -n". But available in kernel. To list, we need to
# use legacy mode as "sudo iptables-legacy -t nat -L -n".
# As we can't use two modes and using non-default could make any debugging effort
# very tough.

View File

@ -194,7 +194,7 @@ class MainServer:
def register_timer(self, ts, handler, args=None):
""" Register timer based handler.
""" Register timer based handler.
The handler will be called on/after give timestamp, ts
"""
self.timer_handlers[ts].append((handler, args))
@ -232,7 +232,7 @@ class MainServer:
def set_db_entry(self, db_name, table_name, key, data):
""" Set given data as complete data, which includes
""" Set given data as complete data, which includes
removing any fields that are in DB but not in data
"""
conn = self.db_connectors[db_name]
@ -459,7 +459,7 @@ class RemoteServerHandler:
# Handle Set_owner change:
# restart service and/or label add/drop
#
# Handle remote_state change:
# Handle remote_state change:
# When pending, trigger restart
#
class FeatureTransitionHandler:
@ -526,10 +526,10 @@ class FeatureTransitionHandler:
log_debug("No change in feat={} set_owner={}. Bail out.".format(
key, set_owner))
return
if key in self.st_data:
log_debug("{} init={} old_set_owner={} owner={}".format(key, init, old_set_owner, set_owner))
self.handle_update(key, set_owner,
self.handle_update(key, set_owner,
self.st_data[key][ST_FEAT_OWNER],
self.st_data[key][ST_FEAT_REMOTE_STATE])
@ -557,7 +557,7 @@ class FeatureTransitionHandler:
start_time = datetime.datetime.now() + datetime.timedelta(
seconds=remote_ctr_config[TAG_IMAGE_LATEST])
self.server.register_timer(start_time, self.do_tag_latest, (
key,
key,
self.st_data[key][ST_FEAT_CTR_ID],
self.st_data[key][ST_FEAT_CTR_VER]))
@ -578,7 +578,7 @@ class FeatureTransitionHandler:
self.st_data[key][ST_FEAT_OWNER],
remote_state)
return
def do_tag_latest(self, feat, docker_id, image_ver):
ret = kube_commands.tag_latest(feat, docker_id, image_ver)
if ret != 0:

View File

@ -103,7 +103,7 @@ def kube_read_labels():
return (ret, labels)
def kube_write_labels(set_labels):
""" Set given set_labels.
"""
@ -147,7 +147,7 @@ def kube_write_labels(set_labels):
return ret
def func_get_labels(args):
""" args parser default function for get labels"""
ret, node_labels = kube_read_labels()
@ -157,7 +157,7 @@ def func_get_labels(args):
log_debug(json.dumps(node_labels, indent=4))
return 0
def is_connected(server=""):
""" Check if we are currently connected """
@ -218,7 +218,7 @@ def _download_file(server, port, insecure):
def _gen_cli_kubeconf(server, port, insecure):
"""generate identity which can help authenticate and
"""generate identity which can help authenticate and
authorization to k8s cluster
"""
client_kubeconfig_template = """
@ -387,7 +387,7 @@ def kube_join_master(server, port, insecure, force=False):
log_debug("join: ret={} out:{} err:{}".format(ret, out, err))
return (ret, out, err)
def kube_reset_master(force):
err = ""
@ -440,7 +440,7 @@ def _do_tag(docker_id, image_ver):
else:
out = "New version {} is not running.".format(image_ver)
ret = -1
return (ret, out, err)
def _remove_container(feat):
@ -465,7 +465,7 @@ def _remove_container(feat):
else:
err = "Failed to docker inspect {} |jq -r .[].State.Running. Err: {}".format(feat, err)
ret = 1
return (ret, out, err)
def tag_latest(feat, docker_id, image_ver):
@ -519,10 +519,10 @@ def _do_clean(feat, current_version, last_version):
ret = 1
err = "Failed to tag {} local version images. Err: {}".format(feat, err)
return ret, out, err
if last_version in version_dict:
del version_dict[last_version]
versions = [item[DOCKER_ID] for item in version_dict.values()]
if versions:
clean_res, _, err = _run_command("docker rmi {} --force".format(" ".join(versions)))

View File

@ -318,13 +318,13 @@ class Table:
d = self.data[key]
for (k, v) in items:
d[k] = v
def check(self):
expected = self.get_val(current_test_data, [POST, self.db, self.tbl])
ret = check_subset(expected, self.data)
if ret != 0:
print("Failed test={} no={} ret={}".format(
current_test_name, current_test_no, ret))
@ -430,7 +430,7 @@ class mock_subscriber:
return (key, "", mock_tbl.get(key)[1])
else:
return ("", "", {})
def getDbConnector(self):
return self.dbconn
@ -507,7 +507,7 @@ def kube_join_side_effect(ip, port, insecure):
else:
kube_return = 0
return (1, "not joined", "error")
def kube_reset_side_effect(flag):
global kube_actions
@ -529,10 +529,10 @@ def check_kube_actions():
ret = 0
expected = {}
expected[KUBE_CMD] = current_test_data.get(KUBE_CMD, {})
if expected[KUBE_CMD]:
ret = check_subset(expected, kube_actions)
if ret != 0:
print("Failed test={} no={} ret={}".format(
current_test_name, current_test_no, ret))
@ -540,7 +540,7 @@ def check_kube_actions():
print("expect: {}".format(json.dumps(expected, indent=4)))
return -1
return 0
def set_mock_kube(kube_labels, kube_join, kube_reset):
kube_labels.side_effect = kube_labels_side_effect

View File

@ -260,11 +260,11 @@ stop_test_data = {
# container_kill test cases
# test case 0 -- container kill local
# -- no change in state-db
# test case 0 -- container kill local
# -- no change in state-db
# -- no label update
# test case 1 -- container kill kube -- set label
# -- no change in state-db
# -- no change in state-db
# -- label update
#
kill_test_data = {
@ -356,7 +356,7 @@ kill_test_data = {
# container_kill test cases
# test case 0 -- container kill local disabled container
# -- no change in state-db
# -- no change in state-db
# -- no label update
#
invalid_kill_test_data = {
@ -380,11 +380,11 @@ invalid_kill_test_data = {
# container_wait test cases
# test case 0 -- container wait local
# -- no change in state-db
# test case 0 -- container wait local
# -- no change in state-db
# -- no label update
# test case 1 -- container wait kube with fallback
# -- change in state-db
# -- change in state-db
# -- no label update
#
wait_test_data = {

View File

@ -108,7 +108,7 @@ def mock_subproc_run(cmd, shell, capture_output):
ins_cmd = ["sudo", "iptables", "-t", "nat", "-A", "OUTPUT", "-p", "tcp", "-d"]
assert shell == False
print("cmd={}".format(cmd))
if list_cmd == cmd[:len(list_cmd)]:
if len(cmd) == len(list_cmd) + 1:

View File

@ -524,7 +524,7 @@ clusters:\n\
# test to_str()
f = "abcd"
f == kube_commands.to_str(str.encode(f))
@patch("kube_commands.subprocess.Popen")
def test_reset(self, mock_subproc):

View File

@ -11,8 +11,8 @@ Broadcom expressly reserves all rights in and to the Software
and all intellectual property rights therein. IF YOU HAVE
NO AUTHORIZED LICENSE, THEN YOU HAVE NO RIGHT TO USE THIS SOFTWARE
IN ANY WAY, AND SHOULD IMMEDIATELY NOTIFY BROADCOM AND DISCONTINUE
ALL USE OF THE SOFTWARE.
ALL USE OF THE SOFTWARE.
Except as expressly set forth in the Authorized License,
1. This program, including its structure, sequence and organization,

View File

@ -167,7 +167,7 @@ xgxs_tx_lane_map
ifp_inports_support_enable
port_flex_enable
pdma_descriptor_prefetch_enable
pktdma_poll_mode_channel_bitmap
pktdma_poll_mode_channel_bitmap
num_queues_pci
num_queues_uc0
num_queues_uc1
@ -179,7 +179,7 @@ flowtracker_drop_monitor_enable
flowtracker_export_interval_usecs
flowtracker_max_export_pkt_length
flowtracker_fsp_reinject_max_length
host_as_route_disable
host_as_route_disable
sai_fast_convergence_support
ccm_dma_enable
ccmdma_intr_enable
@ -298,7 +298,7 @@ lb_port_pipe1_int
ing_origin_id_device_id_mask
egr_origin_id_device_id_mask
port_count_in_pb_stream
cancun_dir
cancun_dir
pcie_file
capi_level
phy_pin_compatibility_enable
@ -308,7 +308,7 @@ sap_rx_polarity_flip
sap_tx_polarity_flip
sap_mdio_num
dport_map_port_9
cancun_dir
cancun_dir
pcie_file
capi_level
phy_pin_compatibility_enable

View File

@ -2,4 +2,4 @@ sonic-eventd (1.0.0-0) UNRELEASED; urgency=medium
* Initial release.
-- Renuka Manavalan <remanava@microsoft.com>
-- Renuka Manavalan <remanava@microsoft.com>

View File

@ -28,7 +28,7 @@ bool RsyslogPlugin::onMessage(string msg, lua_State* luaState) {
void parseParams(vector<string> params, vector<EventParam>& eventParams) {
for(long unsigned int i = 0; i < params.size(); i++) {
if(params[i].empty()) {
SWSS_LOG_ERROR("Empty param provided in regex file\n");
SWSS_LOG_ERROR("Empty param provided in regex file\n");
continue;
}
EventParam ep = EventParam();
@ -62,7 +62,7 @@ bool RsyslogPlugin::createRegexList() {
}
string regexString;
string timestampRegex = "^([a-zA-Z]{3})?\\s*([0-9]{1,2})?\\s*([0-9]{2}:[0-9]{2}:[0-9]{2}.[0-9]{0,6})?\\s*";
string timestampRegex = "^([a-zA-Z]{3})?\\s*([0-9]{1,2})?\\s*([0-9]{2}:[0-9]{2}:[0-9]{2}.[0-9]{0,6})?\\s*";
regex expression;
vector<RegexStruct> regexList;
@ -71,7 +71,7 @@ bool RsyslogPlugin::createRegexList() {
vector<EventParam> eventParams;
try {
string eventRegex = jsonList[i]["regex"];
regexString = timestampRegex + eventRegex;
regexString = timestampRegex + eventRegex;
string tag = jsonList[i]["tag"];
vector<string> params = jsonList[i]["params"];
vector<string> timestampParams = { "month", "day", "time" };

View File

@ -19,7 +19,7 @@ bool SyslogParser::parseMessage(string message, string& eventTag, event_params_t
}
string formattedTimestamp;
if(!matchResults[1].str().empty() && !matchResults[2].str().empty() && !matchResults[3].str().empty()) { // found timestamp components
formattedTimestamp = m_timestampFormatter->changeTimestampFormat({ matchResults[1].str(), matchResults[2].str(), matchResults[3].str() });
formattedTimestamp = m_timestampFormatter->changeTimestampFormat({ matchResults[1].str(), matchResults[2].str(), matchResults[3].str() });
}
if(!formattedTimestamp.empty()) {
paramMap["timestamp"] = formattedTimestamp;
@ -29,7 +29,7 @@ bool SyslogParser::parseMessage(string message, string& eventTag, event_params_t
// found matching regex
eventTag = m_regexList[i].tag;
// check params for lua code
// check params for lua code
for(long unsigned int j = 3; j < m_regexList[i].params.size(); j++) {
string resultValue = matchResults[j + 1].str();
string paramName = m_regexList[i].params[j].paramName;

View File

@ -36,7 +36,7 @@ struct RegexStruct {
*/
class SyslogParser {
public:
public:
unique_ptr<TimestampFormatter> m_timestampFormatter;
vector<RegexStruct> m_regexList;
bool parseMessage(string message, string& tag, event_params_t& paramDict, lua_State* luaState);

View File

@ -32,14 +32,14 @@ vector<EventParam> createEventParams(vector<string> params, vector<string> luaCo
return eventParams;
}
TEST(syslog_parser, matching_regex) {
TEST(syslog_parser, matching_regex) {
json jList = json::array();
vector<RegexStruct> regexList;
string regexString = "^([a-zA-Z]{3})?\\s*([0-9]{1,2})?\\s*([0-9]{2}:[0-9]{2}:[0-9]{2}.[0-9]{0,6})?\\s*message (.*) other_data (.*) even_more_data (.*)";
vector<string> params = { "month", "day", "time", "message", "other_data", "even_more_data" };
vector<string> luaCodes = { "", "", "", "", "", "" };
regex expression(regexString);
RegexStruct rs = RegexStruct();
rs.tag = "test_tag";
rs.regexExpression = expression;
@ -63,11 +63,11 @@ TEST(syslog_parser, matching_regex) {
EXPECT_EQ(true, success);
EXPECT_EQ("test_tag", tag);
EXPECT_EQ(expectedDict, paramDict);
lua_close(luaState);
}
TEST(syslog_parser, matching_regex_timestamp) {
TEST(syslog_parser, matching_regex_timestamp) {
json jList = json::array();
vector<RegexStruct> regexList;
string regexString = "^([a-zA-Z]{3})?\\s*([0-9]{1,2})?\\s*([0-9]{2}:[0-9]{2}:[0-9]{2}.[0-9]{0,6})?\\s*message (.*) other_data (.*)";
@ -101,7 +101,7 @@ TEST(syslog_parser, matching_regex_timestamp) {
EXPECT_EQ(true, success);
EXPECT_EQ("test_tag", tag);
EXPECT_EQ(expectedDict, paramDict);
lua_close(luaState);
}
@ -165,7 +165,7 @@ TEST(syslog_parser, lua_code_valid_1) {
EXPECT_EQ(true, success);
EXPECT_EQ("test_tag", tag);
EXPECT_EQ(expectedDict, paramDict);
lua_close(luaState);
}
@ -204,7 +204,7 @@ TEST(syslog_parser, lua_code_valid_2) {
EXPECT_EQ(true, success);
EXPECT_EQ("test_tag", tag);
EXPECT_EQ(expectedDict, paramDict);
lua_close(luaState);
}
@ -255,10 +255,10 @@ TEST(rsyslog_plugin, onMessage_noParams) {
TEST(timestampFormatter, changeTimestampFormat) {
unique_ptr<TimestampFormatter> formatter(new TimestampFormatter());
vector<string> timestampOne = { "Jul", "20", "10:09:40.230874" };
vector<string> timestampTwo = { "Jan", "1", "00:00:00.000000" };
vector<string> timestampThree = { "Dec", "31", "23:59:59.000000" };
vector<string> timestampThree = { "Dec", "31", "23:59:59.000000" };
formatter->m_storedTimestamp = "010100:00:00.000000";
formatter->m_storedYear = g_stored_year;

View File

@ -8,7 +8,7 @@
* (0) main thread -- Runs eventd service that accepts commands event_req_type_t
* This can be used to control caching events and a no-op echo service.
*
* (1) capture/cache service
* (1) capture/cache service
* Saves all the events between cache start & stop.
* Update missed cached counter in memory.
*
@ -111,7 +111,7 @@ stats_collector::set_heartbeat_interval(int val)
{
if (val > 0) {
/* Round to highest possible multiples of MIN */
m_heartbeats_interval_cnt =
m_heartbeats_interval_cnt =
(((val * 1000) + STATS_HEARTBEAT_MIN - 1) / STATS_HEARTBEAT_MIN);
}
else if (val == 0) {
@ -269,7 +269,7 @@ stats_collector::run_collector()
out:
/*
* NOTE: A shutdown could lose messages in cache.
* NOTE: A shutdown could lose messages in cache.
* But consider, that eventd shutdown is a critical shutdown as it would
* bring down all other features. Hence done only at system level shutdown,
* hence losing few messages in flight is acceptable. Any more complex code
@ -317,7 +317,7 @@ validate_event(const internal_event_t &event, runtime_id_t &rid, sequence_t &seq
return ret;
}
/*
* Initialize cache with set of events provided.
@ -358,10 +358,10 @@ capture_service::do_capture()
typedef enum {
/*
* In this state every event read is compared with init cache given
* In this state every event read is compared with init cache given
* Only new events are saved.
*/
CAP_STATE_INIT = 0,
CAP_STATE_INIT = 0,
/* In this state, all events read are cached until max limit */
CAP_STATE_ACTIVE,
@ -399,7 +399,7 @@ capture_service::do_capture()
/*
* The cache service connects but defers any reading until caller provides
* the startup cache. But all events that arrived since connect, though not read
* will be held by ZMQ in its local cache.
* will be held by ZMQ in its local cache.
*
* When cache service starts reading, check against the initial stock for duplicates.
* m_pre_exist_id caches the last seq number in initial stock for each runtime id.
@ -482,7 +482,7 @@ capture_service::do_capture()
}
break;
}
catch (bad_alloc& e)
catch (bad_alloc& e)
{
stringstream ss;
ss << e.what();
@ -535,7 +535,7 @@ capture_service::set_control(capture_control_t ctrl, event_serialized_lst_t *lst
break;
case START_CAPTURE:
/*
* Reserve a MAX_PUBLISHERS_COUNT entries for last events, as we use it only
* upon m_events/vector overflow, which might block adding new entries in map
@ -545,7 +545,7 @@ capture_service::set_control(capture_control_t ctrl, event_serialized_lst_t *lst
for (int i=0; i<MAX_PUBLISHERS_COUNT; ++i) {
m_last_events[to_string(i)] = "";
}
if ((lst != NULL) && (!lst->empty())) {
init_capture_cache(*lst);
}
@ -663,7 +663,7 @@ run_eventd_service()
RET_ON_ERR(stats_instance.is_running(), "Failed to start stats instance");
while(code != EVENT_EXIT) {
int resp = -1;
int resp = -1;
event_serialized_lst_t req_data, resp_data;
RET_ON_ERR(service.channel_read(code, req_data) == 0,
@ -684,7 +684,7 @@ run_eventd_service()
}
break;
case EVENT_CACHE_START:
if (capture == NULL) {
SWSS_LOG_ERROR("Cache is not initialized to start");
@ -697,7 +697,7 @@ run_eventd_service()
resp = capture->set_control(START_CAPTURE, &req_data);
break;
case EVENT_CACHE_STOP:
if (capture == NULL) {
SWSS_LOG_ERROR("Cache is not initialized to stop");

View File

@ -136,7 +136,7 @@ class stats_collector
void run_collector();
void run_writer();
atomic<bool> m_updated;
counters_t m_lst_counters[COUNTERS_EVENTS_TOTAL];
@ -192,13 +192,13 @@ class stats_collector
*
* We add to the vector as much as allowed by vector and max limit,
* whichever comes first.
*
*
* The sequence number in internal event will help assess the missed count
* by the consumer of the cache data.
*
*/
typedef enum {
NEED_INIT = 0,
NEED_INIT = 0,
INIT_CAPTURE,
START_CAPTURE,
STOP_CAPTURE

View File

@ -1,6 +1,6 @@
CC := g++
TEST_OBJS += ./src/eventd.o
TEST_OBJS += ./src/eventd.o
OBJS += ./src/eventd.o ./src/main.o
C_DEPS += ./src/eventd.d ./src/main.d

View File

@ -699,7 +699,7 @@ TEST(eventd, service)
void
wait_for_heartbeat(stats_collector &stats_instance, long unsigned int cnt,
int wait_ms = 3000)
int wait_ms = 3000)
{
int diff = 0;
@ -749,7 +749,7 @@ TEST(eventd, heartbeat)
/* Pause heartbeat */
stats_instance.heartbeat_ctrl(true);
/* Sleep to ensure the other thread noticed the pause request. */
this_thread::sleep_for(chrono::milliseconds(200));
@ -870,7 +870,7 @@ TEST(eventd, testDB)
if (db.exists(key)) {
try {
m = db.hgetall(key);
unordered_map<string, string>::const_iterator itc =
unordered_map<string, string>::const_iterator itc =
m.find(string(EVENTS_STATS_FIELD_NAME));
if (itc != m.end()) {
int expect = (counter_keys[i] == string(COUNTERS_EVENTS_PUBLISHED) ?

View File

@ -73,7 +73,7 @@ public:
}
// Get this info handy
try
try
{
DBConnector db("TEST_DB", 0, true);
g_is_redis_available = true;

View File

@ -74,7 +74,7 @@ def test_receiver(event_obj, cnt):
while cnt_done < cnt:
p = event_receive_op_t()
rc = event_receive(sh, p)
if rc > 0 and publish_cnt < 2:
# ignore timeout as test code has not yet published an event yet
continue

View File

@ -80,7 +80,7 @@ t_map_to_str(const Map &m)
_ss << sep << "{" << elem.first << "," << elem.second << "}";
if (sep.empty()) {
sep = ", ";
}
}
}
_ss << "}";
return _ss.str();
@ -99,7 +99,7 @@ do_receive(const event_subscribe_sources_t filter, const string outfile, int cnt
fp = &fout;
printf("outfile=%s set\n", outfile.c_str());
}
}
}
event_handle_t h = events_init_subscriber(use_cache, 2000, filter.empty() ? NULL : &filter);
printf("Subscribed with use_cache=%d timeout=2000 filter %s\n",
use_cache, filter.empty() ? "empty" : "non-empty");
@ -124,7 +124,7 @@ do_receive(const event_subscribe_sources_t filter, const string outfile, int cnt
evtOp[evt.key] = t_map_to_str(evt.params);
(*fp) << t_map_to_str(evtOp) << "\n";
fp->flush();
if ((++index % PRINT_CHUNK_SZ) == 0) {
printf("Received index %d\n", index);
}
@ -178,7 +178,7 @@ do_send(const string infile, int cnt, int pause)
source.c_str(), key.substr(0, key.find(":")).c_str());
}
evt.tag = key.substr(key.find(":")+1);
const auto &val = data.begin().value();
ASSERT(val.is_object(), "Parsed params is not object");
ASSERT((int)val.size() >= 1, "Expect non empty params");
@ -200,7 +200,7 @@ do_send(const string infile, int cnt, int pause)
};
lst.push_back(evt);
}
h = events_init_publisher(source);
ASSERT(h != NULL, "failed to init publisher");
@ -214,7 +214,7 @@ do_send(const string infile, int cnt, int pause)
if ((++index % PRINT_CHUNK_SZ) == 0) {
printf("Sending index %d\n", index);
}
int rc = event_publish(h, evt.tag, evt.params.empty() ? NULL : &evt.params);
ASSERT(rc == 0, "Failed to publish index=%d rc=%d", index, rc);

View File

@ -30,7 +30,7 @@ def run_test(process, file, count, duplicate):
# log messages to see if events have been received
tool_proc = start_tool(file)
time.sleep(2) # buffer for events_tool to startup
time.sleep(2) # buffer for events_tool to startup
logging.info("Generating logger messages\n")
sub_cmd = ["logger", "-p", "local0.notice", "-t", process, "test", "message"]
for i in range(count):

Some files were not shown because too many files have changed in this diff Show More