We only check for < 0 so no reason not to allow bigger
signed values. This makes it easier to feed result
values of read/write to it. Fixes a conversion warning
in process_outgoing_tun.
Also changes register_activity to int64_t for similar
reasons.
Change-Id: I750a46246c0d2447a6691e5c25c4732e3d335a63
Signed-off-by: Frank Lichtenheld <frank@lichtenheld.com>
Acked-by: Gert Doering <gert@greenie.muc.de>
Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1357
Message-Id: <
20251126114047.10280-1-gert@greenie.muc.de>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg34701.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
* from the OS.
*/
void
-x_check_status(int status, const char *description, struct link_socket *sock, struct tuntap *tt)
+x_check_status(ssize_t status, const char *description, struct link_socket *sock, struct tuntap *tt)
{
const char *extended_msg = NULL;
bool crt_error = false;
int my_errno = openvpn_errno_maybe_crt(&crt_error);
- msg(x_cs_verbose_level, "%s %s returned %d",
+ msg(x_cs_verbose_level, "%s %s returned %zd",
sock ? proto2ascii(sock->info.proto, sock->info.af, true) : "", description, status);
if (status < 0)
void set_check_status(unsigned int info_level, unsigned int verbose_level);
-void x_check_status(int status, const char *description, struct link_socket *sock,
+void x_check_status(ssize_t status, const char *description, struct link_socket *sock,
struct tuntap *tt);
static inline void
-check_status(int status, const char *description, struct link_socket *sock, struct tuntap *tt)
+check_status(ssize_t status, const char *description, struct link_socket *sock, struct tuntap *tt)
{
if (status < 0 || check_debug_level(x_cs_verbose_level))
{
#undef MAX_ICMPV6LEN
}
+#if defined(__GNUC__) || defined(__clang__)
+#pragma GCC diagnostic pop
+#endif
+
void
process_ip_header(struct context *c, unsigned int flags, struct buffer *buf,
struct link_socket *sock)
/*
* Write to TUN/TAP device.
*/
- int size;
+ ssize_t size;
#ifdef LOG_RW
if (c->c2.log_rw)
if (size != BLEN(&c->c2.to_tun))
{
msg(D_LINK_ERRORS,
- "TUN/TAP packet was destructively fragmented on write to %s (tried=%d,actual=%d)",
+ "TUN/TAP packet was destructively fragmented on write to %s (tried=%d,actual=%zd)",
c->c1.tuntap->actual_name, BLEN(&c->c2.to_tun), size);
}
buf_reset(&c->c2.to_tun);
}
-#if defined(__GNUC__) || defined(__clang__)
-#pragma GCC diagnostic pop
-#endif
-
void
pre_select(struct context *c)
{
}
static inline void
-register_activity(struct context *c, const int size)
+register_activity(struct context *c, const int64_t size)
{
if (c->options.inactivity_timeout)
{