aboutsummaryrefslogtreecommitdiffstats
path: root/common (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* common: Extend gnupg_create_inbound_pipe et al.Werner Koch2016-05-275-24/+50
| | | | | | | | | | | | | | * common/exechelp-posix.c (gnupg_create_inbound_pipe): Add args 'r_fp' and 'nonblock'. (gnupg_create_outbound_pipe): Ditto. * common/exechelp-w32.c (gnupg_create_inbound_pipe): Add non yet functional args 'r_fp' and 'nonblock'. (gnupg_create_outbound_pipe): Ditto. * common/exechelp-w32ce.c (gnupg_create_inbound_pipe): Ditto. (gnupg_create_outbound_pipe): Ditto. -- Signed-off-by: Werner Koch <[email protected]>
* common: Make use of default_errsource in exechelp.Werner Koch2016-05-275-47/+57
| | | | | | | | | | | | | | | | | * common/exechelp-posix.c (my_error_from_syserror, my_error): New. Use them instead of gpg_error and gpg_error_from_syserror. (create_pipe_and_estream): Remove arg ERRSOURCE and fix use of OUTBOUND which has a wrong name. Adjust callers. (gnupg_spawn_process): Remove arg ERRSOURCE and replace by use of DEFAULT_ERRSOURCE. * common/exechelp-w32.c (gnupg_spawn_process): Ditto. * common/exechelp-w32ce.c (gnupg_spawn_process): Ditto. * common/exectool.c (gnupg_exec_tool_stream): Do not pass GPG_ERROR_FROM_SYSERROR. * tools/gpgconf-comp.c (gc_component_check_options): Ditto. (retrieve_options_from_program): Ditto. Signed-off-by: Werner Koch <[email protected]>
* common: Add simple dynamic array function.Werner Koch2016-05-244-1/+294
| | | | | | | | | | | * common/ccparray.c: New. * common/ccparray.h: New. * common/t-ccparray.c: New. * common/Makefile.am (common_sources): Add files. (module_tests): Add test file. (t_ccparray_LDADD): New. Signed-off-by: Werner Koch <[email protected]>
* common,w32: Silence an unused arg warning message.Werner Koch2016-05-241-0/+2
| | | | --
* gpg: Emit new status line KEY_CONSIDERED.Werner Koch2016-05-171-0/+1
| | | | | | | | | | | | | * common/status.h (STATUS_KEY_CONSIDERED): New. * g10/getkey.c: Include status.h. (LOOKUP_NOT_SELECTED, LOOKUP_ALL_SUBKEYS_EXPIRED): New. (finish_lookup): Add arg R_FLAGS. Count expired and revoked keys and set flag. Check a requested usage before checking for expiraion or revocation. (print_status_key_considered): New. (lookup): Print new status. Signed-off-by: Werner Koch <[email protected]>
* Some minor string changes and fixed a printf format.Werner Koch2016-05-041-1/+1
| | | | | | | * g10/build-packet.c (notation_value_to_human_readable_string): Use %zu for size_t. Signed-off-by: Werner Koch <[email protected]>
* common: Print https URLs in help messages.Werner Koch2016-05-031-4/+4
| | | | | | * common/argparse.c (strusage): Print https URLS. Signed-off-by: Werner Koch <[email protected]>
* tests: Silence output of some tests.Werner Koch2016-05-032-12/+24
| | | | | | | | | | | | | | * common/t-exechelp.c (print_open_fds): Silence non-verbose output. (test_close_all_fds): Ditto. * common/t-session-env.c (show_stdnames): Indent output. * g10/test.c (TEST): Silence non-verbose okay output. (exit_tests): Ditto. * tools/gpg-zip.in (tar_verbose_opt): Add option --quiet. * tests/openpgp/gpgtar.test (GPGZIP): Pass option --quiet. * tests/openpgp/mds.test: Indent MD5 notice. * tests/openpgp/version.test: Indent --version output. Signed-off-by: Werner Koch <[email protected]>
* gpg: Re-format some tofu messages.Werner Koch2016-05-021-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * common/status.h (STATUS_TOFU_USER, STATUS_TOFU_STATS) (STATUS_TOFU_STATS_SHORT, STATUS_TOFU_STATS_LONG): New. * g10/tofu.c (NO_WARNING_THRESHOLD): New. (record_binding, tofu_register): Take care of --dry-run. (show_statistics): Print STATUS_TOFU_USER. Reformat some messages. Fix the ngettext/strcmp thing. Use log_string instead of log_info. Use NO_WARNING_THRESHOLD constant. (get_trust): Use format_text and print a compact fingerprint. -- The use of log_string makes long messages better readable; instead of gpg: Warning: if you think you've seen more[...] key, then this key might be a forgery! Car[...] address for small variations. If the key i[...] we now have gpg: Warning: if you think you've seen more[...] key, then this key might be a forgery![...] address for small variations. If the [...] We also put the key information after the message and not between the user id and the last used info like here: gpg: Verified 7 messages signed by "Werner Koch <[email protected]>" in the past 4 days, 16 hours. The most recent message was verified 3 days, 13 hours ago. (key: 8061 5870 F5BA D690 3336 [...] 1E42 B367, policy: auto) This also makes the key info a separate translatable string. Further a compact version of the fingerprint (hex w/o spaces) is printed in some messages. Signed-off-by: Werner Koch <[email protected]>
* common: Extend log_string to indent lines.Werner Koch2016-04-291-3/+18
| | | | | | | * common/logging.c (do_logv): Add indentation when called via log_string. Signed-off-by: Werner Koch <[email protected]>
* common: Improve log_assert.Werner Koch2016-04-292-15/+39
| | | | | | | | | * common/logging.c (bug_at): Do not i18n the string. (_log_assert): New. * common/logging.h (log_assert): Use new function and pass line information. Signed-off-by: Werner Koch <[email protected]>
* common: Minor fixes for the new private-keys.c.Werner Koch2016-04-251-31/+41
| | | | | | | | | | | | | | | | | | | | | | | * common/private-keys.c (my_error_from_syserror): New. Use it in place of gpg_error_from_syserror. (_pkc_add, pkc_lookup, pke_next_value): Use ascii_strcasecmp. (pkc_parse): Use xtrystrdup and append_to_strlist_try as intended. (_pkc_add): Add braces around if-statement. -- We should have a macro so that we do not need to define a wrapper function like my_error_from_syserror in files where it is needed. I am not sure about a proper name, "my_" seems to be the easiest replacement. Note that the global DEFAULT_ERRSOURCE is relatively new to replace the need to convey the error source in function calls; we want that function from common/ return the error source of the main binary. We require that a key is ASCII and thus we better use ascii_strcasecmp to avoid problems with strange locales. Signed-off-by: Werner Koch <[email protected]>
* common: Use new function to print a failure of xtrymalloc.Werner Koch2016-04-253-3/+17
| | | | | | | | * common/miscellaneous.c (xoutofcore): New. * common/strlist.c (append_to_strlist): Use instead of abort. (append_to_strlist_try): Use xtrymalloc instead of xmalloc. Signed-off-by: Werner Koch <[email protected]>
* common: Drop unused variables, fix warnings.Justus Winter2016-04-212-3/+1
| | | | | -- Signed-off-by: Justus Winter <[email protected]>
* common: Add support for the new extended private key format.Justus Winter2016-04-215-2/+1400
| | | | | | | | | | | | | | | | | | | | | | | | | | * agent/findkey.c (write_extended_private_key): New function. (agent_write_private_key): Detect if an existing file is in extended format and update the key within if it is. (read_key_file): Handle the new format. * agent/keyformat.txt: Document the new format. * common/Makefile.am: Add the new files. * common/private-keys.c: New file. * common/private-keys.h: Likewise. * common/t-private-keys.c: Likewise. * common/util.h (alphap, alnump): New macros. * tests/migrations: Add test demonstrating that we can cope with the new format. -- GnuPG 2.3+ will use a new format to store private keys that is both more flexible and easier to read and edit by human beings. The new format stores name,value-pairs using the common mail and http header convention. This patch adds the parser and support code and prepares GnuPG 2.1 for the new format. Signed-off-by: Justus Winter <[email protected]>
* common: Add 'free_strlist_wipe' which wipes memory.Justus Winter2016-04-212-0/+16
| | | | | | | * common/strlist.c (free_strlist_wipe): New function. * common/strlist.h (free_strlist_wipe): New prototype. Signed-off-by: Justus Winter <[email protected]>
* common: Add 'append_to_strlist_try' which can fail.Justus Winter2016-04-212-0/+16
| | | | | | | | * common/strlist.c (append_to_strlist): Use the new function. (append_to_strlist_try): New function. * common/strlist.h (append_to_strlist_try): New prototype. Signed-off-by: Justus Winter <[email protected]>
* w32: Replace libiconv DLL by iconv feature of libgpg-error.Werner Koch2016-04-211-4/+12
| | | | | | | | | | | * configure.ac: Do nor require libiconv for W32. * common/utf8conv.c [W32]: Do not incluce iconv.h. Request libgpg-error iconv macros. (jnlib_iconv): Use ICONV_CONST macro. * build-aux/speedo/w32/inst.nsi [!WITH_GUI]: Do not install libiconv. * build-aux/speedo.mk (speedo_spkgs) [!WITH_GUI]: Likewise. Signed-off-by: Werner Koch <[email protected]>
* agent: Sanitize permissions of the private key directory.Justus Winter2016-04-202-24/+50
| | | | | | | | | | | | | * agent/gpg-agent.c (create_private_keys_directory): Set permissions. * common/sysutils.c (modestr_to_mode): New function. (gnupg_mkdir): Use new function. (gnupg_chmod): New function. * common/sysutils.h (gnupg_chmod): New prototype. * tests/migrations/from-classic.test: Test migration with existing directory. GnuPG-bug-id: 2312 Signed-off-by: Justus Winter <[email protected]>
* doc: Note that the persistant passphrase format is unimplemented.Werner Koch2016-04-121-1/+1
| | | | --
* Now build "gpg" binary but install as "gpg2"Werner Koch2016-04-041-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * configure.ac (USE_GPG2_HACK): New ac_define am_conditional. * common/homedir.c (gnupg_module_name): Replace use of macro NAME_OF_INSTALLED_GPG. * g10/keygen.c (generate_keypair): Ditto. * g10/Makefile.am (bin_PROGRAMS): Remove. (noinst_PROGRAMS): Add gpg or gpg2 and gpgv or gpg2. (gpg2_hack_list): New. (use_gpg2_hack): New. (gpg2_SOURCES): Rename to gpg_SOURCES. (gpgv2_SOURCES): Rename to gpgv_SOURCES. (gpg2_LDADD): Rename to gpg_LDADD. (gpgv2_LDADD): Rename to gpgv_LDADD. (gpg2_LDFLAGS): Rename to gpg_LDFLAGS. (gpgv2_LDFLAGS): Rename to gpgv2_LDFLAGS. (install-exec-hook): Remove WinCE specific rules and add new rules. (uninstall-local): Uninstall gpg/gpg2 and gpgv/gpgv2. * tests/openpgp/Makefile.am (required_pgms): s/gpg2/gpg/. * tests/openpgp/defs.inc: Ditto. * tests/openpgp/gpgtar.test: Ditto. * tests/openpgp/mkdemodirs: Ditto. * tests/openpgp/signdemokey: Ditto. * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): Remove obsolete --enable-mailto, add --enable-gpg2-is-gpg. -- Although we need to duplicate some automake generated code this method allows to easily switch the name of the installed target using the configure option "--enable-gpg2-is-gpg". Signed-off-by: Werner Koch <[email protected]>
* common: Provide a function for mapping packet types to strings.Neal H. Walfield2016-03-021-0/+28
| | | | | | | * common/openpgpdefs.h (pkttype_str): New function. -- Signed-off-by: Neal H. Walfield <[email protected]>
* gpg: Rename pop_filter to iobuf_pop_filter and export it.Neal H. Walfield2016-03-022-11/+19
| | | | | | | | * common/iobuf.c (pop_filter): Rename from this... (iobuf_pop_filter): ... to this. Don't mark it as static. -- Signed-off-by: Neal H. Walfield <[email protected]>
* common: Update README.Justus Winter2016-03-021-11/+1
| | | | | -- Signed-off-by: Justus Winter <[email protected]>
* common: Consolidate Assuan server argument handling.Justus Winter2016-03-023-1/+201
| | | | | | | | | | | | | | | * common/Makefile.am (common_sources): Add new files. * common/server-help.c: New file. * common/server-help.h: Likewise. * agent/command.c: Drop argument handling primitives in favor of using the consolidated ones. * dirmngr/server.c: Likewise. * g10/server.c: Likewise. * g13/server.c: Likewise. * scd/command.c: Likewise. * sm/server.c: Likewise. Signed-off-by: Justus Winter <[email protected]>
* common: Reduce buffer size.Neal H. Walfield2016-02-231-2/+2
| | | | | | | | | | * common/iobuf.c (iobuf_copy): Change buffer size from 1 MB to 32 KB. -- Change suggested by Werner based on the observation that other buffers are of a similar size. Signed-off-by: Neal H. Walfield <[email protected]>
* common: Improve a function's documentation and comments.Neal H. Walfield2016-02-231-10/+14
| | | | | | | | * common/iobuf.c (iobuf_set_partial_body_length_mode): Fix documentation and comment. Add an assert. -- Signed-off-by: Neal H. Walfield <[email protected]>
* common: Add log_assert.Neal H. Walfield2016-02-231-0/+4
| | | | | | | * common/logging.h (log_assert): New macro. -- Signed-off-by: Neal H. Walfield <[email protected]>
* gpg: Use higher-level functions.Neal H. Walfield2016-02-231-0/+3
| | | | | | | | | | * g10/build-packet.c (do_symkey_enc): Use iobuf_write instead of iobuf_put in a loop. Use iobuf_copy instead of iobuf_read and iobuf_write in a loop. Move the memory wiping from here... * common/iobuf.c (iobuf_copy): ... to here. -- Signed-off-by: Neal H. Walfield <[email protected]>
* common: Check for an error before reading.Neal H. Walfield2016-02-231-0/+3
| | | | | | | | * common/iobuf.c (iobuf_copy): If DEST has a pending error, don't start copying. -- Signed-off-by: Neal H. Walfield <[email protected]>
* common: More accurately name function.Neal H. Walfield2016-02-232-2/+2
| | | | | | | | * common/iobuf.c (iobuf_set_partial_block_mode): Rename from this... (iobuf_set_partial_body_length_mode): ... to this. Update callers. -- Signed-off-by: Neal H. Walfield <[email protected]>
* common/exechelp: Provide a way to wait for multiple processes.Justus Winter2016-02-234-75/+144
| | | | | | | | | | * common/exechelp-posix.c (gnupg_wait_process): Generalize to 'gnupg_wait_processes'. * common/exechelp-w32.c (gnupg_wait_process): Likewise. * common/exechelp-w32ce.c (gnupg_wait_process): New function stub. * common/exechelp.h (gnupg_wait_process): New prototype. Signed-off-by: Justus Winter <[email protected]>
* common/exechelp: Add general pipe function.Justus Winter2016-02-234-31/+59
| | | | | | | | | | | | | | | * common/exechelp-posix.c (gnupg_create_pipe): New function. * common/exechelp-w32.c (INHERIT_{READ,WRITE,BOTH}): New macros. (create_inheritable_pipe): Generalize so that both ends can be inherited. (do_create_pipe): Rename argument accordingly. (gnupg_create_{in,out}bound_pipe): Use new flags. (gnupg_create_pipe): New function. (gnupg_spawn_process): Use new flags. * common/exechelp-w32ce.c (gnupg_create_pipe): New stub. * common/exechelp.h (gnupg_create_pipe): New prototype. Signed-off-by: Justus Winter <[email protected]>
* common/exechelp: Mute the Windows version.Justus Winter2016-02-231-3/+4
| | | | | | | | * common/exechelp-w32.c (gnupg_wait_process): Do not print an error if the exit code can be returned. This makes the Windows version behave like the POSIX version. Signed-off-by: Justus Winter <[email protected]>
* common/exechelp: Avoid magic numbers.Justus Winter2016-02-231-2/+2
| | | | | | * common/exechelp-w32.c (do_create_pipe): Use symbolic names. Signed-off-by: Justus Winter <[email protected]>
* common/exechelp: Disable debugging by default.Justus Winter2016-02-231-1/+1
| | | | | | * common/exechelp-w32.c (DEBUG_W32_SPAWN): Set to 0. Signed-off-by: Justus Winter <[email protected]>
* common/exechelp: Fix handle leak.Justus Winter2016-02-231-0/+1
| | | | | | | * common/exechelp-w32.c (gnupg_spawn_process_detached): Close process handle. Signed-off-by: Justus Winter <[email protected]>
* common/exechelp: Fix opening the 'nul' device.Justus Winter2016-02-231-5/+5
| | | | | | | * common/exechelp-w32.c (gnupg_spawn_process): Fix opening the 'nul' device. Signed-off-by: Justus Winter <[email protected]>
* common/exechelp: Fix error handling.Justus Winter2016-02-231-2/+2
| | | | | | * common/exechelp-w32.c (gnupg_spawn_process): Close the right handle. Signed-off-by: Justus Winter <[email protected]>
* common/exechelp: Fix pipe creation.Justus Winter2016-02-231-1/+1
| | | | | | | * common/exechelp-w32.c (gnupg_spawn_process): Fix the creation of the input pipe. Signed-off-by: Justus Winter <[email protected]>
* w32: Do not error out if gpgconf is not installed.Werner Koch2016-02-161-3/+1
| | | | | | | | | | | * common/homedir.c (check_portable_app): Remove error message. -- It is sometimes useful to install just gpgv and no other parts. Our test for a portable application returned an error if gpgconf is not installed. That error is not required but was merely a debug aid. Signed-off-by: Werner Koch <[email protected]>
* common, g10: Fix indentation to silence GCC-6.NIIBE Yutaka2016-02-151-5/+5
| | | | | | | | | | * common/iobuf.c (iobuf_ioctl): Fix. * g10/encrypt.c (encrypt_filter): Likewise. * g10/keyring.c (prepare_search): Likewise. -- Signed-off-by: NIIBE Yutaka <[email protected]>
* common: Fix comment.Neal H. Walfield2016-02-141-1/+1
| | | | | | | * common/iobuf.c (iobuf_flush_temp): Fix comment. -- Signed-off-by: Neal H. Walfield <[email protected]>
* common: Make gnupg_exec_tool conform to spec.Werner Koch2016-02-131-9/+18
| | | | | | | | * common/exectool.c (gnupg_exec_tool): Allocate extra byte. Allow zero length read. Append hidden byte. Release memory on error. -- Signed-off-by: Werner Koch <[email protected]>
* common: Change simple_query to ignore status messages.Neal H. Walfield2016-02-121-28/+67
| | | | | | | | * common/simple-pwquery.c (simple_query): Ignore status messages. -- Signed-off-by: Neal H. Walfield <[email protected]> GnuPG-bug-id: 2229
* Update copyright years.Werner Koch2016-01-261-2/+2
| | | | --
* gpgtar,w32: Fix gpgtar 8 bit encoding handling on W32Andre Heinecke2016-01-262-10/+57
| | | | | | | | | | | | | | | | | | | | | * common/utf8conv.c (wchar_to_utf8): Factor code out to ... (wchar_to_cp): new. (utf8_to_wchar): Factor code out to ... (cp_to_wchar): new. (wchar_to_native): New. (native_to_wchar): New. * tools/gpgtar-create.c (fillup_entry_w32): Use native_to_wchar. (scan_directory): Use wchar_to_native. -- Gpgtar needs to handle filenames in the local 8 bit encoding on Windows as it uses the 8 bit file io functions. GnuPG-bug-id: 1624, 1746 Patch from bug 1624 modified to fit into GnuPG 2.1 by wk. Signed-off-by: Werner Koch <[email protected]>
* common: Add substitute code for libgpg-error < 1.22.Werner Koch2016-01-191-2/+4
| | | | * common/util.h (GPG_ERR_DB_CORRUPTED): New.
* common: Make sure dotlock functions set a proper ERRNO.Werner Koch2016-01-131-17/+87
| | | | | | | | | | | | | * common/dotlock.c (map_w32_to_errno): New. (read_lockfile): Return a proper ERRNO. (dotlock_create_unix): Do not let log functions clobber ERRNO. (dotlock_take_unix): Ditto. (dotlock_release_unix): Ditto. (dotlock_create_w32): Set proper ERRNO. (dotlock_take_w32): Ditto. (dotlock_release_w32): Ditto. Signed-off-by: Werner Koch <[email protected]>
* common: Fix iobuf API of filter function for alignment.NIIBE Yutaka2016-01-121-2/+1
| | | | | | | | * common/iobuf.h: Fix comment. -- Signed-off-by: NIIBE Yutaka <[email protected]>