From: Arne Schwabe Date: Tue, 14 Feb 2023 13:43:23 +0000 (+0100) Subject: Use proper print format/casting when converting msg_channel handle X-Git-Tag: v2.7_alpha1~537 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=9c52e0c610ef1229561c2d038ca41fe2cbefe8da;p=thirdparty%2Fopenvpn.git Use proper print format/casting when converting msg_channel handle The current casting triggers a warning on 32bit: init.c:1842:66: error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast] Use the proper printf format specifier for printing a pointer avoiding the cast alltogether. In options.c use a cast to intptr_t before converting to a handle to avoid having to ifdef atoll/atol for 32/64 bit. Signed-off-by: Arne Schwabe Acked-by: Lev Stipakov Message-Id: <20230214134323.1033590-1-arne@rfc2549.org> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg26255.html Signed-off-by: Gert Doering --- diff --git a/src/openvpn/init.c b/src/openvpn/init.c index 622239f6b..32211f11e 100644 --- a/src/openvpn/init.c +++ b/src/openvpn/init.c @@ -1850,7 +1850,8 @@ do_open_tun(struct context *c, int *error_flags) #ifdef _WIN32 /* store (hide) interactive service handle in tuntap_options */ c->c1.tuntap->options.msg_channel = c->options.msg_channel; - msg(D_ROUTE, "interactive service msg_channel=%" PRIu64, (unsigned long long) c->options.msg_channel); + msg(D_ROUTE, "interactive service msg_channel=%" PRIuPTR, + (intptr_t) c->options.msg_channel); #endif /* allocate route list structure */ diff --git a/src/openvpn/options.c b/src/openvpn/options.c index 9105449c7..2e41eea4e 100644 --- a/src/openvpn/options.c +++ b/src/openvpn/options.c @@ -7876,7 +7876,7 @@ add_option(struct options *options, #ifdef _WIN32 VERIFY_PERMISSION(OPT_P_GENERAL); HANDLE process = GetCurrentProcess(); - HANDLE handle = (HANDLE) atoll(p[1]); + HANDLE handle = (HANDLE) ((intptr_t) atoll(p[1])); if (!DuplicateHandle(process, handle, process, &options->msg_channel, 0, FALSE, DUPLICATE_CLOSE_SOURCE | DUPLICATE_SAME_ACCESS)) {