Annotation of embedaddon/quagga/lib/filter.h, revision 1.1

1.1     ! misho       1: /*
        !             2:  * Route filtering function.
        !             3:  * Copyright (C) 1998 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 _ZEBRA_FILTER_H
        !            24: #define _ZEBRA_FILTER_H
        !            25: 
        !            26: #include "if.h"
        !            27: 
        !            28: /* Filter type is made by `permit', `deny' and `dynamic'. */
        !            29: enum filter_type 
        !            30: {
        !            31:   FILTER_DENY,
        !            32:   FILTER_PERMIT,
        !            33:   FILTER_DYNAMIC
        !            34: };
        !            35: 
        !            36: enum access_type
        !            37: {
        !            38:   ACCESS_TYPE_STRING,
        !            39:   ACCESS_TYPE_NUMBER
        !            40: };
        !            41: 
        !            42: /* Access list */
        !            43: struct access_list
        !            44: {
        !            45:   char *name;
        !            46:   char *remark;
        !            47: 
        !            48:   struct access_master *master;
        !            49: 
        !            50:   enum access_type type;
        !            51: 
        !            52:   struct access_list *next;
        !            53:   struct access_list *prev;
        !            54: 
        !            55:   struct filter *head;
        !            56:   struct filter *tail;
        !            57: };
        !            58: 
        !            59: /* Prototypes for access-list. */
        !            60: extern void access_list_init (void);
        !            61: extern void access_list_reset (void);
        !            62: extern void access_list_add_hook (void (*func)(struct access_list *));
        !            63: extern void access_list_delete_hook (void (*func)(struct access_list *));
        !            64: extern struct access_list *access_list_lookup (afi_t, const char *);
        !            65: extern enum filter_type access_list_apply (struct access_list *, void *);
        !            66: 
        !            67: #endif /* _ZEBRA_FILTER_H */

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