b6501014f85ad0343867b74b594aae7a4e52eb5c
[fwknop.git] / server / access.h
1 /*
2  ******************************************************************************
3  *
4  * File:    access.h
5  *
6  * Author:  Damien Stuart
7  *
8  * Purpose: Header file for fwknopd access.c.
9  *
10  * Copyright 2010 Damien Stuart (dstuart@dstuart.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 #ifndef ACCESS_H
32 #define ACCESS_H
33
34 #define PROTO_TCP   6
35 #define PROTO_UDP   17
36
37 /* Function Prototypes
38 */
39 void parse_access_file(fko_srv_options_t *opts);
40 int compare_addr_list(acc_int_list_t *source_list, const uint32_t ip);
41 int acc_check_port_access(acc_stanza_t *acc, char *port_str);
42 int acc_check_gpg_remote_id(acc_stanza_t *acc, const char *gpg_id);
43 void dump_access_list(const fko_srv_options_t *opts);
44 void expand_acc_port_list(acc_port_list_t **plist, char *plist_str);
45 void free_acc_stanzas(fko_srv_options_t *opts);
46 void free_acc_port_list(acc_port_list_t *plist);
47
48 #endif /* ACCESS_H */
49
50 /***EOF***/