OpenVPN
openvpn-msg.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) 2013-2024 Heiko Hund <heiko.hund@sophos.com>
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, write to the Free Software Foundation, Inc.,
21 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
22 */
23
24#ifndef OPENVPN_MSG_H_
25#define OPENVPN_MSG_H_
26
27#include <windef.h>
28#include <ws2tcpip.h>
29
50
51typedef struct {
53 size_t size;
56
57typedef union {
58 struct in_addr ipv4;
59 struct in6_addr ipv6;
61
62typedef struct {
63 int index;
64 char name[256];
66
67typedef enum {
69 wfp_block_dns = 1<<1
71
79
89
90typedef struct {
93 char domains[512];
94 short family;
96 inet_address_t addr[4]; /* support up to 4 dns addresses */
98
99typedef struct {
103 inet_address_t addr[4]; /* support up to 4 dns addresses */
105
106typedef struct {
111 char scope_id[256];
112 struct in_addr primary_nbns;
113 struct in_addr secondary_nbns;
115
116/* TODO: NTP */
117
123
128
134
139
148
155
156#endif /* ifndef OPENVPN_MSG_H_ */
wfp_block_flags_t
Definition openvpn-msg.h:67
@ wfp_block_local
Definition openvpn-msg.h:68
@ wfp_block_dns
Definition openvpn-msg.h:69
message_type_t
Definition openvpn-msg.h:30
@ msg_del_address
Definition openvpn-msg.h:33
@ msg_add_wins_cfg
Definition openvpn-msg.h:47
@ msg_add_address
Definition openvpn-msg.h:32
@ msg_del_nbt_cfg
Definition openvpn-msg.h:39
@ msg_del_wfp_block
Definition openvpn-msg.h:42
@ msg_enable_dhcp
Definition openvpn-msg.h:44
@ msg_register_ring_buffers
Definition openvpn-msg.h:45
@ msg_add_wfp_block
Definition openvpn-msg.h:41
@ msg_add_route
Definition openvpn-msg.h:34
@ msg_add_nbt_cfg
Definition openvpn-msg.h:38
@ msg_del_wins_cfg
Definition openvpn-msg.h:48
@ msg_acknowledgement
Definition openvpn-msg.h:31
@ msg_add_dns_cfg
Definition openvpn-msg.h:36
@ msg_register_dns
Definition openvpn-msg.h:43
@ msg_del_route
Definition openvpn-msg.h:35
@ msg_set_mtu
Definition openvpn-msg.h:46
@ msg_flush_neighbors
Definition openvpn-msg.h:40
@ msg_del_dns_cfg
Definition openvpn-msg.h:37
message_header_t header
inet_address_t address
Definition openvpn-msg.h:75
message_header_t header
Definition openvpn-msg.h:73
interface_t iface
Definition openvpn-msg.h:77
message_header_t header
Definition openvpn-msg.h:91
interface_t iface
Definition openvpn-msg.h:92
message_header_t header
message_header_t header
message_type_t type
Definition openvpn-msg.h:52
message_header_t header
interface_t iface
message_header_t header
Definition openvpn-msg.h:81
interface_t iface
Definition openvpn-msg.h:86
inet_address_t gateway
Definition openvpn-msg.h:85
inet_address_t prefix
Definition openvpn-msg.h:83
message_header_t header
interface_t iface
wfp_block_flags_t flags
message_header_t header
interface_t iface
message_header_t header