c3a550836e70ee8b1e278bb77d37d75c9caf0868
[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.11 2004/11/15 12:31:58 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  *                 - Andreas
42  */
43
44 /*
45  * IO commands
46  *
47  * NAMING CONVENTION:
48  * - DATAPOINTERS
49  *   Commands to get datapointers MUST have the prefix
50  *   GETD__ added to the full name of the variable/pointer
51  *   in all upper cases.
52  *   Example: A command to get a pointer to a variable called
53  *   "myvar" in olsrd must be called GETD__MYVAR
54  *
55  * - FUNCTIONS
56  *   Commands to get pointers to olsrd functions MUST have
57  *   the prefix GETF__ added to the full name of the runction
58  *   in uppercases.
59  *   Example: A command to get a pointer to the function
60  *   "my_function" must be named GETF__MY_FUNCTION
61  *
62  *
63  *   New commands can be added - BUT EXISTING COMMANDS MUST
64  *   _NEVER_ CHANGE VALUE!
65  */
66
67 #ifndef _OLSR_PLUGIN_IO
68 #define _OLSR_PLUGIN_IO
69
70 /* Data fetching - starts at 100 (used to anyway) */
71 #define GETD__IFNET                                102
72 #define GETD__NOW                                  103
73 #define GETD__PARSER_ENTRIES                       104
74 #define GETD__OLSR_SOCKET_ENTRIES                  105
75 #define GETD__NEIGHBORTABLE                        108
76 #define GETD__TWO_HOP_NEIGHBORTABLE                109
77 #define GETD__TC_TABLE                             110
78 #define GETD__HNA_SET                              111
79 #define GETD__OLSR_CNF                             112
80 #define GETD__ROUTINGTABLE                         113
81 #define GETD__HNA_ROUTES                           114
82 #define GETD__MID_SET                              115
83
84 /* Function fetching - starts at 500 */
85 #define GETF__OLSR_REGISTER_SCHEDULER_EVENT        500
86 #define GETF__OLSR_REMOVE_SCHEDULER_EVENT          501
87 #define GETF__OLSR_PARSER_ADD_FUNCTION             502
88 #define GETF__OLSR_PARSER_REMOVE_FUNCTION          503
89 #define GETF__OLSR_REGISTER_TIMEOUT_FUNCTION       504
90 #define GETF__OLSR_REMOVE_TIMEOUT_FUNCTION         505
91 #define GETF__GET_MSG_SEQNO                        506
92 #define GETF__OLSR_CHECK_DUP_TABLE_PROC            507
93 #define GETF__NET_OUTPUT                           508
94 #define GETF__OLSR_FORWARD_MESSAGE                 509
95 #define GETF__ADD_OLSR_SOCKET                      510
96 #define GETF__REMOVE_OLSR_SOCKET                   511
97 #define GETF__CHECK_NEIGHBOR_LINK                  512
98 #define GETF__OLSR_PRINTF                          513
99 #define GETF__OLSR_MALLOC                          514
100 #define GETF__DOUBLE_TO_ME                         515
101 #define GETF__ME_TO_DOUBLE                         516
102 #define GETF__ADD_LOCAL_HNA4_ENTRY                 517
103 #define GETF__REMOVE_LOCAL_HNA4_ENTRY              518
104 #define GETF__ADD_LOCAL_HNA6_ENTRY                 519
105 #define GETF__REMOVE_LOCAL_HNA6_ENTRY              520
106 #define GETF__OLSR_INPUT                           521
107 #define GETF__ADD_PTF                              522
108 #define GETF__DEL_PTF                              523
109 #define GETF__IF_IFWITHSOCK                        524
110 #define GETF__IF_IFWITHADDR                        525
111 #define GETF__PARSE_PACKET                         526
112 #define GETF__REGISTER_PCF                         527
113 #define GETF__OLSR_HASHING                         528
114 #define GETF__ADD_IFCHGF                           529
115 #define GETF__DEL_IFCHGF                           530
116 #define GETF__APM_READ                             531
117 #define GETF__NET_OUTBUFFER_PUSH                   532
118
119 #endif