~ubuntu-branches/ubuntu/saucy/openvpn/saucy

1.1.1 by Alberto Gonzalez Iniesta
Import upstream version 1.99+2.rc6
1
/*
2
 *  OpenVPN -- An application to securely tunnel IP networks
3
 *             over a single TCP/UDP port, with support for SSL/TLS-based
4
 *             session authentication and key exchange,
5
 *             packet encryption, packet authentication, and
6
 *             packet compression.
7
 *
1.3.1 by Alberto Gonzalez Iniesta
Import upstream version 2.1~rc19
8
 *  Copyright (C) 2002-2009 OpenVPN Technologies, Inc. <sales@openvpn.net>
1.1.1 by Alberto Gonzalez Iniesta
Import upstream version 1.99+2.rc6
9
 *
10
 *  This program is free software; you can redistribute it and/or modify
1.1.2 by Alberto Gonzalez Iniesta
Import upstream version 2.0.2
11
 *  it under the terms of the GNU General Public License version 2
12
 *  as published by the Free Software Foundation.
1.1.1 by Alberto Gonzalez Iniesta
Import upstream version 1.99+2.rc6
13
 *
14
 *  This program is distributed in the hope that it will be useful,
15
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
16
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17
 *  GNU General Public License for more details.
18
 *
19
 *  You should have received a copy of the GNU General Public License
20
 *  along with this program (see the file COPYING included with this
21
 *  distribution); if not, write to the Free Software Foundation, Inc.,
22
 *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
23
 */
24
25
#ifndef PUSH_H
26
#define PUSH_H
27
28
#if P2MP
29
30
#include "forward.h"
31
32
#define PUSH_MSG_ERROR            0
33
#define PUSH_MSG_REQUEST          1
34
#define PUSH_MSG_REPLY            2
35
#define PUSH_MSG_REQUEST_DEFERRED 3
36
#define PUSH_MSG_AUTH_FAILURE     4
1.2.4 by Alberto Gonzalez Iniesta
Import upstream version 2.1~rc20
37
#define PUSH_MSG_CONTINUATION     5
1.1.1 by Alberto Gonzalez Iniesta
Import upstream version 1.99+2.rc6
38
39
void incoming_push_message (struct context *c,
40
			    const struct buffer *buffer);
41
42
int process_incoming_push_msg (struct context *c,
43
			       const struct buffer *buffer,
44
			       bool honor_received_options,
45
			       unsigned int permission_mask,
1.1.2 by Alberto Gonzalez Iniesta
Import upstream version 2.0.2
46
			       unsigned int *option_types_found);
1.1.1 by Alberto Gonzalez Iniesta
Import upstream version 1.99+2.rc6
47
48
bool send_push_request (struct context *c);
49
50
void receive_auth_failed (struct context *c, const struct buffer *buffer);
51
1.2.4 by Alberto Gonzalez Iniesta
Import upstream version 2.1~rc20
52
void server_pushed_restart (struct context *c, const struct buffer *buffer);
53
1.1.1 by Alberto Gonzalez Iniesta
Import upstream version 1.99+2.rc6
54
#if P2MP_SERVER
55
1.2.4 by Alberto Gonzalez Iniesta
Import upstream version 2.1~rc20
56
void clone_push_list (struct options *o);
57
1.1.1 by Alberto Gonzalez Iniesta
Import upstream version 1.99+2.rc6
58
void push_option (struct options *o, const char *opt, int msglevel);
1.1.7 by Alberto Gonzalez Iniesta
Import upstream version 2.1~rc4
59
void push_options (struct options *o, char **p, int msglevel, struct gc_arena *gc);
1.1.1 by Alberto Gonzalez Iniesta
Import upstream version 1.99+2.rc6
60
61
void push_reset (struct options *o);
62
63
bool send_push_reply (struct context *c);
64
65
void remove_iroutes_from_push_route_list (struct options *o);
66
1.2.4 by Alberto Gonzalez Iniesta
Import upstream version 2.1~rc20
67
void send_auth_failed (struct context *c, const char *client_reason);
68
69
void send_restart (struct context *c);
1.1.1 by Alberto Gonzalez Iniesta
Import upstream version 1.99+2.rc6
70
71
#endif
72
#endif
73
#endif