1 /*
2 *
3 * Copyright (c) 2003 The Regents of the University of California. All
4 * rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:
9 *
10 * - Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer.
12 *
13 * - Neither the name of the University nor the names of its
14 * contributors may be used to endorse or promote products derived
15 * from this software without specific prior written permission.
16 *
17 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS''
18 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
19 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
20 * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
21 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
22 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
23 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
24 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
25 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 *
29 */
30
31
32 #ifndef GLS_NBLIST_H_
33 #define GLS_NBLIST_H_
34
35
36 /* flood params */
37 typedef struct flood_pkt
38 {
39 node_id_t id;
40 loc_t loc;
41 int count;
42 uint8_t gls_nb_list[0]; /* Allocate space for neighborlist */
43 } flood_pkt_t;
44
45
46 /* topology update */
47 struct update
48 {
49 /* this update is for the node identified by 'id' */
50 uint32_t id;
51 /* if udp is updated as part of this update, this is TRUE */
52 gboolean udp_update_present;
53 /* when udp information of the node is updated, this will be meaningful */
54 struct udp_info udp;
55 /* if geo info is updated as part of this update, this is TRUE */
56 gboolean geo_update_present;
57 /* when geo information of the node is updated, this will be meaningful */
58 /* list of neighbor structures */
59 geo_t geo;
60 /* list of neighbor structures received as part of this update. It may be
61 * empty (or non-existant) */
62 GSList *neighbors;
63 };
64
65 #endif
66
This page was automatically generated by the
LXR engine.
Visit the LXR main site for more
information.