nib_table.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2014 Freie Universit├Ąt Berlin
3  *
4  * This file is subject to the terms and conditions of the GNU Lesser
5  * General Public License v2.1. See the file LICENSE in the top level
6  * directory for more details.
7  */
8 
19 #ifndef NIB_TABLE_H
20 #define NIB_TABLE_H
21 
22 #include "timex.h"
23 
24 #include "rfc5444/rfc5444_writer.h"
25 
26 #include "nhdp_address.h"
27 
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31 
35 typedef struct nib_entry {
37  uint8_t symmetric;
38  uint32_t metric_in;
39  uint32_t metric_out;
40  struct nib_entry *next;
41 } nib_entry_t;
42 
46 typedef struct nib_lost_address_entry {
51 
62 
71 void nib_fill_wr_addresses(struct rfc5444_writer *wr);
72 
79 
89 
100 
101 #ifdef __cplusplus
102 }
103 #endif
104 
105 #endif /* NIB_TABLE_H */
106 
void nib_fill_wr_addresses(struct rfc5444_writer *wr)
Add addresses to the currently constructed HELLO message.
A timex timestamp.
Definition: timex.h:79
struct nib_lost_address_entry * next
Pointer to next list entry.
Definition: nib_table.h:49
struct nib_lost_address_entry nib_lost_address_entry_t
Lost Neighbor Set entry (lost neighbor tuple, lnt)
struct nib_entry * next
Pointer to next list entry.
Definition: nib_table.h:40
uint8_t symmetric
Flag whether sym link to this nb exists.
Definition: nib_table.h:37
NHDP address representation.
Definition: nhdp_address.h:29
Container for NHDP address storage in a list.
Definition: nhdp_address.h:42
Utility library for comparing and computing timestamps.
void nib_set_nb_entry_sym(nib_entry_t *nib_entry)
Set a Neighbor Tuple's symmetry flag.
nhdp_addr_t * address
Pointer to addr represented by this lnt.
Definition: nib_table.h:47
Centralized address storage interface for NHDP.
timex_t expiration_time
Time at which entry expires.
Definition: nib_table.h:48
uint32_t metric_out
Lowest metric value for outgoing link.
Definition: nib_table.h:39
void nib_rem_nb_entry(nib_entry_t *nib_entry)
Remove a Neighbor Tuple.
nib_entry_t * nib_process_hello(void)
Process a received HELLO message in the NIB.
void nib_reset_nb_entry_sym(nib_entry_t *nib_entry, timex_t *now)
Reset a Neighbor Tuple's symmetry flag.
Lost Neighbor Set entry (lost neighbor tuple, lnt)
Definition: nib_table.h:46
uint32_t metric_in
Lowest metric value for incoming link.
Definition: nib_table.h:38
struct nib_entry nib_entry_t
Neighbor Set entry (neighbor tuple)
nhdp_addr_entry_t * address_list_head
Pointer to this tuple's addresses.
Definition: nib_table.h:36
Neighbor Set entry (neighbor tuple)
Definition: nib_table.h:35