xref: /openbsd-src/sbin/isakmpd/ike_phase_1.h (revision ce7279d89b71439c96c854f612f4ac93a461fdc4)
1*ce7279d8Sjsg /* $OpenBSD: ike_phase_1.h,v 1.5 2024/05/21 05:00:47 jsg Exp $	 */
2511b8570Sniklas 
3511b8570Sniklas /*
4511b8570Sniklas  * Copyright (c) 1999 Niklas Hallqvist.  All rights reserved.
5511b8570Sniklas  *
6511b8570Sniklas  * Redistribution and use in source and binary forms, with or without
7511b8570Sniklas  * modification, are permitted provided that the following conditions
8511b8570Sniklas  * are met:
9511b8570Sniklas  * 1. Redistributions of source code must retain the above copyright
10511b8570Sniklas  *    notice, this list of conditions and the following disclaimer.
11511b8570Sniklas  * 2. Redistributions in binary form must reproduce the above copyright
12511b8570Sniklas  *    notice, this list of conditions and the following disclaimer in the
13511b8570Sniklas  *    documentation and/or other materials provided with the distribution.
14511b8570Sniklas  *
15511b8570Sniklas  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
16511b8570Sniklas  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
17511b8570Sniklas  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
18511b8570Sniklas  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
19511b8570Sniklas  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
20511b8570Sniklas  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
21511b8570Sniklas  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
22511b8570Sniklas  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23511b8570Sniklas  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
24511b8570Sniklas  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25511b8570Sniklas  */
26511b8570Sniklas 
27511b8570Sniklas /*
28511b8570Sniklas  * This code was written under funding by Ericsson Radio Systems.
29511b8570Sniklas  */
30511b8570Sniklas 
31511b8570Sniklas #ifndef _IKE_PHASE_1_H_
32511b8570Sniklas #define _IKE_PHASE_1_H_
33511b8570Sniklas 
34511b8570Sniklas struct message;
35511b8570Sniklas 
36511b8570Sniklas extern int      ike_phase_1_initiator_recv_KE_NONCE(struct message *);
37511b8570Sniklas extern int      ike_phase_1_initiator_recv_SA(struct message *);
38511b8570Sniklas extern int      ike_phase_1_initiator_send_KE_NONCE(struct message *);
39511b8570Sniklas extern int      ike_phase_1_initiator_send_SA(struct message *);
40511b8570Sniklas extern int      ike_phase_1_post_exchange_KE_NONCE(struct message *);
41511b8570Sniklas extern int      ike_phase_1_recv_AUTH(struct message *);
42511b8570Sniklas extern int      ike_phase_1_recv_ID(struct message *);
43511b8570Sniklas extern int      ike_phase_1_recv_ID_AUTH(struct message *);
44511b8570Sniklas extern int      ike_phase_1_recv_KE_NONCE(struct message *);
45511b8570Sniklas extern int      ike_phase_1_responder_recv_SA(struct message *);
46511b8570Sniklas extern int      ike_phase_1_responder_send_SA(struct message *);
47511b8570Sniklas extern int      ike_phase_1_responder_send_ID_AUTH(struct message *);
48511b8570Sniklas extern int      ike_phase_1_send_AUTH(struct message *);
49511b8570Sniklas extern int      ike_phase_1_send_ID(struct message *);
50511b8570Sniklas extern int      ike_phase_1_send_KE_NONCE(struct message *, size_t);
51511b8570Sniklas 
52511b8570Sniklas #endif				/* _IKE_PHASE_1_H_ */
53