Package: release.debian.org Severity: normal User: release.debian....@packages.debian.org Usertags: unblock
Please unblock package quagga. The new version is a minor bugfix release which provides a fix for #852454 (CVE-2017-5495). And a couple of other minor patches. The upstream release notice reads: Quagga 1.1.1 has been released. This is a security and bug fix release, addressing primarily: * CVE-2017-5495: Telnet interface input buffer allocates unbounded amounts of memory, leading to DoS. * Bugzilla 885: ospf6d broken * Fixing building on OpenBSD * Removing the "duplicate command" warnings from normal builds. Please see attached for the debdiff. Regards, Scott. unblock quagga/1.1.1-1 -- System Information: Debian Release: 9.0 APT prefers testing APT policy: (500, 'testing'), (50, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 4.9.0-1-amd64 (SMP w/4 CPU cores) Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system)
diff -Nru quagga-1.1.0/configure.ac quagga-1.1.1/configure.ac --- quagga-1.1.0/configure.ac 2016-10-19 00:03:52.000000000 +1100 +++ quagga-1.1.1/configure.ac 2017-01-27 22:26:22.000000000 +1100 @@ -7,7 +7,7 @@ ## AC_PREREQ(2.60) -AC_INIT(Quagga, 1.1.0, [https://bugzilla.quagga.net]) +AC_INIT(Quagga, 1.1.1, [https://bugzilla.quagga.net]) CONFIG_ARGS="$*" AC_SUBST(CONFIG_ARGS) AC_CONFIG_SRCDIR(lib/zebra.h) diff -Nru quagga-1.1.0/debian/changelog quagga-1.1.1/debian/changelog --- quagga-1.1.0/debian/changelog 2017-01-04 01:07:12.000000000 +1100 +++ quagga-1.1.1/debian/changelog 2017-01-27 10:48:50.000000000 +1100 @@ -1,3 +1,12 @@ +quagga (1.1.1-1) unstable; urgency=low + + * SECURITY: + - New upstream bugfix release, fixes CVE-2017-5495 (Closes: #852454). + * Remove patch disabling debug print statements; fixed upstream. + * Update libquagga0.symbols for libzebra SONAME bump. + + -- Scott Leggett <sc...@sl.id.au> Fri, 27 Jan 2017 10:48:50 +1100 + quagga (1.1.0-3) unstable; urgency=low * Update .service file patch (Closes: #849953). diff -Nru quagga-1.1.0/debian/libquagga0.lintian-overrides quagga-1.1.1/debian/libquagga0.lintian-overrides --- quagga-1.1.0/debian/libquagga0.lintian-overrides 2017-01-04 01:07:12.000000000 +1100 +++ quagga-1.1.1/debian/libquagga0.lintian-overrides 2017-01-27 10:48:50.000000000 +1100 @@ -1 +1 @@ -libquagga0: package-name-doesnt-match-sonames libfpm-pb0 libospf0 libospfapiclient0 libquagga-pb0 libzebra0 +libquagga0: package-name-doesnt-match-sonames libfpm-pb0 libospf0 libospfapiclient0 libquagga-pb0 libzebra1 diff -Nru quagga-1.1.0/debian/libquagga0.symbols quagga-1.1.1/debian/libquagga0.symbols --- quagga-1.1.0/debian/libquagga0.symbols 2017-01-04 01:07:12.000000000 +1100 +++ quagga-1.1.1/debian/libquagga0.symbols 2017-01-27 10:48:50.000000000 +1100 @@ -836,838 +836,838 @@ ospf_apiclient_register_opaque_type@Base 1.1.0 ospf_apiclient_sync_lsdb@Base 1.1.0 libquagga_pb.so.0 libquagga0 #MINVER# -libzebra.so.0 libquagga0 #MINVER# - __packed@Base 1.1.0 - _zlog_assert_failed@Base 1.1.0 - accept_lifetime_day_month_day_month_cmd@Base 1.1.0 - accept_lifetime_day_month_month_day_cmd@Base 1.1.0 - accept_lifetime_duration_day_month_cmd@Base 1.1.0 - accept_lifetime_duration_month_day_cmd@Base 1.1.0 - accept_lifetime_infinite_day_month_cmd@Base 1.1.0 - accept_lifetime_infinite_month_day_cmd@Base 1.1.0 - accept_lifetime_month_day_day_month_cmd@Base 1.1.0 - accept_lifetime_month_day_month_day_cmd@Base 1.1.0 - access_list_add_hook@Base 1.1.0 - access_list_any_cmd@Base 1.1.0 - access_list_apply@Base 1.1.0 - access_list_cmd@Base 1.1.0 - access_list_delete_hook@Base 1.1.0 - access_list_exact_cmd@Base 1.1.0 - access_list_extended_any_any_cmd@Base 1.1.0 - access_list_extended_any_host_cmd@Base 1.1.0 - access_list_extended_any_mask_cmd@Base 1.1.0 - access_list_extended_cmd@Base 1.1.0 - access_list_extended_host_any_cmd@Base 1.1.0 - access_list_extended_host_host_cmd@Base 1.1.0 - access_list_extended_host_mask_cmd@Base 1.1.0 - access_list_extended_mask_any_cmd@Base 1.1.0 - access_list_extended_mask_host_cmd@Base 1.1.0 - access_list_init@Base 1.1.0 - access_list_lookup@Base 1.1.0 - access_list_remark_cmd@Base 1.1.0 - access_list_reset@Base 1.1.0 - access_list_standard_any_cmd@Base 1.1.0 - access_list_standard_cmd@Base 1.1.0 - access_list_standard_host_cmd@Base 1.1.0 - access_list_standard_nomask_cmd@Base 1.1.0 - afi2family@Base 1.1.0 - afi2str@Base 1.1.0 - all_digit@Base 1.1.0 - apply_classful_mask_ipv4@Base 1.1.0 - apply_mask@Base 1.1.0 - apply_mask_ipv4@Base 1.1.0 - apply_mask_ipv6@Base 1.1.0 - argv_concat@Base 1.1.0 - banner_motd_default_cmd@Base 1.1.0 - banner_motd_file_cmd@Base 1.1.0 - buffer_empty@Base 1.1.0 - buffer_flush_all@Base 1.1.0 - buffer_flush_available@Base 1.1.0 - buffer_flush_window@Base 1.1.0 - buffer_free@Base 1.1.0 - buffer_getstr@Base 1.1.0 - buffer_new@Base 1.1.0 - buffer_put@Base 1.1.0 - buffer_putc@Base 1.1.0 - buffer_putstr@Base 1.1.0 - buffer_reset@Base 1.1.0 - buffer_write@Base 1.1.0 - clear_ip_prefix_list_cmd@Base 1.1.0 - clear_ip_prefix_list_name_cmd@Base 1.1.0 - clear_ip_prefix_list_name_prefix_cmd@Base 1.1.0 - clear_ipv6_prefix_list_cmd@Base 1.1.0 - clear_ipv6_prefix_list_name_cmd@Base 1.1.0 - clear_ipv6_prefix_list_name_prefix_cmd@Base 1.1.0 - clear_thread_cpu_cmd@Base 1.1.0 - closezlog@Base 1.1.0 - cmd_complete_command@Base 1.1.0 - cmd_complete_command_lib@Base 1.1.0 - cmd_describe_command@Base 1.1.0 - cmd_execute_command@Base 1.1.0 - cmd_execute_command_strict@Base 1.1.0 - cmd_free_strvec@Base 1.1.0 - cmd_init@Base 1.1.0 - cmd_make_strvec@Base 1.1.0 - cmd_prompt@Base 1.1.0 - cmd_terminate@Base 1.1.0 - cmdvec@Base 1.1.0 - command_config_read_one_line@Base 1.1.0 - command_cr@Base 1.1.0 - config_disable_cmd@Base 1.1.0 - config_enable_cmd@Base 1.1.0 - config_end_cmd@Base 1.1.0 - config_exit_cmd@Base 1.1.0 - config_from_file@Base 1.1.0 - config_help_cmd@Base 1.1.0 - config_list_cmd@Base 1.1.0 - config_log_facility_cmd@Base 1.1.0 - config_log_file_cmd@Base 1.1.0 - config_log_file_level_cmd@Base 1.1.0 - config_log_monitor_cmd@Base 1.1.0 - config_log_monitor_level_cmd@Base 1.1.0 - config_log_record_priority_cmd@Base 1.1.0 - config_log_stdout_cmd@Base 1.1.0 - config_log_stdout_level_cmd@Base 1.1.0 - config_log_syslog_cmd@Base 1.1.0 - config_log_syslog_facility_cmd@Base 1.1.0 - config_log_syslog_level_cmd@Base 1.1.0 - config_log_timestamp_precision_cmd@Base 1.1.0 - config_log_trap_cmd@Base 1.1.0 - config_logmsg_cmd@Base 1.1.0 - config_quit_cmd@Base 1.1.0 - config_show_distribute@Base 1.1.0 - config_terminal_cmd@Base 1.1.0 - config_terminal_length_cmd@Base 1.1.0 - config_terminal_no_length_cmd@Base 1.1.0 - config_write_access_cisco@Base 1.1.0 - config_write_access_zebra@Base 1.1.0 - config_write_cmd@Base 1.1.0 - config_write_distribute@Base 1.1.0 - config_write_file_cmd@Base 1.1.0 - config_write_if_rmap@Base 1.1.0 - config_write_memory_cmd@Base 1.1.0 - config_write_terminal_cmd@Base 1.1.0 - connected_add_by_prefix@Base 1.1.0 - connected_delete_by_prefix@Base 1.1.0 - connected_free@Base 1.1.0 - connected_lookup_address@Base 1.1.0 - connected_new@Base 1.1.0 - copy_nexthops@Base 1.1.0 - copy_runningconfig_startupconfig_cmd@Base 1.1.0 - disthash@Base 1.1.0 - distribute_add_hook@Base 1.1.0 - distribute_delete_hook@Base 1.1.0 - distribute_list_add_hook@Base 1.1.0 - distribute_list_all_cmd@Base 1.1.0 - distribute_list_cmd@Base 1.1.0 - distribute_list_delete_hook@Base 1.1.0 - distribute_list_init@Base 1.1.0 - distribute_list_prefix_all_cmd@Base 1.1.0 - distribute_list_prefix_cmd@Base 1.1.0 - distribute_list_reset@Base 1.1.0 - distribute_lookup@Base 1.1.0 - echo_cmd@Base 1.1.0 - enable_password_cmd@Base 1.1.0 - enable_password_text_cmd@Base 1.1.0 - event_counter_format@Base 1.1.0 - event_counter_inc@Base 1.1.0 - exec_timeout_min_cmd@Base 1.1.0 - exec_timeout_sec_cmd@Base 1.1.0 - family2addrsize@Base 1.1.0 - family2afi@Base 1.1.0 - fletcher_checksum@Base 1.1.0 - funcname_thread_add_background@Base 1.1.0 - funcname_thread_add_event@Base 1.1.0 - funcname_thread_add_read@Base 1.1.0 - funcname_thread_add_timer@Base 1.1.0 - funcname_thread_add_timer_msec@Base 1.1.0 - funcname_thread_add_write@Base 1.1.0 - funcname_thread_execute@Base 1.1.0 - getsockopt_ifindex@Base 1.1.0 - getsockopt_so_sendbuf@Base 1.1.0 - hash_alloc_intern@Base 1.1.0 - hash_clean@Base 1.1.0 - hash_create@Base 1.1.0 - hash_create_size@Base 1.1.0 - hash_free@Base 1.1.0 - hash_get@Base 1.1.0 - hash_iterate@Base 1.1.0 - hash_lookup@Base 1.1.0 - hash_release@Base 1.1.0 - hmac_md5@Base 1.1.0 - host@Base 1.1.0 - host_config_get@Base 1.1.0 - host_config_set@Base 1.1.0 - hostname_cmd@Base 1.1.0 - htonf@Base 1.1.0 - if_add_hook@Base 1.1.0 - if_cmp_func@Base 1.1.0 - if_create@Base 1.1.0 - if_create_vrf@Base 1.1.0 - if_delete@Base 1.1.0 - if_delete_retain@Base 1.1.0 - if_dump_all@Base 1.1.0 - if_flag_dump@Base 1.1.0 - if_get_by_name@Base 1.1.0 - if_get_by_name_len@Base 1.1.0 - if_get_by_name_len_vrf@Base 1.1.0 - if_get_by_name_vrf@Base 1.1.0 - if_init@Base 1.1.0 - if_ipv6_rmap_cmd@Base 1.1.0 - if_is_broadcast@Base 1.1.0 - if_is_loopback@Base 1.1.0 - if_is_multicast@Base 1.1.0 - if_is_operative@Base 1.1.0 - if_is_pointopoint@Base 1.1.0 - if_is_running@Base 1.1.0 - if_is_up@Base 1.1.0 - if_link_params_free@Base 1.1.0 - if_link_params_get@Base 1.1.0 - if_link_type_str@Base 1.1.0 - if_lookup_address@Base 1.1.0 - if_lookup_address_vrf@Base 1.1.0 - if_lookup_by_index@Base 1.1.0 - if_lookup_by_index_vrf@Base 1.1.0 - if_lookup_by_name@Base 1.1.0 - if_lookup_by_name_len@Base 1.1.0 - if_lookup_by_name_len_vrf@Base 1.1.0 - if_lookup_by_name_vrf@Base 1.1.0 - if_lookup_exact_address@Base 1.1.0 - if_lookup_exact_address_vrf@Base 1.1.0 - if_lookup_prefix@Base 1.1.0 - if_lookup_prefix_vrf@Base 1.1.0 - if_master@Base 1.1.0 - if_rmap_cmd@Base 1.1.0 - if_rmap_hook_add@Base 1.1.0 - if_rmap_hook_delete@Base 1.1.0 - if_rmap_init@Base 1.1.0 - if_rmap_lookup@Base 1.1.0 - if_rmap_reset@Base 1.1.0 - if_terminate@Base 1.1.0 - ifindex2ifname@Base 1.1.0 - ifindex2ifname_vrf@Base 1.1.0 - iflist@Base 1.1.0 - ifname2ifindex@Base 1.1.0 - ifname2ifindex_vrf@Base 1.1.0 - ifrmaphash@Base 1.1.0 - in_cksum@Base 1.1.0 - inet6_ntoa@Base 1.1.0 - inet_sutop@Base 1.1.0 - install_default@Base 1.1.0 - install_element@Base 1.1.0 - install_node@Base 1.1.0 - integrate_default@Base 1.1.0 - interface_cmd@Base 1.1.0 - interface_desc_cmd@Base 1.1.0 - interface_vrf_cmd@Base 1.1.0 - ip6_masklen@Base 1.1.0 - ip_masklen@Base 1.1.0 - ip_prefix_list_cmd@Base 1.1.0 - ip_prefix_list_description_cmd@Base 1.1.0 - ip_prefix_list_ge_cmd@Base 1.1.0 - ip_prefix_list_ge_le_cmd@Base 1.1.0 - ip_prefix_list_le_cmd@Base 1.1.0 - ip_prefix_list_le_ge_cmd@Base 1.1.0 - ip_prefix_list_seq_cmd@Base 1.1.0 - ip_prefix_list_seq_ge_cmd@Base 1.1.0 - ip_prefix_list_seq_ge_le_cmd@Base 1.1.0 - ip_prefix_list_seq_le_cmd@Base 1.1.0 - ip_prefix_list_seq_le_ge_cmd@Base 1.1.0 - ip_prefix_list_sequence_number_cmd@Base 1.1.0 - ipv4_broadcast_addr@Base 1.1.0 - ipv4_network_addr@Base 1.1.0 - ipv6_access_list_any_cmd@Base 1.1.0 - ipv6_access_list_cmd@Base 1.1.0 - ipv6_access_list_exact_cmd@Base 1.1.0 - ipv6_access_list_remark_cmd@Base 1.1.0 - ipv6_as_v4_distribute_list_all_cmd@Base 1.1.0 - ipv6_as_v4_distribute_list_cmd@Base 1.1.0 - ipv6_as_v4_distribute_list_prefix_all_cmd@Base 1.1.0 - ipv6_as_v4_distribute_list_prefix_cmd@Base 1.1.0 - ipv6_distribute_list_all_cmd@Base 1.1.0 - ipv6_distribute_list_cmd@Base 1.1.0 - ipv6_distribute_list_prefix_all_cmd@Base 1.1.0 - ipv6_distribute_list_prefix_cmd@Base 1.1.0 - ipv6_prefix_list_cmd@Base 1.1.0 - ipv6_prefix_list_description_cmd@Base 1.1.0 - ipv6_prefix_list_ge_cmd@Base 1.1.0 - ipv6_prefix_list_ge_le_cmd@Base 1.1.0 - ipv6_prefix_list_le_cmd@Base 1.1.0 - ipv6_prefix_list_le_ge_cmd@Base 1.1.0 - ipv6_prefix_list_seq_cmd@Base 1.1.0 - ipv6_prefix_list_seq_ge_cmd@Base 1.1.0 - ipv6_prefix_list_seq_ge_le_cmd@Base 1.1.0 - ipv6_prefix_list_seq_le_cmd@Base 1.1.0 - ipv6_prefix_list_seq_le_ge_cmd@Base 1.1.0 - ipv6_prefix_list_sequence_number_cmd@Base 1.1.0 - jhash2@Base 1.1.0 - jhash@Base 1.1.0 - jhash_1word@Base 1.1.0 - jhash_2words@Base 1.1.0 - jhash_3words@Base 1.1.0 - key_chain_cmd@Base 1.1.0 - key_cmd@Base 1.1.0 - key_lookup_for_accept@Base 1.1.0 - key_lookup_for_send@Base 1.1.0 - key_match_for_accept@Base 1.1.0 - key_string_cmd@Base 1.1.0 - keychain_init@Base 1.1.0 - keychain_list@Base 1.1.0 - keychain_lookup@Base 1.1.0 - line_vty_cmd@Base 1.1.0 - list_add_list@Base 1.1.0 - list_add_node_next@Base 1.1.0 - list_add_node_prev@Base 1.1.0 - list_delete@Base 1.1.0 - list_delete_all_node@Base 1.1.0 - list_delete_node@Base 1.1.0 - list_free@Base 1.1.0 - list_new@Base 1.1.0 - listnode_add@Base 1.1.0 - listnode_add_after@Base 1.1.0 - listnode_add_sort@Base 1.1.0 - listnode_delete@Base 1.1.0 - listnode_head@Base 1.1.0 - listnode_lookup@Base 1.1.0 - listnode_move_to_tail@Base 1.1.0 - log_commands_cmd@Base 1.1.0 - log_memstats_stderr@Base 1.1.0 - lookup@Base 1.1.0 - masklen2ip6@Base 1.1.0 - masklen2ip@Base 1.1.0 - md5_init@Base 1.1.0 - md5_loop@Base 1.1.0 - md5_pad@Base 1.1.0 - md5_result@Base 1.1.0 - memory_init@Base 1.1.0 - memory_list_babel@Base 1.1.0 - memory_list_bgp@Base 1.1.0 - memory_list_isis@Base 1.1.0 - memory_list_lib@Base 1.1.0 - memory_list_ospf6@Base 1.1.0 - memory_list_ospf@Base 1.1.0 - memory_list_pim@Base 1.1.0 - memory_list_rip@Base 1.1.0 - memory_list_ripng@Base 1.1.0 - memory_list_vtysh@Base 1.1.0 - memory_list_zebra@Base 1.1.0 - mes_lookup@Base 1.1.0 - mlists@Base 1.1.0 - mtype_memstr@Base 1.1.0 - mtype_stats_alloc@Base 1.1.0 - netmask_str2prefix_str@Base 1.1.0 - nexthop_add@Base 1.1.0 - nexthop_free@Base 1.1.0 - nexthop_new@Base 1.1.0 - nexthop_same_no_recurse@Base 1.1.0 - nexthop_type_to_str@Base 1.1.0 - nexthops_free@Base 1.1.0 - no_access_list_all_cmd@Base 1.1.0 - no_access_list_any_cmd@Base 1.1.0 - no_access_list_cmd@Base 1.1.0 - no_access_list_exact_cmd@Base 1.1.0 - no_access_list_extended_any_any_cmd@Base 1.1.0 - no_access_list_extended_any_host_cmd@Base 1.1.0 - no_access_list_extended_any_mask_cmd@Base 1.1.0 - no_access_list_extended_cmd@Base 1.1.0 - no_access_list_extended_host_any_cmd@Base 1.1.0 - no_access_list_extended_host_host_cmd@Base 1.1.0 - no_access_list_extended_host_mask_cmd@Base 1.1.0 - no_access_list_extended_mask_any_cmd@Base 1.1.0 - no_access_list_extended_mask_host_cmd@Base 1.1.0 - no_access_list_remark_arg_cmd@Base 1.1.0 - no_access_list_remark_cmd@Base 1.1.0 - no_access_list_standard_any_cmd@Base 1.1.0 - no_access_list_standard_cmd@Base 1.1.0 - no_access_list_standard_host_cmd@Base 1.1.0 - no_access_list_standard_nomask_cmd@Base 1.1.0 - no_banner_motd_cmd@Base 1.1.0 - no_config_log_facility_cmd@Base 1.1.0 - no_config_log_file_cmd@Base 1.1.0 - no_config_log_file_level_cmd@Base 1.1.0 - no_config_log_monitor_cmd@Base 1.1.0 - no_config_log_record_priority_cmd@Base 1.1.0 - no_config_log_stdout_cmd@Base 1.1.0 - no_config_log_syslog_cmd@Base 1.1.0 - no_config_log_syslog_facility_cmd@Base 1.1.0 - no_config_log_timestamp_precision_cmd@Base 1.1.0 - no_config_log_trap_cmd@Base 1.1.0 - no_distribute_list_all_cmd@Base 1.1.0 - no_distribute_list_cmd@Base 1.1.0 - no_distribute_list_prefix_all_cmd@Base 1.1.0 - no_distribute_list_prefix_cmd@Base 1.1.0 - no_enable_password_cmd@Base 1.1.0 - no_exec_timeout_cmd@Base 1.1.0 - no_hostname_cmd@Base 1.1.0 - no_if_ipv6_rmap_cmd@Base 1.1.0 - no_if_rmap_cmd@Base 1.1.0 - no_interface_cmd@Base 1.1.0 - no_interface_desc_cmd@Base 1.1.0 - no_interface_vrf_cmd@Base 1.1.0 - no_ip_prefix_list_cmd@Base 1.1.0 - no_ip_prefix_list_description_arg_cmd@Base 1.1.0 - no_ip_prefix_list_description_cmd@Base 1.1.0 - no_ip_prefix_list_ge_cmd@Base 1.1.0 - no_ip_prefix_list_ge_le_cmd@Base 1.1.0 - no_ip_prefix_list_le_cmd@Base 1.1.0 - no_ip_prefix_list_le_ge_cmd@Base 1.1.0 - no_ip_prefix_list_prefix_cmd@Base 1.1.0 - no_ip_prefix_list_seq_cmd@Base 1.1.0 - no_ip_prefix_list_seq_ge_cmd@Base 1.1.0 - no_ip_prefix_list_seq_ge_le_cmd@Base 1.1.0 - no_ip_prefix_list_seq_le_cmd@Base 1.1.0 - no_ip_prefix_list_seq_le_ge_cmd@Base 1.1.0 - no_ip_prefix_list_sequence_number_cmd@Base 1.1.0 - no_ipv6_access_list_all_cmd@Base 1.1.0 - no_ipv6_access_list_any_cmd@Base 1.1.0 - no_ipv6_access_list_cmd@Base 1.1.0 - no_ipv6_access_list_exact_cmd@Base 1.1.0 - no_ipv6_access_list_remark_arg_cmd@Base 1.1.0 - no_ipv6_access_list_remark_cmd@Base 1.1.0 - no_ipv6_as_v4_distribute_list_all_cmd@Base 1.1.0 - no_ipv6_as_v4_distribute_list_cmd@Base 1.1.0 - no_ipv6_as_v4_distribute_list_prefix_all_cmd@Base 1.1.0 - no_ipv6_as_v4_distribute_list_prefix_cmd@Base 1.1.0 - no_ipv6_distribute_list_all_cmd@Base 1.1.0 - no_ipv6_distribute_list_cmd@Base 1.1.0 - no_ipv6_distribute_list_prefix_all_cmd@Base 1.1.0 - no_ipv6_distribute_list_prefix_cmd@Base 1.1.0 - no_ipv6_prefix_list_cmd@Base 1.1.0 - no_ipv6_prefix_list_description_arg_cmd@Base 1.1.0 - no_ipv6_prefix_list_description_cmd@Base 1.1.0 - no_ipv6_prefix_list_ge_cmd@Base 1.1.0 - no_ipv6_prefix_list_ge_le_cmd@Base 1.1.0 - no_ipv6_prefix_list_le_cmd@Base 1.1.0 - no_ipv6_prefix_list_le_ge_cmd@Base 1.1.0 - no_ipv6_prefix_list_prefix_cmd@Base 1.1.0 - no_ipv6_prefix_list_seq_cmd@Base 1.1.0 - no_ipv6_prefix_list_seq_ge_cmd@Base 1.1.0 - no_ipv6_prefix_list_seq_ge_le_cmd@Base 1.1.0 - no_ipv6_prefix_list_seq_le_cmd@Base 1.1.0 - no_ipv6_prefix_list_seq_le_ge_cmd@Base 1.1.0 - no_ipv6_prefix_list_sequence_number_cmd@Base 1.1.0 - no_key_chain_cmd@Base 1.1.0 - no_key_cmd@Base 1.1.0 - no_key_string_cmd@Base 1.1.0 - no_rmap_call_cmd@Base 1.1.0 - no_rmap_continue_cmd@Base 1.1.0 - no_rmap_continue_seq@Base 1.1.0 - no_rmap_description_cmd@Base 1.1.0 - no_rmap_onmatch_goto_cmd@Base 1.1.0 - no_rmap_onmatch_next_cmd@Base 1.1.0 - no_route_map_all_cmd@Base 1.1.0 - no_route_map_cmd@Base 1.1.0 - no_service_advanced_vty_cmd@Base 1.1.0 - no_service_password_encrypt_cmd@Base 1.1.0 - no_service_terminal_length_cmd@Base 1.1.0 - no_terminal_monitor_cmd@Base 1.1.0 - no_vrf_netns_cmd@Base 1.1.0 - no_vty_access_class_cmd@Base 1.1.0 - no_vty_ipv6_access_class_cmd@Base 1.1.0 - no_vty_login_cmd@Base 1.1.0 - node_parent@Base 1.1.0 - ntohf@Base 1.1.0 - openzlog@Base 1.1.0 - password_cmd@Base 1.1.0 - password_text_cmd@Base 1.1.0 - pid_output@Base 1.1.0 - plog_debug@Base 1.1.0 - plog_err@Base 1.1.0 - plog_info@Base 1.1.0 - plog_notice@Base 1.1.0 - plog_warn@Base 1.1.0 - pqueue_create@Base 1.1.0 - pqueue_delete@Base 1.1.0 - pqueue_dequeue@Base 1.1.0 - pqueue_enqueue@Base 1.1.0 - pqueue_remove_at@Base 1.1.0 - prefix2sockunion@Base 1.1.0 - prefix2str@Base 1.1.0 - prefix6_bit@Base 1.1.0 - prefix_bgp_orf_entry@Base 1.1.0 - prefix_bgp_orf_lookup@Base 1.1.0 - prefix_bgp_orf_remove_all@Base 1.1.0 - prefix_bgp_orf_set@Base 1.1.0 - prefix_bgp_show_prefix_list@Base 1.1.0 - prefix_bit@Base 1.1.0 - prefix_blen@Base 1.1.0 - prefix_cmp@Base 1.1.0 - prefix_common_bits@Base 1.1.0 - prefix_copy@Base 1.1.0 - prefix_family_str@Base 1.1.0 - prefix_free@Base 1.1.0 - prefix_ipv4_any@Base 1.1.0 - prefix_ipv4_free@Base 1.1.0 - prefix_ipv4_new@Base 1.1.0 - prefix_ipv6_free@Base 1.1.0 - prefix_ipv6_new@Base 1.1.0 - prefix_list_add_hook@Base 1.1.0 - prefix_list_apply@Base 1.1.0 - prefix_list_delete_hook@Base 1.1.0 - prefix_list_init@Base 1.1.0 - prefix_list_lookup@Base 1.1.0 - prefix_list_name@Base 1.1.0 - prefix_list_reset@Base 1.1.0 - prefix_match@Base 1.1.0 - prefix_new@Base 1.1.0 - prefix_same@Base 1.1.0 - print_version@Base 1.1.0 - proto_name2num@Base 1.1.0 - proto_redistnum@Base 1.1.0 - quagga_gettime@Base 1.1.0 - quagga_sigevent_process@Base 1.1.0 - quagga_time@Base 1.1.0 - quagga_timestamp@Base 1.1.0 - readn@Base 1.1.0 - recent_relative_time@Base 1.1.0 - recent_time@Base 1.1.0 - rmap_call_cmd@Base 1.1.0 - rmap_continue_cmd@Base 1.1.0 - rmap_continue_index_cmd@Base 1.1.0 - rmap_continue_seq_cmd@Base 1.1.0 - rmap_description_cmd@Base 1.1.0 - rmap_onmatch_goto_cmd@Base 1.1.0 - rmap_onmatch_next_cmd@Base 1.1.0 - rmap_show_name_cmd@Base 1.1.0 - route_lock_node@Base 1.1.0 - route_map_add_hook@Base 1.1.0 - route_map_add_match@Base 1.1.0 - route_map_add_set@Base 1.1.0 - route_map_apply@Base 1.1.0 - route_map_cmd@Base 1.1.0 - route_map_delete_hook@Base 1.1.0 - route_map_delete_match@Base 1.1.0 - route_map_delete_set@Base 1.1.0 - route_map_event_hook@Base 1.1.0 - route_map_finish@Base 1.1.0 - route_map_init@Base 1.1.0 - route_map_init_vty@Base 1.1.0 - route_map_install_match@Base 1.1.0 - route_map_install_set@Base 1.1.0 - route_map_lookup_by_name@Base 1.1.0 - route_next@Base 1.1.0 - route_next_until@Base 1.1.0 - route_node_get@Base 1.1.0 - route_node_lookup@Base 1.1.0 - route_node_match@Base 1.1.0 - route_node_match_ipv4@Base 1.1.0 - route_node_match_ipv6@Base 1.1.0 - route_table_count@Base 1.1.0 - route_table_finish@Base 1.1.0 - route_table_get_next@Base 1.1.0 - route_table_init@Base 1.1.0 - route_table_init_with_delegate@Base 1.1.0 - route_table_iter_cleanup@Base 1.1.0 - route_table_iter_init@Base 1.1.0 - route_table_iter_pause@Base 1.1.0 - route_table_prefix_iter_cmp@Base 1.1.0 - route_top@Base 1.1.0 - route_unlock_node@Base 1.1.0 - safe_strerror@Base 1.1.0 - safi2str@Base 1.1.0 - send_lifetime_day_month_day_month_cmd@Base 1.1.0 - send_lifetime_day_month_month_day_cmd@Base 1.1.0 - send_lifetime_duration_day_month_cmd@Base 1.1.0 - send_lifetime_duration_month_day_cmd@Base 1.1.0 - send_lifetime_infinite_day_month_cmd@Base 1.1.0 - send_lifetime_infinite_month_day_cmd@Base 1.1.0 - send_lifetime_month_day_day_month_cmd@Base 1.1.0 - send_lifetime_month_day_month_day_cmd@Base 1.1.0 - service_advanced_vty_cmd@Base 1.1.0 - service_password_encrypt_cmd@Base 1.1.0 - service_terminal_length_cmd@Base 1.1.0 - set_nonblocking@Base 1.1.0 - setsockopt_ifindex@Base 1.1.0 - setsockopt_ipv4_multicast@Base 1.1.0 - setsockopt_ipv4_multicast_if@Base 1.1.0 - setsockopt_ipv4_tos@Base 1.1.0 - setsockopt_ipv6_checksum@Base 1.1.0 - setsockopt_ipv6_hoplimit@Base 1.1.0 - setsockopt_ipv6_multicast_hops@Base 1.1.0 - setsockopt_ipv6_multicast_loop@Base 1.1.0 - setsockopt_ipv6_pktinfo@Base 1.1.0 - setsockopt_ipv6_tclass@Base 1.1.0 - setsockopt_ipv6_unicast_hops@Base 1.1.0 - setsockopt_so_recvbuf@Base 1.1.0 - setsockopt_so_sendbuf@Base 1.1.0 - show_address_cmd@Base 1.1.0 - show_address_vrf_all_cmd@Base 1.1.0 - show_address_vrf_cmd@Base 1.1.0 - show_commandtree_cmd@Base 1.1.0 - show_history_cmd@Base 1.1.0 - show_ip_access_list_cmd@Base 1.1.0 - show_ip_access_list_name_cmd@Base 1.1.0 - show_ip_prefix_list_cmd@Base 1.1.0 - show_ip_prefix_list_detail_cmd@Base 1.1.0 - show_ip_prefix_list_detail_name_cmd@Base 1.1.0 - show_ip_prefix_list_name_cmd@Base 1.1.0 - show_ip_prefix_list_name_seq_cmd@Base 1.1.0 - show_ip_prefix_list_prefix_cmd@Base 1.1.0 - show_ip_prefix_list_prefix_first_match_cmd@Base 1.1.0 - show_ip_prefix_list_prefix_longer_cmd@Base 1.1.0 - show_ip_prefix_list_summary_cmd@Base 1.1.0 - show_ip_prefix_list_summary_name_cmd@Base 1.1.0 - show_ipv6_access_list_cmd@Base 1.1.0 - show_ipv6_access_list_name_cmd@Base 1.1.0 - show_ipv6_prefix_list_cmd@Base 1.1.0 - show_ipv6_prefix_list_detail_cmd@Base 1.1.0 - show_ipv6_prefix_list_detail_name_cmd@Base 1.1.0 - show_ipv6_prefix_list_name_cmd@Base 1.1.0 - show_ipv6_prefix_list_name_seq_cmd@Base 1.1.0 - show_ipv6_prefix_list_prefix_cmd@Base 1.1.0 - show_ipv6_prefix_list_prefix_first_match_cmd@Base 1.1.0 - show_ipv6_prefix_list_prefix_longer_cmd@Base 1.1.0 - show_ipv6_prefix_list_summary_cmd@Base 1.1.0 - show_ipv6_prefix_list_summary_name_cmd@Base 1.1.0 - show_logging_cmd@Base 1.1.0 - show_memory_cmd@Base 1.1.0 - show_running_config_cmd@Base 1.1.0 - show_startup_config_cmd@Base 1.1.0 - show_thread_cpu_cmd@Base 1.1.0 - show_version_cmd@Base 1.1.0 - show_work_queues_cmd@Base 1.1.0 - sigmaster@Base 1.1.0 - signal_init@Base 1.1.0 - sockopt_cork@Base 1.1.0 - sockopt_iphdrincl_swab_htosys@Base 1.1.0 - sockopt_iphdrincl_swab_systoh@Base 1.1.0 - sockopt_minttl@Base 1.1.0 - sockopt_reuseaddr@Base 1.1.0 - sockopt_reuseport@Base 1.1.0 - sockopt_tcp_rtt@Base 1.1.0 - sockopt_tcp_signature@Base 1.1.0 - sockopt_ttl@Base 1.1.0 - sockopt_v6only@Base 1.1.0 - sockunion2hostprefix@Base 1.1.0 - sockunion2prefix@Base 1.1.0 - sockunion2str@Base 1.1.0 - sockunion_accept@Base 1.1.0 - sockunion_bind@Base 1.1.0 - sockunion_cmp@Base 1.1.0 - sockunion_connect@Base 1.1.0 - sockunion_dup@Base 1.1.0 - sockunion_free@Base 1.1.0 - sockunion_get_addr@Base 1.1.0 - sockunion_get_addrlen@Base 1.1.0 - sockunion_getpeername@Base 1.1.0 - sockunion_getsockname@Base 1.1.0 - sockunion_hash@Base 1.1.0 - sockunion_same@Base 1.1.0 - sockunion_set@Base 1.1.0 - sockunion_socket@Base 1.1.0 - sockunion_str2su@Base 1.1.0 - sockunion_stream_socket@Base 1.1.0 - str2family@Base 1.1.0 - str2in6_addr@Base 1.1.0 - str2prefix@Base 1.1.0 - str2prefix_eth@Base 1.1.0 - str2prefix_ipv4@Base 1.1.0 - str2prefix_ipv6@Base 1.1.0 - str2sockunion@Base 1.1.0 - stream_copy@Base 1.1.0 - stream_dup@Base 1.1.0 - stream_dupcat@Base 1.1.0 - stream_empty@Base 1.1.0 - stream_fifo_clean@Base 1.1.0 - stream_fifo_free@Base 1.1.0 - stream_fifo_head@Base 1.1.0 - stream_fifo_new@Base 1.1.0 - stream_fifo_pop@Base 1.1.0 - stream_fifo_push@Base 1.1.0 - stream_flush@Base 1.1.0 - stream_forward_endp@Base 1.1.0 - stream_forward_getp@Base 1.1.0 - stream_free@Base 1.1.0 - stream_get@Base 1.1.0 - stream_get_endp@Base 1.1.0 - stream_get_getp@Base 1.1.0 - stream_get_ipv4@Base 1.1.0 - stream_get_size@Base 1.1.0 - stream_getc@Base 1.1.0 - stream_getc_from@Base 1.1.0 - stream_getd@Base 1.1.0 - stream_getf@Base 1.1.0 - stream_getl@Base 1.1.0 - stream_getl_from@Base 1.1.0 - stream_getq@Base 1.1.0 - stream_getq_from@Base 1.1.0 - stream_getw@Base 1.1.0 - stream_getw_from@Base 1.1.0 - stream_new@Base 1.1.0 - stream_pnt@Base 1.1.0 - stream_put@Base 1.1.0 - stream_put_in_addr@Base 1.1.0 - stream_put_ipv4@Base 1.1.0 - stream_put_prefix@Base 1.1.0 - stream_putc@Base 1.1.0 - stream_putc_at@Base 1.1.0 - stream_putd@Base 1.1.0 - stream_putf@Base 1.1.0 - stream_putl@Base 1.1.0 - stream_putl_at@Base 1.1.0 - stream_putq@Base 1.1.0 - stream_putq_at@Base 1.1.0 - stream_putw@Base 1.1.0 - stream_putw_at@Base 1.1.0 - stream_read@Base 1.1.0 - stream_read_try@Base 1.1.0 - stream_recvfrom@Base 1.1.0 - stream_recvmsg@Base 1.1.0 - stream_reset@Base 1.1.0 - stream_resize@Base 1.1.0 - stream_set_endp@Base 1.1.0 - stream_set_getp@Base 1.1.0 - stream_write@Base 1.1.0 - string_hash_make@Base 1.1.0 - strlcat@Base 1.1.0 - strlcpy@Base 1.1.0 - terminal_monitor_cmd@Base 1.1.0 - terminal_no_monitor_cmd@Base 1.1.0 - thread_call@Base 1.1.0 - thread_cancel@Base 1.1.0 - thread_cancel_event@Base 1.1.0 - thread_consumed_time@Base 1.1.0 - thread_current@Base 1.1.0 - thread_fetch@Base 1.1.0 - thread_getrusage@Base 1.1.0 - thread_master_create@Base 1.1.0 - thread_master_free@Base 1.1.0 - thread_should_yield@Base 1.1.0 - thread_timer_remain@Base 1.1.0 - thread_timer_remain_second@Base 1.1.0 - timeval_elapsed@Base 1.1.0 - token_cr@Base 1.1.0 - trickle_down@Base 1.1.0 - trickle_up@Base 1.1.0 - vector_copy@Base 1.1.0 - vector_count@Base 1.1.0 - vector_empty_slot@Base 1.1.0 - vector_ensure@Base 1.1.0 - vector_free@Base 1.1.0 - vector_init@Base 1.1.0 - vector_lookup@Base 1.1.0 - vector_lookup_ensure@Base 1.1.0 - vector_only_index_free@Base 1.1.0 - vector_only_wrapper_free@Base 1.1.0 - vector_set@Base 1.1.0 - vector_set_index@Base 1.1.0 - vector_unset@Base 1.1.0 - vrf_add_hook@Base 1.1.0 - vrf_bitmap_check@Base 1.1.0 - vrf_bitmap_free@Base 1.1.0 - vrf_bitmap_init@Base 1.1.0 - vrf_bitmap_set@Base 1.1.0 - vrf_bitmap_unset@Base 1.1.0 - vrf_first@Base 1.1.0 - vrf_iflist@Base 1.1.0 - vrf_iflist_get@Base 1.1.0 - vrf_info_get@Base 1.1.0 - vrf_info_lookup@Base 1.1.0 - vrf_init@Base 1.1.0 - vrf_iter2id@Base 1.1.0 - vrf_iter2iflist@Base 1.1.0 - vrf_iter2info@Base 1.1.0 - vrf_iterator@Base 1.1.0 - vrf_master@Base 1.1.0 - vrf_netns_cmd@Base 1.1.0 - vrf_next@Base 1.1.0 - vrf_socket@Base 1.1.0 - vrf_table@Base 1.1.0 - vrf_terminate@Base 1.1.0 - vty_access_class_cmd@Base 1.1.0 - vty_close@Base 1.1.0 - vty_config_lock@Base 1.1.0 - vty_config_unlock@Base 1.1.0 - vty_cwd@Base 1.1.0 - vty_get_cwd@Base 1.1.0 - vty_hello@Base 1.1.0 - vty_init@Base 1.1.0 - vty_init_vtysh@Base 1.1.0 - vty_ipv6_access_class_cmd@Base 1.1.0 - vty_log@Base 1.1.0 - vty_log_fixed@Base 1.1.0 - vty_login_cmd@Base 1.1.0 - vty_new@Base 1.1.0 - vty_no_restricted_mode_cmd@Base 1.1.0 - vty_node@Base 1.1.0 - vty_out@Base 1.1.0 - vty_read_config@Base 1.1.0 - vty_reset@Base 1.1.0 - vty_restricted_mode_cmd@Base 1.1.0 - vty_serv_sock@Base 1.1.0 - vty_shell@Base 1.1.0 - vty_shell_serv@Base 1.1.0 - vty_stdio@Base 1.1.0 - vty_terminate@Base 1.1.0 - vty_time_print@Base 1.1.0 - who_cmd@Base 1.1.0 - work_queue_add@Base 1.1.0 - work_queue_free@Base 1.1.0 - work_queue_is_scheduled@Base 1.1.0 - work_queue_new@Base 1.1.0 - work_queue_plug@Base 1.1.0 - work_queue_run@Base 1.1.0 - work_queue_unplug@Base 1.1.0 - writen@Base 1.1.0 - zapi_ipv4_route@Base 1.1.0 - zapi_ipv6_route@Base 1.1.0 - zcalloc@Base 1.1.0 - zclient_create_header@Base 1.1.0 - zclient_debug@Base 1.1.0 - zclient_free@Base 1.1.0 - zclient_init@Base 1.1.0 - zclient_new@Base 1.1.0 - zclient_read_header@Base 1.1.0 - zclient_redistribute@Base 1.1.0 - zclient_redistribute_default@Base 1.1.0 - zclient_reset@Base 1.1.0 - zclient_send_message@Base 1.1.0 - zclient_send_requests@Base 1.1.0 - zclient_serv_path@Base 1.1.0 - zclient_serv_path_get@Base 1.1.0 - zclient_serv_path_set@Base 1.1.0 - zclient_socket_connect@Base 1.1.0 - zclient_start@Base 1.1.0 - zclient_stop@Base 1.1.0 - zebra_interface_add_read@Base 1.1.0 - zebra_interface_address_read@Base 1.1.0 - zebra_interface_if_set_value@Base 1.1.0 - zebra_interface_link_params_read@Base 1.1.0 - zebra_interface_link_params_write@Base 1.1.0 - zebra_interface_state_read@Base 1.1.0 - zebra_redistribute_send@Base 1.1.0 - zebra_route_char@Base 1.1.0 - zebra_route_string@Base 1.1.0 - zebra_router_id_update_read@Base 1.1.0 - zfree@Base 1.1.0 - zlog@Base 1.1.0 - zlog_backtrace@Base 1.1.0 - zlog_backtrace_sigsafe@Base 1.1.0 - zlog_debug@Base 1.1.0 - zlog_default@Base 1.1.0 - zlog_err@Base 1.1.0 - zlog_hexdump@Base 1.1.0 - zlog_info@Base 1.1.0 - zlog_notice@Base 1.1.0 - zlog_priority@Base 1.1.0 - zlog_proto_names@Base 1.1.0 - zlog_reset_file@Base 1.1.0 - zlog_rotate@Base 1.1.0 - zlog_set_file@Base 1.1.0 - zlog_set_level@Base 1.1.0 - zlog_signal@Base 1.1.0 - zlog_thread_info@Base 1.1.0 - zlog_warn@Base 1.1.0 - zmalloc@Base 1.1.0 - zprivs_change_caps@Base 1.1.0 - zprivs_change_null@Base 1.1.0 - zprivs_change_uid@Base 1.1.0 - zprivs_get_ids@Base 1.1.0 - zprivs_init@Base 1.1.0 - zprivs_state_caps@Base 1.1.0 - zprivs_state_null@Base 1.1.0 - zprivs_state_uid@Base 1.1.0 - zprivs_terminate@Base 1.1.0 - zrealloc@Base 1.1.0 - zserv_command_string@Base 1.1.0 - zstrdup@Base 1.1.0 +libzebra.so.1 libquagga0 #MINVER# + __packed@Base 1.1.1 + _zlog_assert_failed@Base 1.1.1 + accept_lifetime_day_month_day_month_cmd@Base 1.1.1 + accept_lifetime_day_month_month_day_cmd@Base 1.1.1 + accept_lifetime_duration_day_month_cmd@Base 1.1.1 + accept_lifetime_duration_month_day_cmd@Base 1.1.1 + accept_lifetime_infinite_day_month_cmd@Base 1.1.1 + accept_lifetime_infinite_month_day_cmd@Base 1.1.1 + accept_lifetime_month_day_day_month_cmd@Base 1.1.1 + accept_lifetime_month_day_month_day_cmd@Base 1.1.1 + access_list_add_hook@Base 1.1.1 + access_list_any_cmd@Base 1.1.1 + access_list_apply@Base 1.1.1 + access_list_cmd@Base 1.1.1 + access_list_delete_hook@Base 1.1.1 + access_list_exact_cmd@Base 1.1.1 + access_list_extended_any_any_cmd@Base 1.1.1 + access_list_extended_any_host_cmd@Base 1.1.1 + access_list_extended_any_mask_cmd@Base 1.1.1 + access_list_extended_cmd@Base 1.1.1 + access_list_extended_host_any_cmd@Base 1.1.1 + access_list_extended_host_host_cmd@Base 1.1.1 + access_list_extended_host_mask_cmd@Base 1.1.1 + access_list_extended_mask_any_cmd@Base 1.1.1 + access_list_extended_mask_host_cmd@Base 1.1.1 + access_list_init@Base 1.1.1 + access_list_lookup@Base 1.1.1 + access_list_remark_cmd@Base 1.1.1 + access_list_reset@Base 1.1.1 + access_list_standard_any_cmd@Base 1.1.1 + access_list_standard_cmd@Base 1.1.1 + access_list_standard_host_cmd@Base 1.1.1 + access_list_standard_nomask_cmd@Base 1.1.1 + afi2family@Base 1.1.1 + afi2str@Base 1.1.1 + all_digit@Base 1.1.1 + apply_classful_mask_ipv4@Base 1.1.1 + apply_mask@Base 1.1.1 + apply_mask_ipv4@Base 1.1.1 + apply_mask_ipv6@Base 1.1.1 + argv_concat@Base 1.1.1 + banner_motd_default_cmd@Base 1.1.1 + banner_motd_file_cmd@Base 1.1.1 + buffer_empty@Base 1.1.1 + buffer_flush_all@Base 1.1.1 + buffer_flush_available@Base 1.1.1 + buffer_flush_window@Base 1.1.1 + buffer_free@Base 1.1.1 + buffer_getstr@Base 1.1.1 + buffer_new@Base 1.1.1 + buffer_put@Base 1.1.1 + buffer_putc@Base 1.1.1 + buffer_putstr@Base 1.1.1 + buffer_reset@Base 1.1.1 + buffer_write@Base 1.1.1 + clear_ip_prefix_list_cmd@Base 1.1.1 + clear_ip_prefix_list_name_cmd@Base 1.1.1 + clear_ip_prefix_list_name_prefix_cmd@Base 1.1.1 + clear_ipv6_prefix_list_cmd@Base 1.1.1 + clear_ipv6_prefix_list_name_cmd@Base 1.1.1 + clear_ipv6_prefix_list_name_prefix_cmd@Base 1.1.1 + clear_thread_cpu_cmd@Base 1.1.1 + closezlog@Base 1.1.1 + cmd_complete_command@Base 1.1.1 + cmd_complete_command_lib@Base 1.1.1 + cmd_describe_command@Base 1.1.1 + cmd_execute_command@Base 1.1.1 + cmd_execute_command_strict@Base 1.1.1 + cmd_free_strvec@Base 1.1.1 + cmd_init@Base 1.1.1 + cmd_make_strvec@Base 1.1.1 + cmd_prompt@Base 1.1.1 + cmd_terminate@Base 1.1.1 + cmdvec@Base 1.1.1 + command_config_read_one_line@Base 1.1.1 + command_cr@Base 1.1.1 + config_disable_cmd@Base 1.1.1 + config_enable_cmd@Base 1.1.1 + config_end_cmd@Base 1.1.1 + config_exit_cmd@Base 1.1.1 + config_from_file@Base 1.1.1 + config_help_cmd@Base 1.1.1 + config_list_cmd@Base 1.1.1 + config_log_facility_cmd@Base 1.1.1 + config_log_file_cmd@Base 1.1.1 + config_log_file_level_cmd@Base 1.1.1 + config_log_monitor_cmd@Base 1.1.1 + config_log_monitor_level_cmd@Base 1.1.1 + config_log_record_priority_cmd@Base 1.1.1 + config_log_stdout_cmd@Base 1.1.1 + config_log_stdout_level_cmd@Base 1.1.1 + config_log_syslog_cmd@Base 1.1.1 + config_log_syslog_facility_cmd@Base 1.1.1 + config_log_syslog_level_cmd@Base 1.1.1 + config_log_timestamp_precision_cmd@Base 1.1.1 + config_log_trap_cmd@Base 1.1.1 + config_logmsg_cmd@Base 1.1.1 + config_quit_cmd@Base 1.1.1 + config_show_distribute@Base 1.1.1 + config_terminal_cmd@Base 1.1.1 + config_terminal_length_cmd@Base 1.1.1 + config_terminal_no_length_cmd@Base 1.1.1 + config_write_access_cisco@Base 1.1.1 + config_write_access_zebra@Base 1.1.1 + config_write_cmd@Base 1.1.1 + config_write_distribute@Base 1.1.1 + config_write_file_cmd@Base 1.1.1 + config_write_if_rmap@Base 1.1.1 + config_write_memory_cmd@Base 1.1.1 + config_write_terminal_cmd@Base 1.1.1 + connected_add_by_prefix@Base 1.1.1 + connected_delete_by_prefix@Base 1.1.1 + connected_free@Base 1.1.1 + connected_lookup_address@Base 1.1.1 + connected_new@Base 1.1.1 + copy_nexthops@Base 1.1.1 + copy_runningconfig_startupconfig_cmd@Base 1.1.1 + disthash@Base 1.1.1 + distribute_add_hook@Base 1.1.1 + distribute_delete_hook@Base 1.1.1 + distribute_list_add_hook@Base 1.1.1 + distribute_list_all_cmd@Base 1.1.1 + distribute_list_cmd@Base 1.1.1 + distribute_list_delete_hook@Base 1.1.1 + distribute_list_init@Base 1.1.1 + distribute_list_prefix_all_cmd@Base 1.1.1 + distribute_list_prefix_cmd@Base 1.1.1 + distribute_list_reset@Base 1.1.1 + distribute_lookup@Base 1.1.1 + echo_cmd@Base 1.1.1 + enable_password_cmd@Base 1.1.1 + enable_password_text_cmd@Base 1.1.1 + event_counter_format@Base 1.1.1 + event_counter_inc@Base 1.1.1 + exec_timeout_min_cmd@Base 1.1.1 + exec_timeout_sec_cmd@Base 1.1.1 + family2addrsize@Base 1.1.1 + family2afi@Base 1.1.1 + fletcher_checksum@Base 1.1.1 + funcname_thread_add_background@Base 1.1.1 + funcname_thread_add_event@Base 1.1.1 + funcname_thread_add_read@Base 1.1.1 + funcname_thread_add_timer@Base 1.1.1 + funcname_thread_add_timer_msec@Base 1.1.1 + funcname_thread_add_write@Base 1.1.1 + funcname_thread_execute@Base 1.1.1 + getsockopt_ifindex@Base 1.1.1 + getsockopt_so_sendbuf@Base 1.1.1 + hash_alloc_intern@Base 1.1.1 + hash_clean@Base 1.1.1 + hash_create@Base 1.1.1 + hash_create_size@Base 1.1.1 + hash_free@Base 1.1.1 + hash_get@Base 1.1.1 + hash_iterate@Base 1.1.1 + hash_lookup@Base 1.1.1 + hash_release@Base 1.1.1 + hmac_md5@Base 1.1.1 + host@Base 1.1.1 + host_config_get@Base 1.1.1 + host_config_set@Base 1.1.1 + hostname_cmd@Base 1.1.1 + htonf@Base 1.1.1 + if_add_hook@Base 1.1.1 + if_cmp_func@Base 1.1.1 + if_create@Base 1.1.1 + if_create_vrf@Base 1.1.1 + if_delete@Base 1.1.1 + if_delete_retain@Base 1.1.1 + if_dump_all@Base 1.1.1 + if_flag_dump@Base 1.1.1 + if_get_by_name@Base 1.1.1 + if_get_by_name_len@Base 1.1.1 + if_get_by_name_len_vrf@Base 1.1.1 + if_get_by_name_vrf@Base 1.1.1 + if_init@Base 1.1.1 + if_ipv6_rmap_cmd@Base 1.1.1 + if_is_broadcast@Base 1.1.1 + if_is_loopback@Base 1.1.1 + if_is_multicast@Base 1.1.1 + if_is_operative@Base 1.1.1 + if_is_pointopoint@Base 1.1.1 + if_is_running@Base 1.1.1 + if_is_up@Base 1.1.1 + if_link_params_free@Base 1.1.1 + if_link_params_get@Base 1.1.1 + if_link_type_str@Base 1.1.1 + if_lookup_address@Base 1.1.1 + if_lookup_address_vrf@Base 1.1.1 + if_lookup_by_index@Base 1.1.1 + if_lookup_by_index_vrf@Base 1.1.1 + if_lookup_by_name@Base 1.1.1 + if_lookup_by_name_len@Base 1.1.1 + if_lookup_by_name_len_vrf@Base 1.1.1 + if_lookup_by_name_vrf@Base 1.1.1 + if_lookup_exact_address@Base 1.1.1 + if_lookup_exact_address_vrf@Base 1.1.1 + if_lookup_prefix@Base 1.1.1 + if_lookup_prefix_vrf@Base 1.1.1 + if_master@Base 1.1.1 + if_rmap_cmd@Base 1.1.1 + if_rmap_hook_add@Base 1.1.1 + if_rmap_hook_delete@Base 1.1.1 + if_rmap_init@Base 1.1.1 + if_rmap_lookup@Base 1.1.1 + if_rmap_reset@Base 1.1.1 + if_terminate@Base 1.1.1 + ifindex2ifname@Base 1.1.1 + ifindex2ifname_vrf@Base 1.1.1 + iflist@Base 1.1.1 + ifname2ifindex@Base 1.1.1 + ifname2ifindex_vrf@Base 1.1.1 + ifrmaphash@Base 1.1.1 + in_cksum@Base 1.1.1 + inet6_ntoa@Base 1.1.1 + inet_sutop@Base 1.1.1 + install_default@Base 1.1.1 + install_element@Base 1.1.1 + install_node@Base 1.1.1 + integrate_default@Base 1.1.1 + interface_cmd@Base 1.1.1 + interface_desc_cmd@Base 1.1.1 + interface_vrf_cmd@Base 1.1.1 + ip6_masklen@Base 1.1.1 + ip_masklen@Base 1.1.1 + ip_prefix_list_cmd@Base 1.1.1 + ip_prefix_list_description_cmd@Base 1.1.1 + ip_prefix_list_ge_cmd@Base 1.1.1 + ip_prefix_list_ge_le_cmd@Base 1.1.1 + ip_prefix_list_le_cmd@Base 1.1.1 + ip_prefix_list_le_ge_cmd@Base 1.1.1 + ip_prefix_list_seq_cmd@Base 1.1.1 + ip_prefix_list_seq_ge_cmd@Base 1.1.1 + ip_prefix_list_seq_ge_le_cmd@Base 1.1.1 + ip_prefix_list_seq_le_cmd@Base 1.1.1 + ip_prefix_list_seq_le_ge_cmd@Base 1.1.1 + ip_prefix_list_sequence_number_cmd@Base 1.1.1 + ipv4_broadcast_addr@Base 1.1.1 + ipv4_network_addr@Base 1.1.1 + ipv6_access_list_any_cmd@Base 1.1.1 + ipv6_access_list_cmd@Base 1.1.1 + ipv6_access_list_exact_cmd@Base 1.1.1 + ipv6_access_list_remark_cmd@Base 1.1.1 + ipv6_as_v4_distribute_list_all_cmd@Base 1.1.1 + ipv6_as_v4_distribute_list_cmd@Base 1.1.1 + ipv6_as_v4_distribute_list_prefix_all_cmd@Base 1.1.1 + ipv6_as_v4_distribute_list_prefix_cmd@Base 1.1.1 + ipv6_distribute_list_all_cmd@Base 1.1.1 + ipv6_distribute_list_cmd@Base 1.1.1 + ipv6_distribute_list_prefix_all_cmd@Base 1.1.1 + ipv6_distribute_list_prefix_cmd@Base 1.1.1 + ipv6_prefix_list_cmd@Base 1.1.1 + ipv6_prefix_list_description_cmd@Base 1.1.1 + ipv6_prefix_list_ge_cmd@Base 1.1.1 + ipv6_prefix_list_ge_le_cmd@Base 1.1.1 + ipv6_prefix_list_le_cmd@Base 1.1.1 + ipv6_prefix_list_le_ge_cmd@Base 1.1.1 + ipv6_prefix_list_seq_cmd@Base 1.1.1 + ipv6_prefix_list_seq_ge_cmd@Base 1.1.1 + ipv6_prefix_list_seq_ge_le_cmd@Base 1.1.1 + ipv6_prefix_list_seq_le_cmd@Base 1.1.1 + ipv6_prefix_list_seq_le_ge_cmd@Base 1.1.1 + ipv6_prefix_list_sequence_number_cmd@Base 1.1.1 + jhash2@Base 1.1.1 + jhash@Base 1.1.1 + jhash_1word@Base 1.1.1 + jhash_2words@Base 1.1.1 + jhash_3words@Base 1.1.1 + key_chain_cmd@Base 1.1.1 + key_cmd@Base 1.1.1 + key_lookup_for_accept@Base 1.1.1 + key_lookup_for_send@Base 1.1.1 + key_match_for_accept@Base 1.1.1 + key_string_cmd@Base 1.1.1 + keychain_init@Base 1.1.1 + keychain_list@Base 1.1.1 + keychain_lookup@Base 1.1.1 + line_vty_cmd@Base 1.1.1 + list_add_list@Base 1.1.1 + list_add_node_next@Base 1.1.1 + list_add_node_prev@Base 1.1.1 + list_delete@Base 1.1.1 + list_delete_all_node@Base 1.1.1 + list_delete_node@Base 1.1.1 + list_free@Base 1.1.1 + list_new@Base 1.1.1 + listnode_add@Base 1.1.1 + listnode_add_after@Base 1.1.1 + listnode_add_sort@Base 1.1.1 + listnode_delete@Base 1.1.1 + listnode_head@Base 1.1.1 + listnode_lookup@Base 1.1.1 + listnode_move_to_tail@Base 1.1.1 + log_commands_cmd@Base 1.1.1 + log_memstats_stderr@Base 1.1.1 + lookup@Base 1.1.1 + masklen2ip6@Base 1.1.1 + masklen2ip@Base 1.1.1 + md5_init@Base 1.1.1 + md5_loop@Base 1.1.1 + md5_pad@Base 1.1.1 + md5_result@Base 1.1.1 + memory_init@Base 1.1.1 + memory_list_babel@Base 1.1.1 + memory_list_bgp@Base 1.1.1 + memory_list_isis@Base 1.1.1 + memory_list_lib@Base 1.1.1 + memory_list_ospf6@Base 1.1.1 + memory_list_ospf@Base 1.1.1 + memory_list_pim@Base 1.1.1 + memory_list_rip@Base 1.1.1 + memory_list_ripng@Base 1.1.1 + memory_list_vtysh@Base 1.1.1 + memory_list_zebra@Base 1.1.1 + mes_lookup@Base 1.1.1 + mlists@Base 1.1.1 + mtype_memstr@Base 1.1.1 + mtype_stats_alloc@Base 1.1.1 + netmask_str2prefix_str@Base 1.1.1 + nexthop_add@Base 1.1.1 + nexthop_free@Base 1.1.1 + nexthop_new@Base 1.1.1 + nexthop_same_no_recurse@Base 1.1.1 + nexthop_type_to_str@Base 1.1.1 + nexthops_free@Base 1.1.1 + no_access_list_all_cmd@Base 1.1.1 + no_access_list_any_cmd@Base 1.1.1 + no_access_list_cmd@Base 1.1.1 + no_access_list_exact_cmd@Base 1.1.1 + no_access_list_extended_any_any_cmd@Base 1.1.1 + no_access_list_extended_any_host_cmd@Base 1.1.1 + no_access_list_extended_any_mask_cmd@Base 1.1.1 + no_access_list_extended_cmd@Base 1.1.1 + no_access_list_extended_host_any_cmd@Base 1.1.1 + no_access_list_extended_host_host_cmd@Base 1.1.1 + no_access_list_extended_host_mask_cmd@Base 1.1.1 + no_access_list_extended_mask_any_cmd@Base 1.1.1 + no_access_list_extended_mask_host_cmd@Base 1.1.1 + no_access_list_remark_arg_cmd@Base 1.1.1 + no_access_list_remark_cmd@Base 1.1.1 + no_access_list_standard_any_cmd@Base 1.1.1 + no_access_list_standard_cmd@Base 1.1.1 + no_access_list_standard_host_cmd@Base 1.1.1 + no_access_list_standard_nomask_cmd@Base 1.1.1 + no_banner_motd_cmd@Base 1.1.1 + no_config_log_facility_cmd@Base 1.1.1 + no_config_log_file_cmd@Base 1.1.1 + no_config_log_file_level_cmd@Base 1.1.1 + no_config_log_monitor_cmd@Base 1.1.1 + no_config_log_record_priority_cmd@Base 1.1.1 + no_config_log_stdout_cmd@Base 1.1.1 + no_config_log_syslog_cmd@Base 1.1.1 + no_config_log_syslog_facility_cmd@Base 1.1.1 + no_config_log_timestamp_precision_cmd@Base 1.1.1 + no_config_log_trap_cmd@Base 1.1.1 + no_distribute_list_all_cmd@Base 1.1.1 + no_distribute_list_cmd@Base 1.1.1 + no_distribute_list_prefix_all_cmd@Base 1.1.1 + no_distribute_list_prefix_cmd@Base 1.1.1 + no_enable_password_cmd@Base 1.1.1 + no_exec_timeout_cmd@Base 1.1.1 + no_hostname_cmd@Base 1.1.1 + no_if_ipv6_rmap_cmd@Base 1.1.1 + no_if_rmap_cmd@Base 1.1.1 + no_interface_cmd@Base 1.1.1 + no_interface_desc_cmd@Base 1.1.1 + no_interface_vrf_cmd@Base 1.1.1 + no_ip_prefix_list_cmd@Base 1.1.1 + no_ip_prefix_list_description_arg_cmd@Base 1.1.1 + no_ip_prefix_list_description_cmd@Base 1.1.1 + no_ip_prefix_list_ge_cmd@Base 1.1.1 + no_ip_prefix_list_ge_le_cmd@Base 1.1.1 + no_ip_prefix_list_le_cmd@Base 1.1.1 + no_ip_prefix_list_le_ge_cmd@Base 1.1.1 + no_ip_prefix_list_prefix_cmd@Base 1.1.1 + no_ip_prefix_list_seq_cmd@Base 1.1.1 + no_ip_prefix_list_seq_ge_cmd@Base 1.1.1 + no_ip_prefix_list_seq_ge_le_cmd@Base 1.1.1 + no_ip_prefix_list_seq_le_cmd@Base 1.1.1 + no_ip_prefix_list_seq_le_ge_cmd@Base 1.1.1 + no_ip_prefix_list_sequence_number_cmd@Base 1.1.1 + no_ipv6_access_list_all_cmd@Base 1.1.1 + no_ipv6_access_list_any_cmd@Base 1.1.1 + no_ipv6_access_list_cmd@Base 1.1.1 + no_ipv6_access_list_exact_cmd@Base 1.1.1 + no_ipv6_access_list_remark_arg_cmd@Base 1.1.1 + no_ipv6_access_list_remark_cmd@Base 1.1.1 + no_ipv6_as_v4_distribute_list_all_cmd@Base 1.1.1 + no_ipv6_as_v4_distribute_list_cmd@Base 1.1.1 + no_ipv6_as_v4_distribute_list_prefix_all_cmd@Base 1.1.1 + no_ipv6_as_v4_distribute_list_prefix_cmd@Base 1.1.1 + no_ipv6_distribute_list_all_cmd@Base 1.1.1 + no_ipv6_distribute_list_cmd@Base 1.1.1 + no_ipv6_distribute_list_prefix_all_cmd@Base 1.1.1 + no_ipv6_distribute_list_prefix_cmd@Base 1.1.1 + no_ipv6_prefix_list_cmd@Base 1.1.1 + no_ipv6_prefix_list_description_arg_cmd@Base 1.1.1 + no_ipv6_prefix_list_description_cmd@Base 1.1.1 + no_ipv6_prefix_list_ge_cmd@Base 1.1.1 + no_ipv6_prefix_list_ge_le_cmd@Base 1.1.1 + no_ipv6_prefix_list_le_cmd@Base 1.1.1 + no_ipv6_prefix_list_le_ge_cmd@Base 1.1.1 + no_ipv6_prefix_list_prefix_cmd@Base 1.1.1 + no_ipv6_prefix_list_seq_cmd@Base 1.1.1 + no_ipv6_prefix_list_seq_ge_cmd@Base 1.1.1 + no_ipv6_prefix_list_seq_ge_le_cmd@Base 1.1.1 + no_ipv6_prefix_list_seq_le_cmd@Base 1.1.1 + no_ipv6_prefix_list_seq_le_ge_cmd@Base 1.1.1 + no_ipv6_prefix_list_sequence_number_cmd@Base 1.1.1 + no_key_chain_cmd@Base 1.1.1 + no_key_cmd@Base 1.1.1 + no_key_string_cmd@Base 1.1.1 + no_rmap_call_cmd@Base 1.1.1 + no_rmap_continue_cmd@Base 1.1.1 + no_rmap_continue_seq@Base 1.1.1 + no_rmap_description_cmd@Base 1.1.1 + no_rmap_onmatch_goto_cmd@Base 1.1.1 + no_rmap_onmatch_next_cmd@Base 1.1.1 + no_route_map_all_cmd@Base 1.1.1 + no_route_map_cmd@Base 1.1.1 + no_service_advanced_vty_cmd@Base 1.1.1 + no_service_password_encrypt_cmd@Base 1.1.1 + no_service_terminal_length_cmd@Base 1.1.1 + no_terminal_monitor_cmd@Base 1.1.1 + no_vrf_netns_cmd@Base 1.1.1 + no_vty_access_class_cmd@Base 1.1.1 + no_vty_ipv6_access_class_cmd@Base 1.1.1 + no_vty_login_cmd@Base 1.1.1 + node_parent@Base 1.1.1 + ntohf@Base 1.1.1 + openzlog@Base 1.1.1 + password_cmd@Base 1.1.1 + password_text_cmd@Base 1.1.1 + pid_output@Base 1.1.1 + plog_debug@Base 1.1.1 + plog_err@Base 1.1.1 + plog_info@Base 1.1.1 + plog_notice@Base 1.1.1 + plog_warn@Base 1.1.1 + pqueue_create@Base 1.1.1 + pqueue_delete@Base 1.1.1 + pqueue_dequeue@Base 1.1.1 + pqueue_enqueue@Base 1.1.1 + pqueue_remove_at@Base 1.1.1 + prefix2sockunion@Base 1.1.1 + prefix2str@Base 1.1.1 + prefix6_bit@Base 1.1.1 + prefix_bgp_orf_entry@Base 1.1.1 + prefix_bgp_orf_lookup@Base 1.1.1 + prefix_bgp_orf_remove_all@Base 1.1.1 + prefix_bgp_orf_set@Base 1.1.1 + prefix_bgp_show_prefix_list@Base 1.1.1 + prefix_bit@Base 1.1.1 + prefix_blen@Base 1.1.1 + prefix_cmp@Base 1.1.1 + prefix_common_bits@Base 1.1.1 + prefix_copy@Base 1.1.1 + prefix_family_str@Base 1.1.1 + prefix_free@Base 1.1.1 + prefix_ipv4_any@Base 1.1.1 + prefix_ipv4_free@Base 1.1.1 + prefix_ipv4_new@Base 1.1.1 + prefix_ipv6_free@Base 1.1.1 + prefix_ipv6_new@Base 1.1.1 + prefix_list_add_hook@Base 1.1.1 + prefix_list_apply@Base 1.1.1 + prefix_list_delete_hook@Base 1.1.1 + prefix_list_init@Base 1.1.1 + prefix_list_lookup@Base 1.1.1 + prefix_list_name@Base 1.1.1 + prefix_list_reset@Base 1.1.1 + prefix_match@Base 1.1.1 + prefix_new@Base 1.1.1 + prefix_same@Base 1.1.1 + print_version@Base 1.1.1 + proto_name2num@Base 1.1.1 + proto_redistnum@Base 1.1.1 + quagga_gettime@Base 1.1.1 + quagga_sigevent_process@Base 1.1.1 + quagga_time@Base 1.1.1 + quagga_timestamp@Base 1.1.1 + readn@Base 1.1.1 + recent_relative_time@Base 1.1.1 + recent_time@Base 1.1.1 + rmap_call_cmd@Base 1.1.1 + rmap_continue_cmd@Base 1.1.1 + rmap_continue_index_cmd@Base 1.1.1 + rmap_continue_seq_cmd@Base 1.1.1 + rmap_description_cmd@Base 1.1.1 + rmap_onmatch_goto_cmd@Base 1.1.1 + rmap_onmatch_next_cmd@Base 1.1.1 + rmap_show_name_cmd@Base 1.1.1 + route_lock_node@Base 1.1.1 + route_map_add_hook@Base 1.1.1 + route_map_add_match@Base 1.1.1 + route_map_add_set@Base 1.1.1 + route_map_apply@Base 1.1.1 + route_map_cmd@Base 1.1.1 + route_map_delete_hook@Base 1.1.1 + route_map_delete_match@Base 1.1.1 + route_map_delete_set@Base 1.1.1 + route_map_event_hook@Base 1.1.1 + route_map_finish@Base 1.1.1 + route_map_init@Base 1.1.1 + route_map_init_vty@Base 1.1.1 + route_map_install_match@Base 1.1.1 + route_map_install_set@Base 1.1.1 + route_map_lookup_by_name@Base 1.1.1 + route_next@Base 1.1.1 + route_next_until@Base 1.1.1 + route_node_get@Base 1.1.1 + route_node_lookup@Base 1.1.1 + route_node_match@Base 1.1.1 + route_node_match_ipv4@Base 1.1.1 + route_node_match_ipv6@Base 1.1.1 + route_table_count@Base 1.1.1 + route_table_finish@Base 1.1.1 + route_table_get_next@Base 1.1.1 + route_table_init@Base 1.1.1 + route_table_init_with_delegate@Base 1.1.1 + route_table_iter_cleanup@Base 1.1.1 + route_table_iter_init@Base 1.1.1 + route_table_iter_pause@Base 1.1.1 + route_table_prefix_iter_cmp@Base 1.1.1 + route_top@Base 1.1.1 + route_unlock_node@Base 1.1.1 + safe_strerror@Base 1.1.1 + safi2str@Base 1.1.1 + send_lifetime_day_month_day_month_cmd@Base 1.1.1 + send_lifetime_day_month_month_day_cmd@Base 1.1.1 + send_lifetime_duration_day_month_cmd@Base 1.1.1 + send_lifetime_duration_month_day_cmd@Base 1.1.1 + send_lifetime_infinite_day_month_cmd@Base 1.1.1 + send_lifetime_infinite_month_day_cmd@Base 1.1.1 + send_lifetime_month_day_day_month_cmd@Base 1.1.1 + send_lifetime_month_day_month_day_cmd@Base 1.1.1 + service_advanced_vty_cmd@Base 1.1.1 + service_password_encrypt_cmd@Base 1.1.1 + service_terminal_length_cmd@Base 1.1.1 + set_nonblocking@Base 1.1.1 + setsockopt_ifindex@Base 1.1.1 + setsockopt_ipv4_multicast@Base 1.1.1 + setsockopt_ipv4_multicast_if@Base 1.1.1 + setsockopt_ipv4_tos@Base 1.1.1 + setsockopt_ipv6_checksum@Base 1.1.1 + setsockopt_ipv6_hoplimit@Base 1.1.1 + setsockopt_ipv6_multicast_hops@Base 1.1.1 + setsockopt_ipv6_multicast_loop@Base 1.1.1 + setsockopt_ipv6_pktinfo@Base 1.1.1 + setsockopt_ipv6_tclass@Base 1.1.1 + setsockopt_ipv6_unicast_hops@Base 1.1.1 + setsockopt_so_recvbuf@Base 1.1.1 + setsockopt_so_sendbuf@Base 1.1.1 + show_address_cmd@Base 1.1.1 + show_address_vrf_all_cmd@Base 1.1.1 + show_address_vrf_cmd@Base 1.1.1 + show_commandtree_cmd@Base 1.1.1 + show_history_cmd@Base 1.1.1 + show_ip_access_list_cmd@Base 1.1.1 + show_ip_access_list_name_cmd@Base 1.1.1 + show_ip_prefix_list_cmd@Base 1.1.1 + show_ip_prefix_list_detail_cmd@Base 1.1.1 + show_ip_prefix_list_detail_name_cmd@Base 1.1.1 + show_ip_prefix_list_name_cmd@Base 1.1.1 + show_ip_prefix_list_name_seq_cmd@Base 1.1.1 + show_ip_prefix_list_prefix_cmd@Base 1.1.1 + show_ip_prefix_list_prefix_first_match_cmd@Base 1.1.1 + show_ip_prefix_list_prefix_longer_cmd@Base 1.1.1 + show_ip_prefix_list_summary_cmd@Base 1.1.1 + show_ip_prefix_list_summary_name_cmd@Base 1.1.1 + show_ipv6_access_list_cmd@Base 1.1.1 + show_ipv6_access_list_name_cmd@Base 1.1.1 + show_ipv6_prefix_list_cmd@Base 1.1.1 + show_ipv6_prefix_list_detail_cmd@Base 1.1.1 + show_ipv6_prefix_list_detail_name_cmd@Base 1.1.1 + show_ipv6_prefix_list_name_cmd@Base 1.1.1 + show_ipv6_prefix_list_name_seq_cmd@Base 1.1.1 + show_ipv6_prefix_list_prefix_cmd@Base 1.1.1 + show_ipv6_prefix_list_prefix_first_match_cmd@Base 1.1.1 + show_ipv6_prefix_list_prefix_longer_cmd@Base 1.1.1 + show_ipv6_prefix_list_summary_cmd@Base 1.1.1 + show_ipv6_prefix_list_summary_name_cmd@Base 1.1.1 + show_logging_cmd@Base 1.1.1 + show_memory_cmd@Base 1.1.1 + show_running_config_cmd@Base 1.1.1 + show_startup_config_cmd@Base 1.1.1 + show_thread_cpu_cmd@Base 1.1.1 + show_version_cmd@Base 1.1.1 + show_work_queues_cmd@Base 1.1.1 + sigmaster@Base 1.1.1 + signal_init@Base 1.1.1 + sockopt_cork@Base 1.1.1 + sockopt_iphdrincl_swab_htosys@Base 1.1.1 + sockopt_iphdrincl_swab_systoh@Base 1.1.1 + sockopt_minttl@Base 1.1.1 + sockopt_reuseaddr@Base 1.1.1 + sockopt_reuseport@Base 1.1.1 + sockopt_tcp_rtt@Base 1.1.1 + sockopt_tcp_signature@Base 1.1.1 + sockopt_ttl@Base 1.1.1 + sockopt_v6only@Base 1.1.1 + sockunion2hostprefix@Base 1.1.1 + sockunion2prefix@Base 1.1.1 + sockunion2str@Base 1.1.1 + sockunion_accept@Base 1.1.1 + sockunion_bind@Base 1.1.1 + sockunion_cmp@Base 1.1.1 + sockunion_connect@Base 1.1.1 + sockunion_dup@Base 1.1.1 + sockunion_free@Base 1.1.1 + sockunion_get_addr@Base 1.1.1 + sockunion_get_addrlen@Base 1.1.1 + sockunion_getpeername@Base 1.1.1 + sockunion_getsockname@Base 1.1.1 + sockunion_hash@Base 1.1.1 + sockunion_same@Base 1.1.1 + sockunion_set@Base 1.1.1 + sockunion_socket@Base 1.1.1 + sockunion_str2su@Base 1.1.1 + sockunion_stream_socket@Base 1.1.1 + str2family@Base 1.1.1 + str2in6_addr@Base 1.1.1 + str2prefix@Base 1.1.1 + str2prefix_eth@Base 1.1.1 + str2prefix_ipv4@Base 1.1.1 + str2prefix_ipv6@Base 1.1.1 + str2sockunion@Base 1.1.1 + stream_copy@Base 1.1.1 + stream_dup@Base 1.1.1 + stream_dupcat@Base 1.1.1 + stream_empty@Base 1.1.1 + stream_fifo_clean@Base 1.1.1 + stream_fifo_free@Base 1.1.1 + stream_fifo_head@Base 1.1.1 + stream_fifo_new@Base 1.1.1 + stream_fifo_pop@Base 1.1.1 + stream_fifo_push@Base 1.1.1 + stream_flush@Base 1.1.1 + stream_forward_endp@Base 1.1.1 + stream_forward_getp@Base 1.1.1 + stream_free@Base 1.1.1 + stream_get@Base 1.1.1 + stream_get_endp@Base 1.1.1 + stream_get_getp@Base 1.1.1 + stream_get_ipv4@Base 1.1.1 + stream_get_size@Base 1.1.1 + stream_getc@Base 1.1.1 + stream_getc_from@Base 1.1.1 + stream_getd@Base 1.1.1 + stream_getf@Base 1.1.1 + stream_getl@Base 1.1.1 + stream_getl_from@Base 1.1.1 + stream_getq@Base 1.1.1 + stream_getq_from@Base 1.1.1 + stream_getw@Base 1.1.1 + stream_getw_from@Base 1.1.1 + stream_new@Base 1.1.1 + stream_pnt@Base 1.1.1 + stream_put@Base 1.1.1 + stream_put_in_addr@Base 1.1.1 + stream_put_ipv4@Base 1.1.1 + stream_put_prefix@Base 1.1.1 + stream_putc@Base 1.1.1 + stream_putc_at@Base 1.1.1 + stream_putd@Base 1.1.1 + stream_putf@Base 1.1.1 + stream_putl@Base 1.1.1 + stream_putl_at@Base 1.1.1 + stream_putq@Base 1.1.1 + stream_putq_at@Base 1.1.1 + stream_putw@Base 1.1.1 + stream_putw_at@Base 1.1.1 + stream_read@Base 1.1.1 + stream_read_try@Base 1.1.1 + stream_recvfrom@Base 1.1.1 + stream_recvmsg@Base 1.1.1 + stream_reset@Base 1.1.1 + stream_resize@Base 1.1.1 + stream_set_endp@Base 1.1.1 + stream_set_getp@Base 1.1.1 + stream_write@Base 1.1.1 + string_hash_make@Base 1.1.1 + strlcat@Base 1.1.1 + strlcpy@Base 1.1.1 + terminal_monitor_cmd@Base 1.1.1 + terminal_no_monitor_cmd@Base 1.1.1 + thread_call@Base 1.1.1 + thread_cancel@Base 1.1.1 + thread_cancel_event@Base 1.1.1 + thread_consumed_time@Base 1.1.1 + thread_current@Base 1.1.1 + thread_fetch@Base 1.1.1 + thread_getrusage@Base 1.1.1 + thread_master_create@Base 1.1.1 + thread_master_free@Base 1.1.1 + thread_should_yield@Base 1.1.1 + thread_timer_remain@Base 1.1.1 + thread_timer_remain_second@Base 1.1.1 + timeval_elapsed@Base 1.1.1 + token_cr@Base 1.1.1 + trickle_down@Base 1.1.1 + trickle_up@Base 1.1.1 + vector_copy@Base 1.1.1 + vector_count@Base 1.1.1 + vector_empty_slot@Base 1.1.1 + vector_ensure@Base 1.1.1 + vector_free@Base 1.1.1 + vector_init@Base 1.1.1 + vector_lookup@Base 1.1.1 + vector_lookup_ensure@Base 1.1.1 + vector_only_index_free@Base 1.1.1 + vector_only_wrapper_free@Base 1.1.1 + vector_set@Base 1.1.1 + vector_set_index@Base 1.1.1 + vector_unset@Base 1.1.1 + vrf_add_hook@Base 1.1.1 + vrf_bitmap_check@Base 1.1.1 + vrf_bitmap_free@Base 1.1.1 + vrf_bitmap_init@Base 1.1.1 + vrf_bitmap_set@Base 1.1.1 + vrf_bitmap_unset@Base 1.1.1 + vrf_first@Base 1.1.1 + vrf_iflist@Base 1.1.1 + vrf_iflist_get@Base 1.1.1 + vrf_info_get@Base 1.1.1 + vrf_info_lookup@Base 1.1.1 + vrf_init@Base 1.1.1 + vrf_iter2id@Base 1.1.1 + vrf_iter2iflist@Base 1.1.1 + vrf_iter2info@Base 1.1.1 + vrf_iterator@Base 1.1.1 + vrf_master@Base 1.1.1 + vrf_netns_cmd@Base 1.1.1 + vrf_next@Base 1.1.1 + vrf_socket@Base 1.1.1 + vrf_table@Base 1.1.1 + vrf_terminate@Base 1.1.1 + vty_access_class_cmd@Base 1.1.1 + vty_close@Base 1.1.1 + vty_config_lock@Base 1.1.1 + vty_config_unlock@Base 1.1.1 + vty_cwd@Base 1.1.1 + vty_get_cwd@Base 1.1.1 + vty_hello@Base 1.1.1 + vty_init@Base 1.1.1 + vty_init_vtysh@Base 1.1.1 + vty_ipv6_access_class_cmd@Base 1.1.1 + vty_log@Base 1.1.1 + vty_log_fixed@Base 1.1.1 + vty_login_cmd@Base 1.1.1 + vty_new@Base 1.1.1 + vty_no_restricted_mode_cmd@Base 1.1.1 + vty_node@Base 1.1.1 + vty_out@Base 1.1.1 + vty_read_config@Base 1.1.1 + vty_reset@Base 1.1.1 + vty_restricted_mode_cmd@Base 1.1.1 + vty_serv_sock@Base 1.1.1 + vty_shell@Base 1.1.1 + vty_shell_serv@Base 1.1.1 + vty_stdio@Base 1.1.1 + vty_terminate@Base 1.1.1 + vty_time_print@Base 1.1.1 + who_cmd@Base 1.1.1 + work_queue_add@Base 1.1.1 + work_queue_free@Base 1.1.1 + work_queue_is_scheduled@Base 1.1.1 + work_queue_new@Base 1.1.1 + work_queue_plug@Base 1.1.1 + work_queue_run@Base 1.1.1 + work_queue_unplug@Base 1.1.1 + writen@Base 1.1.1 + zapi_ipv4_route@Base 1.1.1 + zapi_ipv6_route@Base 1.1.1 + zcalloc@Base 1.1.1 + zclient_create_header@Base 1.1.1 + zclient_debug@Base 1.1.1 + zclient_free@Base 1.1.1 + zclient_init@Base 1.1.1 + zclient_new@Base 1.1.1 + zclient_read_header@Base 1.1.1 + zclient_redistribute@Base 1.1.1 + zclient_redistribute_default@Base 1.1.1 + zclient_reset@Base 1.1.1 + zclient_send_message@Base 1.1.1 + zclient_send_requests@Base 1.1.1 + zclient_serv_path@Base 1.1.1 + zclient_serv_path_get@Base 1.1.1 + zclient_serv_path_set@Base 1.1.1 + zclient_socket_connect@Base 1.1.1 + zclient_start@Base 1.1.1 + zclient_stop@Base 1.1.1 + zebra_interface_add_read@Base 1.1.1 + zebra_interface_address_read@Base 1.1.1 + zebra_interface_if_set_value@Base 1.1.1 + zebra_interface_link_params_read@Base 1.1.1 + zebra_interface_link_params_write@Base 1.1.1 + zebra_interface_state_read@Base 1.1.1 + zebra_redistribute_send@Base 1.1.1 + zebra_route_char@Base 1.1.1 + zebra_route_string@Base 1.1.1 + zebra_router_id_update_read@Base 1.1.1 + zfree@Base 1.1.1 + zlog@Base 1.1.1 + zlog_backtrace@Base 1.1.1 + zlog_backtrace_sigsafe@Base 1.1.1 + zlog_debug@Base 1.1.1 + zlog_default@Base 1.1.1 + zlog_err@Base 1.1.1 + zlog_hexdump@Base 1.1.1 + zlog_info@Base 1.1.1 + zlog_notice@Base 1.1.1 + zlog_priority@Base 1.1.1 + zlog_proto_names@Base 1.1.1 + zlog_reset_file@Base 1.1.1 + zlog_rotate@Base 1.1.1 + zlog_set_file@Base 1.1.1 + zlog_set_level@Base 1.1.1 + zlog_signal@Base 1.1.1 + zlog_thread_info@Base 1.1.1 + zlog_warn@Base 1.1.1 + zmalloc@Base 1.1.1 + zprivs_change_caps@Base 1.1.1 + zprivs_change_null@Base 1.1.1 + zprivs_change_uid@Base 1.1.1 + zprivs_get_ids@Base 1.1.1 + zprivs_init@Base 1.1.1 + zprivs_state_caps@Base 1.1.1 + zprivs_state_null@Base 1.1.1 + zprivs_state_uid@Base 1.1.1 + zprivs_terminate@Base 1.1.1 + zrealloc@Base 1.1.1 + zserv_command_string@Base 1.1.1 + zstrdup@Base 1.1.1 diff -Nru quagga-1.1.0/debian/patches/0006-Disable-debug-print-to-STDERR-on-vtysh-start.patch quagga-1.1.1/debian/patches/0006-Disable-debug-print-to-STDERR-on-vtysh-start.patch --- quagga-1.1.0/debian/patches/0006-Disable-debug-print-to-STDERR-on-vtysh-start.patch 2017-01-04 01:07:12.000000000 +1100 +++ quagga-1.1.1/debian/patches/0006-Disable-debug-print-to-STDERR-on-vtysh-start.patch 1970-01-01 10:00:00.000000000 +1000 @@ -1,24 +0,0 @@ -From: Scott Leggett <sc...@sl.id.au> -Date: Sat, 12 Nov 2016 16:58:41 +1100 -Subject: Disable debug print to STDERR on vtysh start. - ---- - lib/command.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/lib/command.c b/lib/command.c -index 5572c65..5a8313a 100644 ---- a/lib/command.c -+++ b/lib/command.c -@@ -638,9 +638,11 @@ install_element (enum node_type ntype, struct cmd_element *cmd) - - if (hash_lookup (cnode->cmd_hash, cmd) != NULL) - { -+ /* Disable debug printing on STDERR for Debian release. - fprintf (stderr, - "Multiple command installs to node %d of command:\n%s\n", - ntype, cmd->string); -+ */ - return; - } - diff -Nru quagga-1.1.0/debian/patches/series quagga-1.1.1/debian/patches/series --- quagga-1.1.0/debian/patches/series 2017-01-04 01:07:12.000000000 +1100 +++ quagga-1.1.1/debian/patches/series 2017-01-27 10:48:50.000000000 +1100 @@ -3,6 +3,5 @@ 0003-Tweak-grammar-in-zebra-manpage-to-keep-lintian-happy.patch 0004-Fix-spelling-errors-in-strings-flagged-by-lintian.patch 0005-Fix-manpage-number-for-ospfclient.patch -0006-Disable-debug-print-to-STDERR-on-vtysh-start.patch 0007-Patch-.service-files-for-Debian.patch 0008-Add-correct-QUAGGA_VERSION-to-manpages.patch diff -Nru quagga-1.1.0/doc/basic.texi quagga-1.1.1/doc/basic.texi --- quagga-1.1.0/doc/basic.texi 2016-10-19 00:03:52.000000000 +1100 +++ quagga-1.1.1/doc/basic.texi 2017-01-27 22:26:22.000000000 +1100 @@ -552,6 +552,12 @@ @kindex C-t Transpose character. +@item C-v +@kindex C-v +Interpret following character literally. Do not treat it specially. +This can be used to, e.g., type in a literal @kbd{?} rather than do +help completion. + @end table @node CLI Advanced Commands @@ -593,4 +599,7 @@ the line. Typing @kbd{?} at any point in the line will show possible completions. +To enter an actual @kbd{?} character rather show completions, e.g. to +enter into a regexp, use @kbd{@key{C}-v ?}. + @end table diff -Nru quagga-1.1.0/HACKING.md quagga-1.1.1/HACKING.md --- quagga-1.1.0/HACKING.md 2016-10-19 00:03:52.000000000 +1100 +++ quagga-1.1.1/HACKING.md 2017-01-27 22:26:22.000000000 +1100 @@ -1,13 +1,11 @@ --- title: Conventions for working on Quagga papersize: a4paper -geometry: scale=0.82 +geometry: a4paper,scale=0.82 fontsize: 11pt toc: true date: \today include-before: - \large This is a living document. - \large This is a living document describing the processes and guidelines for working on Quagga. You *must* read Section ["REQUIRED READING"](#sec:required), before contributing to Quagga. @@ -19,6 +17,116 @@ \newpage +OBJECTIVES {#sec:goals} +========== + +The objectives of the Quagga project are to develop and implement high +quality routing protocols and related software, maximising: + +* Free software: + * Quagga is and will remain a copyleft, free software project + * Some non-core parts may be available under compatible, permissive + licenses to facilitate code sharing, where contributors agree. + * The test and integration orchestration infrastructure shall be free + software, developed similarly to the rest of Quagga. Proprietary + conformance suites may be among the test tools orchestrated. +* Openness and transparency + * The business of the project shall be conducted on its public email + lists, to the greatest extent possible. + * The design of the software will be governed by open discussion on + the public email lists. + * Participants shall endeavour to be transparent about their interests + in the project, and any associations likely to be relevant. +* Ethical behaviour: + * The licenses of all copyright holders will be respected, and the + project will err in their favour where there is reasonable doubt or + legal advice to that effect. + * Participants will behave with respect for others, and in a manner that + builds and maintains the trust needed for productive collaboration. + +See also the Section on [CODE OF CONDUCT](#sec:codeconduct). + +Governance {#sec:governance} +========== + +The governance of Quagga is currently in flux. + +Quagga was forked from GNU Zebra by Paul Jakma, who holds the domain name. +Governance was soon devolved to a collective group, the maintainers. + +Governance at this moment is again fully in the hands of Paul Jakma, to be +recast. + +Holding of project assets +------------------------- + +One or more mature, independent trustees, with technical and free software +experience, will be appointed as the executor(s) for key assets of the +project to ensure continuity, such as the domain name. + +Should a corporate vehicle ever be created to hold such assets it __must__: + +* Publish up to date accounts on a regular business. +* Generally operate openly and transparently. +* Have control distributed, with a significant degree of control held + independent of any contributors with business interests in the software. +* Carry out no other business itself that may be seen to conflict or compete + with the business of others in the community. +* Have all officers disclose all interests that could be + seen to have a bearing on the project, as far as is reasonable. + +It not clear at this time that the overheads and potential liabilities of +such a vehicle would be appropriate for this project. These principles +should though still be applied, where possible, to any non-corporate body +formed around the project. + +CODE OF CONDUCT {#sec:codeconduct} +=============== + +Participants will treat each other with respect and integrity. Participants +will build and treasure the trust that is required for parties to +successfully collaborate together on free software. Particularly when those +parties may have competing interests. The following principles and +guidelines should be followed to foster that trust: + +* Participants should be open about their goals, and their interests. + - Business associations with other participants should be disclosed, + so far as is reasonable and where applicable. E.g., if there is voting + on matters, or in endorsements or objections to contributions. + - Other associations and interests that may be relevant should be + disclosed, to the degree necessary to avoid any perception + by others of conflicts of interests or of deception. + - Be open about your goals, so as to maximise the common understanding + and minimise any misunderstandings and disputes. +* Design should be done in the open + - Do your design on list, ahead of significant implementation. Avoid + "Surprise!" development where possible. + - Where significant implementation work must be done behind closed + doors, accept that you may be asked to rework it, potentially from + scratch once you take it public. + - Get "buy in" from others ahead of time, to avoid disappointment. +* Interaction + - Feedback on design should be constructive, thoughtful and + understanding. + - Avoid personalising matters. Discuss the idea, the code, the abstract + subject and avoid unnecessary personal pronouns. + - Avoid language that paints either party into a corner. Leave some room + for doubt. Ask questions, rather than make assertions, where possible. +* Disputes should be resolved through calm, analytic discussion + - Separate out as much of the matter under dispute into principles that + can be agreed on, and into the objective domain (by measurement or + logic). + - Seek ways to resolve any remaining subjective differences by alternate + paths that can accommodate both sides, e.g., through abstraction or + modularisation. + - Aim for Win-Win. +* Respect others + - Avoid passive-aggressive behaviours. E.g., tit-for-tat + non-constructive behaviour. Be explicit. + - It is acceptable for management to allocate resources on development + according to their need. It is not acceptable to try use external, + management intervention to over-turn positions held by participants. + REQUIRED READING {#sec:required} ================ @@ -575,6 +683,14 @@ USEFUL URLs =========== -* David Lamparter <equi...@diac24.net> runs a patchwork instance at +* The project homepage is at: + + <https://www.quagga.net> + +* Patchwork tracks patches emailed to the quagga-dev list at: + <http://patchwork.quagga.net/project/quagga/list/> +* Bugs can be reported via Bugzilla at: + + <http://bugzilla.quagga.net> diff -Nru quagga-1.1.0/lib/command.c quagga-1.1.1/lib/command.c --- quagga-1.1.0/lib/command.c 2016-10-19 00:03:52.000000000 +1100 +++ quagga-1.1.1/lib/command.c 2017-01-27 22:26:22.000000000 +1100 @@ -638,9 +638,11 @@ if (hash_lookup (cnode->cmd_hash, cmd) != NULL) { +#ifdef DEV_BUILD fprintf (stderr, "Multiple command installs to node %d of command:\n%s\n", ntype, cmd->string); +#endif return; } @@ -2901,7 +2903,7 @@ int ret; *line_num = 0; - while (fgets (vty->buf, VTY_BUFSIZ, fp)) + while (fgets (vty->buf, vty->max, fp)) { ++(*line_num); diff -Nru quagga-1.1.0/lib/Makefile.am quagga-1.1.1/lib/Makefile.am --- quagga-1.1.0/lib/Makefile.am 2016-10-19 00:03:52.000000000 +1100 +++ quagga-1.1.1/lib/Makefile.am 2017-01-27 22:26:22.000000000 +1100 @@ -5,7 +5,7 @@ DEFS = @DEFS@ -DSYSCONFDIR=\"$(sysconfdir)/\" lib_LTLIBRARIES = libzebra.la -libzebra_la_LDFLAGS = -version-info 0:0:0 +libzebra_la_LDFLAGS = -version-info 1:0:0 libzebra_la_SOURCES = \ network.c pid_output.c getopt.c getopt1.c daemon.c \ diff -Nru quagga-1.1.0/lib/vty.c quagga-1.1.1/lib/vty.c --- quagga-1.1.0/lib/vty.c 2016-10-19 00:03:52.000000000 +1100 +++ quagga-1.1.1/lib/vty.c 2017-01-27 22:26:22.000000000 +1100 @@ -40,6 +40,8 @@ #include <arpa/telnet.h> #include <termios.h> +#define VTY_BUFSIZ 4096 + /* Vty events */ enum event { @@ -92,6 +94,23 @@ static int do_log_commands = 0; +static void +vty_buf_assert (struct vty *vty) +{ + assert (vty->cp <= vty->length); + assert (vty->length < vty->max); + assert (vty->buf[vty->length] == '\0'); +} + +/* Sanity/safety wrappers around access to vty->buf */ +static void +vty_buf_put (struct vty *vty, char c) +{ + vty_buf_assert (vty); + vty->buf[vty->cp] = c; + vty->buf[vty->max - 1] = '\0'; +} + /* VTY standard output function. */ int vty_out (struct vty *vty, const char *format, ...) @@ -507,84 +526,104 @@ buffer_put (vty->obuf, buf, nbytes); } -/* Ensure length of input buffer. Is buffer is short, double it. */ -static void -vty_ensure (struct vty *vty, int length) -{ - if (vty->max <= length) - { - vty->max *= 2; - vty->buf = XREALLOC (MTYPE_VTY, vty->buf, vty->max); - } -} - /* Basic function to insert character into vty. */ static void vty_self_insert (struct vty *vty, char c) { int i; int length; + + vty_buf_assert (vty); + + /* length is sans nul, max is with */ + if (vty->length + 1 >= vty->max) + return; - vty_ensure (vty, vty->length + 1); length = vty->length - vty->cp; memmove (&vty->buf[vty->cp + 1], &vty->buf[vty->cp], length); - vty->buf[vty->cp] = c; + vty->length++; + vty->buf[vty->length] = '\0'; + + vty_buf_put (vty, c); vty_write (vty, &vty->buf[vty->cp], length + 1); for (i = 0; i < length; i++) vty_write (vty, &telnet_backward_char, 1); vty->cp++; - vty->length++; + + vty_buf_assert (vty); } /* Self insert character 'c' in overwrite mode. */ static void vty_self_insert_overwrite (struct vty *vty, char c) { - vty_ensure (vty, vty->length + 1); - vty->buf[vty->cp++] = c; - - if (vty->cp > vty->length) - vty->length++; - - if ((vty->node == AUTH_NODE) || (vty->node == AUTH_ENABLE_NODE)) - return; + vty_buf_assert (vty); + + if (vty->cp == vty->length) + { + vty_self_insert (vty, c); + return; + } + vty_buf_put (vty, c); + vty->cp++; + + vty_buf_assert (vty); + vty_write (vty, &c, 1); } -/* Insert a word into vty interface with overwrite mode. */ +/** + * Insert a string into vty->buf at the current cursor position. + * + * If the resultant string would be larger than VTY_BUFSIZ it is + * truncated to fit. + */ static void vty_insert_word_overwrite (struct vty *vty, char *str) { - int len = strlen (str); - vty_write (vty, str, len); - strcpy (&vty->buf[vty->cp], str); - vty->cp += len; + vty_buf_assert (vty); + + size_t nwrite = MIN ((int) strlen (str), vty->max - vty->cp - 1); + memcpy (&vty->buf[vty->cp], str, nwrite); + vty->cp += nwrite; vty->length = vty->cp; + vty->buf[vty->length] = '\0'; + vty_buf_assert (vty); + + vty_write (vty, str, nwrite); } /* Forward character. */ static void vty_forward_char (struct vty *vty) { + vty_buf_assert (vty); + if (vty->cp < vty->length) { vty_write (vty, &vty->buf[vty->cp], 1); vty->cp++; } + + vty_buf_assert (vty); } /* Backward character. */ static void vty_backward_char (struct vty *vty) { + vty_buf_assert (vty); + if (vty->cp > 0) { vty->cp--; vty_write (vty, &telnet_backward_char, 1); } + + vty_buf_assert (vty); } /* Move to the beginning of the line. */ @@ -619,7 +658,9 @@ length = strlen (vty->hist[vty->hp]); memcpy (vty->buf, vty->hist[vty->hp], length); vty->cp = vty->length = length; - + vty->buf[vty->length] = '\0'; + vty_buf_assert (vty); + /* Redraw current line */ vty_redraw_line (vty); } @@ -675,6 +716,8 @@ { vty_write (vty, vty->buf, vty->length); vty->cp = vty->length; + + vty_buf_assert (vty); } /* Forward word. */ @@ -779,10 +822,12 @@ vty_down_level (vty); return; } - + if (vty->cp == vty->length) return; /* completion need here? */ + vty_buf_assert (vty); + size = vty->length - vty->cp; vty->length--; @@ -829,6 +874,7 @@ memset (&vty->buf[vty->cp], 0, size); vty->length = vty->cp; + vty_buf_assert (vty); } /* Kill line from the beginning. */ @@ -1340,8 +1386,9 @@ #define CONTROL(X) ((X) - '@') #define VTY_NORMAL 0 -#define VTY_PRE_ESCAPE 1 -#define VTY_ESCAPE 2 +#define VTY_PRE_ESCAPE 1 /* Esc seen */ +#define VTY_ESCAPE 2 /* ANSI terminal escape (Esc-[) seen */ +#define VTY_LITERAL 3 /* Next char taken as literal */ /* Escape character command map. */ static void @@ -1469,7 +1516,14 @@ vty_escape_map (buf[i], vty); continue; } - + + if (vty->escape == VTY_LITERAL) + { + vty_self_insert (vty, buf[i]); + vty->escape = VTY_NORMAL; + continue; + } + /* Pre-escape status. */ if (vty->escape == VTY_PRE_ESCAPE) { @@ -1541,6 +1595,9 @@ case CONTROL('U'): vty_kill_line_from_beginning (vty); break; + case CONTROL('V'): + vty->escape = VTY_LITERAL; + break; case CONTROL('W'): vty_backward_kill_word (vty); break; @@ -2198,12 +2255,21 @@ printf ("line: %.*s\n", nbytes, buf); #endif /* VTYSH_DEBUG */ + if (vty->length + nbytes >= vty->max) + { + /* Clear command line buffer. */ + vty->cp = vty->length = 0; + vty_clear_buf (vty); + vty_out (vty, "%% Command is too long.%s", VTY_NEWLINE); + goto out; + } + for (p = buf; p < buf+nbytes; p++) { - vty_ensure(vty, vty->length+1); vty->buf[vty->length++] = *p; if (*p == '\0') { + /* Pass this line to parser. */ ret = vty_execute (vty); /* Note that vty_execute clears the command buffer and resets @@ -2224,6 +2290,7 @@ } } +out: vty_event (VTYSH_READ, sock, vty); return 0; diff -Nru quagga-1.1.0/lib/vty.h quagga-1.1.1/lib/vty.h --- quagga-1.1.0/lib/vty.h 2016-10-19 00:03:52.000000000 +1100 +++ quagga-1.1.1/lib/vty.h 2017-01-27 22:26:22.000000000 +1100 @@ -25,7 +25,6 @@ #include "log.h" #include "sockunion.h" -#define VTY_BUFSIZ 512 #define VTY_MAXHIST 20 /* VTY struct. */ diff -Nru quagga-1.1.0/ospf6d/ospf6_message.c quagga-1.1.1/ospf6d/ospf6_message.c --- quagga-1.1.0/ospf6d/ospf6_message.c 2016-10-19 00:03:52.000000000 +1100 +++ quagga-1.1.1/ospf6d/ospf6_message.c 2017-01-27 22:26:22.000000000 +1100 @@ -245,7 +245,6 @@ char *p; int twoway = 0; int neighborchange = 0; - int neighbor_ifindex_change = 0; int backupseen = 0; hello = (struct ospf6_hello *) @@ -286,17 +285,10 @@ on->priority = hello->priority; } - /* Always override neighbor's source address */ + /* always override neighbor's source address and ifindex */ + on->ifindex = ntohl (hello->interface_id); memcpy (&on->linklocal_addr, src, sizeof (struct in6_addr)); - /* Neighbor ifindex check */ - if (on->ifindex > 0 - && (unsigned int) on->ifindex != ntohl (hello->interface_id)) - { - on->ifindex = ntohl (hello->interface_id); - neighbor_ifindex_change++; - } - /* TwoWay check */ for (p = (char *) ((caddr_t) hello + sizeof (struct ospf6_hello)); p + sizeof (u_int32_t) <= OSPF6_MESSAGE_END (oh); @@ -356,9 +348,6 @@ thread_add_event (master, backup_seen, oi, 0); if (neighborchange) thread_add_event (master, neighbor_change, oi, 0); - - if (neighbor_ifindex_change && on->state == OSPF6_NEIGHBOR_FULL) - OSPF6_ROUTER_LSA_SCHEDULE (oi->area); } static void diff -Nru quagga-1.1.0/vtysh/vtysh.c quagga-1.1.1/vtysh/vtysh.c --- quagga-1.1.0/vtysh/vtysh.c 2016-10-19 00:03:52.000000000 +1100 +++ quagga-1.1.1/vtysh/vtysh.c 2017-01-27 22:26:22.000000000 +1100 @@ -443,7 +443,7 @@ int ret; struct cmd_element *cmd; - while (fgets (vty->buf, VTY_BUFSIZ, fp)) + while (fgets (vty->buf, vty->max, fp)) { ret = command_config_read_one_line (vty, &cmd, 1); diff -Nru quagga-1.1.0/vtysh/vtysh_user.c quagga-1.1.1/vtysh/vtysh_user.c --- quagga-1.1.0/vtysh/vtysh_user.c 2016-10-19 00:03:52.000000000 +1100 +++ quagga-1.1.1/vtysh/vtysh_user.c 2017-01-27 22:26:22.000000000 +1100 @@ -176,7 +176,11 @@ struct vtysh_user *user; struct passwd *passwd; - passwd = getpwuid (geteuid ()); + if ((passwd = getpwuid (geteuid ())) == NULL) + { + fprintf (stderr, "could not lookup user ID %d\n", (int) geteuid()); + exit (1); + } user = user_lookup (passwd->pw_name); if (user && user->nopassword) diff -Nru quagga-1.1.0/zebra/kernel_socket.c quagga-1.1.1/zebra/kernel_socket.c --- quagga-1.1.0/zebra/kernel_socket.c 2016-10-19 00:03:52.000000000 +1100 +++ quagga-1.1.1/zebra/kernel_socket.c 2017-01-27 22:26:22.000000000 +1100 @@ -242,7 +242,9 @@ #ifdef RTF_CLONING {RTF_CLONING, "CLONING"}, #endif /* RTF_CLONING */ +#ifdef RTF_XRESOLVE {RTF_XRESOLVE, "XRESOLVE"}, +#endif /* RTF_XRESOLVE */ #ifdef RTF_LLINFO {RTF_LLINFO, "LLINFO"}, #endif /* RTF_LLINFO */
signature.asc
Description: PGP signature