summaryrefslogtreecommitdiff
path: root/bgpd
diff options
context:
space:
mode:
Diffstat (limited to 'bgpd')
-rw-r--r--bgpd/ChangeLog1
-rw-r--r--bgpd/bgp_view.c257
2 files changed, 1 insertions, 257 deletions
diff --git a/bgpd/ChangeLog b/bgpd/ChangeLog
index 1d162287..5d784a3c 100644
--- a/bgpd/ChangeLog
+++ b/bgpd/ChangeLog
@@ -2,6 +2,7 @@
* bgp_snmp.c: Remove defaults used to initialize smux connection to
snmpd. Connection is initialized only if smux peer is configured.
+ * bgp_view.c: It's dead file. Reomved.
2004-10-13 Paul Jakma <paul@dishone.st>
diff --git a/bgpd/bgp_view.c b/bgpd/bgp_view.c
deleted file mode 100644
index 51873335..00000000
--- a/bgpd/bgp_view.c
+++ /dev/null
@@ -1,257 +0,0 @@
-/*
- * $Id: bgp_view.c,v 1.2 2004/08/26 11:22:19 hasso Exp $
- *
- * Multiple view function for route server.
- * Copyright (C) 1997 Kunihiro Ishiguro
- *
- * This file is part of GNU Zebra.
- *
- * GNU Zebra is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License as published by the
- * Free Software Foundation; either version 2, or (at your option) any
- * later version.
- *
- * GNU Zebra is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with GNU Zebra; see the file COPYING. If not, write to the Free
- * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
- * 02111-1307, USA.
- */
-
-#include <zebra.h>
-
-#include "linklist.h"
-#include "vector.h"
-#include "vty.h"
-#include "command.h"
-#include "prefix.h"
-#include "table.h"
-#include "log.h"
-
-#include "bgpd/bgpd.h"
-#include "bgpd/bgp_route.h"
-#include "bgpd/bgp_attr.h"
-#include "bgpd/bgp_dump.h"
-#include "bgpd/bgp_aspath.h"
-
-/* Static configuration of BGP annoucement. */
-struct route_table *bgp_static_ipv4;
-#ifdef HAVE_IPV6
-struct route_table *bgp_static_ipv6;
-#endif /* HAVE_IPV6 */
-
-/* Static annoucement peer. */
-struct peer *static_peer;
-
-/* Default value setting flag */
-#define VAL_LOCAL_PREF 0x01
-#define VAL_MED 0x02
-#define VAL_NEXT_HOP 0x04
-
-DEFUN (default_attr_localpref,
- default_attr_localpref_cmd,
- "default-attr local-pref NUMBER",
- "Set default local preference value\n"
- "Set default local preference value\n"
- "Value\n")
-{
- struct bgp *bgp;
- long lpref;
-
- bgp = (struct bgp *) vty->index;
-
- lpref = strtol (argv[0], NULL, 10);
-
- bgp->def |= VAL_LOCAL_PREF;
- bgp->localpref = lpref;
-
- return CMD_SUCCESS;
-}
-
-DEFUN (no_default_attr_localpref,
- no_default_attr_localpref_cmd,
- "no default-attr local-pref NUMBER",
- NO_STR
- "Unset default local preference value\n"
- "Unset default local preference value\n"
- "Value\n")
-{
- struct bgp *bgp;
-
- bgp = (struct bgp *) vty->index;
-
- bgp->def &= ~DEFAULT_LOCAL_PREF;
- bgp->localpref = 0;
-
- return CMD_SUCCESS;
-}
-
-#ifdef HAVE_IPV6
-/* Network configuration for IPv6. */
-int
-bgp_network_config_ipv6 (struct vty *vty, char *address_str)
-{
- int ret;
- struct prefix p;
- struct route_node *node;
- struct bgp_info *bgp_info;
-
- ret = str2prefix_ipv6 (address_str, (struct prefix_ipv6 *) &p);
- if (!ret)
- {
- vty_out (vty, "Please specify valid address\r\n");
- return CMD_WARNING;
- }
-
- apply_mask_ipv6 ((struct prefix_ipv6 *) &p);
-
- node = route_node_get (bgp_static_ipv6, &p);
- if (node->info)
- {
- vty_out (vty, "There is already same static announcement.\r\n");
- route_unlock_node (node);
- return CMD_WARNING;
- }
-
- bgp_info = bgp_info_new ();
- bgp_info->type = ZEBRA_ROUTE_STATIC;
- bgp_info->peer = static_peer;
- bgp_info->attr = bgp_attr_make_default ();
- node->info = bgp_info;
-
- nlri_process (&p, bgp_info);
-
- return CMD_SUCCESS;
-}
-#endif
-
-/* Configure static BGP network. */
-DEFUN (bgp_network,
- bgp_network_cmd,
- "network PREFIX",
- "Announce network setup\n"
- "Static network for bgp announcement\n")
-{
- int ret;
- struct bgp *bgp;
- struct prefix p;
- struct route_node *node;
- struct bgp_info *bgp_info;
-
- bgp = (struct bgp *) vty->index;
-
- ret = str2prefix_ipv4 (argv[0], (struct prefix_ipv4 *) &p);
- if (!ret)
- {
-#ifdef HAVE_IPV6
- return bgp_network_config_ipv6 (vty, argv[0]);
-#endif /* HAVE_IPV6 */
-
- vty_out (vty, "Please specify address by a.b.c.d/mask\r\n");
- return CMD_WARNING;
- }
-
- /* Make sure mask is applied. */
- apply_mask ((struct prefix_ipv4 *) &p);
-
- node = route_node_get (bgp_static_ipv4, &p);
- if (node->info)
- {
- vty_out (vty, "There is already same static announcement.\r\n");
- route_unlock_node (node);
- return CMD_WARNING;
- }
-
- bgp_info = bgp_info_new ();
- bgp_info->type = ZEBRA_ROUTE_STATIC;
- bgp_info->peer = static_peer;
- bgp_info->attr = bgp_attr_make_default ();
- node->info = bgp_info;
-
- nlri_process (&p, bgp_info);
-
- return CMD_SUCCESS;
-}
-
-DEFUN (no_bgp_network,
- no_bgp_network_cmd,
- "no network PREFIX",
- NO_STR
- "Announce network setup\n"
- "Delete static network for bgp announcement\n")
-{
- int ret;
- struct bgp *bgp;
- struct route_node *np;
- struct prefix_ipv4 p;
-
- bgp = (struct bgp *) vty->index;
-
- ret = str2prefix_ipv4 (argv[0], &p);
- if (!ret)
- {
- vty_out (vty, "Please specify address by a.b.c.d/mask\r\n");
- return CMD_WARNING;
- }
-
- apply_mask (&p);
-
- np = route_node_get (bgp_static_ipv4, (struct prefix *) &p);
- if (!np->info)
- {
- vty_out (vty, "Can't find specified static route configuration.\r\n");
- route_unlock_node (np);
- return CMD_WARNING;
- }
- nlri_delete (static_peer, (struct prefix *) &p);
-
- /* bgp_attr_free (np->info); */
- np->info = NULL;
-
- route_unlock_node (np);
-
- return CMD_SUCCESS;
-}
-
-int
-config_write_network (struct vty *vty, struct bgp *bgp)
-{
- struct route_node *node;
- struct bgp_route *route;
- char buf[BUFSIZ];
-
- for (node = route_top (bgp_static_ipv4); node; node = route_next (node))
- for (route = node->info; route; route = route->next)
- vty_out (vty, " network %s/%d%s",
- inet_ntoa (node->p.u.prefix4), node->p.prefixlen, VTY_NEWLINE);
-#ifdef HAVE_IPV6
- for (node = route_top (bgp_static_ipv6); node; node = route_next (node))
- for (route = node->info; route; route = route->next)
- vty_out (vty, " network %s/%d%s",
- inet_ntop (AF_INET6, &node->p.u.prefix6, buf, BUFSIZ),
- node->p.prefixlen, VTY_NEWLINE);
-#endif /* HAVE_IPV6 */
-
- return 0;
-}
-
-void
-view_init ()
-{
- bgp_static_ipv4 = route_table_init ();
-#ifdef HAVE_IPV6
- bgp_static_ipv6 = route_table_init ();
-#endif /* HAVE_IPV6 */
-
- static_peer = peer_new ();
- static_peer->host = "Static annucement";
-
- install_element (BGP_NODE, &bgp_network_cmd);
- install_element (BGP_NODE, &no_bgp_network_cmd);
- install_element (BGP_NODE, &default_attr_localpref_cmd);
- install_element (BGP_NODE, &no_default_attr_localpref_cmd);
-}