| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
|
|
|
|
|
| |
* m4/gpg-error.m4: Update from libgpg-error 1.33.
* src/libassuan.m4: Don't require AM_PATH_GPG_ERROR. Only when
gpgrt-config is available and works well, use it.
* configure.ac (AM_PATH_GPG_ERROR): No requirement any more.
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
|
|
|
|
|
| |
* configure.ac (LIBASSUAN_CONFIG_LIBS): Rename from *_LIB.
(LIBASSUAN_CONFIG_EXTRA_LIBS): Remove.
* src/libassuan-config.in: Follow the change.
* src/libassuan.pc.in: Likewise.
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
|
|
| |
* src/libassuan.pc.in: Fix typo.
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
| |
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
|
|
| |
* src/libassuan-config.in: Support --variable and --modversion.
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
|
|
|
|
|
|
| |
* src/libassuan.m4: Use gpg-error-config.
--
The option --with-libassuan-prefix let it use libassuan-config.
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
| |
* configure.ac (PACKAGE, VERSION): Remove.
Generate src/libassuan.pc.
* src/Makefile.am (pkgconfigdir, pkgconfig_DATA): New.
(assuan.h): Use PACKAGE_VERSION and VERSION_NUMBER vars.
* src/libassuan-config.in: Use @PACKAGE_VERSION@.
* src/libassuan.pc.in: New.
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
|
|
|
|
| |
* src/assuan-defs.h [HAVE_W64_SYSTEM] (SOCKET2HANDLE): Care for size
of integer.
* src/stpcpy.c: No K&R anymore.
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
| |
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* configure.ac (HAVE_UCRED_H, HAVE_SYS_UCRED_H): Check these headers
unconditionally.
(HAVE_SO_PEERCRED, HAVE_LOCAL_PEEREID): Remove.
(HAVE_STRUCT_SOCKPEERCRED_PID): New.
(HAVE_GETPEEREID): New.
* src/assuan-socket-server.c (accept_connection_bottom): Add
support for OpenBSD, macOS, and FreeBSD.
--
Code in gpg-agent/command-ssh.c are integrated.
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
|
|
|
|
|
| |
* src/assuan.h.in (ASSUAN_SYSTEM_NPTH_IMPL): A void fucntion can't
assign.
--
Fixes-commit: a627350eed5dc32bac41195462f27dee1987b0f5
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
| |
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
| |
* src/assuan-socket.c (assuan_sock_set_system_hooks): New.
* src/assuan.h.in (assuan_sock_set_system_hooks): New prototype.
* src/libassuan.def: Add new function.
* src/libassuan.vers: Add new function.
--
Co-authored-by: [email protected]
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* src/assuan.h.in (_assuan_npth_usleep): Wrap __assuan_usleep.
--
Assuan should support system hooks for nPth before npth_init.
Before the call of npth_init, npth_unprotect and npth_protect do
nothing, whiile npth_usleep may crash.
No use of npth_usleep is better.
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
| |
* src/assuan.h.in (_assuan_npth_close): New.
(_assuan_system_npth): Use _assuan_npth_close.
--
In some situation, closesocket on Windows may block.
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
|
|
|
| |
* src/assuan.c (assuan_check_version): Handle version "\001\001"
* tests/version.c (main): Print extended version info.
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
| |
--
|
|
|
|
|
|
|
|
|
| |
* src/system-posix.c (__assuan_usleep): Its ysec and usecs
--
Copy+Paste without even compiling was pretty dumb.
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
| |
* src/system-posix.c (__assuan_usleep): Handle full seconds.
--
This function would have failed for any value >= 1000000 because the
nsec field is limited to 999999999 and the function fails for larger
values.
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* src/assuan-socket.c (INADDR_LOOPBACK): Define.
--
INADDR_LOOPBACK is not defined in some systems. When defined, its
byte-order is not clearly defined in any specifications. So, best
portable way is not to use the macro INADDR_LOOPBACK at all but use
0x7f000001 directly.
Nevertheless, for systems which use libassuan, it's host byte-order.
So, adding the definition works.
GnuPG-bug-id: 2447
Suggested-by: Peter Dyballa
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
|
|
|
|
| |
* src/assuan-logging.c (_assuan_log_control_channel): Use gpgrt_free.
* src/debug.c (_assuan_debug, _assuan_debug_add, _assuan_debug_end):
Likewise.
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
|
|
|
|
|
|
| |
* src/assuan-socket.c(socks5_connect): Return EPROTONOSUPPORT rather
than EPROTO.
--
OpenBSD, and maybe other systems, doesn't define EPROTO.
Signed-off-by: Ben Kibbey <[email protected]>
|
|
|
|
|
|
|
|
|
| |
* src/assuan-socket-connect.c (assuan_socket_connect): Use
set_socketaddr function.
--
GnuPG-bug-id: 2253
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
| |
* src/system-posix.c [__linux__]: Include dirent.h.
(get_max_fds) [__linux__]: Return the actual used highest fd.
--
This is the same code as introduced with the
GnuPG commit 512c56af43027149e8beacf259746b8d7bf9b1a2
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
| |
* src/assuan-pipe-connect.c (socketpair_connect): Always free
CHILD_FDS.
* src/assuan-uds.c (uds_sendfd): Clear CONTROL_U to silence Valgrind.
* tests/fdpassing.c (main): Free FNAME.
* src/assuan-handler.c (dispatch_command): Remove dead assignment.
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* configure.ac (AC_CHECK_FUNCS): Add getrlimit.
* src/assuan-pipe-connect.c (MAX_OPEN_FDS): Remove non-used macro.
* src/system.c (MAX_OPEN_FDS): Remove non-used macro.
* src/system-posix.c: Include stdint.h, sys/time.h, sys/resource.h.
(MAX_OPEN_FDS): Remove non-used macro.
(get_max_fds): New. Taken from gnupg/common/exechelp-posix.c.
(__assuan_spawn): Use it here.
--
This is related to
GnuPG-bug-id: 2071
Changing of get_max_fds from LPGLv3+ to LGPLv2+ approved by me as sole
author or that code.
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
| |
--
Signed-off-by: Justus Winter <[email protected]>
|
|
|
|
|
|
|
|
|
|
| |
* src/assuan-socket.c (socks5_connect): Add special treatment for
empty hostnames.
(_assuan_sock_connect_byname): Add feature to test for proxy
availibility.
* tests/socks5.c (main): Add option --have-proxy.
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
| |
* src/assuan.h.in (ASSUAN_SYSTEM_NPTH_IMPL): Add wrapper for connect.
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
| |
* src/assuan-socket.c (do_readn): Use ssize_t for N.
|
|
|
|
|
|
|
|
| |
* src/assuan-socket.c (TOR_PORT2): New.
(_assuan_sock_wsa2errno): Map WSAECONNREFUSED.
(socks5_connect): Fall back to TOR_PORT2.
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
| |
* src/assuan-socket.c: Add errno values not defined by mingw-w64 2.0
|
|
|
|
|
|
|
|
|
| |
* src/assuan-socket.c (socks5_connect): Use assuan_fd_t instead of
int.
(_assuan_sock_connect): Ditto.
(_assuan_sock_connect_byname): Ditto.
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* configure.ac: Require libgpg-error 1.17.
(vasprintf): Remove ac_replace.
* src/assuan-defs.h [!HAVE_VASPRINTF]: Remove replace wrapper.
* src/assuan-logging.c (_assuan_log_control_channel):
(_assuan_log_control_channel): s/asprintf/gpgrt_asprintf/.
* src/debug.c (_assuan_debug): s/vasprintf/gpgrt_vasprintf/.
(_assuan_debug_begin): Ditto.
(_assuan_debug_add): Ditto. s/asprintf/gpgrt_asprintf/.
--
We plan to move more code into libgpg-error/gpgrt anyway thus this is
a good start which also fixes this bug:
GnuPG-bug-id: 1477
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* src/assuan.h.in (ASSUAN_SOCK_SOCKS): New.
(ASSUAN_SOCK_TOR): New.
(assuan_sock_connect_byname): New.
* src/libassuan.def, src/libassuan.vers: Add that function.
* src/assuan-socket.c (socks5_connect): Add args socksport,
credentials, hostname, and hostport. Implement user/password
authentication and domainname address type. Change callers
accordingly.
(_assuan_sock_connect_byname): New.
(assuan_sock_connect_byname): New.
* tests/socks5.c (main): Add options --byname, --user, and --pass.
--
The assuan_sock_connect_byname may eventually be extended to work
without Tor or SOCKS by using getaddrinfo. Or we move that all to
libgpgrt (aka libgpg-error).
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* src/assuan-socket.c: Include netinet/in.h and arpa/inet.h.
(SOCKS_PORT, TOR_PORT): New constants.
(tor_mode): New variable.
(_assuan_sock_set_flag): Add flags "tor-mode" and "socks".
(_assuan_sock_get_flag): Ditto.
(do_readn, do_writen): Always build.
(socks5_connect): New.
(use_socks): New.
(_assuan_sock_connect): Divert to socks5_connect if requested.
* tests/socks5.c: New.
* configure.ac (AH_TOP): Define GPGRT_ENABLE_ES_MACROS.
(AC_CHECK_FUNC): Check for getaddrinfo.
* tests/Makefile.am (testtools): New. Add socks5.
(AM_LDFLAGS): Add -no-install for easier debugging.
--
A future extension might be a new assuan_sock_direct_connect call
takes the hostname as a string and returns a new socket. This allows
the proxy to do the resolving. However, in the long term these socket
wrapper should be moved to libgpgrt (aka libgpg-error).
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
| |
* configure.ac: Set LT version to C6/A6/R0.
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* src/assuan-socket.c (cygwin_fdtable, cygwin_fdtable_cs): New.
(is_cygwin_fd, insert_cygwin_fd, delete_cygwin_fd): New.
(assuan_sock_init) [W32]: Init the CS.
(assuan_sock_deinit) [W32]: Deinit the CS.
(read_port_and_nonce): Add arg cygwin and detect Cygwin socket files.
(_assuan_sock_set_flag): Add "cygwin" flag.
(_assuan_sock_get_flag): Ditto.
(do_readn, do_writen): New.
(_assuan_sock_bind): Create a Cygwin socket file depending on a socket
flag.
(_assuan_sock_connect): Handle the cygwin socket protocol.
(_assuan_sock_check_nonce): Ditto.
--
This code has not been tested.
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
| |
* src/assuan-inquire.c (assuan_inquire): Clear return args on error.
Read up remaining lines after MAXLEN has been hit.
--
If we would stop immediately at MAXLEN, as we did, the client would
continue to send data which the server may consider as new Assuan
commands.
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
| |
* src/assuan-defs.h (wipememory2, wipememory): New. Taken from GnuPG.
* src/assuan.c (assuan_release): Wipe the context.
--
The assuan context has buffers which may carry senitive information.
These buffers could be wiped out with each flush but that is too
expensive. Thus we only wipe them when freeing the context.
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* src/assuan-socket.c (_assuan_sock_set_flag): New.
(assuan_sock_set_flag): New.
(_assuan_sock_get_flag, assuan_sock_get_flag): New.
* src/assuan.h.in (assuan_sock_set_flag): New.
(assuan_sock_get_flag): New.
* src/libassuan.def: Add them.
* src/libassuan.vers: Add them.
--
These new functions are intended for a Cygwin socket emulation. This
commit merely introduces a generic framework.
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
|
| |
* src/assuan-defs.h (_assuan_error): Use error source Assuan if no CTX
is given.
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
| |
* src/assuan-buffer.c (assuan_sendfd): Check that CTX is not NULL.
(assuan_receivefd): Ditto.
--
This change is to align the behaviour with that of assuan_send_data.
Suggested-by: Andre Heinecke.
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* src/Makefile.am (extra_ltoptions): New.
(libassuan_la_LDFLAGS): Use it.
--
Since gcc 4.8 there is a regression in that plain C programs may link
to libgcc_s.a which has a dependency on libgcc_s_sjlj.dll. This is
for example triggered by using long long arithmetic on a 32 bit
Windows (e.g symbol __udivdi3).
This patch does not change anything right now but we add it anyway
in case long long will ever be used.
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
| |
* configure.ac (AM_INIT_AUTOMAKE): Add serial-tests.
* src/Makefile.am (INCLUDES): Rename to AM_CPPFLAGS and remove the
nonexistent ../include/.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* src/assuan-socket-connect.c (assuan_socket_connect_fd): Map fd to
assuan_fd_t.
--
This function is actually not used by GnuPG. The function should have
taken an assuan_fd but given that it did not we use our usual mapping
from Windows libc fds to an assuan fd.
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
|
|
|
|
| |
* src/debug.h: Remove traling ", 0" expression part where not useful.
--
gcc 4.9 detected this. Probably taken from gpgme but used
differently.
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
| |
* src/w32-sock-nonce.inc.h (EADDRINUSE): Avoid redefining.
* src/assuan-socket.c (_assuan_sock_bind): Set error to EADDRINUSE.
--
With the latest mingw-w64 EADDRINUSE is defined but to a different
value than WSAEADDRINUSE. We need to use EADDRINUSE becuase that is
what applications expect.
Signed-off-by: Werner Koch <[email protected]>
|
|
|
|
| |
--
|