2
* @(#) Definitions relevant to the IPSEC <> radij tree interfacing
3
* Copyright (C) 1996, 1997 John Ioannidis.
4
* Copyright (C) 1998, 1999, 2000, 2001 Richard Guy Briggs.
6
* This program is free software; you can redistribute it and/or modify it
7
* under the terms of the GNU General Public License as published by the
8
* Free Software Foundation; either version 2 of the License, or (at your
9
* option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
11
* This program is distributed in the hope that it will be useful, but
12
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
16
* RCSID $Id: ipsec_radij.h,v 1.18 2002/04/24 07:36:47 mcr Exp $
19
#ifndef _IPSEC_RADIJ_H
23
int ipsec_walk(char *);
25
int ipsec_rj_walker_procprint(struct radij_node *, void *);
26
int ipsec_rj_walker_delete(struct radij_node *, void *);
39
extern struct radij_node_head *rnh;
40
extern spinlock_t eroute_lock;
42
struct eroute * ipsec_findroute(struct sockaddr_encap *);
44
#define O1(x) (int)(((x)>>24)&0xff)
45
#define O2(x) (int)(((x)>>16)&0xff)
46
#define O3(x) (int)(((x)>>8)&0xff)
47
#define O4(x) (int)(((x))&0xff)
49
#ifdef CONFIG_IPSEC_DEBUG
50
extern int debug_radij;
51
void rj_dumptrees(void);
53
#define DB_RJ_DUMPTREES 0x0001
54
#define DB_RJ_FINDROUTE 0x0002
55
#endif /* CONFIG_IPSEC_DEBUG */
57
#define _IPSEC_RADIJ_H
61
* $Log: ipsec_radij.h,v $
62
* Revision 1.18 2002/04/24 07:36:47 mcr
63
* Moved from ./klips/net/ipsec/ipsec_radij.h,v
65
* Revision 1.17 2001/11/26 09:23:49 rgb
66
* Merge MCR's ipsec_sa, eroute, proc and struct lifetime changes.
68
* Revision 1.16.2.1 2001/09/25 02:21:17 mcr
69
* ipsec_proto.h created to keep prototypes rather than deal with
70
* cyclic dependancies of structures and prototypes in .h files.
72
* Revision 1.16 2001/09/15 16:24:04 rgb
73
* Re-inject first and last HOLD packet when an eroute REPLACE is done.
75
* Revision 1.15 2001/09/14 16:58:37 rgb
76
* Added support for storing the first and last packets through a HOLD.
78
* Revision 1.14 2001/09/08 21:13:32 rgb
79
* Added pfkey ident extension support for ISAKMPd. (NetCelo)
81
* Revision 1.13 2001/06/14 19:35:09 rgb
82
* Update copyright date.
84
* Revision 1.12 2001/05/27 06:12:11 rgb
85
* Added structures for pid, packet count and last access time to eroute.
86
* Added packet count to beginning of /proc/net/ipsec_eroute.
88
* Revision 1.11 2000/09/08 19:12:56 rgb
89
* Change references from DEBUG_IPSEC to CONFIG_IPSEC_DEBUG.
91
* Revision 1.10 1999/11/17 15:53:39 rgb
92
* Changed all occurrences of #include "../../../lib/freeswan.h"
93
* to #include <freeswan.h> which works due to -Ilibfreeswan in the
94
* klips/net/ipsec/Makefile.
96
* Revision 1.9 1999/10/01 00:01:23 rgb
97
* Added eroute structure locking.
99
* Revision 1.8 1999/04/11 00:28:59 henry
102
* Revision 1.7 1999/04/06 04:54:26 rgb
103
* Fix/Add RCSID Id: and Log: bits to make PHMDs happy. This includes
106
* Revision 1.6 1999/01/22 06:23:26 rgb
109
* Revision 1.5 1998/10/25 02:42:08 rgb
110
* Change return type on ipsec_breakroute and ipsec_makeroute and add an
111
* argument to be able to transmit more infomation about errors.
113
* Revision 1.4 1998/10/19 14:44:29 rgb
114
* Added inclusion of freeswan.h.
115
* sa_id structure implemented and used: now includes protocol.
117
* Revision 1.3 1998/07/28 00:03:31 rgb
118
* Comment out temporary inet_nto4u() kluge.
120
* Revision 1.2 1998/07/14 18:22:00 rgb
121
* Add function to clear the eroute table.
123
* Revision 1.1 1998/06/18 21:27:49 henry
124
* move sources from klips/src to klips/net/ipsec, to keep stupid
125
* kernel-build scripts happier in the presence of symlinks
127
* Revision 1.5 1998/05/25 20:30:38 rgb
128
* Remove temporary ipsec_walk, rj_deltree and rj_delnodes functions.
130
* Rename ipsec_rj_walker (ipsec_walk) to ipsec_rj_walker_procprint and
131
* add ipsec_rj_walker_delete.
133
* Revision 1.4 1998/05/21 13:02:56 rgb
134
* Imported definitions from ipsec_radij.c and radij.c to support /proc 3k
137
* Revision 1.3 1998/04/21 21:29:09 rgb
138
* Rearrange debug switches to change on the fly debug output from user
139
* space. Only kernel changes checked in at this time. radij.c was also
140
* changed to temporarily remove buggy debugging code in rj_delete causing
141
* an OOPS and hence, netlink device open errors.
143
* Revision 1.2 1998/04/14 17:30:39 rgb
144
* Fix up compiling errors for radij tree memory reclamation.
146
* Revision 1.1 1998/04/09 03:06:10 henry
147
* sources moved up from linux/net/ipsec
149
* Revision 1.1.1.1 1998/04/08 05:35:04 henry
150
* RGB's ipsec-0.8pre2.tar.gz ipsec-0.8
152
* Revision 0.4 1997/01/15 01:28:15 ji
155
* Revision 0.3 1996/11/20 14:39:04 ji
157
* Rationalized debugging code.
159
* Revision 0.2 1996/11/02 00:18:33 ji
160
* First limited release.