include file compilation fix for OpenBSD relative to inet_aton() IP verification
[fwknop.git] / lib / fko_message.h
1 /*
2  *****************************************************************************
3  *
4  * File:    fko_message.h
5  *
6  * Author:  Michael Rash
7  *
8  * Purpose: Provide validation functions for SPA messages
9  *
10  * Copyright 2012 Michael Rash (mbr@cipherdyne.org)
11  *
12  *  License (GNU Public License):
13  *
14  *  This program is free software; you can redistribute it and/or
15  *  modify it under the terms of the GNU General Public License
16  *  as published by the Free Software Foundation; either version 2
17  *  of the License, or (at your option) any later version.
18  *
19  *  This program is distributed in the hope that it will be useful,
20  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
21  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
22  *  GNU General Public License for more details.
23  *
24  *  You should have received a copy of the GNU General Public License
25  *  along with this program; if not, write to the Free Software
26  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307
27  *  USA
28  *
29  *****************************************************************************
30 */
31
32 #ifndef FKO_MESSAGE_H
33 #define FKO_MESSAGE_H 1
34
35 #if PLATFORM_OPENBSD
36   #include <sys/types.h>
37   #include <netinet/in.h>
38 #else
39   #if HAVE_SYS_SOCKET_H
40     #include <sys/socket.h>
41   #endif
42 #endif
43 #include <arpa/inet.h>
44
45 #define MAX_PROTO_STR_LEN   4  /* tcp, udp, icmp for now */
46 #define MAX_PORT_STR_LEN    5
47
48 /* SPA message format validation functions.
49 */
50 int validate_cmd_msg(const char *msg);
51 int validate_access_msg(const char *msg);
52 int validate_proto_port_spec(const char *msg);
53 int validate_nat_access_msg(const char *msg);
54 int got_allow_ip(const char *msg);
55
56 #endif /* FKO_MESSAGE_H */
57
58 /***EOF***/