File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / quagga / lib / plist.h
Revision 1.1.1.2 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Wed Nov 2 10:09:11 2016 UTC (7 years, 9 months ago) by misho
Branches: quagga, MAIN
CVS tags: v1_0_20160315, HEAD
quagga 1.0.20160315

    1: /*
    2:  * Prefix list functions.
    3:  * Copyright (C) 1999 Kunihiro Ishiguro
    4:  *
    5:  * This file is part of GNU Zebra.
    6:  *
    7:  * GNU Zebra is free software; you can redistribute it and/or modify
    8:  * it under the terms of the GNU General Public License as published
    9:  * by the Free Software Foundation; either version 2, or (at your
   10:  * option) any later version.
   11:  *
   12:  * GNU Zebra is distributed in the hope that it will be useful, but
   13:  * WITHOUT ANY WARRANTY; without even the implied warranty of
   14:  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   15:  * General Public License for more details.
   16:  *
   17:  * You should have received a copy of the GNU General Public License
   18:  * along with GNU Zebra; see the file COPYING.  If not, write to the
   19:  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
   20:  * Boston, MA 02111-1307, USA.
   21:  */
   22: 
   23: #ifndef _QUAGGA_PLIST_H
   24: #define _QUAGGA_PLIST_H
   25: 
   26: enum prefix_list_type 
   27: {
   28:   PREFIX_DENY,
   29:   PREFIX_PERMIT,
   30: };
   31: 
   32: struct prefix_list;
   33: 
   34: struct orf_prefix
   35: {
   36:   u_int32_t seq;
   37:   u_char ge;
   38:   u_char le;
   39:   struct prefix p;
   40: };
   41: 
   42: /* Prototypes. */
   43: extern void prefix_list_init (void);
   44: extern void prefix_list_reset (void);
   45: extern void prefix_list_add_hook (void (*func) (struct prefix_list *));
   46: extern void prefix_list_delete_hook (void (*func) (struct prefix_list *));
   47: 
   48: extern const char *prefix_list_name (struct prefix_list *);
   49: extern struct prefix_list *prefix_list_lookup (afi_t, const char *);
   50: extern enum prefix_list_type prefix_list_apply (struct prefix_list *, void *);
   51: 
   52: extern struct prefix_list *prefix_bgp_orf_lookup (afi_t, const char *);
   53: extern struct stream * prefix_bgp_orf_entry (struct stream *,
   54:                                              struct prefix_list *,
   55:                                              u_char, u_char, u_char);
   56: extern int prefix_bgp_orf_set (char *, afi_t, struct orf_prefix *, int, int);
   57: extern void prefix_bgp_orf_remove_all (afi_t, char *);
   58: extern int prefix_bgp_show_prefix_list (struct vty *, afi_t, char *);
   59: 
   60: #endif /* _QUAGGA_PLIST_H */

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>