Port all olsrd 0.6.0 OS specific files and adapt them to the new interface.
[olsrd.git] / src / olsr_cfg_data.h
1
2 /*
3  * The olsr.org Optimized Link-State Routing daemon(olsrd)
4  * Copyright (c) 2004-2009, the olsr.org team - see HISTORY file
5  * All rights reserved.
6  *
7  * Redistribution and use in source and binary forms, with or without
8  * modification, are permitted provided that the following conditions
9  * are met:
10  *
11  * * Redistributions of source code must retain the above copyright
12  *   notice, this list of conditions and the following disclaimer.
13  * * Redistributions in binary form must reproduce the above copyright
14  *   notice, this list of conditions and the following disclaimer in
15  *   the documentation and/or other materials provided with the
16  *   distribution.
17  * * Neither the name of olsr.org, olsrd nor the names of its
18  *   contributors may be used to endorse or promote products derived
19  *   from this software without specific prior written permission.
20  *
21  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
24  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
25  * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
26  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
27  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
28  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
29  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
31  * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
32  * POSSIBILITY OF SUCH DAMAGE.
33  *
34  * Visit http://www.olsr.org for more information.
35  *
36  * If you find this software useful feel free to make a donation
37  * to the project. For more information see the website or contact
38  * the copyright holders.
39  *
40  */
41
42 #ifndef OLSR_CFG_DATA_H_
43 #define OLSR_CFG_DATA_H_
44
45 /**
46  * defines the source of a logging event
47  */
48 enum log_source {
49   LOG_ALL,                             //!< LOG_ALL
50   LOG_LOGGING,                         //!< LOG_LOGGING
51   LOG_IPC,                             //!< LOG_IPC
52   LOG_MAIN,                            //!< LOG_MAIN
53   LOG_INTERFACE,                       //!< LOG_INTERFACE
54   LOG_NETWORKING,                      //!< LOG_NETWORKING
55   LOG_PACKET_CREATION,                 //!< LOG_PACKET_CREATION
56   LOG_PACKET_PARSING,                  //!< LOG_PACKET_PARSING
57   LOG_ROUTING,                         //!< LOG_ROUTING
58   LOG_SCHEDULER,                       //!< LOG_SCHEDULER
59   LOG_PLUGINS,                         //!< LOG_PLUGINS
60   LOG_LQ_PLUGINS,                      //!< LOG_LQ_PLUGINS
61   LOG_LL_PLUGINS,                      //!< LOG_LL_PLUGINS
62   LOG_LINKS,                           //!< LOG_LINKS
63   LOG_NEIGHTABLE,                      //!< LOG_NEIGHTABLE
64   LOG_MPR,                             //!< LOG_MPR
65   LOG_MPRS,                            //!< LOG_MPRS
66   LOG_2NEIGH,                          //!< LOG_2NEIGH
67   LOG_TC,                              //!< LOG_TC
68   LOG_HNA,                             //!< LOG_HNA
69   LOG_MID,                             //!< LOG_MID
70   LOG_DUPLICATE_SET,                   //!< LOG_DUPLICATE_SET
71   LOG_COOKIE,                          //!< LOG_COOKIE
72   LOG_COMPORT,                         //!< LOG_COMPORT
73   LOG_APM,                             //!< LOG_APM
74   LOG_RTNETLINK,                       //!< LOG_RTNETLINK
75   LOG_TUNNEL,                          //!< LOG_TUNNEL
76
77   /* this one must be the last of the enums ! */
78   LOG_SOURCE_COUNT                     //!< LOG_SOURCE_COUNT
79 };
80
81 /**
82  * defines the mode of the interface.
83  *
84  * - Mesh: default behavior
85  * - Ether: an interface with nearly no packet loss and a "closed" broadcast
86  *   domain. This means packages received through this interface does not need
87  *   to be forwarded through the interface again.
88  */
89 enum interface_mode {
90   IF_MODE_MESH,                        //!< IF_MODE_MESH
91   IF_MODE_ETHER,                       //!< IF_MODE_ETHER
92
93   /* this must be the last entry */
94   IF_MODE_COUNT                        //!< IF_MODE_COUNT
95 };
96
97
98 extern const char *LOG_SOURCE_NAMES[];
99 extern const char *LOG_SEVERITY_NAMES[];
100 extern const char *INTERFACE_MODE_NAMES[];
101
102 #endif /* OLSR_CFG_DATA_H_ */