⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 plist.c

📁 linux 路由软件 可支持RIP OSPF BGP等
💻 C
📖 第 1 页 / 共 5 页
字号:
       PREFIX_LIST_STR       "Name of a prefix list\n"       "Specify packets to reject\n"       "Specify packets to forward\n"       "IPv6 prefix <network>/<length>, e.g., 3ffe::/16\n"       "Minimum prefix length to be matched\n"       "Minimum prefix length\n"){  return vty_prefix_list_uninstall (vty, AFI_IP6, argv[0], NULL, argv[1],				    argv[2], argv[3], NULL);}DEFUN (no_ipv6_prefix_list_ge_le,       no_ipv6_prefix_list_ge_le_cmd,       "no ipv6 prefix-list WORD (deny|permit) X:X::X:X/M ge <0-128> le <0-128>",       NO_STR       IPV6_STR       PREFIX_LIST_STR       "Name of a prefix list\n"       "Specify packets to reject\n"       "Specify packets to forward\n"       "IPv6 prefix <network>/<length>, e.g., 3ffe::/16\n"       "Minimum prefix length to be matched\n"       "Minimum prefix length\n"       "Maximum prefix length to be matched\n"       "Maximum prefix length\n"){  return vty_prefix_list_uninstall (vty, AFI_IP6, argv[0], NULL, argv[1],				    argv[2], argv[3], argv[4]);}DEFUN (no_ipv6_prefix_list_le,       no_ipv6_prefix_list_le_cmd,       "no ipv6 prefix-list WORD (deny|permit) X:X::X:X/M le <0-128>",       NO_STR       IPV6_STR       PREFIX_LIST_STR       "Name of a prefix list\n"       "Specify packets to reject\n"       "Specify packets to forward\n"       "IPv6 prefix <network>/<length>, e.g., 3ffe::/16\n"       "Maximum prefix length to be matched\n"       "Maximum prefix length\n"){  return vty_prefix_list_uninstall (vty, AFI_IP6, argv[0], NULL, argv[1],				    argv[2], NULL, argv[3]);}DEFUN (no_ipv6_prefix_list_le_ge,       no_ipv6_prefix_list_le_ge_cmd,       "no ipv6 prefix-list WORD (deny|permit) X:X::X:X/M le <0-128> ge <0-128>",       NO_STR       IPV6_STR       PREFIX_LIST_STR       "Name of a prefix list\n"       "Specify packets to reject\n"       "Specify packets to forward\n"       "IPv6 prefix <network>/<length>, e.g., 3ffe::/16\n"       "Maximum prefix length to be matched\n"       "Maximum prefix length\n"       "Minimum prefix length to be matched\n"       "Minimum prefix length\n"){  return vty_prefix_list_uninstall (vty, AFI_IP6, argv[0], NULL, argv[1],				    argv[2], argv[4], argv[3]);}DEFUN (no_ipv6_prefix_list_seq,       no_ipv6_prefix_list_seq_cmd,       "no ipv6 prefix-list WORD seq <1-4294967295> (deny|permit) (X:X::X:X/M|any)",       NO_STR       IPV6_STR       PREFIX_LIST_STR       "Name of a prefix list\n"       "sequence number of an entry\n"       "Sequence number\n"       "Specify packets to reject\n"       "Specify packets to forward\n"       "IPv6 prefix <network>/<length>, e.g., 3ffe::/16\n"       "Any prefix match.  Same as \"::0/0 le 128\"\n"){  return vty_prefix_list_uninstall (vty, AFI_IP6, argv[0], argv[1], argv[2],				    argv[3], NULL, NULL);}DEFUN (no_ipv6_prefix_list_seq_ge,       no_ipv6_prefix_list_seq_ge_cmd,       "no ipv6 prefix-list WORD seq <1-4294967295> (deny|permit) X:X::X:X/M ge <0-128>",       NO_STR       IPV6_STR       PREFIX_LIST_STR       "Name of a prefix list\n"       "sequence number of an entry\n"       "Sequence number\n"       "Specify packets to reject\n"       "Specify packets to forward\n"       "IPv6 prefix <network>/<length>, e.g., 3ffe::/16\n"       "Minimum prefix length to be matched\n"       "Minimum prefix length\n"){  return vty_prefix_list_uninstall (vty, AFI_IP6, argv[0], argv[1], argv[2],				    argv[3], argv[4], NULL);}DEFUN (no_ipv6_prefix_list_seq_ge_le,       no_ipv6_prefix_list_seq_ge_le_cmd,       "no ipv6 prefix-list WORD seq <1-4294967295> (deny|permit) X:X::X:X/M ge <0-128> le <0-128>",       NO_STR       IPV6_STR       PREFIX_LIST_STR       "Name of a prefix list\n"       "sequence number of an entry\n"       "Sequence number\n"       "Specify packets to reject\n"       "Specify packets to forward\n"       "IPv6 prefix <network>/<length>, e.g., 3ffe::/16\n"       "Minimum prefix length to be matched\n"       "Minimum prefix length\n"       "Maximum prefix length to be matched\n"       "Maximum prefix length\n"){  return vty_prefix_list_uninstall (vty, AFI_IP6, argv[0], argv[1], argv[2],				    argv[3], argv[4], argv[5]);}DEFUN (no_ipv6_prefix_list_seq_le,       no_ipv6_prefix_list_seq_le_cmd,       "no ipv6 prefix-list WORD seq <1-4294967295> (deny|permit) X:X::X:X/M le <0-128>",       NO_STR       IPV6_STR       PREFIX_LIST_STR       "Name of a prefix list\n"       "sequence number of an entry\n"       "Sequence number\n"       "Specify packets to reject\n"       "Specify packets to forward\n"       "IPv6 prefix <network>/<length>, e.g., 3ffe::/16\n"       "Maximum prefix length to be matched\n"       "Maximum prefix length\n"){  return vty_prefix_list_uninstall (vty, AFI_IP6, argv[0], argv[1], argv[2],				    argv[3], NULL, argv[4]);}DEFUN (no_ipv6_prefix_list_seq_le_ge,       no_ipv6_prefix_list_seq_le_ge_cmd,       "no ipv6 prefix-list WORD seq <1-4294967295> (deny|permit) X:X::X:X/M le <0-128> ge <0-128>",       NO_STR       IPV6_STR       PREFIX_LIST_STR       "Name of a prefix list\n"       "sequence number of an entry\n"       "Sequence number\n"       "Specify packets to reject\n"       "Specify packets to forward\n"       "IPv6 prefix <network>/<length>, e.g., 3ffe::/16\n"       "Maximum prefix length to be matched\n"       "Maximum prefix length\n"       "Minimum prefix length to be matched\n"       "Minimum prefix length\n"){  return vty_prefix_list_uninstall (vty, AFI_IP6, argv[0], argv[1], argv[2],				    argv[3], argv[5], argv[4]);}DEFUN (ipv6_prefix_list_sequence_number,       ipv6_prefix_list_sequence_number_cmd,       "ipv6 prefix-list sequence-number",       IPV6_STR       PREFIX_LIST_STR       "Include/exclude sequence numbers in NVGEN\n"){  prefix_master_ipv6.seqnum = 1;  return CMD_SUCCESS;}DEFUN (no_ipv6_prefix_list_sequence_number,       no_ipv6_prefix_list_sequence_number_cmd,       "no ipv6 prefix-list sequence-number",       NO_STR       IPV6_STR       PREFIX_LIST_STR       "Include/exclude sequence numbers in NVGEN\n"){  prefix_master_ipv6.seqnum = 0;  return CMD_SUCCESS;}DEFUN (ipv6_prefix_list_description,       ipv6_prefix_list_description_cmd,       "ipv6 prefix-list WORD description .LINE",       IPV6_STR       PREFIX_LIST_STR       "Name of a prefix list\n"       "Prefix-list specific description\n"       "Up to 80 characters describing this prefix-list\n"){  struct prefix_list *plist;  struct buffer *b;  int i;  plist = prefix_list_get (AFI_IP6, argv[0]);    if (plist->desc)    {      XFREE (MTYPE_TMP, plist->desc);      plist->desc = NULL;    }  /* Below is description get codes. */  b = buffer_new (1024);  for (i = 1; i < argc; i++)    {      buffer_putstr (b, (u_char *)argv[i]);      buffer_putc (b, ' ');    }  buffer_putc (b, '\0');  plist->desc = buffer_getstr (b);  buffer_free (b);  return CMD_SUCCESS;}       DEFUN (no_ipv6_prefix_list_description,       no_ipv6_prefix_list_description_cmd,       "no ipv6 prefix-list WORD description",       NO_STR       IPV6_STR       PREFIX_LIST_STR       "Name of a prefix list\n"       "Prefix-list specific description\n"){  return vty_prefix_list_desc_unset (vty, AFI_IP6, argv[0]);}ALIAS (no_ipv6_prefix_list_description,       no_ipv6_prefix_list_description_arg_cmd,       "no ipv6 prefix-list WORD description .LINE",       NO_STR       IPV6_STR       PREFIX_LIST_STR       "Name of a prefix list\n"       "Prefix-list specific description\n"       "Up to 80 characters describing this prefix-list\n");DEFUN (show_ipv6_prefix_list,       show_ipv6_prefix_list_cmd,       "show ipv6 prefix-list",       SHOW_STR       IPV6_STR       PREFIX_LIST_STR){  return vty_show_prefix_list (vty, AFI_IP6, NULL, NULL, normal_display);}DEFUN (show_ipv6_prefix_list_name,       show_ipv6_prefix_list_name_cmd,       "show ipv6 prefix-list WORD",       SHOW_STR       IPV6_STR       PREFIX_LIST_STR       "Name of a prefix list\n"){  return vty_show_prefix_list (vty, AFI_IP6, argv[0], NULL, normal_display);}DEFUN (show_ipv6_prefix_list_name_seq,       show_ipv6_prefix_list_name_seq_cmd,       "show ipv6 prefix-list WORD seq <1-4294967295>",       SHOW_STR       IPV6_STR       PREFIX_LIST_STR       "Name of a prefix list\n"       "sequence number of an entry\n"       "Sequence number\n"){  return vty_show_prefix_list (vty, AFI_IP6, argv[0], argv[1], sequential_display);}DEFUN (show_ipv6_prefix_list_prefix,       show_ipv6_prefix_list_prefix_cmd,       "show ipv6 prefix-list WORD X:X::X:X/M",       SHOW_STR       IPV6_STR       PREFIX_LIST_STR       "Name of a prefix list\n"       "IPv6 prefix <network>/<length>, e.g., 3ffe::/16\n"){  return vty_show_prefix_list_prefix (vty, AFI_IP6, argv[0], argv[1], normal_display);}DEFUN (show_ipv6_prefix_list_prefix_longer,       show_ipv6_prefix_list_prefix_longer_cmd,       "show ipv6 prefix-list WORD X:X::X:X/M longer",       SHOW_STR       IPV6_STR       PREFIX_LIST_STR       "Name of a prefix list\n"       "IPv6 prefix <network>/<length>, e.g., 3ffe::/16\n"       "Lookup longer prefix\n"){  return vty_show_prefix_list_prefix (vty, AFI_IP6, argv[0], argv[1], longer_display);}DEFUN (show_ipv6_prefix_list_prefix_first_match,       show_ipv6_prefix_list_prefix_first_match_cmd,       "show ipv6 prefix-list WORD X:X::X:X/M first-match",       SHOW_STR       IPV6_STR       PREFIX_LIST_STR       "Name of a prefix list\n"       "IPv6 prefix <network>/<length>, e.g., 3ffe::/16\n"       "First matched prefix\n"){  return vty_show_prefix_list_prefix (vty, AFI_IP6, argv[0], argv[1], first_match_display);}DEFUN (show_ipv6_prefix_list_summary,       show_ipv6_prefix_list_summary_cmd,       "show ipv6 prefix-list summary",       SHOW_STR       IPV6_STR       PREFIX_LIST_STR       "Summary of prefix lists\n"){  return vty_show_prefix_list (vty, AFI_IP6, NULL, NULL, summary_display);}DEFUN (show_ipv6_prefix_list_summary_name,       show_ipv6_prefix_list_summary_name_cmd,       "show ipv6 prefix-list summary WORD",       SHOW_STR       IPV6_STR       PREFIX_LIST_STR       "Summary of prefix lists\n"       "Name of a prefix list\n"){  return vty_show_prefix_list (vty, AFI_IP6, argv[0], NULL, summary_display);}DEFUN (show_ipv6_prefix_list_detail,       show_ipv6_prefix_list_detail_cmd,       "show ipv6 prefix-list detail",       SHOW_STR       IPV6_STR       PREFIX_LIST_STR       "Detail of prefix lists\n"){  return vty_show_prefix_list (vty, AFI_IP6, NULL, NULL, detail_display);}DEFUN (show_ipv6_prefix_list_detail_name,       show_ipv6_prefix_list_detail_name_cmd,       "show ipv6 prefix-list detail WORD",       SHOW_STR       IPV6_STR       PREFIX_LIST_STR       "Detail of prefix lists\n"       "Name of a prefix list\n"){  return vty_show_prefix_list (vty, AFI_IP6, argv[0], NULL, detail_display);}DEFUN (clear_ipv6_prefix_list,       clear_ipv6_prefix_list_cmd,       "clear ipv6 prefix-list",       CLEAR_STR       IPV6_STR       PREFIX_LIST_STR){  return vty_clear_prefix_list (vty, AFI_IP6, NULL, NULL);}DEFUN (clear_ipv6_prefix_list_name,       clear_ipv6_prefix_list_name_cmd,       "clear ipv6 prefix-list WORD",       CLEAR_STR       IPV6_STR       PREFIX_LIST_STR       "Name of a prefix list\n"){  return vty_clear_prefix_list (vty, AFI_IP6, argv[0], NULL);}DEFUN (clear_ipv6_prefix_list_name_prefix,       clear_ipv6_prefix_list_name_prefix_cmd,       "clear ipv6 prefix-list WORD X:X::X:X/M",       CLEAR_STR       IPV6_STR       PREFIX_LIST_STR       "Name of a prefix list\n"       "IPv6 prefix <network>/<length>, e.g., 3ffe::/16\n"){  return vty_clear_prefix_list (vty, AFI_IP6, argv[0], argv[1]);}#endif /* HAVE_IPV6 *//* Configuration write function. */intconfig_write_prefix_afi (afi_t afi, struct vty *vty){  struct prefix_list *plist;  struct prefix_list_entry *pentry;  struct prefix_master *master;  int write = 0;  master = prefix_master_get (afi);  if (master == NULL)    return 0;  if (! master->seqnum)    {      vty_out (vty, "no ip%s prefix-list sequence-number%s", 	       afi == AFI_IP ? "" : "v6", VTY_NEWLINE);      vty_out (vty, "!%s", VTY_NEWLINE);    }  for (plist = master->num.head; plist; plist = plist->next)    {      if (plist->desc)	{	  vty_out (vty, "ip%s prefix-list %s description %s%s",		   afi == AFI_IP ? "" : "v6",		   plist->name, plist->desc, VTY_NEWLINE);	  write++;	}      for (pentry = plist->head; pentry; pentry = pentry->next)	{	  vty_out (vty, "ip%s prefix-list %s ",		   afi == AFI_IP ? "" : "v6",		   plist->name);	  if (master->seqnum)	    vty_out (vty, "seq %d ", pentry->seq);		  vty_out (vty, "%s ", prefix_list_type_str (pentry));	  if (pentry->any)	    vty_out (vty, "any");	  else	    {	      struct prefix *p = &pentry->prefix;	      char buf[BUFSIZ];	      vty_out (vty, "%s/%d",		       inet_ntop (p->family, &p->u.prefix, buf, BUFSIZ),		       p->prefixlen);	      if (pentry->ge)		vty_out (vty, " ge %d", pentry->ge);	      if (pentry->le)		vty_out (vty, " le %d", pentry->le);	    }	  vty_out (vty, "%s", VTY_NEWLINE);	  write++;	}      /* vty_out (vty, "!%s", VTY_NEWLINE); */    }  for (plist = master->str.head; plist; plist = plist->next)    {      if (plist->desc)	{	  vty_out (vty, "ip%s prefix-list %s description %s%s",		   afi == AFI_IP ? "" : "v6",		   plist->name, plist->desc, VTY_NEWLINE);	  write++;	}      for (pentry = plist->head; pentry; pentry = pentry->next)	{	  vty_out (vty, "ip%s prefix-list %s ",		   afi == AFI_IP ? "" : "v6",		   plist->name);	  if (master->seqnum)	    vty_out (vty, "seq %d ", pentry->seq);	  vty_out (vty, "%s", prefix_list_type_str (pentry));	  if (pentry->any)	    vty_out (vty, " any");	  else	    {	      struct prefix *p = &pentry->prefix;	      char buf[BUFSIZ];	      vty_out (vty, " %s/%d",		       inet_ntop (p->family, &p->u.prefix

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -