OpenVPN
src
openvpn
mtcp.h
Go to the documentation of this file.
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
*
8
* Copyright (C) 2002-2025 OpenVPN Inc <sales@openvpn.net>
9
*
10
* This program is free software; you can redistribute it and/or modify
11
* it under the terms of the GNU General Public License version 2
12
* as published by the Free Software Foundation.
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 along
20
* with this program; if not, see <https://www.gnu.org/licenses/>.
21
*/
22
23
/*
24
* TCP specific code for --mode server
25
*/
26
27
#ifndef MTCP_H
28
#define MTCP_H
29
30
#include "
event.h
"
31
32
struct
multi_context
;
33
struct
multi_instance
;
34
struct
context
;
35
36
void
multi_tcp_dereference_instance
(
struct
multi_io
*
multi_io
,
struct
multi_instance
*mi);
37
38
bool
multi_tcp_instance_specific_init
(
struct
multi_context
*m,
struct
multi_instance
*mi);
39
40
void
multi_tcp_instance_specific_free
(
struct
multi_instance
*mi);
41
42
bool
multi_tcp_process_outgoing_link
(
struct
multi_context
*m,
bool
defer,
43
const
unsigned
int
mpp_flags);
44
45
bool
multi_tcp_process_outgoing_link_ready
(
struct
multi_context
*m,
struct
multi_instance
*mi,
46
const
unsigned
int
mpp_flags);
47
48
struct
multi_instance
*
multi_create_instance_tcp
(
struct
multi_context
*m,
struct
link_socket
*sock);
49
50
void
multi_tcp_link_out_deferred
(
struct
multi_context
*m,
struct
multi_instance
*mi);
51
52
void
multi_tcp_delete_event
(
struct
multi_io
*
multi_io
,
event_t
event);
53
54
#endif
/* ifndef MTCP_H */
event.h
multi_tcp_link_out_deferred
void multi_tcp_link_out_deferred(struct multi_context *m, struct multi_instance *mi)
multi_tcp_instance_specific_free
void multi_tcp_instance_specific_free(struct multi_instance *mi)
Definition
mtcp.c:124
multi_create_instance_tcp
struct multi_instance * multi_create_instance_tcp(struct multi_context *m, struct link_socket *sock)
Definition
mtcp.c:49
multi_tcp_delete_event
void multi_tcp_delete_event(struct multi_io *multi_io, event_t event)
Definition
mtcp.c:130
multi_tcp_instance_specific_init
bool multi_tcp_instance_specific_init(struct multi_context *m, struct multi_instance *mi)
Definition
mtcp.c:102
multi_tcp_process_outgoing_link
bool multi_tcp_process_outgoing_link(struct multi_context *m, bool defer, const unsigned int mpp_flags)
Definition
mtcp.c:176
multi_tcp_process_outgoing_link_ready
bool multi_tcp_process_outgoing_link_ready(struct multi_context *m, struct multi_instance *mi, const unsigned int mpp_flags)
Definition
mtcp.c:151
multi_tcp_dereference_instance
void multi_tcp_dereference_instance(struct multi_io *multi_io, struct multi_instance *mi)
Definition
mtcp.c:139
context
Contains all state information for one tunnel.
Definition
openvpn.h:474
link_socket
Definition
socket.h:148
multi_context
Main OpenVPN server state structure.
Definition
multi.h:164
multi_instance
Server-mode state structure for one single VPN tunnel.
Definition
multi.h:103
multi_io
Definition
multi_io.h:52
rw_handle
Definition
win32.h:80
Generated by
1.9.8