]> git.ipfire.org Git - people/ms/strongswan.git/blob - src/libfreeswan/ipsec_encap.h
(no commit message)
[people/ms/strongswan.git] / src / libfreeswan / ipsec_encap.h
1 /*
2 * declarations relevant to encapsulation-like operations
3 * Copyright (C) 1996, 1997 John Ioannidis.
4 * Copyright (C) 1998, 1999, 2000, 2001 Richard Guy Briggs.
5 *
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>.
10 *
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
14 * for more details.
15 *
16 * RCSID $Id: ipsec_encap.h,v 1.1 2004/03/15 20:35:25 as Exp $
17 */
18
19 #ifndef _IPSEC_ENCAP_H_
20
21 #define SENT_IP4 16 /* data is two struct in_addr + proto + ports*/
22 /* (2 * sizeof(struct in_addr)) */
23 /* sizeof(struct sockaddr_encap)
24 - offsetof(struct sockaddr_encap, Sen.Sip4.Src) */
25
26 struct sockaddr_encap
27 {
28 __u8 sen_len; /* length */
29 __u8 sen_family; /* AF_ENCAP */
30 __u16 sen_type; /* see SENT_* */
31 union
32 {
33 struct /* SENT_IP4 */
34 {
35 struct in_addr Src;
36 struct in_addr Dst;
37 __u8 Proto;
38 __u16 Sport;
39 __u16 Dport;
40 } Sip4;
41 } Sen;
42 };
43
44 #define sen_ip_src Sen.Sip4.Src
45 #define sen_ip_dst Sen.Sip4.Dst
46 #define sen_proto Sen.Sip4.Proto
47 #define sen_sport Sen.Sip4.Sport
48 #define sen_dport Sen.Sip4.Dport
49
50 #ifndef AF_ENCAP
51 #define AF_ENCAP 26
52 #endif /* AF_ENCAP */
53
54 #define _IPSEC_ENCAP_H_
55 #endif /* _IPSEC_ENCAP_H_ */
56
57 /*
58 * $Log: ipsec_encap.h,v $
59 * Revision 1.1 2004/03/15 20:35:25 as
60 * added files from freeswan-2.04-x509-1.5.3
61 *
62 * Revision 1.17 2002/04/24 07:36:46 mcr
63 * Moved from ./klips/net/ipsec/ipsec_encap.h,v
64 *
65 * Revision 1.16 2001/11/26 09:23:47 rgb
66 * Merge MCR's ipsec_sa, eroute, proc and struct lifetime changes.
67 *
68 * Revision 1.15.2.1 2001/09/25 02:18:54 mcr
69 * struct eroute moved to ipsec_eroute.h
70 *
71 * Revision 1.15 2001/09/14 16:58:36 rgb
72 * Added support for storing the first and last packets through a HOLD.
73 *
74 * Revision 1.14 2001/09/08 21:13:31 rgb
75 * Added pfkey ident extension support for ISAKMPd. (NetCelo)
76 *
77 * Revision 1.13 2001/06/14 19:35:08 rgb
78 * Update copyright date.
79 *
80 * Revision 1.12 2001/05/27 06:12:10 rgb
81 * Added structures for pid, packet count and last access time to eroute.
82 * Added packet count to beginning of /proc/net/ipsec_eroute.
83 *
84 * Revision 1.11 2000/09/08 19:12:56 rgb
85 * Change references from DEBUG_IPSEC to CONFIG_IPSEC_DEBUG.
86 *
87 * Revision 1.10 2000/03/22 16:15:36 rgb
88 * Fixed renaming of dev_get (MB).
89 *
90 * Revision 1.9 2000/01/21 06:13:26 rgb
91 * Added a macro for AF_ENCAP
92 *
93 * Revision 1.8 1999/12/31 14:56:55 rgb
94 * MB fix for 2.3 dev-use-count.
95 *
96 * Revision 1.7 1999/11/18 04:09:18 rgb
97 * Replaced all kernel version macros to shorter, readable form.
98 *
99 * Revision 1.6 1999/09/24 00:34:13 rgb
100 * Add Marc Boucher's support for 2.3.xx+.
101 *
102 * Revision 1.5 1999/04/11 00:28:57 henry
103 * GPL boilerplate
104 *
105 * Revision 1.4 1999/04/06 04:54:25 rgb
106 * Fix/Add RCSID Id: and Log: bits to make PHMDs happy. This includes
107 * patch shell fixes.
108 *
109 * Revision 1.3 1998/10/19 14:44:28 rgb
110 * Added inclusion of freeswan.h.
111 * sa_id structure implemented and used: now includes protocol.
112 *
113 * Revision 1.2 1998/07/14 18:19:33 rgb
114 * Added #ifdef __KERNEL__ directives to restrict scope of header.
115 *
116 * Revision 1.1 1998/06/18 21:27:44 henry
117 * move sources from klips/src to klips/net/ipsec, to keep stupid
118 * kernel-build scripts happier in the presence of symlinks
119 *
120 * Revision 1.2 1998/04/21 21:29:10 rgb
121 * Rearrange debug switches to change on the fly debug output from user
122 * space. Only kernel changes checked in at this time. radij.c was also
123 * changed to temporarily remove buggy debugging code in rj_delete causing
124 * an OOPS and hence, netlink device open errors.
125 *
126 * Revision 1.1 1998/04/09 03:05:58 henry
127 * sources moved up from linux/net/ipsec
128 *
129 * Revision 1.1.1.1 1998/04/08 05:35:02 henry
130 * RGB's ipsec-0.8pre2.tar.gz ipsec-0.8
131 *
132 * Revision 0.4 1997/01/15 01:28:15 ji
133 * Minor cosmetic changes.
134 *
135 * Revision 0.3 1996/11/20 14:35:48 ji
136 * Minor Cleanup.
137 * Rationalized debugging code.
138 *
139 * Revision 0.2 1996/11/02 00:18:33 ji
140 * First limited release.
141 *
142 *
143 */