xref: /openbsd/sbin/isakmpd/isakmp_fld.fld (revision db3296cf)
1#	$OpenBSD: isakmp_fld.fld,v 1.7 2003/06/03 14:28:16 ho Exp $
2#	$EOM: isakmp_fld.fld,v 1.5 1999/04/25 13:38:22 niklas Exp $
3
4#
5# Copyright (c) 1998, 2001 Niklas Hallqvist.  All rights reserved.
6#
7# Redistribution and use in source and binary forms, with or without
8# modification, are permitted provided that the following conditions
9# are met:
10# 1. Redistributions of source code must retain the above copyright
11#    notice, this list of conditions and the following disclaimer.
12# 2. Redistributions in binary form must reproduce the above copyright
13#    notice, this list of conditions and the following disclaimer in the
14#    documentation and/or other materials provided with the distribution.
15#
16# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
17# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
18# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
20# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
21# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
22# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
23# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
25# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26#
27
28#
29# This code was written under funding by Ericsson Radio Systems.
30#
31
32# XXX There are num-declared fields below that really are csts.
33
34# The ISAKMP message header.
35ISAKMP_HDR
36# XXX I want a way to specify COOKIES as an overlay of ICOOKIE + RCOOKIE
37  ICOOKIE		raw 8
38  RCOOKIE		raw 8
39  NEXT_PAYLOAD		cst 1		isakmp_payload_cst
40  VERSION		num 1
41  EXCH_TYPE		cst 1		ike_exch_cst,isakmp_exch_cst
42  FLAGS			mask 1		isakmp_flags_cst
43  MESSAGE_ID		raw 4
44  LENGTH		num 4
45.
46
47# Generic payload header.
48ISAKMP_GEN
49  NEXT_PAYLOAD		cst 1		isakmp_payload_cst
50  RESERVED		ign 1
51  LENGTH		num 2
52.
53
54# ISAKMP data attributes
55ISAKMP_ATTR
56  TYPE			num 2		ike_attr_cst,ipsec_attr_cst
57  LENGTH_VALUE		num 2
58  VALUE			raw
59.
60
61# Security association payload.
62ISAKMP_SA : ISAKMP_GEN
63  DOI			num 4		isakmp_doi_cst,ipsec_doi_cst
64  SIT			raw
65.
66
67# Proposal payload.
68ISAKMP_PROP : ISAKMP_GEN
69  NO			num 1
70  PROTO			cst 1		isakmp_proto_cst,ipsec_proto_cst
71  SPI_SZ		num 1
72  NTRANSFORMS		num 1
73  SPI			raw
74.
75
76# Transform payload.
77ISAKMP_TRANSFORM : ISAKMP_GEN
78  NO			num 1
79  ID			num 1
80  RESERVED		ign 2
81  SA_ATTRS		raw
82.
83
84# Key exchange payload.
85ISAKMP_KE : ISAKMP_GEN
86  DATA			raw
87.
88
89# Identification payload.
90ISAKMP_ID : ISAKMP_GEN
91  TYPE			num 1
92  DOI_DATA		raw 3
93  DATA			raw
94.
95
96# Certificate payload.
97ISAKMP_CERT : ISAKMP_GEN
98  ENCODING		cst 1		isakmp_certenc_cst
99  DATA			raw
100.
101
102# Certificate request payload.
103ISAKMP_CERTREQ : ISAKMP_GEN
104  TYPE			cst 1		isakmp_certenc_cst
105  AUTHORITY		raw
106.
107
108# Hash payload.
109ISAKMP_HASH : ISAKMP_GEN
110  DATA			raw
111.
112
113# Signature payload.
114ISAKMP_SIG : ISAKMP_GEN
115  DATA			raw
116.
117
118# Nonce payload.
119ISAKMP_NONCE : ISAKMP_GEN
120  DATA			raw
121.
122
123# Notify payload.
124ISAKMP_NOTIFY : ISAKMP_GEN
125  DOI			cst 4		isakmp_doi_cst,ipsec_doi_cst
126  PROTO			cst 1		isakmp_proto_cst
127  SPI_SZ		num 1
128  MSG_TYPE		cst 2		isakmp_notify_cst,ipsec_notify_cst
129  SPI			raw
130.
131
132# Delete payload.
133ISAKMP_DELETE : ISAKMP_GEN
134  DOI			cst 4		isakmp_doi_cst,ipsec_doi_cst
135  PROTO			cst 1		isakmp_proto_cst
136  SPI_SZ		num 1
137  NSPIS			num 2
138  SPI			raw
139.
140
141# Vendor ID payload.
142ISAKMP_VENDOR : ISAKMP_GEN
143  ID			raw
144.
145
146# Attribute payload.
147ISAKMP_ATTRIBUTE : ISAKMP_GEN
148  TYPE			num 1		isakmp_cfg_cst
149  RESERVED		ign 1
150  ID			num 2
151  ATTRS			raw
152.
153