2 * The olsr.org Optimized Link-State Routing daemon(olsrd)
3 * Copyright (c) 2004, Andreas Tønnesen(andreto@olsr.org)
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
10 * * Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer.
12 * * Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in
14 * the documentation and/or other materials provided with the
16 * * Neither the name of olsr.org, olsrd nor the names of its
17 * contributors may be used to endorse or promote products derived
18 * from this software without specific prior written permission.
20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
23 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
24 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
25 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
26 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
27 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
28 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
30 * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
31 * POSSIBILITY OF SUCH DAMAGE.
33 * Visit http://www.olsr.org for more information.
35 * If you find this software useful feel free to make a donation
36 * to the project. For more information see the website or contact
37 * the copyright holders.
39 * $Id: olsr_plugin_io.h,v 1.6 2004/12/03 20:54:33 kattemat Exp $
44 * REVISIONS(starting from 0.4.6):
45 * 0.4.5 - 0.4.6 : GETD_S removed. The socket entries now reside within the
47 * Added GETF__ADD_IFCHGF and GETF__DEL_IFCHGF.
49 * 0.4.8 : GETF__APM_READ added
50 * GETD__OLSR_CNF added
52 * GETD_MAXMESSAGESIZE removed
53 * GETD_OUTPUTSIZE removed
54 * GETF__NET_OUTBUFFER_PUSH added
55 * GETD__ROUTINGTABLE added
56 * GETD__HNA_ROUTES added
58 * GETF__NET_RESERVE_BUFSPACE added
59 * GETF__NET_OUTBUFFER_PUSH_RESERVED added
68 * Commands to get datapointers MUST have the prefix
69 * GETD__ added to the full name of the variable/pointer
71 * Example: A command to get a pointer to a variable called
72 * "myvar" in olsrd must be called GETD__MYVAR
75 * Commands to get pointers to olsrd functions MUST have
76 * the prefix GETF__ added to the full name of the runction
78 * Example: A command to get a pointer to the function
79 * "my_function" must be named GETF__MY_FUNCTION
82 * New commands can be added - BUT EXISTING COMMANDS MUST
83 * _NEVER_ CHANGE VALUE!
86 #ifndef _OLSR_PLUGIN_IO
87 #define _OLSR_PLUGIN_IO
89 /* Data fetching - starts at 100 (used to anyway) */
90 #define GETD__IFNET 102
92 #define GETD__PARSER_ENTRIES 104
93 #define GETD__OLSR_SOCKET_ENTRIES 105
94 #define GETD__NEIGHBORTABLE 108
95 #define GETD__TWO_HOP_NEIGHBORTABLE 109
96 #define GETD__TC_TABLE 110
97 #define GETD__HNA_SET 111
98 #define GETD__OLSR_CNF 112
99 #define GETD__ROUTINGTABLE 113
100 #define GETD__HNA_ROUTES 114
101 #define GETD__MID_SET 115
103 /* Function fetching - starts at 500 */
104 #define GETF__OLSR_REGISTER_SCHEDULER_EVENT 500
105 #define GETF__OLSR_REMOVE_SCHEDULER_EVENT 501
106 #define GETF__OLSR_PARSER_ADD_FUNCTION 502
107 #define GETF__OLSR_PARSER_REMOVE_FUNCTION 503
108 #define GETF__OLSR_REGISTER_TIMEOUT_FUNCTION 504
109 #define GETF__OLSR_REMOVE_TIMEOUT_FUNCTION 505
110 #define GETF__GET_MSG_SEQNO 506
111 #define GETF__OLSR_CHECK_DUP_TABLE_PROC 507
112 #define GETF__NET_OUTPUT 508
113 #define GETF__OLSR_FORWARD_MESSAGE 509
114 #define GETF__ADD_OLSR_SOCKET 510
115 #define GETF__REMOVE_OLSR_SOCKET 511
116 #define GETF__CHECK_NEIGHBOR_LINK 512
117 #define GETF__OLSR_PRINTF 513
118 #define GETF__OLSR_MALLOC 514
119 #define GETF__DOUBLE_TO_ME 515
120 #define GETF__ME_TO_DOUBLE 516
121 #define GETF__ADD_LOCAL_HNA4_ENTRY 517
122 #define GETF__REMOVE_LOCAL_HNA4_ENTRY 518
123 #define GETF__ADD_LOCAL_HNA6_ENTRY 519
124 #define GETF__REMOVE_LOCAL_HNA6_ENTRY 520
125 #define GETF__OLSR_INPUT 521
126 #define GETF__ADD_PTF 522
127 #define GETF__DEL_PTF 523
128 #define GETF__IF_IFWITHSOCK 524
129 #define GETF__IF_IFWITHADDR 525
130 #define GETF__PARSE_PACKET 526
131 #define GETF__REGISTER_PCF 527
132 #define GETF__OLSR_HASHING 528
133 #define GETF__ADD_IFCHGF 529
134 #define GETF__DEL_IFCHGF 530
135 #define GETF__APM_READ 531
136 #define GETF__NET_OUTBUFFER_PUSH 532
137 #define GETF__NET_RESERVE_BUFSPACE 533
138 #define GETF__NET_OUTBUFFER_PUSH_RESERVED 534