blob: d70f1e88d6597540fe12164776f7073c9ade6281 [file] [log] [blame]
paul718e3742002-12-13 20:15:29 +00001/*
2 * Copyright (C) 1999 Yasuhiro Ohara
3 *
4 * This file is part of GNU Zebra.
5 *
6 * GNU Zebra is free software; you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License as published by the
8 * Free Software Foundation; either version 2, or (at your option) any
9 * later version.
10 *
11 * GNU Zebra is distributed in the hope that it will be useful, but
12 * WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with GNU Zebra; see the file COPYING. If not, write to the
18 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
19 * Boston, MA 02111-1307, USA.
20 */
21
22#ifndef OSPF6_NSM_H
23#define OSPF6_NSM_H
24
25/* Neighbor state */
26#define NBS_DOWN 1
27#define OSPF6_NEIGHBOR_STATE_DOWN 1
28#define NBS_ATTEMPT 2
29#define OSPF6_NEIGHBOR_STATE_ATTEMPT 2
30#define NBS_INIT 3
31#define OSPF6_NEIGHBOR_STATE_INIT 3
32#define NBS_TWOWAY 4
33#define OSPF6_NEIGHBOR_STATE_TWOWAY 4
34#define NBS_EXSTART 5
35#define OSPF6_NEIGHBOR_STATE_EXSTART 5
36#define NBS_EXCHANGE 6
37#define OSPF6_NEIGHBOR_STATE_EXCHANGE 6
38#define NBS_LOADING 7
39#define OSPF6_NEIGHBOR_STATE_LOADING 7
40#define NBS_FULL 8
41#define OSPF6_NEIGHBOR_STATE_FULL 8
42
43
44
45/* Function Prototypes */
46
47#include "ospf6_types.h"
48
49int need_adjacency (struct ospf6_neighbor *);
50
51
52/* Neighbor event */
53int hello_received (struct thread *);
54int twoway_received (struct thread *);
55int negotiation_done (struct thread *);
56int exchange_done (struct thread *);
57int loading_done (struct thread *);
58int adj_ok (struct thread *);
59int seqnumber_mismatch (struct thread *);
60int bad_lsreq (struct thread *);
61int oneway_received (struct thread *);
62int inactivity_timer (struct thread *);
63
64int dr_election (struct ospf6_interface *);
65
66#endif /* OSPF6_NSM_H */
67