]> git.proxmox.com Git - mirror_frr.git/blame - isisd/isis_csm.h
Merge pull request #9438 from ranjanyash54/debug_comm
[mirror_frr.git] / isisd / isis_csm.h
CommitLineData
eb5d44eb 1/*
2 * IS-IS Rout(e)ing protocol - isis_csm.h
3 * IS-IS circuit state machine
4 *
5 * Copyright (C) 2001,2002 Sampo Saaristo
d62a17ae 6 * Tampere University of Technology
eb5d44eb 7 * Institute of Communications Engineering
8 *
9 *
d62a17ae 10 * This program is free software; you can redistribute it and/or modify it
11 * under the terms of the GNU General Public Licenseas published by the Free
12 * Software Foundation; either version 2 of the License, or (at your option)
eb5d44eb 13 * any later version.
14 *
d62a17ae 15 * This program is distributed in the hope that it will be useful,but WITHOUT
16 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
17 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
eb5d44eb 18 * more details.
896014f4
DL
19 *
20 * You should have received a copy of the GNU General Public License along
21 * with this program; see the file COPYING; if not, write to the Free Software
22 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
eb5d44eb 23 */
24#ifndef _ZEBRA_ISIS_CSM_H
25#define _ZEBRA_ISIS_CSM_H
26
27/*
28 * Circuit states
29 */
61cd5761
DS
30enum isis_circuit_state {
31 C_STATE_NA,
32 C_STATE_INIT, /* Connected to interface */
33 C_STATE_CONF, /* Configured for ISIS */
34 C_STATE_UP, /* CONN | CONF */
35};
eb5d44eb 36
37/*
38 * Circuit events
39 */
9d454ad2
DS
40enum isis_circuit_event {
41 ISIS_ENABLE = 1,
42 IF_UP_FROM_Z,
43 ISIS_DISABLE,
44 IF_DOWN_FROM_Z,
45};
eb5d44eb 46
9d454ad2
DS
47struct isis_circuit *isis_csm_state_change(enum isis_circuit_event event,
48 struct isis_circuit *circuit,
49 void *arg);
eb5d44eb 50
51#endif /* _ZEBRA_ISIS_CSM_H */