Annotation of embedaddon/bird/proto/pipe/config.Y, revision 1.1
1.1 ! misho 1: /*
! 2: * BIRD -- Table-to-Table Protocol Configuration
! 3: *
! 4: * (c) 1999 Martin Mares <mj@ucw.cz>
! 5: *
! 6: * Can be freely distributed and used under the terms of the GNU GPL.
! 7: */
! 8:
! 9: CF_HDR
! 10:
! 11: #include "proto/pipe/pipe.h"
! 12:
! 13: CF_DEFINES
! 14:
! 15: #define PIPE_CFG ((struct pipe_config *) this_proto)
! 16:
! 17: CF_DECLS
! 18:
! 19: CF_KEYWORDS(PIPE, PEER, TABLE, MODE, OPAQUE, TRANSPARENT)
! 20:
! 21: CF_GRAMMAR
! 22:
! 23: CF_ADDTO(proto, pipe_proto '}')
! 24:
! 25: pipe_proto_start: proto_start PIPE {
! 26: this_proto = proto_config_new(&proto_pipe, $1);
! 27: PIPE_CFG->mode = PIPE_TRANSPARENT;
! 28: }
! 29: ;
! 30:
! 31: pipe_proto:
! 32: pipe_proto_start proto_name '{'
! 33: | pipe_proto proto_item ';'
! 34: | pipe_proto PEER TABLE SYM ';' {
! 35: if ($4->class != SYM_TABLE)
! 36: cf_error("Routing table name expected");
! 37: PIPE_CFG->peer = $4->def;
! 38: }
! 39: | pipe_proto MODE OPAQUE ';' { PIPE_CFG->mode = PIPE_OPAQUE; }
! 40: | pipe_proto MODE TRANSPARENT ';' { PIPE_CFG->mode = PIPE_TRANSPARENT; }
! 41: ;
! 42:
! 43: CF_CODE
! 44:
! 45: CF_END
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>