bd9242cb50941e814b58e5be091e1281e765872e
[olsrd.git] / src / olsr_plugin_io.h
1 /*
2  * OLSR ad-hoc routing table management protocol
3  * Copyright (C) 2004 Andreas Tønnesen (andreto@ifi.uio.no)
4  *
5  * This file is part of the olsr.org OLSR daemon.
6  *
7  * olsr.org is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 2 of the License, or
10  * (at your option) any later version.
11  *
12  * olsr.org is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with olsr.org; if not, write to the Free Software
19  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
20  * 
21  * 
22  * $Id: olsr_plugin_io.h,v 1.12 2004/11/18 21:58:46 kattemat Exp $
23  *
24  */
25
26 /*
27  * REVISIONS(starting from 0.4.6):
28  * 0.4.5 - 0.4.6 : GETD_S removed. The socket entries now reside within the 
29  *                 interface struct.
30  *                 Added GETF__ADD_IFCHGF and GETF__DEL_IFCHGF.
31  *                 - Andreas
32  *         0.4.8 : GETF__APM_READ added
33  *                 GETD__OLSR_CNF added
34  *                 GETD_PACKET removed
35  *                 GETD_MAXMESSAGESIZE removed
36  *                 GETD_OUTPUTSIZE removed
37  *                 GETF__NET_OUTBUFFER_PUSH added
38  *                 GETD__ROUTINGTABLE added
39  *                 GETD__HNA_ROUTES added
40  *                 GETD__MID_SET added
41  *                 GETF__NET_RESERVE_BUFSPACE added 
42  *                 GETF__NET_OUTBUFFER_PUSH_RESERVED added
43  *                 - Andreas
44  */
45
46 /*
47  * IO commands
48  *
49  * NAMING CONVENTION:
50  * - DATAPOINTERS
51  *   Commands to get datapointers MUST have the prefix
52  *   GETD__ added to the full name of the variable/pointer
53  *   in all upper cases.
54  *   Example: A command to get a pointer to a variable called
55  *   "myvar" in olsrd must be called GETD__MYVAR
56  *
57  * - FUNCTIONS
58  *   Commands to get pointers to olsrd functions MUST have
59  *   the prefix GETF__ added to the full name of the runction
60  *   in uppercases.
61  *   Example: A command to get a pointer to the function
62  *   "my_function" must be named GETF__MY_FUNCTION
63  *
64  *
65  *   New commands can be added - BUT EXISTING COMMANDS MUST
66  *   _NEVER_ CHANGE VALUE!
67  */
68
69 #ifndef _OLSR_PLUGIN_IO
70 #define _OLSR_PLUGIN_IO
71
72 /* Data fetching - starts at 100 (used to anyway) */
73 #define GETD__IFNET                                102
74 #define GETD__NOW                                  103
75 #define GETD__PARSER_ENTRIES                       104
76 #define GETD__OLSR_SOCKET_ENTRIES                  105
77 #define GETD__NEIGHBORTABLE                        108
78 #define GETD__TWO_HOP_NEIGHBORTABLE                109
79 #define GETD__TC_TABLE                             110
80 #define GETD__HNA_SET                              111
81 #define GETD__OLSR_CNF                             112
82 #define GETD__ROUTINGTABLE                         113
83 #define GETD__HNA_ROUTES                           114
84 #define GETD__MID_SET                              115
85
86 /* Function fetching - starts at 500 */
87 #define GETF__OLSR_REGISTER_SCHEDULER_EVENT        500
88 #define GETF__OLSR_REMOVE_SCHEDULER_EVENT          501
89 #define GETF__OLSR_PARSER_ADD_FUNCTION             502
90 #define GETF__OLSR_PARSER_REMOVE_FUNCTION          503
91 #define GETF__OLSR_REGISTER_TIMEOUT_FUNCTION       504
92 #define GETF__OLSR_REMOVE_TIMEOUT_FUNCTION         505
93 #define GETF__GET_MSG_SEQNO                        506
94 #define GETF__OLSR_CHECK_DUP_TABLE_PROC            507
95 #define GETF__NET_OUTPUT                           508
96 #define GETF__OLSR_FORWARD_MESSAGE                 509
97 #define GETF__ADD_OLSR_SOCKET                      510
98 #define GETF__REMOVE_OLSR_SOCKET                   511
99 #define GETF__CHECK_NEIGHBOR_LINK                  512
100 #define GETF__OLSR_PRINTF                          513
101 #define GETF__OLSR_MALLOC                          514
102 #define GETF__DOUBLE_TO_ME                         515
103 #define GETF__ME_TO_DOUBLE                         516
104 #define GETF__ADD_LOCAL_HNA4_ENTRY                 517
105 #define GETF__REMOVE_LOCAL_HNA4_ENTRY              518
106 #define GETF__ADD_LOCAL_HNA6_ENTRY                 519
107 #define GETF__REMOVE_LOCAL_HNA6_ENTRY              520
108 #define GETF__OLSR_INPUT                           521
109 #define GETF__ADD_PTF                              522
110 #define GETF__DEL_PTF                              523
111 #define GETF__IF_IFWITHSOCK                        524
112 #define GETF__IF_IFWITHADDR                        525
113 #define GETF__PARSE_PACKET                         526
114 #define GETF__REGISTER_PCF                         527
115 #define GETF__OLSR_HASHING                         528
116 #define GETF__ADD_IFCHGF                           529
117 #define GETF__DEL_IFCHGF                           530
118 #define GETF__APM_READ                             531
119 #define GETF__NET_OUTBUFFER_PUSH                   532
120 #define GETF__NET_RESERVE_BUFSPACE                 533
121 #define GETF__NET_OUTBUFFER_PUSH_RESERVED          534
122
123 #endif