diff options
author | Arne Schwabe | 2021-04-01 15:13:32 +0200 |
---|---|---|
committer | Gert Doering | 2021-04-01 15:57:40 +0200 |
commit | 72e1ecb5b5d282c591cc32bbd378efbebfb03918 (patch) | |
tree | 9e77312215d3f4aff41a930a63647817ff0a877a /src | |
parent | 9eb285f42f73bcfb270adbae527947951615df7d (diff) | |
download | openvpn-72e1ecb5b5d282c591cc32bbd378efbebfb03918.zip openvpn-72e1ecb5b5d282c591cc32bbd378efbebfb03918.tar.gz |
Move is_proto function to the socket.h header
These functions are small enough to be inlined and also avoids
dependency on socket.c from unit_tests using those functions.
Signed-off-by: Arne Schwabe <arne@rfc2549.org>
Acked-by: Gert Doering <gert@greenie.muc.de>
Message-Id: <20210401131337.3684-10-arne@rfc2549.org>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg21950.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
Diffstat (limited to 'src')
-rw-r--r-- | src/openvpn/socket.c | 36 | ||||
-rw-r--r-- | src/openvpn/socket.h | 50 |
2 files changed, 38 insertions, 48 deletions
diff --git a/src/openvpn/socket.c b/src/openvpn/socket.c index 0d9b793..6fed4b6 100644 --- a/src/openvpn/socket.c +++ b/src/openvpn/socket.c @@ -3101,42 +3101,6 @@ static const struct proto_names proto_names[] = { {"tcp6", "TCPv6", AF_INET6, PROTO_TCP}, }; -bool -proto_is_net(int proto) -{ - if (proto < 0 || proto >= PROTO_N) - { - ASSERT(0); - } - return proto != PROTO_NONE; -} - -bool -proto_is_dgram(int proto) -{ - return proto_is_udp(proto); -} - -bool -proto_is_udp(int proto) -{ - if (proto < 0 || proto >= PROTO_N) - { - ASSERT(0); - } - return proto == PROTO_UDP; -} - -bool -proto_is_tcp(int proto) -{ - if (proto < 0 || proto >= PROTO_N) - { - ASSERT(0); - } - return proto == PROTO_TCP_CLIENT || proto == PROTO_TCP_SERVER; -} - int ascii2proto(const char *proto_name) { diff --git a/src/openvpn/socket.h b/src/openvpn/socket.h index 4099f6e..d58fda4 100644 --- a/src/openvpn/socket.h +++ b/src/openvpn/socket.h @@ -474,18 +474,6 @@ socket_descriptor_t socket_do_accept(socket_descriptor_t sd, struct link_socket_actual *act, const bool nowait); -/* - * proto related - */ -bool proto_is_net(int proto); - -bool proto_is_dgram(int proto); - -bool proto_is_udp(int proto); - -bool proto_is_tcp(int proto); - - #if UNIX_SOCK_SUPPORT socket_descriptor_t create_socket_unix(void); @@ -572,6 +560,44 @@ enum proto_num { PROTO_N }; +static inline bool +proto_is_net(int proto) +{ + ASSERT(proto >= 0 && proto < PROTO_N); + return proto != PROTO_NONE; +} + +/** + * @brief Returns if the protocol being used is UDP + */ +static inline bool +proto_is_udp(int proto) +{ + ASSERT(proto >= 0 && proto < PROTO_N); + return proto == PROTO_UDP; +} + +/** + * @brief Return if the protocol is datagram (UDP) + * + */ +static inline bool +proto_is_dgram(int proto) +{ + return proto_is_udp(proto); +} + +/** + * @brief returns if the proto is a TCP variant (tcp-server, tcp-client or tcp) + */ +static inline bool +proto_is_tcp(int proto) +{ + ASSERT(proto >= 0 && proto < PROTO_N); + return proto == PROTO_TCP_CLIENT || proto == PROTO_TCP_SERVER; +} + + int ascii2proto(const char *proto_name); sa_family_t ascii2af(const char *proto_name); |