From: Dimitri Papadopoulos <3350651-DimitriPapadopoulos@users.noreply.gitlab.com> Date: Sat, 25 Dec 2021 21:28:54 +0000 (+0100) Subject: Print detailed error information when opening cmd pipe/socketpair fails X-Git-Tag: v8.20~13 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=cd06be2e5f5569d20138ce75a873ef59a1ceb74e;p=users%2Fdwmw2%2Fopenconnect.git Print detailed error information when opening cmd pipe/socketpair fails Retrieve and print detailed information using GetLastError() and strerror(). This should be more useful to end-users than the current message (simply “Error opening cmd pipe”) and might have helped us to solve https://gitlab.com/openconnect/openconnect/-/issues/228 more quickly. Signed-off-by: Dimitri Papadopoulos <3350651-DimitriPapadopoulos@users.noreply.gitlab.com> Signed-off-by: Daniel Lenski --- diff --git a/main.c b/main.c index 26843adb..659e9139 100644 --- a/main.c +++ b/main.c @@ -2186,7 +2186,15 @@ int main(int argc, char **argv) sig_vpninfo = vpninfo; sig_cmd_fd = openconnect_setup_cmd_pipe(vpninfo); if (sig_cmd_fd < 0) { - fprintf(stderr, _("Error opening cmd pipe\n")); +#ifdef _WIN32 + char *errstr = openconnect__win32_strerror(GetLastError()); +#else + const char *errstr = strerror(errno); +#endif /* _WIN32 */ + fprintf(stderr, _("Error opening cmd pipe: %s\n"), errstr); +#ifdef _WIN32 + free(errstr); +#endif /* _WIN32 */ exit(1); } vpninfo->cmd_fd_internal = 1;