2 * OLSR ad-hoc routing table management protocol
3 * Copyright (C) 2003 Andreas Tønnesen (andreto@ifi.uio.no)
5 * This file is part of the olsr.org OLSR daemon.
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.
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.
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
22 * $Id: hna_set.h,v 1.8 2004/11/09 21:09:58 kattemat Exp $
34 /* hna_netmask declared in packet.h */
38 union olsr_ip_addr A_network_addr;
39 union hna_netmask A_netmask;
40 struct timeval A_time;
47 union olsr_ip_addr A_gateway_addr;
48 struct hna_net networks;
49 struct hna_entry *next;
50 struct hna_entry *prev;
53 struct hna_entry hna_set[HASHSIZE];
57 olsr_init_hna_set(void);
61 olsr_lookup_hna_net(struct hna_net *, union olsr_ip_addr *, union hna_netmask *);
65 olsr_lookup_hna_gw(union olsr_ip_addr *);
70 olsr_add_hna_entry(union olsr_ip_addr *);
74 olsr_add_hna_net(struct hna_entry *, union olsr_ip_addr *, union hna_netmask *);
78 olsr_update_hna_entry(union olsr_ip_addr *, union olsr_ip_addr *, union hna_netmask *, float);
82 olsr_time_out_hna_set(void *);
86 delete_hna_net(struct hna_net *);
90 delete_hna_entry(struct hna_entry *);
93 olsr_print_hna_set(void);