aboutsummaryrefslogtreecommitdiffstats
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* logging: Fix the previous commit.NIIBE Yutaka2022-04-071-1/+1
| | | | | | * src/logging.c (set_file_fd): Open with append mode. Signed-off-by: NIIBE Yutaka <[email protected]>
* logging: Fix gpgrt_log_get_fd for file.NIIBE Yutaka2022-04-071-68/+21
| | | | | | | | | | | | | | * src/logging.c (fun_writer): Only use this for socket writing. (set_file_fd): Use es_stderr when "-". Use the stream by _gpgrt_fdopen when FD is specified. Use the stream by _gpgrt_fopen when name is not socket. Only use the stream by _gpgrt_fopencookie for socket. [HAVE_W32CE_SYSTEM]: Remove W32CE support. -- GnuPG-bug-id: 5922 Signed-off-by: NIIBE Yutaka <[email protected]>
* w32: Add ES_SYSHD_SOCK support for gpgrt_sysopen.NIIBE Yutaka2022-04-044-2/+264
| | | | | | | | | | | | | | | | * src/mkheader.c (write_special): Support @SOCKET_t@ substitution. * src/gpgrt-int.h (gpgrt_stream_backend_kind_t): Add BACKEND_SOCK. * src/gpg-error.h.in (struct _gpgrt_syshd): Use @SOCKET_t@. * src/estream.c [HAVE_W32_SYSTEM] (estream_cookie_sock_t): New. [HAVE_W32_SYSTEM] (func_sock_create, func_sock_read): New. [HAVE_W32_SYSTEM] (func_sock_write, func_sock_seek): New. [HAVE_W32_SYSTEM] (func_sock_destroy, func_sock_ioctl): New. [HAVE_W32_SYSTEM] (estream_functions_sock, do_sockopen): New. [HAVE_W32_SYSTEM] (do_sysopen): Call do_sockopen. -- Signed-off-by: NIIBE Yutaka <[email protected]>
* w32: Fix handle_to_pid for MinGW-w64.NIIBE Yutaka2022-03-291-7/+10
| | | | | | | | | * src/spawn-w32.c (handle_to_pid): Use pid_t to coerce the type. -- GnuPG-bug-id: 4656 Signed-off-by: NIIBE Yutaka <[email protected]>
* core: Fix support of posix-lock for FreeBSD.NIIBE Yutaka2022-03-281-1/+35
| | | | | | | | | | | | | | | * src/posix-lock.c [__FreeBSD__] (use_pthread_p): Use pthread_key_create to determine if it's linked to lpthread or not. -- This is from glthread_in_use in gnulib/lib/glthread/threadlib.c. On FreeBSD, pthread_key_create in there in libc (stub function) as well as -lpthread (real one), while pthread_create is not available in libc. Signed-off-by: NIIBE Yutaka <[email protected]>
* w32: Fix for MinGW which doesn't define EOPNOTSUPP.NIIBE Yutaka2022-03-251-0/+4
| | | | | | | | | | * src/w32-estream.c: Add EOPNOTSUPP. -- GnuPG-bug-id: 5890 Reported-by: Eli Zaretskii Signed-off-by: NIIBE Yutaka <[email protected]>
* w32: Support file names longer than MAX_PATH.Werner Koch2022-03-049-58/+327
| | | | | | | | | | | | | | | | | | | | | | | | * src/sysutils.c (any8bitchar): Remove. (_gpgrt_fname_to_wchar): New. (_gpgrt_mkdir): Use instead of plain utf8 conversion. (_gpgrt_access): Reimplement using GetFileAttributesW so that long files names are supported. * src/estream.c (_gpgrt_w32_get_last_err_code): New. (func_file_create_w32): New. (_gpgrt_fopen): Handle the "sysopen" mode flag. Support mapping of /dev/null. (_gpgrt_freopen): Support mapping of /dev/null. * src/w32-gettext.c (load_domain): Allow long file names. * src/visibility.c (gpgrt_free_wchar): Make function public. (gpgrt_fname_to_wchar): Ditto. (gpgrt_utf8_to_wchar): Ditto. (gpgrt_wchar_to_utf8): Ditto. * src/w32-add.h (gpgrt_free_wchar): New prototype. (gpgrt_fname_to_wchar): Ditto. (gpgrt_utf8_to_wchar): Ditto. (gpgrt_wchar_to_utf8): Ditto. * src/gpg-error.def.in: Add them here too.
* gpg-error.m4: Fix use with older gpgrt-config (< 1.33).NIIBE Yutaka2022-02-171-1/+2
| | | | | | | | | | | * src/gpg-error.m4: When gpgrt-config doesn't work expected for gpg-error.pc, unset GPGRT_CONFIG. -- Found the issue in the libgcrypt build with libgpg-error 1.31. Signed-off-by: NIIBE Yutaka <[email protected]>
* Release 1.44libgpg-error-1.44gpgrt-1.44Werner Koch2022-01-273-3/+4
| | | | * configure.ac: Bump LT version to C32/A32/R2.
* core: Fix returning of option attributes for options with args.Werner Koch2022-01-251-0/+11
| | | | | | * src/argparse.c (_gpgrt_argparse): Set attributes info flags -- GnuPG-bug-id: 5799
* tests: Fix gpg-error-config-test for PKG_CONFIG_LIBDIR.NIIBE Yutaka2021-12-161-0/+4
| | | | | | | | | * src/gpg-error-config-test.sh.in: Clear PKG_CONFIG_LIBDIR. -- GnuPG-bug-id: 5740 Signed-off-by: NIIBE Yutaka <[email protected]>
* build: Fix dependency to gpg-error-config-test.sh.NIIBE Yutaka2021-11-191-1/+1
| | | | | | | | | | * src/Makefile.am (gpg-error-config): It depends on configure generated gpg-error-config-test.sh. -- GnuPG-bug-id: 5696 Signed-off-by: NIIBE Yutaka <[email protected]>
* build: Fix for configure generated files.NIIBE Yutaka2021-11-121-3/+3
| | | | | | | | | | | * src/Makefile.am (bin_SCRIPTS): Add gpgrt-config. (EXTRA_DIST): Add gpgrt-config.in and gpg-error-config-test.sh.in. (CLEANFILES): Add configure generated files. -- Fixes-commit: 7a7caf4ba1c460c9c36f754fcd0ebfeb4aa5cc6a Signed-off-by: NIIBE Yutaka <[email protected]>
* estream: Only include sys/select.h when needed.NIIBE Yutaka2021-11-041-3/+4
| | | | | | | | | * src/estream.c: The select function is only used when poll is not available. So, let it include the header file only when needed. -- Signed-off-by: NIIBE Yutaka <[email protected]>
* Release 1.43libgpg-error-1.43gpgrt-1.43Werner Koch2021-11-032-2/+2
|
* argparse: Add more system variables.Werner Koch2021-11-031-4/+31
| | | | | | | * src/argparse.c (get_var): Fix "_windows", add "_gpgrtversion" and "strusageN". (handle_meta_if): Avoid evaluating inactive branches. * tests/t-argparse.conf: Add a few other outputs.
* argparse: Add support to read values from the Windows Registry.Werner Koch2021-10-311-56/+623
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/argparse.c (struct variable_s): New. (struct _gpgrt_argparse_internal_s): New fields expand, if_cond, if_active and vartbl. (deinitialize): Free vartbl. (initialize): Clear new vars. (get_var): New. (substitute_vars): New. (set_variable): New. (handle_meta_if): New. (handle_meta_let): New. (handle_meta_getenv): New. (handle_meta_echo): Re-implement in terms of variabale substitution. (handle_meta_expand): New. (handle_metacmd): Add new meta commands. (_gpgrt_argparse): Expand values if enabled. (_gpgrt_argparse): Take care of conditions. (_gpgrt_argparser): Reset some state at the end of a file. * tests/etc/t-argparse.conf: Adjust for changed system variables. * tests/t-argparse.c (my_strusage): Add a value for a version test. (main): Add new option "street". * tests/t-argparse.conf: A couple if additions for the new conditions. -- The whole thing is actually only for here for doing this [let tkey HKLM\Foo\Bar\GnuPG:trusted-key-1] [if $tkey] trusted-key $tkey [fi] But we are hackers and tend to make things more complicated^Wflexible. Documentation will be done eventually. Signed-off-by: Werner Koch <[email protected]>
* core: new internal function _gpgrt_w32_reg_get_string.Werner Koch2021-10-222-6/+56
| | | | | | | | | | * src/w32-reg.c (_gpgrt_w32_reg_query_string): Allow abbreviated root names. (_gpgrt_w32_reg_get_string): New. -- This should eventually be made public. Noet that we have a copy in gnupg.
* gpgrt-config: Fix behavior when PKG_CONFIG_LIBDIR="".NIIBE Yutaka2021-09-101-1/+1
| | | | | | | | | * src/gpgrt-config.in: Correctly detect the case. -- GnuPG-bug-id: 5595 Signed-off-by: NIIBE Yutaka <[email protected]>
* posix-lock: Support GNU C library 2.34 or later.NIIBE Yutaka2021-08-061-2/+5
| | | | | | | | | | | * configure.ac: Add check for sys/single_threaded.h. * src/posix-lock.c [USE_POSIX_THREADS_FROM_LIBC]: Use __libc_single_threaded to detect if it's single threaded. -- GnuPG-bug-id: 5547 Signed-off-by: NIIBE Yutaka <[email protected]>
* core: Minor clean up.NIIBE Yutaka2021-08-051-3/+0
| | | | | | * src/stringutils.c: Remove inclusion of pwd.h. Signed-off-by: NIIBE Yutaka <[email protected]>
* build: Fix --disable-threads.NIIBE Yutaka2021-06-211-1/+1
| | | | | | | | | | | * src/gen-lock-obj.sh: Fix generating '}}}'. -- GnuPG-bug-id: 5495 Reported-by: Fabrice Fontaine <[email protected]> Fixes-commit: 1fb90a7da186ee2ee098a666f6f3a35bb1720e59 Signed-off-by: NIIBE Yutaka <[email protected]>
* core: Avoid truncation of error message in the middle of a character.NIIBE Yutaka2021-06-081-0/+25
| | | | | | | | | | * configure.ac (AM_LANGINFO_CODESET): Add. * src/strerror.c (_gpg_strerror_r): Check the boundary of character. -- GnuPG-bug-id: 5048 Signed-off-by: NIIBE Yutaka <[email protected]>
* core: Make gpgrt_free robust against legacy free implementations.Werner Koch2021-05-201-0/+12
| | | | | | * src/init.c (_gpgrt_free): Shortcut NULL and save ERRNO. Signed-off-by: Werner Koch <[email protected]>
* build,tests: Fix leaks of memory or file pointer.Jakub Jelen2021-04-121-0/+1
| | | | | | | | | | | | * src/mkheader.c (parse_config_h): Close FP. * tests/t-b64.c (test_b64enc_string): Free STATE. (test_b64dec_string): Free BUFFER. * tests/t-syserror.c (main): Close FP. -- GnuPG-bug-id: 5381 Signed-off-by: Jakub Jelen <[email protected]>
* core: Fix gpgrt_wait_processes, by skipping invalid PID.NIIBE Yutaka2021-04-081-1/+6
| | | | | | | | | | | | | * src/spawn-posix.c (_gpgrt_wait_processes): Skip invalid PID. -- The API itself is not good to handle multiple processes. Given the API, skipping invalid PID is better for usefulness. GnuPG-bug-id: 5381 Reported-by: Jakub Jelen <[email protected]> Signed-off-by: NIIBE Yutaka <[email protected]>
* build: Fix gpgrt-config for handling 'Requires' field.NIIBE Yutaka2021-04-071-1/+2
| | | | | | | | | | * src/gpgrt-config.in (get_attr_l): Fix thinko for word split. -- GnuPG-bug-id: 5381 Reported-by: Jakub Jelen <[email protected]> Signed-off-by: NIIBE Yutaka <[email protected]>
* m4: Fix previous commit.NIIBE Yutaka2021-03-311-1/+1
| | | | Signed-off-by: NIIBE Yutaka <[email protected]>
* m4: Support cross-compiling better.NIIBE Yutaka2021-03-311-3/+4
| | | | | | | | | | | * src/gpg-error.m4 (GPGRT_CONFIG): Prefer the one under $prefix. (sed expression): Better compatibility to POSIX sed. -- GnuPG-bug-id: 5365 Reported-by: Jay Freeman (saurik) Signed-off-by: NIIBE Yutaka <[email protected]>
* build: Fix generation of lock-obj-pub.native.h for cross build.David Michael2021-03-261-1/+1
| | | | | | | | | * src/gen-lock-obj.sh: Capture echo output with quotes. -- Fixes-commit: 99ae862a96a569724f49a604ebb7d3f6d2c2d374 Signed-off-by: David Michael <[email protected]>
* core: Add GPG_ERR_SOURCE_TPM2D.Werner Koch2021-03-221-2/+2
| | | | * src/err-sources.h.in (GPG_ERR_SOURCE_TPM2D): New.
* w32: Allow Unicode paths for the gettext domain.Werner Koch2021-03-051-45/+12
| | | | | * src/w32-gettext.c: Remove remaining WindowsCE support (load_domain): Use CreateFileW.
* w32: Minor cleanup of w32-gettextWerner Koch2021-03-042-3/+6
| | | | | | | * src/w32-gettext.c: Include gpgrt.h instead gpg-error.h. (utf8_to_wchar): Use underscored function. (_gpg_w32_textdomain): Ditto. --
* build: Support --disable-threads by gen-lock-obj.sh.NIIBE Yutaka2021-02-181-1/+17
| | | | | | | | | | | * configure.ac: Supply --disable-threads to gen-lock-obj.sh. Tighten the condition of using gen-lock-obj.sh for GNU/Linux. * src/gen-lock-obj.sh: Support --disable-threads. -- GnuPG-bug-id: 5296 Signed-off-by: NIIBE Yutaka <[email protected]>
* build: Fix gpgrt-config.NIIBE Yutaka2021-02-161-6/+1
| | | | | | | | | * src/gpgrt-config.in: Remove delimiter variable. -- Fixes-commit: 7b81ec272b0c54ac893c09be4715b76e84c27b23 Signed-off-by: NIIBE Yutaka <[email protected]>
* build: More fix for determining libdir for gpgrt-config.NIIBE Yutaka2021-02-161-11/+33
| | | | | | | | | | * src/gpg-error.m4: Use CC -print-search-dirs for better support of GNU style cross prefix. -- GnuPG-bug-id: 5293 Signed-off-by: NIIBE Yutaka <[email protected]>
* build: Fix the previous change.NIIBE Yutaka2021-02-151-6/+6
| | | | | | | | | * src/gpg-error.m4: Fix test condition for GPGRT_CONFIG. Fix behaviour when there is no GPG_ERROR_CONFIG. -- Signed-off-by: NIIBE Yutaka <[email protected]>
* build: Improve how to determine $libdir for gpgrt-configNIIBE Yutaka2021-02-121-46/+42
| | | | | | | | | * src/gpg-error.m4: Fix $gpgrt_libdir handling. -- GnuPG-bug-id: 5293 Signed-off-by: NIIBE Yutaka <[email protected]>
* Support cross-compiling on more platforms.NIIBE Yutaka2021-02-091-4/+12
| | | | | | | | | * src/gen-lock-obj.sh (ECHO_C, ECHO_N): Portability fix. -- GnuPG-bug-id: 5289 Signed-off-by: NIIBE Yutaka <[email protected]>
* core: Yet another fix to the ignore meta command.Werner Koch2020-12-211-1/+18
| | | | | * src/argparse.c (_gpgrt_argparse): Entirely skip ignored sysconf commands. Fix state transitions in the ignore case.
* Release 1.40libgpg-error-1.40gpgrt-1.40Werner Koch2020-12-211-1/+2
| | | | * configure.ac: Bump LT version to C31/A31/R0.
* w32: Allow Unicode for internal getusername function.Werner Koch2020-12-211-9/+19
| | | | | | | | | | * src/sysutils.c (_gpgrt_getusername) [W32]: Use GetUserNameW. -- This is used by argparse for user specific parts. Tested using the echo meta-command. Signed-off-by: Werner Koch <[email protected]>
* core: Fix the "ignore" meta command of the argparser.Werner Koch2020-12-181-35/+54
| | | | | | | | | | | | | * src/argparse.c (_gpgrt_argparse): Factor some code out to ... (prepare_arg_return): new. (_gpgrt_argparse): No missing arg error in ignore sections. -- Options in an [ignore] section do not anymore lead to an error if an argument is missing. However, if the option is also in a force section the error is thrown. Signed-off-by: Werner Koch <[email protected]>
* m4: Update with newer autoconf constructs.NIIBE Yutaka2020-11-171-3/+3
| | | | | | * src/gpg-error.m4: Replace AC_HELP_STRING to AS_HELP_STRING. Signed-off-by: NIIBE Yutaka <[email protected]>
* New public function gpgrt_access.Werner Koch2020-10-199-3/+69
| | | | | | | | | | | | | | | | | | | | | | * src/gpg-error.h.in (gpgrt_access): New. * src/gpg-error.vers. src/gpg-error.def.in: Add new function. * src/sysutils.c (any8bitchar): New. (_gpgrt_access): New. * src/visibility.c (gpgrt_access): New. * src/spawn-w32.c (_gpgrt_spawn_process_detached): Use it. * src/argparse.c (try_versioned_conffile): Use it. * tests/t-stringutils.c (check_access): New simple test. -- This is basically a wrapper to allow handling of utf8 encoded file names on Windows. This also fixes the case for versioned config files in directories with non-ascii characters. The new test needs to be run manually on Windows using a directory with Unicode characters. GnuPG-bug-id: 5098
* w32: Support utf8 also for getcwd.Werner Koch2020-10-094-22/+74
| | | | | | | | | | | | * src/sysutils.c (_gpgrt_getcwd) [W32]: Implement utf-8 support. * src/w32-gettext.c (wchar_to_native): Factor some code out to .. (wchar_to_cp): new. (_gpgrt_wchar_to_utf8): New. * tests/t-stringutils.c: Include windows.h. (utf8_to_wchar): New. (wchar_to_utf8): New. (mygetcwd): Use wchar version for Windows. (main): New option --pwd.
* doc: Fix typos in commentsWerner Koch2020-10-081-1/+1
| | | | --
* Release 1.39libgpg-error-1.39gpgrt-1.39Werner Koch2020-08-241-1/+1
|
* core,w32: Add UTF-8 support to gpgrt_fopen, gpgrt_mkdir and gpgrt_chdir.Werner Koch2020-08-216-20/+227
| | | | | | | | | | | | | | | | | | | | * src/protos.h: New. * src/Makefile.am (libgpg_error_la_SOURCES): Add file. * src/gpgrt-int.h: Include protos.h. * src/sysutils.c (_gpgrt_mkdir) [W32]: Make UTF-8 aware. (_gpgrt_chdir) [W32]: Ditto. * src/w32-gettext.c: Include protos.h. (utf8_to_wchar): Allow for strings. (_gpgrt_utf8_to_wchar): New. (_gpgrt_free_wchar): New. * src/estream.c (map_w32_to_errno): Add more error codes. (_gpgrt_w32_set_errno): New. (any8bitchar) [W32]: New helper. (func_file_create) [W32]: Convert file name and use _wopen. -- GnuPG-bug-id: 4083 Signed-off-by: Werner Koch <[email protected]>
* argparse: Handle a corner case of wrong ARGC.NIIBE Yutaka2020-08-211-2/+1
| | | | | | * src/argparse.c (arg_parse): Avoid null dereference when ARGC is wrong. Signed-off-by: NIIBE Yutaka <[email protected]>