From cvs at cvs.gnupg.org Sat Apr 1 11:14:55 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Sat, 01 Apr 2017 11:14:55 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.19-104-g0039d71 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 0039d7107bcdfce6f3b02b46ff0495cfba07882a (commit) via 5556eca5acd46983bff0b38a1ffbc2f07fbaba9f (commit) via aca5f494a88776d4974bfa9b0b65cb60c1b42040 (commit) from 3a10de3bfd785aefb0150e82b6dbbc7cb9f208c8 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 0039d7107bcdfce6f3b02b46ff0495cfba07882a Author: Werner Koch Date: Sat Apr 1 11:10:47 2017 +0200 kbx: Unify blob reading functions. * kbx/keybox-file.c (_keybox_read_blob): Remove. (_keybox_read_blob2): Rename to .... (_keybox_read_blob): this. Make arg options. Change all callers. * kbx/keybox-search.c (keybox_search): Factor fopen call out to ... (open_file): new. (keybox_seek): Als use open_file. Signed-off-by: Werner Koch diff --git a/kbx/keybox-defs.h b/kbx/keybox-defs.h index b8b8377..154d4fc 100644 --- a/kbx/keybox-defs.h +++ b/kbx/keybox-defs.h @@ -177,8 +177,7 @@ void _keybox_destroy_openpgp_info (keybox_openpgp_info_t info); /*-- keybox-file.c --*/ -int _keybox_read_blob (KEYBOXBLOB *r_blob, FILE *fp); -int _keybox_read_blob2 (KEYBOXBLOB *r_blob, FILE *fp, int *skipped_deleted); +int _keybox_read_blob (KEYBOXBLOB *r_blob, FILE *fp, int *skipped_deleted); int _keybox_write_blob (KEYBOXBLOB blob, FILE *fp); /*-- keybox-search.c --*/ diff --git a/kbx/keybox-dump.c b/kbx/keybox-dump.c index d24f117..aa1d93b 100644 --- a/kbx/keybox-dump.c +++ b/kbx/keybox-dump.c @@ -581,7 +581,7 @@ _keybox_dump_file (const char *filename, int stats_only, FILE *outfp) for (;;) { - rc = _keybox_read_blob (&blob, fp); + rc = _keybox_read_blob (&blob, fp, NULL); if (gpg_err_code (rc) == GPG_ERR_TOO_LARGE && gpg_err_source (rc) == GPG_ERR_SOURCE_KEYBOX) { @@ -704,7 +704,7 @@ _keybox_dump_find_dups (const char *filename, int print_them, FILE *outfp) } dupitems_count = 0; - while ( !(rc = _keybox_read_blob (&blob, fp)) ) + while ( !(rc = _keybox_read_blob (&blob, fp, NULL)) ) { unsigned char digest[20]; @@ -778,7 +778,7 @@ _keybox_dump_cut_records (const char *filename, unsigned long from, if (!(fp = open_file (&filename, stderr))) return gpg_error_from_syserror (); - while ( !(rc = _keybox_read_blob (&blob, fp)) ) + while ( !(rc = _keybox_read_blob (&blob, fp, NULL)) ) { if (recno > to) break; /* Ready. */ diff --git a/kbx/keybox-file.c b/kbx/keybox-file.c index 0485e81..046e321 100644 --- a/kbx/keybox-file.c +++ b/kbx/keybox-file.c @@ -45,10 +45,10 @@ ftello (FILE *stream) -/* Read a block at the current position and return it in r_blob. - r_blob may be NULL to simply skip the current block. */ +/* Read a block at the current position and return it in R_BLOB. + R_BLOB may be NULL to simply skip the current block. */ int -_keybox_read_blob2 (KEYBOXBLOB *r_blob, FILE *fp, int *skipped_deleted) +_keybox_read_blob (KEYBOXBLOB *r_blob, FILE *fp, int *skipped_deleted) { unsigned char *image; size_t imagelen = 0; @@ -56,7 +56,8 @@ _keybox_read_blob2 (KEYBOXBLOB *r_blob, FILE *fp, int *skipped_deleted) int rc; off_t off; - *skipped_deleted = 0; + if (skipped_deleted) + *skipped_deleted = 0; again: if (r_blob) *r_blob = NULL; @@ -86,7 +87,8 @@ _keybox_read_blob2 (KEYBOXBLOB *r_blob, FILE *fp, int *skipped_deleted) /* Special treatment for empty blobs. */ if (fseek (fp, imagelen-5, SEEK_CUR)) return gpg_error_from_syserror (); - *skipped_deleted = 1; + if (skipped_deleted) + *skipped_deleted = 1; goto again; } @@ -99,6 +101,14 @@ _keybox_read_blob2 (KEYBOXBLOB *r_blob, FILE *fp, int *skipped_deleted) return gpg_error (GPG_ERR_TOO_LARGE); } + if (!r_blob) + { + /* This blob shall be skipped. */ + if (fseek (fp, imagelen-5, SEEK_CUR)) + return gpg_error_from_syserror (); + return 0; + } + image = xtrymalloc (imagelen); if (!image) return gpg_error_from_syserror (); @@ -111,19 +121,12 @@ _keybox_read_blob2 (KEYBOXBLOB *r_blob, FILE *fp, int *skipped_deleted) return tmperr; } - rc = r_blob? _keybox_new_blob (r_blob, image, imagelen, off) : 0; - if (rc || !r_blob) + rc = _keybox_new_blob (r_blob, image, imagelen, off); + if (rc) xfree (image); return rc; } -int -_keybox_read_blob (KEYBOXBLOB *r_blob, FILE *fp) -{ - int dummy; - return _keybox_read_blob2 (r_blob, fp, &dummy); -} - /* Write the block to the current file position */ int diff --git a/kbx/keybox-search.c b/kbx/keybox-search.c index 0bd4e01..a5fc7fa 100644 --- a/kbx/keybox-search.c +++ b/kbx/keybox-search.c @@ -725,6 +725,23 @@ release_sn_array (struct sn_array_s *array, size_t size) xfree (array); } + +/* Helper to open the file. */ +static gpg_error_t +open_file (KEYBOX_HANDLE hd) +{ + + hd->fp = fopen (hd->kb->fname, "rb"); + if (!hd->fp) + { + hd->error = gpg_error_from_syserror (); + return hd->error; + } + + return 0; +} + + /* @@ -822,12 +839,11 @@ keybox_search (KEYBOX_HANDLE hd, KEYBOX_SEARCH_DESC *desc, size_t ndesc, if (!hd->fp) { - hd->fp = fopen (hd->kb->fname, "rb"); - if (!hd->fp) + rc = open_file (hd); + if (rc) { - hd->error = gpg_error_from_syserror (); xfree (sn_array); - return hd->error; + return rc; } } @@ -899,7 +915,7 @@ keybox_search (KEYBOX_HANDLE hd, KEYBOX_SEARCH_DESC *desc, size_t ndesc, int blobtype; _keybox_release_blob (blob); blob = NULL; - rc = _keybox_read_blob (&blob, hd->fp); + rc = _keybox_read_blob (&blob, hd->fp, NULL); if (gpg_err_code (rc) == GPG_ERR_TOO_LARGE && gpg_err_source (rc) == GPG_ERR_SOURCE_KEYBOX) { @@ -1192,24 +1208,23 @@ keybox_offset (KEYBOX_HANDLE hd) gpg_error_t keybox_seek (KEYBOX_HANDLE hd, off_t offset) { - int err; + gpg_error_t err; if (hd->error) return hd->error; /* still in error state */ if (! hd->fp) { - if (offset == 0) - /* No need to open the file. An unopened file is effectively at - offset 0. */ - return 0; - - hd->fp = fopen (hd->kb->fname, "rb"); - if (!hd->fp) + if (!offset) { - hd->error = gpg_error_from_syserror (); - return hd->error; + /* No need to open the file. An unopened file is effectively at + offset 0. */ + return 0; } + + err = open_file (hd); + if (err) + return err; } err = fseeko (hd->fp, offset, SEEK_SET); diff --git a/kbx/keybox-update.c b/kbx/keybox-update.c index 0b0f56b..580330f 100644 --- a/kbx/keybox-update.c +++ b/kbx/keybox-update.c @@ -288,7 +288,7 @@ blob_filecopy (int mode, const char *fname, KEYBOXBLOB blob, } /* Skip this blob. */ - rc = _keybox_read_blob (NULL, fp); + rc = _keybox_read_blob (NULL, fp, NULL); if (rc) { fclose (fp); @@ -665,7 +665,7 @@ keybox_compress (KEYBOX_HANDLE hd) /* A quick test to see if we need to compress the file at all. We schedule a compress run after 3 hours. */ - if ( !_keybox_read_blob (&blob, fp) ) + if ( !_keybox_read_blob (&blob, fp, NULL) ) { const unsigned char *buffer; size_t length; @@ -703,7 +703,7 @@ keybox_compress (KEYBOX_HANDLE hd) cut_time = time(NULL) - 86400; first_blob = 1; skipped_deleted = 0; - for (rc=0; !(read_rc = _keybox_read_blob2 (&blob, fp, &skipped_deleted)); + for (rc=0; !(read_rc = _keybox_read_blob (&blob, fp, &skipped_deleted)); _keybox_release_blob (blob), blob = NULL ) { unsigned int blobflags; commit 5556eca5acd46983bff0b38a1ffbc2f07fbaba9f Author: Werner Koch Date: Fri Mar 31 20:44:05 2017 +0200 gpg: Avoid multiple open calls to the keybox file. * g10/keydb.h (KEYDB_HANDLE): Move typedef to ... * g10/gpg.h: here. (struct server_control_s): Add field 'cached_getkey_kdb'. * g10/gpg.c (gpg_deinit_default_ctrl): Release that keydb handle. * g10/getkey.c (getkey_end): Cache keydb handle. (get_pubkey): Use cached keydb handle. * kbx/keybox-search.c (keybox_search_reset): Use lseek instead of closing the file. -- Before this patch a "gpg --check-sigs" opened and closed the keybox file for almost every signature check. By caching the keydb handle and using lseek(2) this can be limited to just 2 times. This might speed up things on Windows. Signed-off-by: Werner Koch diff --git a/g10/getkey.c b/g10/getkey.c index d8a1058..dab63fa 100644 --- a/g10/getkey.c +++ b/g10/getkey.c @@ -736,11 +736,21 @@ get_pubkey (ctrl_t ctrl, PKT_public_key * pk, u32 * keyid) memset (&ctx, 0, sizeof ctx); ctx.exact = 1; /* Use the key ID exactly as given. */ ctx.not_allocated = 1; - ctx.kr_handle = keydb_new (); - if (!ctx.kr_handle) + + if (ctrl && ctrl->cached_getkey_kdb) + { + ctx.kr_handle = ctrl->cached_getkey_kdb; + ctrl->cached_getkey_kdb = NULL; + keydb_search_reset (ctx.kr_handle); + } + else { - rc = gpg_error_from_syserror (); - goto leave; + ctx.kr_handle = keydb_new (); + if (!ctx.kr_handle) + { + rc = gpg_error_from_syserror (); + goto leave; + } } ctx.nitems = 1; ctx.items[0].mode = KEYDB_SEARCH_MODE_LONG_KID; @@ -2208,7 +2218,10 @@ getkey_end (ctrl_t ctrl, getkey_ctx_t ctx) { if (ctx) { - keydb_release (ctx->kr_handle); + if (ctrl && !ctrl->cached_getkey_kdb) + ctrl->cached_getkey_kdb = ctx->kr_handle; + else + keydb_release (ctx->kr_handle); free_strlist (ctx->extra_list); if (!ctx->not_allocated) xfree (ctx); diff --git a/g10/gpg.c b/g10/gpg.c index 24636aa..e228427 100644 --- a/g10/gpg.c +++ b/g10/gpg.c @@ -2195,6 +2195,8 @@ gpg_deinit_default_ctrl (ctrl_t ctrl) tofu_closedbs (ctrl); #endif gpg_dirmngr_deinit_session_data (ctrl); + + keydb_release (ctrl->cached_getkey_kdb); } diff --git a/g10/gpg.h b/g10/gpg.h index c663585..9b8b77c 100644 --- a/g10/gpg.h +++ b/g10/gpg.h @@ -59,10 +59,13 @@ struct server_local_s; struct dirmngr_local_s; typedef struct dirmngr_local_s *dirmngr_local_t; -/* Object used to describe a keyblok node. */ +/* Object used to describe a keyblock node. */ typedef struct kbnode_struct *KBNODE; /* Deprecated use kbnode_t. */ typedef struct kbnode_struct *kbnode_t; +/* The handle for keydb operations. */ +typedef struct keydb_handle *KEYDB_HANDLE; + /* TOFU database meta object. */ struct tofu_dbs_s; typedef struct tofu_dbs_s *tofu_dbs_t; @@ -94,6 +97,8 @@ struct server_control_s int batch_updated_wanted; } tofu; + /* This is used to cache a key data base handle. */ + KEYDB_HANDLE cached_getkey_kdb; }; diff --git a/g10/keydb.h b/g10/keydb.h index 271e68f..7f42738 100644 --- a/g10/keydb.h +++ b/g10/keydb.h @@ -109,9 +109,6 @@ struct pubkey_find_info { }; -typedef struct keydb_handle *KEYDB_HANDLE; - - /* Helper type for preference fucntions. */ union pref_hint { diff --git a/kbx/keybox-search.c b/kbx/keybox-search.c index 56515d1..0bd4e01 100644 --- a/kbx/keybox-search.c +++ b/kbx/keybox-search.c @@ -746,8 +746,13 @@ keybox_search_reset (KEYBOX_HANDLE hd) if (hd->fp) { - fclose (hd->fp); - hd->fp = NULL; + if (fseeko (hd->fp, 0, SEEK_SET)) + { + /* Ooops. Seek did not work. Close so that the search will + * open the file again. */ + fclose (hd->fp); + hd->fp = NULL; + } } hd->error = 0; hd->eof = 0; commit aca5f494a88776d4974bfa9b0b65cb60c1b42040 Author: Werner Koch Date: Fri Mar 31 20:35:28 2017 +0200 gpg: Pass CTRL also to getkey_end. * g10/getkey.c (getkey_end): Add arg CTRL. Change all callers. Signed-off-by: Werner Koch diff --git a/g10/export.c b/g10/export.c index 8dafab2..31caa55 100644 --- a/g10/export.c +++ b/g10/export.c @@ -2155,7 +2155,7 @@ export_ssh_key (ctrl_t ctrl, const char *userid) else if (gpg_err_code (err) == GPG_ERR_NO_PUBKEY) err = 0; } - getkey_end (getkeyctx); + getkey_end (ctrl, getkeyctx); } if (err) { diff --git a/g10/getkey.c b/g10/getkey.c index f29c150..d8a1058 100644 --- a/g10/getkey.c +++ b/g10/getkey.c @@ -558,7 +558,7 @@ get_pubkeys (ctrl_t ctrl, results = r; } while (ctx); - getkey_end (ctx); + getkey_end (ctrl, ctx); if (DBG_LOOKUP) { @@ -752,7 +752,7 @@ get_pubkey (ctrl_t ctrl, PKT_public_key * pk, u32 * keyid) { pk_from_block (pk, kb, found_key); } - getkey_end (&ctx); + getkey_end (ctrl, &ctx); release_kbnode (kb); } if (!rc) @@ -868,7 +868,7 @@ get_pubkeyblock (ctrl_t ctrl, u32 * keyid) ctx.items[0].u.kid[0] = keyid[0]; ctx.items[0].u.kid[1] = keyid[1]; rc = lookup (ctrl, &ctx, 0, &keyblock, NULL); - getkey_end (&ctx); + getkey_end (ctrl, &ctx); return rc ? NULL : keyblock; } @@ -915,7 +915,7 @@ get_seckey (ctrl_t ctrl, PKT_public_key *pk, u32 *keyid) { pk_from_block (pk, keyblock, found_key); } - getkey_end (&ctx); + getkey_end (ctrl, &ctx); release_kbnode (keyblock); if (!err) @@ -1109,7 +1109,7 @@ key_byname (ctrl_t ctrl, GETKEY_CTX *retctx, strlist_t namelist, if (!ctx->kr_handle) { rc = gpg_error_from_syserror (); - getkey_end (ctx); + getkey_end (ctrl, ctx); return rc; } @@ -1138,7 +1138,7 @@ key_byname (ctrl_t ctrl, GETKEY_CTX *retctx, strlist_t namelist, *ret_kdbhd = ctx->kr_handle; ctx->kr_handle = NULL; } - getkey_end (ctx); + getkey_end (ctrl, ctx); } return rc; @@ -1310,7 +1310,7 @@ get_pubkey_byname (ctrl_t ctrl, GETKEY_CTX * retctx, PKT_public_key * pk, did_akl_local = 1; if (retctx) { - getkey_end (*retctx); + getkey_end (ctrl, *retctx); *retctx = NULL; } add_to_strlist (&namelist, name); @@ -1428,7 +1428,7 @@ get_pubkey_byname (ctrl_t ctrl, GETKEY_CTX * retctx, PKT_public_key * pk, * keyring. */ if (retctx) { - getkey_end (*retctx); + getkey_end (ctrl, *retctx); *retctx = NULL; } rc = key_byname (ctrl, anylocalfirst ? retctx : NULL, @@ -1453,7 +1453,7 @@ get_pubkey_byname (ctrl_t ctrl, GETKEY_CTX * retctx, PKT_public_key * pk, if (rc && retctx) { - getkey_end (*retctx); + getkey_end (ctrl, *retctx); *retctx = NULL; } @@ -1589,7 +1589,7 @@ get_best_pubkey_byname (ctrl_t ctrl, GETKEY_CTX *retctx, PKT_public_key *pk, if (rc) { if (ctx) - getkey_end (ctx); + getkey_end (ctrl, ctx); return rc; } @@ -1626,7 +1626,7 @@ get_best_pubkey_byname (ctrl_t ctrl, GETKEY_CTX *retctx, PKT_public_key *pk, new.uid = NULL; } } - getkey_end (ctx); + getkey_end (ctrl, ctx); ctx = NULL; free_user_id (best.uid); best.uid = NULL; @@ -1675,14 +1675,14 @@ get_best_pubkey_byname (ctrl_t ctrl, GETKEY_CTX *retctx, PKT_public_key *pk, if (rc && ctx) { - getkey_end (ctx); + getkey_end (ctrl, ctx); ctx = NULL; } if (retctx && ctx) *retctx = ctx; else - getkey_end (ctx); + getkey_end (ctrl, ctx); return rc; } @@ -1799,7 +1799,7 @@ get_pubkey_byfprint (ctrl_t ctrl, PKT_public_key *pk, kbnode_t *r_keyblock, kb = NULL; } release_kbnode (kb); - getkey_end (&ctx); + getkey_end (ctrl, &ctx); } else rc = GPG_ERR_GENERAL; /* Oops */ @@ -2204,7 +2204,7 @@ getkey_next (ctrl_t ctrl, getkey_ctx_t ctx, /* Release any resources used by a key listing context. This must be * called on the context returned by, e.g., getkey_byname. */ void -getkey_end (getkey_ctx_t ctx) +getkey_end (ctrl_t ctrl, getkey_ctx_t ctx) { if (ctx) { @@ -3833,7 +3833,7 @@ enum_secret_keys (ctrl_t ctrl, void **context, PKT_public_key *sk) { /* Free the context. */ release_kbnode (c->keyblock); - getkey_end (c->ctx); + getkey_end (ctrl, c->ctx); xfree (c); *context = NULL; return 0; @@ -3881,7 +3881,7 @@ enum_secret_keys (ctrl_t ctrl, void **context, PKT_public_key *sk) { release_kbnode (keyblock); keyblock = NULL; - getkey_end (c->ctx); + getkey_end (ctrl, c->ctx); c->ctx = NULL; } c->state++; @@ -3895,7 +3895,7 @@ enum_secret_keys (ctrl_t ctrl, void **context, PKT_public_key *sk) { release_kbnode (keyblock); keyblock = NULL; - getkey_end (c->ctx); + getkey_end (ctrl, c->ctx); c->ctx = NULL; } } diff --git a/g10/keydb.h b/g10/keydb.h index 605964d..271e68f 100644 --- a/g10/keydb.h +++ b/g10/keydb.h @@ -372,7 +372,7 @@ gpg_error_t getkey_next (ctrl_t ctrl, getkey_ctx_t ctx, PKT_public_key *pk, kbnode_t *ret_keyblock); /* Release any resources used by a key listing context. */ -void getkey_end (getkey_ctx_t ctx); +void getkey_end (ctrl_t ctrl, getkey_ctx_t ctx); /* Return the database handle used by this context. The context still owns the handle. */ diff --git a/g10/keylist.c b/g10/keylist.c index cc5009d..2b6ee9f 100644 --- a/g10/keylist.c +++ b/g10/keylist.c @@ -608,7 +608,7 @@ list_one (ctrl_t ctrl, strlist_t names, int secret, int mark_secret) if (rc) { log_error ("error reading key: %s\n", gpg_strerror (rc)); - getkey_end (ctx); + getkey_end (ctrl, ctx); return; } @@ -627,7 +627,7 @@ list_one (ctrl_t ctrl, strlist_t names, int secret, int mark_secret) release_kbnode (keyblock); } while (!getkey_next (ctrl, ctx, NULL, &keyblock)); - getkey_end (ctx); + getkey_end (ctrl, ctx); if (opt.check_sigs && !opt.with_colons) print_signature_stats (&listctx); @@ -668,7 +668,7 @@ locate_one (ctrl_t ctrl, strlist_t names) release_kbnode (keyblock); } while (ctx && !getkey_next (ctrl, ctx, NULL, &keyblock)); - getkey_end (ctx); + getkey_end (ctrl, ctx); ctx = NULL; } } ----------------------------------------------------------------------- Summary of changes: g10/export.c | 2 +- g10/getkey.c | 59 ++++++++++++++++++++++++++++++++--------------------- g10/gpg.c | 2 ++ g10/gpg.h | 7 ++++++- g10/keydb.h | 5 +---- g10/keylist.c | 6 +++--- kbx/keybox-defs.h | 3 +-- kbx/keybox-dump.c | 6 +++--- kbx/keybox-file.c | 31 +++++++++++++++------------- kbx/keybox-search.c | 54 +++++++++++++++++++++++++++++++++--------------- kbx/keybox-update.c | 6 +++--- 11 files changed, 110 insertions(+), 71 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Sun Apr 2 20:09:15 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Sun, 02 Apr 2017 20:09:15 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.19-105-gd243752 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via d24375271b97e45deaeb1ef0a8434c64066ba2e8 (commit) from 0039d7107bcdfce6f3b02b46ff0495cfba07882a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit d24375271b97e45deaeb1ef0a8434c64066ba2e8 Author: Werner Koch Date: Sun Apr 2 20:02:55 2017 +0200 agent: Use OCB for key protection with --enable-extended-key-format. * agent/protect.c (PROT_DEFAULT_TO_OCB): Remove macro. (agent_protect): Make the default protection mode depend on the extend key format option. Signed-off-by: Werner Koch diff --git a/agent/protect.c b/agent/protect.c index 09aa503..a9de732 100644 --- a/agent/protect.c +++ b/agent/protect.c @@ -42,11 +42,6 @@ #include "../common/sexp-parse.h" -/* To use the openpgp-s2k3-ocb-aes scheme by default set the value of - * this macro to 1. Note that the caller of agent_protect may - * override this default. */ -#define PROT_DEFAULT_TO_OCB 0 - /* The protection mode for encryption. The supported modes for decryption are listed in agent_unprotect(). */ #define PROT_CIPHER GCRY_CIPHER_AES128 @@ -580,7 +575,7 @@ agent_protect (const unsigned char *plainkey, const char *passphrase, int have_curve = 0; if (use_ocb == -1) - use_ocb = PROT_DEFAULT_TO_OCB; + use_ocb = opt.enable_extended_key_format; /* Create an S-expression with the protected-at timestamp. */ memcpy (timestamp_exp, "(12:protected-at15:", 19); diff --git a/doc/gpg-agent.texi b/doc/gpg-agent.texi index ca9d469..6aab646 100644 --- a/doc/gpg-agent.texi +++ b/doc/gpg-agent.texi @@ -579,7 +579,8 @@ the passphrase of a key will also convert the key to that new format. Using this option makes the private keys unreadable for gpg-agent versions before 2.1.12. The advantage of the extended private key format is that it is text based and can carry additional meta data. - +Note that this option also changes the key protection format to use +OCB mode. @anchor{option --enable-ssh-support} @item --enable-ssh-support ----------------------------------------------------------------------- Summary of changes: agent/protect.c | 7 +------ doc/gpg-agent.texi | 3 ++- 2 files changed, 3 insertions(+), 7 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 3 08:56:04 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Mon, 03 Apr 2017 08:56:04 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.19-106-g3f6d949 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 3f6d949011f485613bb4bd3e06a2643be79cce40 (commit) from d24375271b97e45deaeb1ef0a8434c64066ba2e8 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 3f6d949011f485613bb4bd3e06a2643be79cce40 Author: Werner Koch Date: Mon Apr 3 08:51:52 2017 +0200 gpg: Handle critical marked 'Reason for Revocation'. * g10/parse-packet.c (can_handle_critical): Add SIGSUBPKT_REVOC_REASON. -- Some software seems to mark that subpacket as criticial. Although gpg has no special treatment for a revocation reasons (except for --list-packets) we can accept a criticial marked anyway. There are no mandatary rules specified on how to handle a revocation reason. Signed-off-by: Werner Koch diff --git a/g10/parse-packet.c b/g10/parse-packet.c index ffed956..2be9849 100644 --- a/g10/parse-packet.c +++ b/g10/parse-packet.c @@ -1643,6 +1643,7 @@ can_handle_critical (const byte * buffer, size_t n, int type) /* Is it enough to show the policy or keyserver? */ case SIGSUBPKT_POLICY: case SIGSUBPKT_PREF_KS: + case SIGSUBPKT_REVOC_REASON: /* At least we know about it. */ return 1; default: ----------------------------------------------------------------------- Summary of changes: g10/parse-packet.c | 1 + 1 file changed, 1 insertion(+) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 3 11:54:48 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Mon, 03 Apr 2017 11:54:48 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.19-107-g90932bd Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 90932bdad607d06f4f040e3457caddba79ba8b7e (commit) from 3f6d949011f485613bb4bd3e06a2643be79cce40 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 90932bdad607d06f4f040e3457caddba79ba8b7e Author: Justus Winter Date: Thu Mar 30 12:19:01 2017 +0200 gpgscm: Slightly improve the procedure dispatch. * tests/gpgscm/scheme.c (procnum): Procedures always have an integer number, so we can safely use the cheaper 'ivalue_unchecked'. Signed-off-by: Justus Winter diff --git a/tests/gpgscm/scheme.c b/tests/gpgscm/scheme.c index b76e83c..fbc562d 100644 --- a/tests/gpgscm/scheme.c +++ b/tests/gpgscm/scheme.c @@ -274,7 +274,7 @@ INTERFACE INLINE int is_syntax(pointer p) { return (typeflag(p)&T_SYNTAX); } INTERFACE INLINE int is_proc(pointer p) { return (type(p)==T_PROC); } INTERFACE INLINE int is_foreign(pointer p) { return (type(p)==T_FOREIGN); } INTERFACE INLINE char *syntaxname(pointer p) { return strvalue(car(p)); } -#define procnum(p) ivalue(p) +#define procnum(p) ivalue_unchecked(p) static const char *procname(pointer x); INTERFACE INLINE int is_closure(pointer p) { return (type(p)==T_CLOSURE); } ----------------------------------------------------------------------- Summary of changes: tests/gpgscm/scheme.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 3 12:05:15 2017 From: cvs at cvs.gnupg.org (by Igor Gnatenko) Date: Mon, 03 Apr 2017 12:05:15 +0200 Subject: [git] GPGME - branch, master, updated. gpgme-1.9.0-10-g5d4f977 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG Made Easy". The branch, master has been updated via 5d4f977dac542340c877fdd4b1304fa8f6e058e6 (commit) from f8a9ecc6290ebd73fa36647cdfca285fe4d94a62 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 5d4f977dac542340c877fdd4b1304fa8f6e058e6 Author: Igor Gnatenko Date: Wed Mar 29 07:20:51 2017 +0200 qt: pass fmt to gpgrt_asprintf() * lang/qt/src/dn.cpp (parse_dn_part): Add fmt argument instead of using name directly. GnuPG-Bug-Id: 3023 Signed-off-by: Igor Gnatenko Signed-off-by: Andre Heinecke diff --git a/lang/qt/src/dn.cpp b/lang/qt/src/dn.cpp index f9fb2f6..4310ad6 100644 --- a/lang/qt/src/dn.cpp +++ b/lang/qt/src/dn.cpp @@ -167,7 +167,7 @@ parse_dn_part(DnPair *array, const unsigned char *string) for (unsigned int i = 0; i < numOidMaps; ++i) if (!strcasecmp((char *)p, oidmap[i].oid)) { free(p); - gpgrt_asprintf(&p, oidmap[i].name); + gpgrt_asprintf(&p, "%s", oidmap[i].name); break; } array->key = p; ----------------------------------------------------------------------- Summary of changes: lang/qt/src/dn.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- GnuPG Made Easy http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 3 12:29:27 2017 From: cvs at cvs.gnupg.org (by Pietro Cerutti) Date: Mon, 03 Apr 2017 12:29:27 +0200 Subject: [git] GPGME - branch, master, updated. gpgme-1.9.0-11-g5056598 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG Made Easy". The branch, master has been updated via 50565982cdd502c3852fcc6f598932bd32b5cdc3 (commit) from 5d4f977dac542340c877fdd4b1304fa8f6e058e6 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 50565982cdd502c3852fcc6f598932bd32b5cdc3 Author: Pietro Cerutti Date: Mon Apr 3 08:31:40 2017 +0000 FreeBSD's closefrom(2) does not return errors diff --git a/src/posix-io.c b/src/posix-io.c index a351806..14856df 100644 --- a/src/posix-io.c +++ b/src/posix-io.c @@ -473,7 +473,7 @@ _gpgme_io_spawn (const char *path, char *const argv[], unsigned int flags, * have closefrom(2) we first figure out the highest fd we * do not want to close, then call closefrom, and on success * use the regular code to close all fds up to the start - * point of closefrom. Note that Solaris' closefrom does + * point of closefrom. Note that Solaris' and FreeBSD's closefrom do * not return errors. */ #ifdef HAVE_CLOSEFROM { @@ -482,7 +482,7 @@ _gpgme_io_spawn (const char *path, char *const argv[], unsigned int flags, if (fd_list[i].fd > fd) fd = fd_list[i].fd; fd++; -#ifdef __sun +#if defined(__sun) || defined(__FreeBSD__) closefrom (fd); max_fds = fd; #else /*!__sun */ ----------------------------------------------------------------------- Summary of changes: src/posix-io.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- GnuPG Made Easy http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 3 17:00:57 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Mon, 03 Apr 2017 17:00:57 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.19-109-g608124a Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 608124af2c4522c6b9eb6fd70870c199bebc02cd (commit) via d23052b04ebb0ac731aa351650c4084f080c640b (commit) from 90932bdad607d06f4f040e3457caddba79ba8b7e (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 608124af2c4522c6b9eb6fd70870c199bebc02cd Author: Werner Koch Date: Mon Apr 3 16:53:01 2017 +0200 doc: Add two example profiles. -- diff --git a/doc/Makefile.am b/doc/Makefile.am index 0c2f2c9..0c78284 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -22,6 +22,7 @@ AM_CPPFLAGS = include $(top_srcdir)/am/cmacros.am examples = examples/README examples/scd-event examples/trustlist.txt \ + examples/vsnfd.prf examples/debug.prf \ examples/systemd-user/README \ examples/systemd-user/dirmngr.service \ examples/systemd-user/dirmngr.socket \ diff --git a/doc/examples/debug.prf b/doc/examples/debug.prf new file mode 100644 index 0000000..f635fc8 --- /dev/null +++ b/doc/examples/debug.prf @@ -0,0 +1,29 @@ +# debug.prf - Configure options for easier debugging -*- conf -*- +# +# Note that the actual debug options for each component need to be set +# manually. Running the component with "--debug help" shows a list of +# supported values. To watch the logs this command can be used: +# +# watchgnupg --time-only --force $(gpgconf --list-dirs socketdir)/S.log +# + +[gpg] +log-file socket:// +verbose +#debug ipc + +[gpgsm] +log-file socket:// +verbose +#debug ipc + +[gpg-agent] +log-file socket:// +verbose +#debug ipc +#debug-pinentry + +[dirmngr] +log-file socket:// +verbose +#debug ipc,dns diff --git a/doc/examples/vsnfd.prf b/doc/examples/vsnfd.prf new file mode 100644 index 0000000..17c6d4c --- /dev/null +++ b/doc/examples/vsnfd.prf @@ -0,0 +1,21 @@ +# vsnfd.prf - Configure options for the VS-NfD mode -*- conf -*- + +[gpg] +compliance de-vs +default-new-key-algo brainpoolP256r1+brainpoolP256r1 + +[gpgsm] +enable-crl-checks + +[gpg-agent] +enable-extended-key-format +default-cache-ttl 900 +max-cache-ttl [] 3600 +no-allow-mark-trusted +no-allow-external-cache +enforce-passphrase-constraints +min-passphrase-len 9 +min-passphrase-nonalpha 0 + +[dirmngr] +allow-ocsp commit d23052b04ebb0ac731aa351650c4084f080c640b Author: Werner Koch Date: Mon Apr 3 16:52:37 2017 +0200 gpgconf: Add --enable-extended-key-format for the agent. * tools/gpgconf-conf.c: Add option. * agent/gpg-agent.c (main) : Add option. Signed-off-by: Werner Koch diff --git a/agent/gpg-agent.c b/agent/gpg-agent.c index 49b10c1..e23f438 100644 --- a/agent/gpg-agent.c +++ b/agent/gpg-agent.c @@ -1378,6 +1378,8 @@ main (int argc, char **argv ) GC_OPT_FLAG_NONE|GC_OPT_FLAG_RUNTIME); es_printf ("pinentry-timeout:%lu:0:\n", GC_OPT_FLAG_DEFAULT|GC_OPT_FLAG_RUNTIME); + es_printf ("enable-extended-key-format:%lu:\n", + GC_OPT_FLAG_NONE|GC_OPT_FLAG_RUNTIME); agent_exit (0); } diff --git a/tools/gpgconf-comp.c b/tools/gpgconf-comp.c index 1055212..0ef3cb4 100644 --- a/tools/gpgconf-comp.c +++ b/tools/gpgconf-comp.c @@ -503,6 +503,9 @@ static gc_option_t gc_options_gpg_agent[] = { "enable-putty-support", GC_OPT_FLAG_NONE, GC_LEVEL_BASIC, "gnupg", "enable putty support", GC_ARG_TYPE_NONE, GC_BACKEND_GPG_AGENT }, + { "enable-extended-key-format", GC_OPT_FLAG_RUNTIME, GC_LEVEL_INVISIBLE, + NULL, NULL, + GC_ARG_TYPE_NONE, GC_BACKEND_GPG_AGENT }, { "Debug", GC_OPT_FLAG_GROUP, GC_LEVEL_ADVANCED, ----------------------------------------------------------------------- Summary of changes: agent/gpg-agent.c | 2 ++ doc/Makefile.am | 1 + doc/examples/debug.prf | 29 +++++++++++++++++++++++++++++ doc/examples/vsnfd.prf | 21 +++++++++++++++++++++ tools/gpgconf-comp.c | 3 +++ 5 files changed, 56 insertions(+) create mode 100644 doc/examples/debug.prf create mode 100644 doc/examples/vsnfd.prf hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 3 17:16:03 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Mon, 03 Apr 2017 17:16:03 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.19-112-gc6b5611 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via c6b5611c230daf738a3e913092c8976734179904 (commit) via c7be01dae914c183dd99bd531a388c794d858c61 (commit) via 661d22c1287027e402019e201cd53514f5405835 (commit) from 608124af2c4522c6b9eb6fd70870c199bebc02cd (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit c6b5611c230daf738a3e913092c8976734179904 Author: Werner Koch Date: Mon Apr 3 17:12:26 2017 +0200 po: Auto-update. -- diff --git a/po/ca.po b/po/ca.po index 296b374..8e57af2 100644 --- a/po/ca.po +++ b/po/ca.po @@ -3646,10 +3646,18 @@ msgstr "ha fallat l'actualitzaci?: %s\n" msgid "Key not changed so no update needed.\n" msgstr "La clau no ha canviat, per tant no cal actualitzaci?.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "No podeu esborrar l'?ltim ID d'usuari!\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "La generaci? de claus ha fallat: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "no s'ha pogut comprovar la signatura creada: %s\n" + +#, fuzzy, c-format +msgid "setting the primary user ID failed: %s\n" +msgstr "no s'ha pogut comprovar la signatura creada: %s\n" #, fuzzy, c-format msgid "\"%s\" is not a fingerprint\n" @@ -4006,6 +4014,11 @@ msgstr "l'ID d'usuari ?%s? ja est? revocat\n" msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "AV?S: una signatura d'ID d'usuari est? datada %d segons en el futur\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "No podeu esborrar l'?ltim ID d'usuari!\n" + #, fuzzy, c-format msgid "Key %s is already revoked.\n" msgstr "l'ID d'usuari ?%s? ja est? revocat\n" @@ -9149,6 +9162,11 @@ msgid "" msgstr "" #, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "La generaci? de claus ha fallat: %s\n" + +#, fuzzy #~ msgid "|A|Please enter the Admin PIN%%0A[remaining attempts: %d]" #~ msgstr "canvia la contrasenya" diff --git a/po/cs.po b/po/cs.po index 487972b..a2e78e1 100644 --- a/po/cs.po +++ b/po/cs.po @@ -3384,10 +3384,20 @@ msgstr "aktualizace selhala: %s\n" msgid "Key not changed so no update needed.\n" msgstr "Kl?? nebyl zm?n?n, tak?e nen? pot?eba jej aktualizovat.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "Nem??ete smazat posledn? id u?ivatele!\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "Vytvo?en? kl??e se nepoda?ilo: %s\n" +#| msgid "checking the trust list failed: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "kontrola seznamu d?v?ry se nepoda?ila: %s\n" + +#, fuzzy, c-format +#| msgid "checking the trust list failed: %s\n" +msgid "setting the primary user ID failed: %s\n" +msgstr "kontrola seznamu d?v?ry se nepoda?ila: %s\n" #, c-format msgid "\"%s\" is not a fingerprint\n" @@ -3713,6 +3723,11 @@ msgstr "u?ivatelsk? ID ?%s? je ji? revokov?no\n" msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "VAROV?N?: podpis ID u?ivatele je datov?n %d sekund v budoucnosti\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "Nem??ete smazat posledn? id u?ivatele!\n" + #, c-format msgid "Key %s is already revoked.\n" msgstr "Kl?? %s je ji? revokov?n.\n" @@ -8697,6 +8712,11 @@ msgstr "" "Syntaxe: gpg-check-pattern [volby] soubor_se_vzorem\n" "Prov??? heslo zadan? na vstupu proti souboru se vzory\n" +#, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "Vytvo?en? kl??e se nepoda?ilo: %s\n" + #~ msgid "||Please enter the PIN%%0A[sigs done: %lu]" #~ msgstr "||Pros?m vlo?te PIN%%0A[podpis hotov: %lu]" diff --git a/po/da.po b/po/da.po index 0cd2a63..2098d52 100644 --- a/po/da.po +++ b/po/da.po @@ -3567,10 +3567,20 @@ msgstr "opdatering mislykkedes: %s\n" msgid "Key not changed so no update needed.\n" msgstr "N?gle ikke ?ndret s? ingen opdatering kr?vet.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "Du kan ikke slette den sidste bruger-id!\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "N?gleoprettelse mislykkedes: %s\n" +#| msgid "checking the trust list failed: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "kontrol af trov?rdighedslisten mislykkedes: %s\n" + +#, fuzzy, c-format +#| msgid "checking the trust list failed: %s\n" +msgid "setting the primary user ID failed: %s\n" +msgstr "kontrol af trov?rdighedslisten mislykkedes: %s\n" #, fuzzy, c-format #| msgid "invalid fingerprint" @@ -3915,6 +3925,11 @@ msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "" "ADVARSEL: En bruger-id-underskrift er dateret %d sekunder inde i fremtiden\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "Du kan ikke slette den sidste bruger-id!\n" + #, c-format msgid "Key %s is already revoked.\n" msgstr "N?gle %s er allerede tilbagekaldt.\n" @@ -9208,6 +9223,11 @@ msgstr "" "Syntaks: gpg-check-pattern [tilvalg] m?nsterfil\n" "Kontroller en adgangsfrase angivet p? stdin mod m?nsterfilen\n" +#, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "N?gleoprettelse mislykkedes: %s\n" + #~ msgid "||Please enter the PIN%%0A[sigs done: %lu]" #~ msgstr "||Indtast venligst PIN%%0A[sigs f?rdig: %lu]" diff --git a/po/el.po b/po/el.po index 956ba1a..58c66a7 100644 --- a/po/el.po +++ b/po/el.po @@ -3552,10 +3552,18 @@ msgstr "? ????????? ???????: %s\n" msgid "Key not changed so no update needed.\n" msgstr "?? ?????? ??? ?????? ????? ??? ?????????? ?????????.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "??? ???????? ?? ?????????? ?? ????????? user ID!\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "? ?????????? ???????? ???????: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "??????? ? ??????? ??? ????????? ??? ?????????????: %s\n" + +#, fuzzy, c-format +msgid "setting the primary user ID failed: %s\n" +msgstr "??????? ? ??????? ??? ????????? ??? ?????????????: %s\n" #, fuzzy, c-format msgid "\"%s\" is not a fingerprint\n" @@ -3909,6 +3917,11 @@ msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "" "?????????????: ??? ???????? user ID ???? ?????????? %d ??????? ??? ??????\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "??? ???????? ?? ?????????? ?? ????????? user ID!\n" + #, fuzzy, c-format msgid "Key %s is already revoked.\n" msgstr "?? user ID \"%s\" ???? ??? ?????????\n" @@ -8972,6 +8985,11 @@ msgid "" msgstr "" #, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "? ?????????? ???????? ???????: %s\n" + +#, fuzzy #~ msgid "|A|Please enter the Admin PIN%%0A[remaining attempts: %d]" #~ msgstr "?????? ??? ?????? ??????" diff --git a/po/eo.po b/po/eo.po index c521758..7178bab 100644 --- a/po/eo.po +++ b/po/eo.po @@ -3539,10 +3539,18 @@ msgstr "aktualigo malsukcesis: %s\n" msgid "Key not changed so no update needed.\n" msgstr "?losilo ne ?an?ita, do aktualigo ne necesas.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "Vi ne povas forvi?i la lastan uzantidentigilon!\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "Kreado de ?losiloj malsukcesis: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "kontrolo de kreita subskribo malsukcesis: %s\n" + +#, fuzzy, c-format +msgid "setting the primary user ID failed: %s\n" +msgstr "kontrolo de kreita subskribo malsukcesis: %s\n" #, fuzzy, c-format msgid "\"%s\" is not a fingerprint\n" @@ -3884,6 +3892,11 @@ msgstr "Uzantidentigilo \"%s\" estas revokita.\n" msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "Vi ne povas forvi?i la lastan uzantidentigilon!\n" + #, fuzzy, c-format msgid "Key %s is already revoked.\n" msgstr "Uzantidentigilo \"%s\" estas revokita.\n" @@ -8916,6 +8929,11 @@ msgid "" msgstr "" #, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "Kreado de ?losiloj malsukcesis: %s\n" + +#, fuzzy #~ msgid "|A|Please enter the Admin PIN%%0A[remaining attempts: %d]" #~ msgstr "?an?i la pasfrazon" diff --git a/po/es.po b/po/es.po index dd61f45..0b6b6bf 100644 --- a/po/es.po +++ b/po/es.po @@ -3579,10 +3579,20 @@ msgstr "actualizaci?n fallida: %s\n" msgid "Key not changed so no update needed.\n" msgstr "Clave sin cambios, no se necesita actualizaci?n.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "?No puede borrar el ?ltimo identificador de usuario!\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "Creaci?n de la clave fallida: %s\n" +#| msgid "checking the trust list failed: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "la comprobaci?n de la lista de confianza fall?: %s\n" + +#, fuzzy, c-format +#| msgid "checking the trust list failed: %s\n" +msgid "setting the primary user ID failed: %s\n" +msgstr "la comprobaci?n de la lista de confianza fall?: %s\n" #, fuzzy, c-format #| msgid "invalid fingerprint" @@ -3920,6 +3930,11 @@ msgstr "ID de usuario \"%s\" ya ha sido revocado\n" msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "AVISO: un ID de usuario tiene fecha %d segundos en el futuro\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "?No puede borrar el ?ltimo identificador de usuario!\n" + #, c-format msgid "Key %s is already revoked.\n" msgstr "La clave %s ya ha sido revocada.\n" @@ -9247,6 +9262,11 @@ msgstr "" "Compara frase contrase?a dada en entrada est?ndar con un fichero de " "patrones\n" +#, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "Creaci?n de la clave fallida: %s\n" + #~ msgid "||Please enter the PIN%%0A[sigs done: %lu]" #~ msgstr "||Por favor introduzca PIN%%0A[firmas hechas: %lu]" diff --git a/po/et.po b/po/et.po index 1b3b417..12e3d0b 100644 --- a/po/et.po +++ b/po/et.po @@ -3525,10 +3525,18 @@ msgstr "uuendamine eba?nnestus: %s\n" msgid "Key not changed so no update needed.\n" msgstr "V?tit ei muudetud, seega pole uuendamist vaja.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "Viimast kasutaja ID ei saa kustutada!\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "V?tme genereerimine eba?nnestus: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "Loodud allkirja ei ?nnestu kontrollida: %s\n" + +#, fuzzy, c-format +msgid "setting the primary user ID failed: %s\n" +msgstr "Loodud allkirja ei ?nnestu kontrollida: %s\n" #, fuzzy, c-format msgid "\"%s\" is not a fingerprint\n" @@ -3870,6 +3878,11 @@ msgstr "kasutaja ID \"%s\" on juba t?histatud\n" msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "HOIATUS: kasutaja ID allkirja ajatempel on %d sekundit tulevikus\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "Viimast kasutaja ID ei saa kustutada!\n" + #, fuzzy, c-format msgid "Key %s is already revoked.\n" msgstr "kasutaja ID \"%s\" on juba t?histatud\n" @@ -8890,6 +8903,11 @@ msgid "" msgstr "" #, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "V?tme genereerimine eba?nnestus: %s\n" + +#, fuzzy #~ msgid "|A|Please enter the Admin PIN%%0A[remaining attempts: %d]" #~ msgstr "muuda parooli" diff --git a/po/fi.po b/po/fi.po index c6cae25..e84256c 100644 --- a/po/fi.po +++ b/po/fi.po @@ -3546,10 +3546,18 @@ msgstr "p?ivitys ep?onnistui: %s\n" msgid "Key not changed so no update needed.\n" msgstr "P?ivityst? ei tarvita, koska avain ei ole muuttunut.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "Et voi poistaa viimeist? k?ytt?j?tunnusta!\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "Avaimen luonti ep?onnistui: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "luodun allekirjoituksen tarkistus ep?onnistui: %s\n" + +#, fuzzy, c-format +msgid "setting the primary user ID failed: %s\n" +msgstr "luodun allekirjoituksen tarkistus ep?onnistui: %s\n" #, fuzzy, c-format msgid "\"%s\" is not a fingerprint\n" @@ -3894,6 +3902,11 @@ msgstr "" "VAROITUS: k?ytt?j?tunnuksen allekirjoitus on p?iv?tty %d sekuntin p??h?n " "tulevaisuuteen\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "Et voi poistaa viimeist? k?ytt?j?tunnusta!\n" + #, fuzzy, c-format msgid "Key %s is already revoked.\n" msgstr "k?ytt?j?tunnus \"%s\" on jo mit?t?ity\n" @@ -8954,6 +8967,11 @@ msgid "" msgstr "" #, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "Avaimen luonti ep?onnistui: %s\n" + +#, fuzzy #~ msgid "|A|Please enter the Admin PIN%%0A[remaining attempts: %d]" #~ msgstr "muuta salasanaa" diff --git a/po/fr.po b/po/fr.po index d8aea0d..5701c43 100644 --- a/po/fr.po +++ b/po/fr.po @@ -3439,10 +3439,20 @@ msgstr "?chec de la mise ? jour?: %s\n" msgid "Key not changed so no update needed.\n" msgstr "La clef n'a pas ?t? modifi?e donc la mise ? jour est inutile.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "Vous ne pouvez pas supprimer la derni?re identit?.\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "?chec de g?n?ration de la clef?: %s\n" +#| msgid "checking the trust list failed: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "?chec de v?rification de la liste de confiance?: %s\n" + +#, fuzzy, c-format +#| msgid "checking the trust list failed: %s\n" +msgid "setting the primary user ID failed: %s\n" +msgstr "?chec de v?rification de la liste de confiance?: %s\n" #, c-format msgid "\"%s\" is not a fingerprint\n" @@ -3782,6 +3792,11 @@ msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "" "Attention?: une signature d'identit? date de %d?secondes?dans le futur\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "Vous ne pouvez pas supprimer la derni?re identit?.\n" + #, c-format msgid "Key %s is already revoked.\n" msgstr "La clef %s est d?j? r?voqu?.\n" @@ -8921,6 +8936,11 @@ msgstr "" "V?rifier une phrase secr?te donn?e sur l'entr?e standard par rapport ? " "ficmotif\n" +#, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "?chec de g?n?ration de la clef?: %s\n" + #~ msgid "||Please enter the PIN%%0A[sigs done: %lu]" #~ msgstr "||Veuillez entrer le code personnel%%0A[signatures faites?: %lu]" diff --git a/po/gl.po b/po/gl.po index cacffc3..3025883 100644 --- a/po/gl.po +++ b/po/gl.po @@ -3551,10 +3551,18 @@ msgstr "a actualizaci?n fallou: %s\n" msgid "Key not changed so no update needed.\n" msgstr "A chave non cambiou, polo que non fai falla actualizar.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "?Non pode borra-lo ?ltimo ID de usuario!\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "A xeraci?n da chave fallou: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "fallou a comprobaci?n da sinatura creada: %s\n" + +#, fuzzy, c-format +msgid "setting the primary user ID failed: %s\n" +msgstr "fallou a comprobaci?n da sinatura creada: %s\n" #, fuzzy, c-format msgid "\"%s\" is not a fingerprint\n" @@ -3906,6 +3914,11 @@ msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "" "AVISO: unha sinatura de ID de usuario ten unha data %d segundos no futuro\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "?Non pode borra-lo ?ltimo ID de usuario!\n" + #, fuzzy, c-format msgid "Key %s is already revoked.\n" msgstr "o ID de usuario \"%s\" xa est? revocado\n" @@ -8981,6 +8994,11 @@ msgid "" msgstr "" #, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "A xeraci?n da chave fallou: %s\n" + +#, fuzzy #~ msgid "|A|Please enter the Admin PIN%%0A[remaining attempts: %d]" #~ msgstr "cambia-lo contrasinal" diff --git a/po/hu.po b/po/hu.po index d7d8c11..0a93223 100644 --- a/po/hu.po +++ b/po/hu.po @@ -3524,10 +3524,18 @@ msgstr "Friss?t?s sikertelen: %s.\n" msgid "Key not changed so no update needed.\n" msgstr "A kulcs nem v?ltozott, nincs sz?ks?g friss?t?sre.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "Nem t?r?lheti az utols? felhaszn?l?azonos?t?t!\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "Kulcsgener?l?s sikertelen: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "A l?trehozott al??r?s ellen?rz?se sikertelen: %s.\n" + +#, fuzzy, c-format +msgid "setting the primary user ID failed: %s\n" +msgstr "A l?trehozott al??r?s ellen?rz?se sikertelen: %s.\n" #, fuzzy, c-format msgid "\"%s\" is not a fingerprint\n" @@ -3872,6 +3880,11 @@ msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "" "FIGYELEM: A felhaszn?l?azonos?t?t %d m?sodperccel a j?v?ben ?rt?k al?.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "Nem t?r?lheti az utols? felhaszn?l?azonos?t?t!\n" + #, fuzzy, c-format msgid "Key %s is already revoked.\n" msgstr "\"%s\" felhaszn?l?i azonos?t?t m?r visszavont?k.\n" @@ -8921,6 +8934,11 @@ msgid "" msgstr "" #, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "Kulcsgener?l?s sikertelen: %s\n" + +#, fuzzy #~ msgid "|A|Please enter the Admin PIN%%0A[remaining attempts: %d]" #~ msgstr "jelsz?v?ltoztat?s" diff --git a/po/id.po b/po/id.po index 04bac61..3464c68 100644 --- a/po/id.po +++ b/po/id.po @@ -3529,10 +3529,18 @@ msgstr "gagal memperbarui: %s\n" msgid "Key not changed so no update needed.\n" msgstr "Kunci tidak berubah sehingga tidak perlu pembaharuan.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "Anda tidak dapat menghapus ID user terakhir!\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "Pembuatan kunci gagal: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "Gagal memeriksa signature yang dibuat: %s\n" + +#, fuzzy, c-format +msgid "setting the primary user ID failed: %s\n" +msgstr "Gagal memeriksa signature yang dibuat: %s\n" #, fuzzy, c-format msgid "\"%s\" is not a fingerprint\n" @@ -3881,6 +3889,11 @@ msgstr "User ID \"%s\" telah dibatalkan\n" msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "PERINGATAN: signature user ID bertanggal %d detik di masa depan\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "Anda tidak dapat menghapus ID user terakhir!\n" + #, fuzzy, c-format msgid "Key %s is already revoked.\n" msgstr "User ID \"%s\" telah dibatalkan\n" @@ -8912,6 +8925,11 @@ msgid "" msgstr "" #, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "Pembuatan kunci gagal: %s\n" + +#, fuzzy #~ msgid "|A|Please enter the Admin PIN%%0A[remaining attempts: %d]" #~ msgstr "ubah passphrase" diff --git a/po/it.po b/po/it.po index e9f9394..fb81476 100644 --- a/po/it.po +++ b/po/it.po @@ -3536,10 +3536,18 @@ msgstr "aggiornamento fallito: %s\n" msgid "Key not changed so no update needed.\n" msgstr "La chiave non ? cambiata quindi non sono necessari aggiornamenti.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "Non puoi cancellare l'ultimo user ID!\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "Generazione della chiave fallita: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "controllo della firma creata fallito: %s\n" + +#, fuzzy, c-format +msgid "setting the primary user ID failed: %s\n" +msgstr "controllo della firma creata fallito: %s\n" #, fuzzy, c-format msgid "\"%s\" is not a fingerprint\n" @@ -3895,6 +3903,11 @@ msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "" "ATTENZIONE: una firma dell'user ID ha la data di %d secondi nel futuro\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "Non puoi cancellare l'ultimo user ID!\n" + #, fuzzy, c-format msgid "Key %s is already revoked.\n" msgstr "l'user ID \"%s\" ? gi? stato revocato\n" @@ -8956,6 +8969,11 @@ msgid "" msgstr "" #, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "Generazione della chiave fallita: %s\n" + +#, fuzzy #~ msgid "|A|Please enter the Admin PIN%%0A[remaining attempts: %d]" #~ msgstr "cambia la passphrase" diff --git a/po/ja.po b/po/ja.po index 6cbb371..02c3b64 100644 --- a/po/ja.po +++ b/po/ja.po @@ -2314,7 +2314,8 @@ msgid "'%s' does not appear to be a valid key ID, fingerprint or keygrip\n" msgstr "'%s'?????ID, ??????????keygrip?????????\n" msgid "WARNING: no command supplied. Trying to guess what you mean ...\n" -msgstr "??: ???????????????????????????????? ...\n" +msgstr "" +"??: ???????????????????????????????? ...\n" msgid "Go ahead and type your message ...\n" msgstr "??????????????????? ...\n" @@ -3241,9 +3242,20 @@ msgstr "?????????: %s\n" msgid "Key not changed so no update needed.\n" msgstr "????????????????\n" -#, c-format -msgid "User ID revocation failed: %s\n" -msgstr "???ID??????????: %s\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "??????ID????????!\n" + +#, fuzzy, c-format +#| msgid "checking the trust list failed: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "???????????????: %s\n" + +#, fuzzy, c-format +#| msgid "checking the trust list failed: %s\n" +msgid "setting the primary user ID failed: %s\n" +msgstr "???????????????: %s\n" #, c-format msgid "\"%s\" is not a fingerprint\n" @@ -3561,6 +3573,11 @@ msgstr "???ID\"%s\"????????????\n" msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "*??*: ???ID????%d?????\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "??????ID????????!\n" + #, c-format msgid "Key %s is already revoked.\n" msgstr "? %s ?????????????\n" @@ -8322,6 +8339,9 @@ msgstr "" "??: gpg-check-pattern [?????] ????????\n" "????????????????????????????\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "???ID??????????: %s\n" + #~ msgid "||Please enter the PIN%%0A[sigs done: %lu]" #~ msgstr "||PIN?????????%%0A[???: %lu]" diff --git a/po/nb.po b/po/nb.po index d104bf5..f20daa0 100644 --- a/po/nb.po +++ b/po/nb.po @@ -3301,9 +3301,20 @@ msgstr "oppdatering mislyktes: %s\n" msgid "Key not changed so no update needed.\n" msgstr "N?kkelen ble ikke endret, s? ingen oppdatering er n?dvendig.\n" -#, c-format -msgid "User ID revocation failed: %s\n" -msgstr "oppheving av bruker-ID mislyktes: %s\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "Du kan ikke slette siste bruker-ID.\n" + +#, fuzzy, c-format +#| msgid "checking the trust list failed: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "kontroll av tillitsliste mislyktes: %s\n" + +#, fuzzy, c-format +#| msgid "checking the trust list failed: %s\n" +msgid "setting the primary user ID failed: %s\n" +msgstr "kontroll av tillitsliste mislyktes: %s\n" #, c-format msgid "\"%s\" is not a fingerprint\n" @@ -3627,6 +3638,11 @@ msgstr "bruker-ID ?%s? er allerede opphevet\n" msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "ADVARSEL: en bruker-id-signatur er datert %d sekunder i fremtiden\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "Du kan ikke slette siste bruker-ID.\n" + #, c-format msgid "Key %s is already revoked.\n" msgstr "N?kkelen %s er allerede opphevet.\n" @@ -8597,6 +8613,9 @@ msgstr "" "Syntaks: gpg-check-pattern [valg] m?nsterfil\n" "Kontroller passordfrase oppgitt p? standard innkanal mot valgt m?nsterfil\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "oppheving av bruker-ID mislyktes: %s\n" + #~ msgid "||Please enter the PIN%%0A[sigs done: %lu]" #~ msgstr "||Skriv inn PIN%%0A[signaturer utf?rt: %lu]" diff --git a/po/pl.po b/po/pl.po index 2559b48..4bf61fa 100644 --- a/po/pl.po +++ b/po/pl.po @@ -3582,10 +3582,20 @@ msgstr "zapis zmian nie powi?d? si?: %s\n" msgid "Key not changed so no update needed.\n" msgstr "Klucz nie zosta? zmieniony wi?c zapis zmian nie jest konieczny.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "Nie mo?esz usun?? ostatniego identyfikatora u?ytkownika!\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "Generacja klucza nie powiod?a si?: %s\n" +#| msgid "checking the trust list failed: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "sprawdzenie listy zaufania nie powiod?o si?: %s\n" + +#, fuzzy, c-format +#| msgid "checking the trust list failed: %s\n" +msgid "setting the primary user ID failed: %s\n" +msgstr "sprawdzenie listy zaufania nie powiod?o si?: %s\n" #, fuzzy, c-format #| msgid "invalid fingerprint" @@ -3927,6 +3937,11 @@ msgstr "" "OSTRZE?ENIE: identyfikator u?ytkownika podpisany za %d sekund (w " "przysz?o?ci)\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "Nie mo?esz usun?? ostatniego identyfikatora u?ytkownika!\n" + #, c-format msgid "Key %s is already revoked.\n" msgstr "Klucz %s jest ju? uniewa?niony.\n" @@ -9278,6 +9293,11 @@ msgstr "" "Sk?adnia: gpg-check-pattern [opcje] plik-wzorc?w\n" "Sprawdzanie has?a ze standardowego wej?cia wzgl?dem pliku wzorc?w\n" +#, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "Generacja klucza nie powiod?a si?: %s\n" + #~ msgid "||Please enter the PIN%%0A[sigs done: %lu]" #~ msgstr "||Prosz? wpisa? PIN%%0A[podpis?w wykonanych: %lu]" diff --git a/po/pt.po b/po/pt.po index 1be33e1..cf05b41 100644 --- a/po/pt.po +++ b/po/pt.po @@ -3537,10 +3537,18 @@ msgstr "actualiza??o falhou: %s\n" msgid "Key not changed so no update needed.\n" msgstr "Chave n?o alterada, nenhuma actualiza??o ? necess?ria.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "Voc? n?o pode remover o ?ltimo ID de utilizador!\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "A gera??o de chaves falhou: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "verifica??o da assinatura criada falhou: %s\n" + +#, fuzzy, c-format +msgid "setting the primary user ID failed: %s\n" +msgstr "verifica??o da assinatura criada falhou: %s\n" #, fuzzy, c-format msgid "\"%s\" is not a fingerprint\n" @@ -3881,6 +3889,11 @@ msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "" "AVISO: a assintura do ID do utilizador tem data %d segundos no futuro\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "Voc? n?o pode remover o ?ltimo ID de utilizador!\n" + #, fuzzy, c-format msgid "Key %s is already revoked.\n" msgstr "o utilizador com o id \"%s\" j? est? revocado\n" @@ -8923,6 +8936,11 @@ msgid "" msgstr "" #, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "A gera??o de chaves falhou: %s\n" + +#, fuzzy #~ msgid "|A|Please enter the Admin PIN%%0A[remaining attempts: %d]" #~ msgstr "muda a frase secreta" diff --git a/po/ro.po b/po/ro.po index 7c7f7f3..d2fa764 100644 --- a/po/ro.po +++ b/po/ro.po @@ -3540,10 +3540,18 @@ msgstr "actualizarea a e?uat: %s\n" msgid "Key not changed so no update needed.\n" msgstr "Cheia nu a fost schimbat? a?a c? nici o actualizare a fost necesar?.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "Nu pute?i ?terge ultimul ID utilizator!\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "Generarea cheii a e?uat: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "verificarea semn?turii create a e?uat: %s\n" + +#, fuzzy, c-format +msgid "setting the primary user ID failed: %s\n" +msgstr "verificarea semn?turii create a e?uat: %s\n" #, fuzzy, c-format #| msgid "invalid fingerprint" @@ -3891,6 +3899,11 @@ msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "" "AVERTISMENT: o semn?tur? ID utilizator este datat? %d secunde ?n viitor\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "Nu pute?i ?terge ultimul ID utilizator!\n" + #, c-format msgid "Key %s is already revoked.\n" msgstr "Cheia %s este deja revocat?.\n" @@ -8994,6 +9007,11 @@ msgid "" "Check a passphrase given on stdin against the patternfile\n" msgstr "" +#, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "Generarea cheii a e?uat: %s\n" + #~ msgid "||Please enter the PIN%%0A[sigs done: %lu]" #~ msgstr "||V? rug?m introduce?i PIN%%0A[semn?turi f?cute: %lu]" diff --git a/po/ru.po b/po/ru.po index a4c14ea..001c730 100644 --- a/po/ru.po +++ b/po/ru.po @@ -3315,9 +3315,20 @@ msgstr "???? ??? ??????????: %s\n" msgid "Key not changed so no update needed.\n" msgstr "???? ?? ????????? - ?????????? ?? ?????.\n" -#, c-format -msgid "User ID revocation failed: %s\n" -msgstr "???? ??? ?????? ??????????????: %s\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "?? ?? ?????? ??????? ????????? ????????????? ????????????!\n" + +#, fuzzy, c-format +#| msgid "checking the trust list failed: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "???? ???????? ?????? ???????: %s\n" + +#, fuzzy, c-format +#| msgid "checking the trust list failed: %s\n" +msgid "setting the primary user ID failed: %s\n" +msgstr "???? ???????? ?????? ???????: %s\n" #, c-format msgid "\"%s\" is not a fingerprint\n" @@ -3647,6 +3658,11 @@ msgstr "" "????????: ??????? ?????????????? ???????????? ?????????? %d ????????? ? " "???????\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "?? ?? ?????? ??????? ????????? ????????????? ????????????!\n" + #, c-format msgid "Key %s is already revoked.\n" msgstr "???? %s ??? ???????.\n" @@ -8590,6 +8606,9 @@ msgstr "" "?????????: gpg-check-pattern [?????????] ????_????????\n" "????????? ?????-??????, ??????????? ?? stdin, ?? ????? ????????\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "???? ??? ?????? ??????????????: %s\n" + #~ msgid "||Please enter the PIN%%0A[sigs done: %lu]" #~ msgstr "||??????? PIN%%0A[??????? ????????: %lu]" diff --git a/po/sk.po b/po/sk.po index 9840924..7b72fe4 100644 --- a/po/sk.po +++ b/po/sk.po @@ -3548,10 +3548,18 @@ msgstr "aktualiz?cia zlyhala: %s\n" msgid "Key not changed so no update needed.\n" msgstr "k??? nebol zmenen?, tak?e nie je potrebn? ho aktualizova?.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "Nem??ete zmaza? posledn? id u??vate?a!\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "Vytvorenie k???a sa nepodarilo: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "kontrola vytvoren?ho podpisu sa nepodarila: %s\n" + +#, fuzzy, c-format +msgid "setting the primary user ID failed: %s\n" +msgstr "kontrola vytvoren?ho podpisu sa nepodarila: %s\n" #, fuzzy, c-format msgid "\"%s\" is not a fingerprint\n" @@ -3891,6 +3899,11 @@ msgstr "u??vate?sk? ID \"%s\" je u? revokovan?\n" msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "VAROVANIE: podpis pou?ivate?k?ho ID vznikol %d sekund v bud?cnosti\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "Nem??ete zmaza? posledn? id u??vate?a!\n" + #, fuzzy, c-format msgid "Key %s is already revoked.\n" msgstr "u??vate?sk? ID \"%s\" je u? revokovan?\n" @@ -8942,6 +8955,11 @@ msgid "" msgstr "" #, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "Vytvorenie k???a sa nepodarilo: %s\n" + +#, fuzzy #~ msgid "|A|Please enter the Admin PIN%%0A[remaining attempts: %d]" #~ msgstr "zmeni? heslo" diff --git a/po/sv.po b/po/sv.po index ebb985f..c8912ae 100644 --- a/po/sv.po +++ b/po/sv.po @@ -3627,10 +3627,20 @@ msgstr "uppdateringen misslyckades: %s\n" msgid "Key not changed so no update needed.\n" msgstr "Nyckeln ?r of?r?ndrad s? det beh?vs ingen uppdatering.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "Du kan inte ta bort den sista anv?ndaridentiteten!\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "Nyckelgenereringen misslyckades: %s\n" +#| msgid "checking the trust list failed: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "kontroll mot tillitslistan misslyckades: %s\n" + +#, fuzzy, c-format +#| msgid "checking the trust list failed: %s\n" +msgid "setting the primary user ID failed: %s\n" +msgstr "kontroll mot tillitslistan misslyckades: %s\n" #, fuzzy, c-format #| msgid "invalid fingerprint" @@ -3979,6 +3989,11 @@ msgstr "" "VARNING: en signatur p? en anv?ndaridentitet ?r daterad %d sekunder in i " "framtiden\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "Du kan inte ta bort den sista anv?ndaridentiteten!\n" + #, c-format msgid "Key %s is already revoked.\n" msgstr "Nyckeln %s ?r redan sp?rrad.\n" @@ -9353,6 +9368,11 @@ msgstr "" "Syntax: gpg-check-pattern [flaggor] m?nsterfil\n" "Kontrollera en l?senfras angiven p? standard in mot m?nsterfilen\n" +#, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "Nyckelgenereringen misslyckades: %s\n" + #~ msgid "||Please enter the PIN%%0A[sigs done: %lu]" #~ msgstr "||Ange PIN-koden%%0A[signaturer kvar: %lu]" diff --git a/po/tr.po b/po/tr.po index 0e4e743..4ece9fd 100644 --- a/po/tr.po +++ b/po/tr.po @@ -3572,10 +3572,20 @@ msgstr "g?ncelleme ba?ar?s?z: %s\n" msgid "Key not changed so no update needed.\n" msgstr "G?ncelleme gere?i olmad???ndan anahtar de?i?medi.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "Son kullan?c? kimli?ini silemezsiniz!\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "Anahtar ?retimi ba?ar?s?zl??a u?rad?: %s\n" +#| msgid "checking the trust list failed: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "g?vence listesinin s?nanmas? ba?ar?s?z: %s\n" + +#, fuzzy, c-format +#| msgid "checking the trust list failed: %s\n" +msgid "setting the primary user ID failed: %s\n" +msgstr "g?vence listesinin s?nanmas? ba?ar?s?z: %s\n" #, fuzzy, c-format #| msgid "invalid fingerprint" @@ -3933,6 +3943,11 @@ msgstr "kullan?c? kimli?i \"%s\" zaten iptal edilmi?ti\n" msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "UYARI: bir kullan?c? kimli?i imzas? %d saniye gelecekte olu?turuldu\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "Son kullan?c? kimli?ini silemezsiniz!\n" + #, c-format msgid "Key %s is already revoked.\n" msgstr "Anahtar %s zaten y?r?rl?kten kald?r?lm??.\n" @@ -9257,6 +9272,11 @@ msgstr "" "Standart girdiden verilen anahtar parolas?n? ?r?nt? dosyas?yla " "kar??la?t?r?r\n" +#, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "Anahtar ?retimi ba?ar?s?zl??a u?rad?: %s\n" + #~ msgid "||Please enter the PIN%%0A[sigs done: %lu]" #~ msgstr "||L?tfen PIN'i giriniz%%0A[yap?lan imza: %lu]" diff --git a/po/uk.po b/po/uk.po index e38dd37..b5e5209 100644 --- a/po/uk.po +++ b/po/uk.po @@ -3351,9 +3351,20 @@ msgstr "??????? ?????????: %s\n" msgid "Key not changed so no update needed.\n" msgstr "???? ?? ???????, ???? ????????? ??????????.\n" -#, c-format -msgid "User ID revocation failed: %s\n" -msgstr "?????? ??????????? ????????????? ??????????? ??????? ???????: %s\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "?? ????? ???????? ???????? ????????????? ???????????!\n" + +#, fuzzy, c-format +#| msgid "checking the trust list failed: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "??????? ????????? ?????? ??????: %s\n" + +#, fuzzy, c-format +#| msgid "checking the trust list failed: %s\n" +msgid "setting the primary user ID failed: %s\n" +msgstr "??????? ????????? ?????? ??????: %s\n" #, c-format msgid "\"%s\" is not a fingerprint\n" @@ -3687,6 +3698,11 @@ msgstr "" "?????: ?????? ?????????????? ??????????? ????????? ????? ?? %d ?????? ? " "???????????\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "?? ????? ???????? ???????? ????????????? ???????????!\n" + #, c-format msgid "Key %s is already revoked.\n" msgstr "???? %s ??? ??????????.\n" @@ -8679,6 +8695,9 @@ msgstr "" "?????????: gpg-check-pattern [?????????] ????_????????\n" "?????????? ??????, ???????? ? stdin, ?? ????????? ?????_????????\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "?????? ??????????? ????????????? ??????????? ??????? ???????: %s\n" + #~ msgid "||Please enter the PIN%%0A[sigs done: %lu]" #~ msgstr "||???? ?????, ??????? ??????%%0A[????????: %lu]" diff --git a/po/zh_CN.po b/po/zh_CN.po index cbfbe24..c025fd6 100644 --- a/po/zh_CN.po +++ b/po/zh_CN.po @@ -3457,10 +3457,18 @@ msgstr "?????%s\n" msgid "Key not changed so no update needed.\n" msgstr "??????????????\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "??????????????\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "???????%s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "?????????????? %s\n" + +#, fuzzy, c-format +msgid "setting the primary user ID failed: %s\n" +msgstr "?????????????? %s\n" #, fuzzy, c-format #| msgid "invalid fingerprint" @@ -3795,6 +3803,11 @@ msgstr "?????%s???????\n" msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "?????????????????? %d ?????\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "??????????????\n" + #, c-format msgid "Key %s is already revoked.\n" msgstr "?? %s ?????\n" @@ -8818,6 +8831,11 @@ msgid "" "Check a passphrase given on stdin against the patternfile\n" msgstr "" +#, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "???????%s\n" + #~ msgid "||Please enter the PIN%%0A[sigs done: %lu]" #~ msgstr "||??? PIN%%0A[??????%lu]" diff --git a/po/zh_TW.po b/po/zh_TW.po index df869c9..046db45 100644 --- a/po/zh_TW.po +++ b/po/zh_TW.po @@ -3301,10 +3301,20 @@ msgstr "????: %s\n" msgid "Key not changed so no update needed.\n" msgstr "?????????????.\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "???????????? ID!\n" + #, fuzzy, c-format -#| msgid "Key generation failed: %s\n" -msgid "User ID revocation failed: %s\n" -msgstr "??????: %s\n" +#| msgid "checking the trust list failed: %s\n" +msgid "revoking the user ID failed: %s\n" +msgstr "?????????: %s\n" + +#, fuzzy, c-format +#| msgid "checking the trust list failed: %s\n" +msgid "setting the primary user ID failed: %s\n" +msgstr "?????????: %s\n" #, c-format msgid "\"%s\" is not a fingerprint\n" @@ -3633,6 +3643,11 @@ msgstr "??? ID \"%s\" ???\n" msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "??: ?????? ID ?????? %d ?????\n" +#, fuzzy +#| msgid "You can't delete the last user ID!\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "???????????? ID!\n" + #, c-format msgid "Key %s is already revoked.\n" msgstr "?? %s ???.\n" @@ -8459,6 +8474,11 @@ msgstr "" "??: gpg-check-pattern [??] ????\n" "??????????????????\n" +#, fuzzy +#~| msgid "Key generation failed: %s\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "??????: %s\n" + #~ msgid "||Please enter the PIN%%0A[sigs done: %lu]" #~ msgstr "||??? PIN%%0A[????: %lu]" commit c7be01dae914c183dd99bd531a388c794d858c61 Author: Werner Koch Date: Mon Apr 3 17:11:24 2017 +0200 po: Update the German translation Signed-off-by: Werner Koch diff --git a/po/de.po b/po/de.po index 165dade..e6a7cd2 100644 --- a/po/de.po +++ b/po/de.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: gnupg-2.1.0\n" "Report-Msgid-Bugs-To: translations at gnupg.org\n" -"PO-Revision-Date: 2017-02-22 18:55+0100\n" +"PO-Revision-Date: 2017-04-03 17:10+0200\n" "Last-Translator: Werner Koch \n" "Language-Team: German \n" "Language: de\n" @@ -3368,9 +3368,16 @@ msgstr "?nderung fehlgeschlagen: %s\n" msgid "Key not changed so no update needed.\n" msgstr "Schl?ssel ist nicht ge?ndert worden, also ist kein Speichern n?tig.\n" +msgid "cannot revoke the last valid user ID.\n" +msgstr "Die letzte User-ID kann nicht widerrufen werden!\n" + +#, c-format +msgid "revoking the user ID failed: %s\n" +msgstr "Fehler beim Widerrufen der User-ID: %s\n" + #, c-format -msgid "User ID revocation failed: %s\n" -msgstr "Widerufen der User-ID fehlgeschlagen: %s\n" +msgid "setting the primary user ID failed: %s\n" +msgstr "Fehler beim Setzen der Haupt-User-ID: %s\n" #, c-format msgid "\"%s\" is not a fingerprint\n" @@ -3703,6 +3710,9 @@ msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "" "WARNUNG: Eine User-ID-Signatur datiert mit %d Sekunden aus der Zukunft\n" +msgid "Cannot revoke the last valid user ID.\n" +msgstr "Die letzte User-ID kann nicht widerrufen werden!\n" + #, c-format msgid "Key %s is already revoked.\n" msgstr "Schl?ssel %s ist bereits widerrufen\n" @@ -8791,6 +8801,9 @@ msgstr "" "Syntax: gpg-check-pattern [optionen] Musterdatei\n" "Die von stdin gelesene Passphrase gegen die Musterdatei pr?fen\n" +#~ msgid "User ID revocation failed: %s\n" +#~ msgstr "Widerufen der User-ID fehlgeschlagen: %s\n" + #~ msgid "||Please enter the PIN%%0A[sigs done: %lu]" #~ msgstr "||Bitte die PIN eingeben%%0A[Sigs erzeugt: %lu]" commit 661d22c1287027e402019e201cd53514f5405835 Author: Ineiev Date: Mon Apr 3 17:03:36 2017 +0200 po: Update Russian translation -- Signed-off-by: Werner Koch diff --git a/po/ru.po b/po/ru.po index 8d3776e..a4c14ea 100644 --- a/po/ru.po +++ b/po/ru.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: GnuPG 2.1.0\n" "Report-Msgid-Bugs-To: translations at gnupg.org\n" -"PO-Revision-Date: 2017-01-24 17:17+0000\n" +"PO-Revision-Date: 2017-03-01 17:17+0000\n" "Last-Translator: Ineiev \n" "Language-Team: Russian \n" "Language: ru\n" @@ -150,10 +150,9 @@ msgstr "?? ????? ??? ????????? ??????????????? msgid "no suitable card key found: %s\n" msgstr "?? ????? ?? ??????? ??????????? ?????: %s\n" -#, fuzzy, c-format -#| msgid "error getting stored flags: %s\n" +#, c-format msgid "error getting list of cards: %s\n" -msgstr "?????? ????????? ??????????? ?????????: %s\n" +msgstr "?????? ????????? ?????? ????: %s\n" #, c-format msgid "" @@ -2354,7 +2353,7 @@ msgid "'%s' does not appear to be a valid key ID, fingerprint or keygrip\n" msgstr "'%s' ?? ???????? ???????????????, ?????????? ??? ????? ?????\n" msgid "WARNING: no command supplied. Trying to guess what you mean ...\n" -msgstr "" +msgstr "????????: ??????? ?? ??????. ??????? ???????, ??? ??????? ? ???? ...\n" msgid "Go ahead and type your message ...\n" msgstr "?????? ????????? ...\n" @@ -5606,10 +5605,8 @@ msgid "(G)ood, (A)ccept once, (U)nknown, (R)eject once, (B)ad? " msgstr "" "(G)???????, (A)???? ???????, (U)??????, (R)???? ??????????, (B)??????? " -#, fuzzy -#| msgid "Defaulting to unknown." msgid "Defaulting to unknown.\n" -msgstr "??????????? ???????? ???????? (??????)." +msgstr "??????????? ???????? ???????? (\"??????????\").\n" msgid "TOFU db corruption detected.\n" msgstr "?????????? ??????????? ???? ?????? TOFU.\n" @@ -5760,12 +5757,11 @@ msgstr[2] "" msgid "error opening TOFU database: %s\n" msgstr "?????? ??? ???????? ???? ?????? TOFU: %s\n" -#, fuzzy, c-format -#| msgid "WARNING: Encrypting to %s, which has no non-revoked user ids.\n" +#, c-format msgid "WARNING: Encrypting to %s, which has no non-revoked user ids\n" msgstr "" "????????: ?????????? ??? ????? %s, ? ???????? ??? ???????????? " -"??????????????? ????????????.\n" +"??????????????? ????????????\n" #, c-format msgid "error setting policy for key %s, user id \"%s\": %s" @@ -6040,17 +6036,17 @@ msgstr "???? ??? ?????? ????????? ?????: %s\n" #. * the %s at the start and end of the string. #, c-format msgid "%sNumber: %s%%0AHolder: %s%%0ACounter: %lu%s" -msgstr "" +msgstr "%s?????: %s%%0A?????????: %s%%0A???????: %lu%s" #, c-format msgid "%sNumber: %s%%0AHolder: %s%s" -msgstr "" +msgstr "%s?????: %s%%0A?????????: %s%s" #. TRANSLATORS: This is the number of remaining attempts to #. * enter a PIN. Use %%0A (double-percent,0A) for a linefeed. #, c-format msgid "Remaining attempts: %d" -msgstr "" +msgstr "???????? ???????: %d" #, c-format msgid "using default PIN as %s\n" @@ -6062,10 +6058,8 @@ msgstr "" "?? ??????? ????????? ???????? PIN ??? %s: %s - ????? ???????????\n" "??? ???????? ?? ?????\n" -#, fuzzy -#| msgid "||Please enter the PIN" msgid "||Please unlock the card" -msgstr "||??????? PIN" +msgstr "||????????????? ?????" #, c-format msgid "PIN for CHV%d is too short; minimum length is %d\n" @@ -7028,10 +7022,9 @@ msgstr " ????????? ??????????? ???????????? msgid " runtime cached certificates: %u\n" msgstr "???????????? ? ?????? ??????? ??????????: %u\n" -#, fuzzy, c-format -#| msgid " runtime cached certificates: %u\n" +#, c-format msgid " trusted certificates: %u (%u,%u,%u,%u)\n" -msgstr "???????????? ? ?????? ??????? ??????????: %u\n" +msgstr " ??????????? ????????????: %u (%u,%u,%u,%u)\n" msgid "certificate already cached\n" msgstr "?????????? ??? ? ??????\n" ----------------------------------------------------------------------- Summary of changes: po/ca.po | 24 +++++++++++++++++++++--- po/cs.po | 26 +++++++++++++++++++++++--- po/da.po | 26 +++++++++++++++++++++++--- po/de.po | 19 ++++++++++++++++--- po/el.po | 24 +++++++++++++++++++++--- po/eo.po | 24 +++++++++++++++++++++--- po/es.po | 26 +++++++++++++++++++++++--- po/et.po | 24 +++++++++++++++++++++--- po/fi.po | 24 +++++++++++++++++++++--- po/fr.po | 26 +++++++++++++++++++++++--- po/gl.po | 24 +++++++++++++++++++++--- po/hu.po | 24 +++++++++++++++++++++--- po/id.po | 24 +++++++++++++++++++++--- po/it.po | 24 +++++++++++++++++++++--- po/ja.po | 28 ++++++++++++++++++++++++---- po/nb.po | 25 ++++++++++++++++++++++--- po/pl.po | 26 +++++++++++++++++++++++--- po/pt.po | 24 +++++++++++++++++++++--- po/ro.po | 24 +++++++++++++++++++++--- po/ru.po | 58 +++++++++++++++++++++++++++++++++++----------------------- po/sk.po | 24 +++++++++++++++++++++--- po/sv.po | 26 +++++++++++++++++++++++--- po/tr.po | 26 +++++++++++++++++++++++--- po/uk.po | 25 ++++++++++++++++++++++--- po/zh_CN.po | 24 +++++++++++++++++++++--- po/zh_TW.po | 26 +++++++++++++++++++++++--- 26 files changed, 576 insertions(+), 99 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 3 17:17:27 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Mon, 03 Apr 2017 17:17:27 +0200 Subject: [git] GnuPG - branch, STABLE-BRANCH-2-2, updated. gnupg-2.1.19-112-gc6b5611 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, STABLE-BRANCH-2-2 has been updated via c6b5611c230daf738a3e913092c8976734179904 (commit) via c7be01dae914c183dd99bd531a388c794d858c61 (commit) via 661d22c1287027e402019e201cd53514f5405835 (commit) via 608124af2c4522c6b9eb6fd70870c199bebc02cd (commit) via d23052b04ebb0ac731aa351650c4084f080c640b (commit) via 90932bdad607d06f4f040e3457caddba79ba8b7e (commit) via 3f6d949011f485613bb4bd3e06a2643be79cce40 (commit) via d24375271b97e45deaeb1ef0a8434c64066ba2e8 (commit) via 0039d7107bcdfce6f3b02b46ff0495cfba07882a (commit) via 5556eca5acd46983bff0b38a1ffbc2f07fbaba9f (commit) via aca5f494a88776d4974bfa9b0b65cb60c1b42040 (commit) via 3a10de3bfd785aefb0150e82b6dbbc7cb9f208c8 (commit) via 52ba5e67cad4311d0ddbc4f2979e20afd0161d1f (commit) via 8f2671d2cc022af2f564e296bdeb3bb2d2734ef4 (commit) via 5e89144cbca36c1e7eb814b3aad4b7c46cd4efbf (commit) via 214fa9012296d796b78f1a3106d656639cf50aef (commit) via a6142dbdbc5783043deb847dc64998c421860941 (commit) via 7bf24e8146116a30c4c9d7b6dbf8bbb27fc35971 (commit) via 64665404e43051fa50ee030766347e24b7d1e4d5 (commit) via a8895c99a7d0750132477d80cd66caaf3a709113 (commit) via afa86809087909a8ba2f9356588bf90cc923529c (commit) via ba57f8302a3ee12ff117b0243047241c44388179 (commit) via 0526c99164d3531b5ec763ffc672407eb24b2296 (commit) via f5b565a5b8de3f2a3d98bc1a655e18333aee223b (commit) via 5b3523d3e055158cb9beb2c4a8419df52c764a18 (commit) via b20780658ebb1e1245db18c04db3e815399cf706 (commit) via 4af389c9721fa534ed06a64b80705b631575c775 (commit) via 5128cd74c029d57491a79ca9e918c81facdf1b76 (commit) via 211d71f19c24da94f4c58014606125c1a29d86a2 (commit) via 6d3edfd972c1114f43f6b35773dc25e0256f48f4 (commit) via caf00915532e6e8e509738962964edcd14fb0654 (commit) via c1e6302b347caf852a056b9c721469ccb51f44da (commit) via d58275703f035e8cfd58cd1c2d0d5ac7dc59e110 (commit) via 0848cfcce738150b53bfb65b78efc1e6dc9f3d26 (commit) via 0b3770c421a35b64823a805fa8d49ddd5c653d50 (commit) via 2c237c13628a88ba23742da34ea18d3e205d7c53 (commit) via 6fab7bba879d7794e32112cf3eddd8d87130a5d7 (commit) via 26086b362ff47d21b1abefaf674a6464bf0a8921 (commit) via 2c9d9ac55ea455a5ec26428989dced0311ed46cc (commit) via 178b6314ab2d2268873067314744c8af74dc331e (commit) via fde885bbc47a4bf14a8570ac62e68adc8cf47a6e (commit) via d17840c3f40111beaf97d96ad3ca52047976e221 (commit) via 74c1f30ad6616186f0ab9dbaf34db6c17b1e40c4 (commit) via 483c1288a8f86dc6bf93d0d3f2865ecc246aecba (commit) via 88f1505f0613894d5544290a170119eb538921e5 (commit) via 06f1f163e96f1039304fd3cf565cf9de1ca45849 (commit) via ceb4b245752bb1fb43fde7e99f8d904ab8a9b5e2 (commit) via d75d20909d9f60d33ffd210def92278c0f383aad (commit) via fe0b37e123ded51cc5f4cb5e3547fdfbce37a43e (commit) via e2c63a13e2fa4ce39af8471a34c06d73ff3ee6f6 (commit) via fb9d68d636490ca88925051f48b08963c324aed1 (commit) via b1106b4d640325c60a7212a4a44e4f67c0e3312d (commit) via 69c521df422a6c9a6b0a93e45c9373a8b6ceb28e (commit) via 6a3f857224eab108ae38e6259194b01b0ffdad8b (commit) via 38c955599f7c6c20faeec57d8e1df7d2c0eeba18 (commit) via 8c8ce8711d9c938fcb982b0341e6b052742cb887 (commit) via a98459d3f4ec3d196fb0adb0e90dadf40abc8c81 (commit) via c7833eca38fdb8d9ba7b59438ea87d651b8bf7ba (commit) via 6993e42088c191f18468317ba2b5b8fbc8c3edff (commit) via 61785b679c542bbd789395fa632eb8b5133b01ad (commit) via ed3248219e921ee24f6f1b2985abb7e0945d70e9 (commit) via a672ddec03f96475866d712b28be18b3fab43aef (commit) via d82abbb1b6e80d5980e6259ddcfc770e65a6b1b3 (commit) via 40b7911130a969677d6f0b5796236a29f10a9e69 (commit) via 9a77b3b6e41f97b1209ad61c04b3dd33242ecae8 (commit) via 046a15a88c83b40a753b4ad7ecc1456efa5b527f (commit) via cca91a3f8f7e3e36b7149fc93f7b6df11d21eb1d (commit) via ed5575ec550ff16b0b901a23c6aa3eb3d47b0575 (commit) via 5c83759364272b19ceafbef46d057f0430a12698 (commit) via dd60e868d2bf649a33dc96e207ffd3b8ae4d35af (commit) via 2649fdfff5d9e227025956e015b67502fd4962c4 (commit) via 8f028642239fa992c6c059e3c1b4421a1813c827 (commit) via f0257b4a86b73f5b956028e68590b6d2a23ea4da (commit) via b71384c8054ce2f245ccfae02b8ee81e1adfc512 (commit) via 4b57359ef3ce0b87e15889e12ef0fcd23f62dcb4 (commit) via c22a2a89d3bd3d08b3abb8e4e33df32b480338ec (commit) via 591b6a9d879cbcabb089d89a26d3c3e0306054e1 (commit) via 80fb1a8a05b2194af16027555b09bbd5d48ec9ac (commit) via d6c7bf1f8ab8899faba2fb81a35b096921c38f3c (commit) via 70aca95d6816082b289fceca8eabfcf718a6b701 (commit) via de3838372ae3cdecbd83eea2c53c8e2656d93052 (commit) via 176e07ce10d892fa7c7b96725b38b2fec9a1f916 (commit) via 8f0bf644bc693647805251732b90cc505c4b5f71 (commit) via bf03925751abb739f2fd9d631694d3dd33decf92 (commit) via f7f806afa5083617f4aba02fc3b285b06a7d73d4 (commit) via b9ab733fc0dd2ca2a7eaac0bde3a817c07af36c5 (commit) via ce37ada87139ef418401f9f35439007a8c04a856 (commit) via cc933a96f8e83bc66fb69ed33d9593acdd60c929 (commit) via 7e19786a5ddef637d1d9d21593fecf5a36b6f372 (commit) via 171e4314ebd3ff74af3dcdc8bd68e1100e8910ea (commit) via e3589110e01dc6ad04463351ec2ce17201556d09 (commit) via 4a130bbc2c2f4be6e8c6357512a943f435ade28f (commit) via e6ca015ae182a6dbb0466441efc17c99683e9375 (commit) via 9bf39ed75ddbd35908bcd0996f55325ff801619a (commit) via cb6337329d3c858c695a7e56e2fc31d9d50ca3fe (commit) via 0703de01c8fbc417a99ecf8e950fc306b8c8ac9c (commit) via 6d1e16d96802a0585537cf80728195f8ab028c11 (commit) via 4ce4f2f683a17be3ddb93729f3f25014a97934ad (commit) via 67c203b6bf8d6dd489ceef3391f609986e7b7a49 (commit) via f9acc7d18bb90f47dafe7e32ae92f567756d6b12 (commit) via 5f6f3f5cae8a95ed469129f9677782c17951dab3 (commit) via 1813f3be23bdab5a42070424c47cb8daa9d9e6b7 (commit) via b1f48da02b474e985161aa2778d7b602a13c4292 (commit) via 1890896fe698c55d15160a53aa6c5c22dc424031 (commit) via de6d8313f6df32aaa151bee74e1db269ac1e0fed (commit) via 0c4d0620d327e8a2069532a5519afefe867a47d6 (commit) via 4735ab96aa5577d40ba7b3f72d863057198cc6a7 (commit) via d6f0f368763006abf08818bfefcd32ecedb5c20a (commit) via 62d21a4ab4029b32ea129f1cf3a0e1f22e2fb7b0 (commit) via 74cb3b230c1f99afc5fd09bccc24186a63b154b0 (commit) via e064c75b08a523f738108428fe0c417a46e66238 (commit) from 3cdb7920076be4fc6f7600dfaaa504935104dac9 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: Makefile.am | 7 +- README | 24 + README.maint | 84 +- agent/Makefile.am | 2 +- agent/agent.h | 6 +- agent/call-pinentry.c | 4 +- agent/call-scd.c | 2 +- agent/command-ssh.c | 72 +- agent/command.c | 52 +- agent/cvt-openpgp.c | 4 +- agent/divert-scd.c | 4 +- agent/findkey.c | 78 +- agent/genkey.c | 6 +- agent/gpg-agent.c | 19 +- agent/learncard.c | 21 +- agent/pksign.c | 2 +- agent/preset-passphrase.c | 6 +- agent/protect-tool.c | 6 +- agent/protect.c | 9 +- agent/trustlist.c | 2 +- agent/w32main.c | 2 +- common/homedir.c | 27 +- common/iobuf.c | 2 +- common/localename.c | 1 + common/miscellaneous.c | 63 +- common/stringhelp.c | 10 +- configure.ac | 56 +- dirmngr/Makefile.am | 9 +- dirmngr/dirmngr-client.c | 6 +- dirmngr/dirmngr.c | 13 +- dirmngr/dirmngr_ldap.c | 4 +- dirmngr/dns-stuff.c | 34 +- agent/trans.c => dirmngr/http-common.c | 39 +- scd/atr.h => dirmngr/http-common.h | 14 +- dirmngr/http-ntbtls.c | 6 +- dirmngr/http.c | 15 +- dirmngr/ks-engine-finger.c | 2 +- dirmngr/ks-engine-hkp.c | 2 +- dirmngr/ks-engine-kdns.c | 2 +- dirmngr/ks-engine-ldap.c | 2 +- dirmngr/ldap-parse-uri.c | 2 +- dirmngr/ldap-parse-uri.h | 2 +- dirmngr/ldap-wrapper.c | 2 +- dirmngr/ldap.c | 4 +- dirmngr/misc.c | 2 +- dirmngr/server.c | 6 +- dirmngr/t-dns-stuff.c | 2 +- dirmngr/t-http.c | 4 +- doc/DETAILS | 63 ++ doc/HACKING | 4 +- doc/Makefile.am | 1 + doc/examples/debug.prf | 29 + doc/examples/vsnfd.prf | 21 + doc/gpg-agent.texi | 10 + doc/gpg.texi | 56 +- g10/Makefile.am | 2 +- g10/OPTIONS | 24 - g10/armor.c | 9 +- g10/build-packet.c | 420 ++++--- g10/call-agent.c | 203 ++-- g10/call-agent.h | 6 + g10/call-dirmngr.c | 18 +- g10/card-util.c | 95 +- g10/cipher.c | 8 +- g10/compress-bz2.c | 2 +- g10/compress.c | 2 +- g10/cpr.c | 8 +- g10/dearmor.c | 8 +- g10/decrypt-data.c | 9 +- g10/decrypt.c | 10 +- g10/delkey.c | 31 +- g10/dirmngr-conf.skel | 18 +- g10/ecdh.c | 2 +- g10/encrypt.c | 31 +- g10/exec.c | 10 +- g10/export.c | 82 +- g10/filter.h | 2 +- g10/free-packet.c | 125 ++- g10/getkey.c | 256 +++-- g10/gpg.c | 72 +- g10/gpg.h | 16 +- g10/gpgcompose.c | 17 +- g10/gpgsql.c | 4 +- g10/gpgv.c | 29 +- g10/helptext.c | 6 +- g10/import.c | 229 ++-- g10/kbnode.c | 16 +- g10/keydb.c | 228 ++-- g10/keydb.h | 66 +- g10/keyedit.c | 591 ++++++---- g10/keygen.c | 60 +- g10/keyid.c | 11 +- g10/keylist.c | 183 +-- g10/keyring.c | 95 +- g10/keyring.h | 2 +- g10/keyserver-internal.h | 2 +- g10/keyserver.c | 30 +- g10/main.h | 71 +- g10/mainproc.c | 92 +- g10/mdfilter.c | 6 +- g10/migrate.c | 2 +- g10/misc.c | 98 +- g10/openfile.c | 8 +- g10/options.h | 3 +- g10/packet.h | 171 ++- g10/parse-packet.c | 342 ++++-- g10/passphrase.c | 17 +- g10/photoid.c | 10 +- g10/pkclist.c | 74 +- g10/pkglue.c | 2 +- g10/plaintext.c | 8 +- g10/progress.c | 6 +- g10/pubkey-enc.c | 29 +- g10/revoke.c | 45 +- g10/seckey-cert.c | 6 +- g10/server.c | 6 +- g10/seskey.c | 4 +- g10/sig-check.c | 79 +- g10/sign.c | 57 +- g10/skclist.c | 14 +- g10/t-keydb-get-keyblock.c | 1 + g10/t-stutter.c | 2 +- g10/tdbdump.c | 32 +- g10/tdbio.c | 84 +- g10/tdbio.h | 15 +- g10/test-stubs.c | 29 +- g10/textfilter.c | 10 +- g10/tofu.c | 73 +- g10/trust.c | 75 +- g10/trustdb.c | 217 ++-- g10/trustdb.h | 55 +- g10/verify.c | 11 +- g13/Makefile.am | 2 +- g13/backend.c | 2 +- g13/be-dmcrypt.c | 2 +- g13/be-encfs.c | 2 +- g13/be-truecrypt.c | 2 +- g13/call-syshelp.c | 4 +- g13/create.c | 2 +- g13/g13-common.c | 4 +- g13/g13-syshelp.c | 6 +- g13/g13.c | 8 +- g13/keyblob.c | 2 +- g13/mount.c | 4 +- g13/mountinfo.c | 2 +- g13/runner.c | 2 +- g13/server.c | 2 +- g13/sh-blockdev.c | 4 +- g13/sh-cmd.c | 2 +- g13/sh-dmcrypt.c | 4 +- g13/suspend.c | 2 +- g13/t-g13tuple.c | 2 +- kbx/Makefile.am | 2 +- kbx/kbxutil.c | 5 +- kbx/keybox-blob.c | 12 +- kbx/keybox-defs.h | 4 +- kbx/keybox-dump.c | 8 +- kbx/keybox-file.c | 31 +- kbx/keybox-openpgp.c | 2 +- kbx/keybox-search.c | 81 +- kbx/keybox-update.c | 17 +- kbx/keybox-util.c | 2 +- kbx/keybox.h | 5 +- po/ca.po | 24 +- po/cs.po | 26 +- po/da.po | 26 +- po/de.po | 19 +- po/el.po | 24 +- po/eo.po | 24 +- po/es.po | 26 +- po/et.po | 24 +- po/fi.po | 24 +- po/fr.po | 26 +- po/gl.po | 24 +- po/hu.po | 24 +- po/id.po | 24 +- po/it.po | 24 +- po/ja.po | 63 +- po/nb.po | 25 +- po/pl.po | 26 +- po/pt.po | 24 +- po/ro.po | 24 +- po/ru.po | 58 +- po/sk.po | 24 +- po/sv.po | 26 +- po/tr.po | 26 +- po/uk.po | 25 +- po/zh_CN.po | 24 +- po/zh_TW.po | 26 +- scd/Makefile.am | 2 +- scd/apdu.c | 1177 +------------------- scd/app-dinsig.c | 7 +- scd/app-geldkarte.c | 4 +- scd/app-help.c | 4 +- scd/app-nks.c | 14 +- scd/app-openpgp.c | 16 +- scd/app-p15.c | 21 +- scd/app-sc-hsm.c | 10 +- scd/app.c | 19 +- scd/ccid-driver.c | 18 +- scd/command.c | 4 +- scd/iso7816.c | 38 +- scd/iso7816.h | 8 +- scd/scdaemon.c | 101 +- sm/Makefile.am | 2 +- sm/call-agent.c | 8 +- sm/call-dirmngr.c | 4 +- sm/certchain.c | 4 +- sm/certcheck.c | 2 +- sm/certdump.c | 2 +- sm/certlist.c | 2 +- sm/certreqgen-ui.c | 6 +- sm/certreqgen.c | 2 +- sm/decrypt.c | 2 +- sm/delete.c | 2 +- sm/encrypt.c | 2 +- sm/export.c | 6 +- sm/fingerprint.c | 2 +- sm/gpgsm.c | 8 +- sm/import.c | 6 +- sm/keydb.c | 2 +- sm/keylist.c | 22 +- sm/misc.c | 4 +- sm/qualified.c | 2 +- sm/server.c | 4 +- sm/sign.c | 2 +- sm/verify.c | 2 +- tests/gpgme/Makefile.am | 3 - tests/gpgme/gpgme-defs.scm | 48 +- tests/gpgme/run-tests.scm | 24 +- tests/gpgme/wrap.scm | 22 +- tests/gpgscm/ffi.c | 26 +- tests/gpgscm/main.c | 2 +- tests/gpgscm/scheme-config.h | 4 - tests/gpgscm/scheme.c | 148 +-- tests/gpgscm/tests.scm | 96 +- tests/gpgsm/Makefile.am | 3 - tests/gpgsm/gpgsm-defs.scm | 2 +- tests/gpgsm/run-tests.scm | 6 +- tests/migrations/Makefile.am | 3 - tests/migrations/common.scm | 8 +- tests/migrations/extended-pkf.scm | 18 +- tests/migrations/from-classic.scm | 47 +- tests/migrations/run-tests.scm | 3 +- tests/openpgp/Makefile.am | 34 +- tests/openpgp/README | 2 +- .../{issue2941.scm => decrypt-unwrap-verify.scm} | 29 +- tests/openpgp/defs.scm | 41 +- tests/openpgp/quick-key-manipulation.scm | 41 +- tests/openpgp/run-tests.scm | 4 +- tests/openpgp/setup.scm | 19 + tests/openpgp/ssh-import.scm | 23 +- tests/openpgp/tofu.scm | 1 + tools/Makefile.am | 2 +- tools/call-dirmngr.c | 8 +- tools/gpg-check-pattern.c | 6 +- tools/gpg-connect-agent.c | 2 +- tools/gpg-wks-client.c | 22 +- tools/gpg-wks-server.c | 21 +- tools/gpgconf-comp.c | 20 +- tools/gpgconf.c | 42 +- tools/gpgsplit.c | 4 +- tools/gpgtar-create.c | 2 +- tools/gpgtar-extract.c | 2 +- tools/gpgtar-list.c | 2 +- tools/gpgtar.c | 6 +- tools/mime-maker.c | 4 +- tools/mime-parser.c | 2 +- tools/mime-parser.h | 6 +- tools/no-libgcrypt.c | 2 +- tools/send-mail.c | 26 +- tools/symcryptrun.c | 14 +- tools/wks-receive.c | 6 +- tools/wks-util.c | 16 +- 274 files changed, 4888 insertions(+), 4183 deletions(-) copy agent/trans.c => dirmngr/http-common.c (52%) copy scd/atr.h => dirmngr/http-common.h (75%) create mode 100644 doc/examples/debug.prf create mode 100644 doc/examples/vsnfd.prf delete mode 100644 g10/OPTIONS copy tests/openpgp/{issue2941.scm => decrypt-unwrap-verify.scm} (53%) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 3 20:12:00 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Mon, 03 Apr 2017 20:12:00 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.19-113-g5d873f2 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 5d873f288e86edfb684f4dd57ac36466b06494a4 (commit) from c6b5611c230daf738a3e913092c8976734179904 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 5d873f288e86edfb684f4dd57ac36466b06494a4 Author: Werner Koch Date: Mon Apr 3 19:10:50 2017 +0200 dirmngr: Do not assume that /etc/hosts exists. * dirmngr/dns-stuff.c (libdns_init): Do not bail out. -- A standard Windows installation does not have a hosts file and thus we can't bail out here. We should also not bail out on a Unix system because /etc/hosts is just one method in nsswitch.conf. Fixes-commit: 88f1505f0613894d5544290a170119eb538921e5 Signed-off-by: Werner Koch diff --git a/dirmngr/dns-stuff.c b/dirmngr/dns-stuff.c index 1a80913..a88e833 100644 --- a/dirmngr/dns-stuff.c +++ b/dirmngr/dns-stuff.c @@ -538,10 +538,9 @@ libdns_init (void) goto leave; } - { #if HAVE_W32_SYSTEM - char *hosts_path = xtryasprintf ("%s\System32\drivers\etc\hosts", + char *hosts_path = xtryasprintf ("%s\\System32\\drivers\\etc\\hosts", getenv ("SystemRoot")); if (! hosts_path) { @@ -551,15 +550,24 @@ libdns_init (void) derr = dns_hosts_loadpath (ld.hosts, hosts_path); xfree (hosts_path); + if (derr) + { + err = libdns_error_to_gpg_error (derr); + /* Most Windows systems don't have a hosts files. So do not + * report in this case. */ + if (gpg_err_code (err) != GPG_ERR_ENOENT) + log_error ("failed to load hosts file: %s\n", gpg_strerror (err)); + err = 0; /* Do not bail out. */ + } #else derr = dns_hosts_loadpath (ld.hosts, "/etc/hosts"); -#endif if (derr) { err = libdns_error_to_gpg_error (derr); log_error ("failed to load hosts file: %s\n", gpg_strerror (err)); - goto leave; + err = 0; /* Do not bail out - having no /etc/hosts is legal. */ } +#endif } /* dns_hints_local for stub mode, dns_hints_root for recursive. */ ----------------------------------------------------------------------- Summary of changes: dirmngr/dns-stuff.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 3 20:59:56 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Mon, 03 Apr 2017 20:59:56 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.19-117-g3533b85 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 3533b854408fa93734742b2ee12b62aa0d55ff28 (commit) via fce36d7ec87be14b874813db277781c87a64ea87 (commit) via cc32ddbcba8c53d3e2cad952d72f62dc73911042 (commit) via 35c843c815306f36d1efbc52f5e2f6bac3f67aec (commit) from 5d873f288e86edfb684f4dd57ac36466b06494a4 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 3533b854408fa93734742b2ee12b62aa0d55ff28 Author: Werner Koch Date: Mon Apr 3 20:56:12 2017 +0200 dirmngr: New option --disable-ipv6 * dirmngr/dirmngr.h (struct opt): Add field 'disable_ipv6'. * dirmngr/dirmngr.c (oDisableIPv6): New const. (opts): New option --disable-ipv6. (parse_rereadable_options): Set that option. * dirmngr/dns-stuff.c (opt_disable_ipv6): New var. (set_dns_disable_ipv6): New. (resolve_name_standard): Make use of it. * dirmngr/ks-engine-finger.c (ks_finger_fetch): Take care of OPT.DISABLE_IPV6. * dirmngr/ks-engine-hkp.c (map_host): Ditto. (send_request): Ditto. * dirmngr/ks-engine-http.c (ks_http_fetch): Ditto. * dirmngr/ocsp.c (do_ocsp_request): Ditto. Signed-off-by: Werner Koch diff --git a/dirmngr/crlfetch.c b/dirmngr/crlfetch.c index f7a23ff..0892421 100644 --- a/dirmngr/crlfetch.c +++ b/dirmngr/crlfetch.c @@ -201,6 +201,7 @@ crl_fetch (ctrl_t ctrl, const char *url, ksba_reader_t *reader) |(DBG_LOOKUP? HTTP_FLAG_LOG_RESP:0) |(dirmngr_use_tor()? HTTP_FLAG_FORCE_TOR:0) |(opt.disable_ipv4? HTTP_FLAG_IGNORE_IPv4:0) + |(opt.disable_ipv6? HTTP_FLAG_IGNORE_IPv6:0) ), ctrl->http_proxy, NULL, NULL, NULL); diff --git a/dirmngr/dirmngr.c b/dirmngr/dirmngr.c index e3e02fe..07b3b91 100644 --- a/dirmngr/dirmngr.c +++ b/dirmngr/dirmngr.c @@ -113,6 +113,7 @@ enum cmd_and_opt_values { oDisableHTTP, oDisableLDAP, oDisableIPv4, + oDisableIPv6, oIgnoreLDAPDP, oIgnoreHTTPDP, oIgnoreOCSPSvcUrl, @@ -229,6 +230,7 @@ static ARGPARSE_OPTS opts[] = { ARGPARSE_s_n (oNoUseTor, "no-use-tor", "@"), ARGPARSE_s_n (oDisableIPv4, "disable-ipv4", "@"), + ARGPARSE_s_n (oDisableIPv6, "disable-ipv6", "@"), ARGPARSE_s_s (oSocketName, "socket-name", "@"), /* Only for debugging. */ @@ -638,6 +640,7 @@ parse_rereadable_options (ARGPARSE_ARGS *pargs, int reread) case oDisableHTTP: opt.disable_http = 1; break; case oDisableLDAP: opt.disable_ldap = 1; break; case oDisableIPv4: opt.disable_ipv4 = 1; break; + case oDisableIPv6: opt.disable_ipv6 = 1; break; case oHonorHTTPProxy: opt.honor_http_proxy = 1; break; case oHTTPProxy: opt.http_proxy = pargs->r.ret_str; break; case oLDAPProxy: opt.ldap_proxy = pargs->r.ret_str; break; @@ -707,6 +710,7 @@ parse_rereadable_options (ARGPARSE_ARGS *pargs, int reread) set_dns_verbose (opt.verbose, !!DBG_DNS); http_set_verbose (opt.verbose, !!DBG_NETWORK); set_dns_disable_ipv4 (opt.disable_ipv4); + set_dns_disable_ipv6 (opt.disable_ipv6); return 1; /* Handled. */ } diff --git a/dirmngr/dirmngr.h b/dirmngr/dirmngr.h index b269865..e10de09 100644 --- a/dirmngr/dirmngr.h +++ b/dirmngr/dirmngr.h @@ -97,7 +97,8 @@ struct int disable_http; /* Do not use HTTP at all. */ int disable_ldap; /* Do not use LDAP at all. */ - int disable_ipv4; /* Do not use leagacy IP addresses. */ + int disable_ipv4; /* Do not use legacy IP addresses. */ + int disable_ipv6; /* Do not use standard IP addresses. */ int honor_http_proxy; /* Honor the http_proxy env variable. */ const char *http_proxy; /* The default HTTP proxy. */ const char *ldap_proxy; /* Use given LDAP proxy. */ diff --git a/dirmngr/dns-stuff.c b/dirmngr/dns-stuff.c index c9ce40a..728f662 100644 --- a/dirmngr/dns-stuff.c +++ b/dirmngr/dns-stuff.c @@ -123,6 +123,10 @@ static int opt_timeout; * returned A records. */ static int opt_disable_ipv4; +/* The flag to disable IPv6 access - right now this only skips + * returned AAAA records. */ +static int opt_disable_ipv6; + /* If set force the use of the standard resolver. */ static int standard_resolver; @@ -248,6 +252,15 @@ set_dns_disable_ipv4 (int yes) } +/* Set the Disable-IPv6 flag so that the name resolver does not return + * AAAA addresses. */ +void +set_dns_disable_ipv6 (int yes) +{ + opt_disable_ipv6 = !!yes; +} + + /* Set the timeout for libdns requests to SECONDS. A value of 0 sets * the default timeout and values are capped at 10 minutes. */ void @@ -953,6 +966,8 @@ resolve_name_standard (const char *name, unsigned short port, continue; if (opt_disable_ipv4 && ai->ai_family == AF_INET) continue; + if (opt_disable_ipv6 && ai->ai_family == AF_INET6) + continue; dai = xtrymalloc (sizeof *dai + ai->ai_addrlen - 1); dai->family = ai->ai_family; diff --git a/dirmngr/dns-stuff.h b/dirmngr/dns-stuff.h index 9b8303c..71605b7 100644 --- a/dirmngr/dns-stuff.h +++ b/dirmngr/dns-stuff.h @@ -99,6 +99,10 @@ void set_dns_verbose (int verbose, int debug); * A addresses. */ void set_dns_disable_ipv4 (int yes); +/* Set the Disable-IPv6 flag so that the name resolver does not return + * AAAA addresses. */ +void set_dns_disable_ipv6 (int yes); + /* Set the timeout for libdns requests to SECONDS. */ void set_dns_timeout (int seconds); diff --git a/dirmngr/ks-engine-finger.c b/dirmngr/ks-engine-finger.c index 82ef7a5..f56a9ff 100644 --- a/dirmngr/ks-engine-finger.c +++ b/dirmngr/ks-engine-finger.c @@ -84,7 +84,8 @@ ks_finger_fetch (ctrl_t ctrl, parsed_uri_t uri, estream_t *r_fp) err = http_raw_connect (&http, server, 79, ((dirmngr_use_tor ()? HTTP_FLAG_FORCE_TOR : 0) - | (opt.disable_ipv4? HTTP_FLAG_IGNORE_IPv4 : 0)), + | (opt.disable_ipv4? HTTP_FLAG_IGNORE_IPv4 : 0) + | (opt.disable_ipv6? HTTP_FLAG_IGNORE_IPv6 : 0)), NULL); if (err) { diff --git a/dirmngr/ks-engine-hkp.c b/dirmngr/ks-engine-hkp.c index 4428c12..1592fab 100644 --- a/dirmngr/ks-engine-hkp.c +++ b/dirmngr/ks-engine-hkp.c @@ -512,6 +512,8 @@ map_host (ctrl_t ctrl, const char *name, const char *srvtag, int force_reselect, continue; if (opt.disable_ipv4 && ai->family == AF_INET) continue; + if (opt.disable_ipv6 && ai->family == AF_INET6) + continue; dirmngr_tick (ctrl); add_host (name, is_pool, ai, 0, reftbl, reftblsize, &refidx); @@ -592,7 +594,7 @@ map_host (ctrl_t ctrl, const char *name, const char *srvtag, int force_reselect, { for (ai = aibuf; ai; ai = ai->next) { - if (ai->family == AF_INET6 + if ((!opt.disable_ipv6 && ai->family == AF_INET6) || (!opt.disable_ipv4 && ai->family == AF_INET)) { err = resolve_dns_addr (ai->addr, ai->addrlen, 0, &host); @@ -1140,7 +1142,8 @@ send_request (ctrl_t ctrl, const char *request, const char *hostportstr, (httpflags |(opt.honor_http_proxy? HTTP_FLAG_TRY_PROXY:0) |(dirmngr_use_tor ()? HTTP_FLAG_FORCE_TOR:0) - |(opt.disable_ipv4? HTTP_FLAG_IGNORE_IPv4 : 0)), + |(opt.disable_ipv4? HTTP_FLAG_IGNORE_IPv4 : 0) + |(opt.disable_ipv6? HTTP_FLAG_IGNORE_IPv6 : 0)), ctrl->http_proxy, session, NULL, diff --git a/dirmngr/ks-engine-http.c b/dirmngr/ks-engine-http.c index d4a6c8a..02269da 100644 --- a/dirmngr/ks-engine-http.c +++ b/dirmngr/ks-engine-http.c @@ -92,7 +92,8 @@ ks_http_fetch (ctrl_t ctrl, const char *url, estream_t *r_fp) /* fixme: AUTH */ NULL, ((opt.honor_http_proxy? HTTP_FLAG_TRY_PROXY:0) | (dirmngr_use_tor ()? HTTP_FLAG_FORCE_TOR:0) - | (opt.disable_ipv4? HTTP_FLAG_IGNORE_IPv4 : 0)), + | (opt.disable_ipv4? HTTP_FLAG_IGNORE_IPv4 : 0) + | (opt.disable_ipv6? HTTP_FLAG_IGNORE_IPv6 : 0)), ctrl->http_proxy, session, NULL, diff --git a/dirmngr/ocsp.c b/dirmngr/ocsp.c index aff8e32..22391c3 100644 --- a/dirmngr/ocsp.c +++ b/dirmngr/ocsp.c @@ -175,7 +175,8 @@ do_ocsp_request (ctrl_t ctrl, ksba_ocsp_t ocsp, gcry_md_hd_t md, err = http_open (&http, HTTP_REQ_POST, url, NULL, NULL, ((opt.honor_http_proxy? HTTP_FLAG_TRY_PROXY:0) | (dirmngr_use_tor ()? HTTP_FLAG_FORCE_TOR:0) - | (opt.disable_ipv4? HTTP_FLAG_IGNORE_IPv4 : 0)), + | (opt.disable_ipv4? HTTP_FLAG_IGNORE_IPv4 : 0) + | (opt.disable_ipv6? HTTP_FLAG_IGNORE_IPv6 : 0)), ctrl->http_proxy, NULL, NULL, NULL); if (err) { diff --git a/doc/dirmngr.texi b/doc/dirmngr.texi index 7a6ba47..027bb94 100644 --- a/doc/dirmngr.texi +++ b/doc/dirmngr.texi @@ -314,9 +314,10 @@ a numerical IP address must be given (IPv6 or IPv4) and that no error checking is done for @var{ipaddr}. @item --disable-ipv4 + at item --disable-ipv6 @opindex disable-ipv4 -Disable the use of all IPv4 addresses. This option is mainly useful -for debugging. + at opindex disable-ipv6 +Disable the use of all IPv4 or IPv6 addresses. @item --disable-ldap @opindex disable-ldap commit fce36d7ec87be14b874813db277781c87a64ea87 Author: Werner Koch Date: Mon Apr 3 20:34:13 2017 +0200 dirmngr,w32: Silence the 'certificate already cached' message. * dirmngr/certcache.c (load_certs_from_w32_store): Silenece an info message. Signed-off-by: Werner Koch diff --git a/dirmngr/certcache.c b/dirmngr/certcache.c index 3284ff2..c3f3427 100644 --- a/dirmngr/certcache.c +++ b/dirmngr/certcache.c @@ -612,7 +612,10 @@ load_certs_from_w32_store (const char *storename) if (!err) count++; if (gpg_err_code (err) == GPG_ERR_DUP_VALUE) - log_info (_("certificate '%s' already cached\n"), storename); + { + if (DBG_X509) + log_debug (_("certificate '%s' already cached\n"), storename); + } else if (err) log_error (_("error loading certificate '%s': %s\n"), storename, gpg_strerror (err)); commit cc32ddbcba8c53d3e2cad952d72f62dc73911042 Author: Werner Koch Date: Mon Apr 3 20:23:18 2017 +0200 dirmngr: Handle EIO which is sometimes returned by cookie functions. * dirmngr/ks-engine-hkp.c (handle_send_request_error): Handle EIO. -- Suggested-by: Andre Heinecke Signed-off-by: Werner Koch diff --git a/dirmngr/ks-engine-hkp.c b/dirmngr/ks-engine-hkp.c index ee7d506..4428c12 100644 --- a/dirmngr/ks-engine-hkp.c +++ b/dirmngr/ks-engine-hkp.c @@ -1283,6 +1283,7 @@ handle_send_request_error (ctrl_t ctrl, gpg_error_t err, const char *request, case GPG_ERR_ENETDOWN: case GPG_ERR_UNKNOWN_HOST: case GPG_ERR_NETWORK: + case GPG_ERR_EIO: /* Sometimes used by estream cookie functions. */ if (mark_host_dead (request) && *tries_left) retry = 1; break; commit 35c843c815306f36d1efbc52f5e2f6bac3f67aec Author: Werner Koch Date: Mon Apr 3 20:20:27 2017 +0200 dirmngr: Always print a warning for a missing /etc/hosts. * dirmngr/dns-stuff.c (libdns_init): No Windows specific handling of a missing /etc/hosts. -- My last comment on this was flawed. Windows seems to always have its version of /etc/hosts. Only the en passant fixed bad escaping led me assume that this was the case. Thanks to Andre for complaining about my comment remark. Signed-off-by: Werner Koch diff --git a/dirmngr/dns-stuff.c b/dirmngr/dns-stuff.c index a88e833..c9ce40a 100644 --- a/dirmngr/dns-stuff.c +++ b/dirmngr/dns-stuff.c @@ -550,24 +550,15 @@ libdns_init (void) derr = dns_hosts_loadpath (ld.hosts, hosts_path); xfree (hosts_path); - if (derr) - { - err = libdns_error_to_gpg_error (derr); - /* Most Windows systems don't have a hosts files. So do not - * report in this case. */ - if (gpg_err_code (err) != GPG_ERR_ENOENT) - log_error ("failed to load hosts file: %s\n", gpg_strerror (err)); - err = 0; /* Do not bail out. */ - } #else derr = dns_hosts_loadpath (ld.hosts, "/etc/hosts"); +#endif if (derr) { err = libdns_error_to_gpg_error (derr); log_error ("failed to load hosts file: %s\n", gpg_strerror (err)); err = 0; /* Do not bail out - having no /etc/hosts is legal. */ } -#endif } /* dns_hints_local for stub mode, dns_hints_root for recursive. */ ----------------------------------------------------------------------- Summary of changes: dirmngr/certcache.c | 5 ++++- dirmngr/crlfetch.c | 1 + dirmngr/dirmngr.c | 4 ++++ dirmngr/dirmngr.h | 3 ++- dirmngr/dns-stuff.c | 26 ++++++++++++++++---------- dirmngr/dns-stuff.h | 4 ++++ dirmngr/ks-engine-finger.c | 3 ++- dirmngr/ks-engine-hkp.c | 8 ++++++-- dirmngr/ks-engine-http.c | 3 ++- dirmngr/ocsp.c | 3 ++- doc/dirmngr.texi | 5 +++-- 11 files changed, 46 insertions(+), 19 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 3 21:58:25 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Mon, 03 Apr 2017 21:58:25 +0200 Subject: [git] GnuPG - branch, STABLE-BRANCH-2-2, updated. gnupg-2.1.19-119-g943176c Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, STABLE-BRANCH-2-2 has been updated via 943176c73208f1484de8b0c34b2ad1d189e88495 (commit) via e7eb9b12deaf7ebe26967bfb56e980b7efeebdc3 (commit) via 3533b854408fa93734742b2ee12b62aa0d55ff28 (commit) via fce36d7ec87be14b874813db277781c87a64ea87 (commit) via cc32ddbcba8c53d3e2cad952d72f62dc73911042 (commit) via 35c843c815306f36d1efbc52f5e2f6bac3f67aec (commit) via 5d873f288e86edfb684f4dd57ac36466b06494a4 (commit) from c6b5611c230daf738a3e913092c8976734179904 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 943176c73208f1484de8b0c34b2ad1d189e88495 Author: Werner Koch Date: Mon Apr 3 21:54:53 2017 +0200 Post release updates. -- diff --git a/NEWS b/NEWS index ab81e31..3c2b899 100644 --- a/NEWS +++ b/NEWS @@ -1,7 +1,11 @@ +Noteworthy changes in version 2.1.21 (unreleased) +------------------------------------------------- + + Noteworthy changes in version 2.1.20 (2017-04-03) ------------------------------------------------- - * gpg: New properties 'expired', 'revoked', and 'disbaled' for the + * gpg: New properties 'expired', 'revoked', and 'disabled' for the import and export filters. * gpg: New command --quick-set-primary-uid. diff --git a/configure.ac b/configure.ac index df7a059..f58708c 100644 --- a/configure.ac +++ b/configure.ac @@ -1,6 +1,6 @@ # configure.ac - for GnuPG 2.1 -# Copyright (C) 1998-2012 Free Software Foundation, Inc. -# Copyright (C) 1998-2016 Werner Koch +# Copyright (C) 1998-2017 Free Software Foundation, Inc. +# Copyright (C) 1998-2017 Werner Koch # # This file is part of GnuPG. # @@ -28,7 +28,7 @@ min_automake_version="1.14" m4_define([mym4_package],[gnupg]) m4_define([mym4_major], [2]) m4_define([mym4_minor], [1]) -m4_define([mym4_micro], [20]) +m4_define([mym4_micro], [21]) # To start a new development series, i.e a new major or minor number # you need to mark an arbitrary commit before the first beta release commit e7eb9b12deaf7ebe26967bfb56e980b7efeebdc3 Author: Werner Koch Date: Mon Apr 3 20:59:47 2017 +0200 Release 2.1.20 Signed-off-by: Werner Koch diff --git a/NEWS b/NEWS index a19ac89..ab81e31 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,48 @@ -Noteworthy changes in version 2.1.20 (unreleased) +Noteworthy changes in version 2.1.20 (2017-04-03) ------------------------------------------------- + * gpg: New properties 'expired', 'revoked', and 'disbaled' for the + import and export filters. + + * gpg: New command --quick-set-primary-uid. + + * gpg: New compliance field for the --with-colon key listing. + + * gpg: Changed the key parser to generalize the processing of local + meta data packets. + + * gpg: Fixed assertion failure in the TOFU trust model. + + * gpg: Fixed exporting of zero length user ID packets. + + * scd: Improved support for multiple readers. + + * scd: Fixed timeout handling for key generation. + + * agent: New option --enable-extended-key-format. + + * dirmngr: Do not add a keyserver to a new dirmngr.conf. Dirmngr + uses a default keyserver. + + * dimngr: Do not treat TLS warning alerts as severe error when + building with GNUTLS. + + * dirmngr: Actually take /etc/hosts in account. + + * wks: Fixed client problems on Windows. Published keys are now set + to world-readable. + + * tests: Fixed creation of temporary directories. + + * A socket directory for a non standard GNUGHOME is now created on + the fly under /run/user. Thus "gpgconf --create-socketdir" is now + optional. The use of "gpgconf --remove-socketdir" to clean up + obsolete socket directories is however recommended to avoid + cluttering /run/user with useless directories. + + * Fixed build problems on some platforms. + + Noteworthy changes in version 2.1.19 (2017-03-01) ------------------------------------------------- @@ -49,6 +91,8 @@ Noteworthy changes in version 2.1.19 (2017-03-01) * Many other bug fixes and new regression tests. + See-also: gnupg-announce/2017q1/000402.html + Noteworthy changes in version 2.1.18 (2017-01-23) ------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: NEWS | 50 +++++++++++++++++++++++++++++++++++++++++++++- configure.ac | 6 +++--- dirmngr/certcache.c | 5 ++++- dirmngr/crlfetch.c | 1 + dirmngr/dirmngr.c | 4 ++++ dirmngr/dirmngr.h | 3 ++- dirmngr/dns-stuff.c | 20 ++++++++++++++++--- dirmngr/dns-stuff.h | 4 ++++ dirmngr/ks-engine-finger.c | 3 ++- dirmngr/ks-engine-hkp.c | 8 ++++++-- dirmngr/ks-engine-http.c | 3 ++- dirmngr/ocsp.c | 3 ++- doc/dirmngr.texi | 5 +++-- 13 files changed, 99 insertions(+), 16 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 3 21:58:49 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Mon, 03 Apr 2017 21:58:49 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.19-119-g943176c Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 943176c73208f1484de8b0c34b2ad1d189e88495 (commit) via e7eb9b12deaf7ebe26967bfb56e980b7efeebdc3 (commit) from 3533b854408fa93734742b2ee12b62aa0d55ff28 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: NEWS | 50 +++++++++++++++++++++++++++++++++++++++++++++++++- configure.ac | 6 +++--- 2 files changed, 52 insertions(+), 4 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 3 22:17:40 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Mon, 03 Apr 2017 22:17:40 +0200 Subject: [git] gnupg-doc - branch, master, updated. f1d18e9d0714ca948e15f6dbda6f436389978c5b Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via f1d18e9d0714ca948e15f6dbda6f436389978c5b (commit) via 152a622243de5bb879b46260e88b36d315cac8c6 (commit) from c61e02c324cab09682f1d68dba22233544e1e883 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit f1d18e9d0714ca948e15f6dbda6f436389978c5b Author: Werner Koch Date: Mon Apr 3 22:14:17 2017 +0200 swdb: Release GnuPG 2.1.20 diff --git a/web/swdb.mac b/web/swdb.mac index 34a7799..78ad5a1 100644 --- a/web/swdb.mac +++ b/web/swdb.mac @@ -21,16 +21,16 @@ # # GnuPG-2.1 # -#+macro: gnupg21_ver 2.1.19 -#+macro: gnupg21_date 2017-03-01 -#+macro: gnupg21_size 6254k -#+macro: gnupg21_sha1 10a088a6716789ac5c5cce2776952d8f4a5c57fc -#+macro: gnupg21_sha2 46cced1f5641ce29cc28250f52fadf6e417e649b3bfdec49a5a0d0b22a639bf0 -#+macro: gnupg21_w32_ver 2.1.19_20170328 -#+macro: gnupg21_w32_date 2017-03-28 -#+macro: gnupg21_w32_size 3747k -#+macro: gnupg21_w32_sha1 0815f0661e24f5893ba90b088b29fbdef57aab7b -#+macro: gnupg21_w32_sha2 9e0086573c5362fdf41a379e24a2ba0ba4bbe56493811d831ae426a394565c56 +#+macro: gnupg21_ver 2.1.20 +#+macro: gnupg21_date 2017-04-03 +#+macro: gnupg21_size 6304k +#+macro: gnupg21_sha1 500ddae8e4225ae2e300934090f9b9a427b8def1 +#+macro: gnupg21_sha2 24cf9a69369be64a9f6f8cc11a1be33ab7780ad77a6a1b93719438f49f69960d +#+macro: gnupg21_w32_ver 2.1.20_20170403 +#+macro: gnupg21_w32_date 2017-04-03 +#+macro: gnupg21_w32_size 3755k +#+macro: gnupg21_w32_sha1 69308ee80699ebb48a055963418597767a76d1d8 +#+macro: gnupg21_w32_sha2 e99ded9c749da2d29cb3fc531ceccb04009f61f263cc76a3bf7ab5c95d93b75f # commit 152a622243de5bb879b46260e88b36d315cac8c6 Author: Werner Koch Date: Mon Apr 3 22:13:46 2017 +0200 web: Some notes on how to build a windows release. diff --git a/web/devel/creating-a-release.org b/web/devel/creating-a-release.org index 7fe8e79..a974fdd 100644 --- a/web/devel/creating-a-release.org +++ b/web/devel/creating-a-release.org @@ -186,6 +186,40 @@ Here are some gotchas for certain packages *** GnuPG Windows Installer +To build a GnuPG >= 2.1 installer you need to change to a working +directory, for example: + +: cd ~/b-w32/speedo + +then cleanup and unpack the GnuPG source: + +: rm -r PLAY PLAY-release +: tar xjf /foo/bar/gnupg-m.n.o.tar.gz + +run a script which does about everything: + +: make -f gnupg-m.n.o/build-aux/speedo.mk w32-release + +finally you should sign the created installer using: + +: make -f gnupg-m.n.o/build-aux/speedo.mk w32-sign-installer + +and also sign them using your release key: + +: gpg -sbvu MYKEY gnupg-w32-m.n.o_YYYYMMDD.tar.xz +: gpg -sbvu MYKEY gnupg-w32-m.n.o_YYYYMMDD.exe + +You will end up with these files: + + - gnupg-w32-m.n.o_YYYYMMDD.tar.xz + - gnupg-w32-m.n.o_YYYYMMDD.tar.xz.sig + - gnupg-w32-m.n.o_YYYYMMDD.exe + - gnupg-w32-m.n.o_YYYYMMDD.exe.sig + - gnupg-w32-m.n.o_YYYYMMDD.exe.swdb + +Use the swdb file to update the swdb.mac and distribute tye other +files (after testing). + *** Libgcrypt ----------------------------------------------------------------------- Summary of changes: web/devel/creating-a-release.org | 34 ++++++++++++++++++++++++++++++++++ web/swdb.mac | 20 ++++++++++---------- 2 files changed, 44 insertions(+), 10 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 3 22:32:46 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Mon, 03 Apr 2017 22:32:46 +0200 Subject: [git] gnupg-doc - branch, master, updated. ae5b22ef6097dba9080d41202836fed72953f536 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via ae5b22ef6097dba9080d41202836fed72953f536 (commit) from f1d18e9d0714ca948e15f6dbda6f436389978c5b (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit ae5b22ef6097dba9080d41202836fed72953f536 Author: Werner Koch Date: Mon Apr 3 22:29:31 2017 +0200 web: News about GnuPG 2.1.20 diff --git a/web/index.org b/web/index.org index 53a693a..726c4a6 100644 --- a/web/index.org +++ b/web/index.org @@ -61,6 +61,11 @@ The latest release news:\\ # point or paste the [[news.en.rss][RSS file]] into your aggregator. +** GnuPG 2.1.20 released (2017-04-03) + +A new version of GnuPG has been released. Read the full [[https://lists.gnupg.org/pipermail/gnupg-announce/2017q2/000404.html][announcement +mail]] for details. + ** New installer for GnuPG 2.1.19 (2017-03-28) An updated Windows [[https://gnupg.org/ftp/gcrypt/binary/gnupg-w32-2.1.19_20170328.exe][installer]] for GnuPG 2.1.19 is now available. This ----------------------------------------------------------------------- Summary of changes: web/index.org | 5 +++++ 1 file changed, 5 insertions(+) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 3 22:43:11 2017 From: cvs at cvs.gnupg.org (by Marcus Brinkmann) Date: Mon, 03 Apr 2017 22:43:11 +0200 Subject: [git] gnupg-doc - branch, master, updated. 7284451e89f576666bc53e8f67f024417d79c4d0 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via 7284451e89f576666bc53e8f67f024417d79c4d0 (commit) from ae5b22ef6097dba9080d41202836fed72953f536 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 7284451e89f576666bc53e8f67f024417d79c4d0 Author: Marcus Brinkmann Date: Mon Apr 3 22:40:23 2017 +0200 Add blog entry: A new bugtracker for GnuPG. diff --git a/misc/blog.gnupg.org/20170403-a-new-bugtracker-for-gnupg.org b/misc/blog.gnupg.org/20170403-a-new-bugtracker-for-gnupg.org new file mode 100644 index 0000000..692acc8 --- /dev/null +++ b/misc/blog.gnupg.org/20170403-a-new-bugtracker-for-gnupg.org @@ -0,0 +1,69 @@ +# A new bugtracker for GnuPG +#+STARTUP: showall +#+AUTHOR: Marcus +#+DATE: April 3, 2017 + +** A New Bugtracker for GnuPG + +*** dev.gnupg.org + +The GnuPG project has just launched [[https://dev.gnupg.org/][dev.gnupg.org]], a new hub for GnuPG +development! The site features a user-friendly task and bug tracker, +a wiki, a Git repository browser, a calendar and utilities such as an +URL shortener, a paste tool, bookmarks, customizable dashboards, and a +meme generator. + +Starting today, the task and bug tracker replaces the old [[http://roundup.sourceforge.net/][Roundup]] +installation at [[https://bugs.gnupg.org/][bugs.gnupg.org]]. All existing tickets have been +migrated under the same ticket number. Links to +https://bugs.gnupg.org/issue:NUMBER: are redirected to +https://dev.gnupg.org/T:NUMBER:, while all other links are redirected +to the main site. + +The new wiki is currently empty, but ready to use. We are inviting the +community at the [[https://wiki.gnupg.org/][GnuPG Wiki]] to join us on the new site, and will be +glad to assist in the migration of existing documentation after the +dust has settled. + +In the calendar you will be able to follow the GnuPG release cycles +and the development sprints. We also plan to keep track of community +meetups and hacker conferences there. + +The Git repositories provide a mirror of the core GnuPG and +GnuPG-For-Windows projects with a very nice visual source code +browser. There are no plans to replace the primary Git hosting at +[[https://git.gnupg.org][git.gnupg.org]], but we might add new community-oriented repositories in +the future that are writable by a larger group of people. + +*** Phabricator + +dev.gnupg.org uses [[https://www.phacility.com/][Phabricator]], a free, self-hosted and complete +software development platform already deployed successfully by other free +software projects such as [[https://phabricator.kde.org/][KDE]] and [[https://phabricator.wikimedia.org/][MediaWiki]]. + +Phabricator supports a lot of features, but we disabled some of them +to make onboarding easier for new users. However, we plan to roll out +some of the additional features in the near future. In particular, we +are interested in Phabricator's code review and audit capabilities, +and are also looking at deeper integration with our Jenkins +installation. + +If you are missing a particular feature of Phabricator on +dev.gnupg.org, let us know! + +*** New Users + +If you are a new user, you can [[https://dev.gnupg.org/auth/register/][register a new account]] with just a +username and an email address. + +*** Existing Users + +If you were a user on bugs.gnupg.org, your account has been migrated +to dev.gnupg.org under the same username and email. You have to use +the [[https://dev.gnupg.org/login/email/][password reset form]] to set a new password. After logging in you +might want to configure the "Email Preferences" under your account +settings. + +In some cases, duplicated accounts have been merged, and some [[https://secure.phabricator.com/T12359][email +addresses had to be adjusted]] for Phabricator. If you have trouble +recovering your account, contact [[mailto:marcus at gnupg.org][marcus]] for support. ----------------------------------------------------------------------- Summary of changes: .../20170403-a-new-bugtracker-for-gnupg.org | 69 ++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 misc/blog.gnupg.org/20170403-a-new-bugtracker-for-gnupg.org hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 4 03:49:12 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Tue, 04 Apr 2017 03:49:12 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-3-g685438b Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 685438bf6fe78c38919031a6ae35576ece7f47cf (commit) via 5744d2038bd17b8b1be4e73d0ad3bc41772efe96 (commit) from 943176c73208f1484de8b0c34b2ad1d189e88495 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 685438bf6fe78c38919031a6ae35576ece7f47cf Author: NIIBE Yutaka Date: Tue Apr 4 10:48:09 2017 +0900 po: Update Japanese translation. -- Signed-off-by: NIIBE Yutaka diff --git a/po/ja.po b/po/ja.po index 02c3b64..ae180b9 100644 --- a/po/ja.po +++ b/po/ja.po @@ -8,9 +8,9 @@ # msgid "" msgstr "" -"Project-Id-Version: gnupg 2.1.16\n" +"Project-Id-Version: gnupg 2.1.20\n" "Report-Msgid-Bugs-To: translations at gnupg.org\n" -"PO-Revision-Date: 2016-12-17 16:29+0900\n" +"PO-Revision-Date: 2017-04-04 10:45+0900\n" "Last-Translator: NIIBE Yutaka \n" "Language-Team: none\n" "Language: ja\n" @@ -2135,7 +2135,7 @@ msgid "show revoked and expired user IDs in signature verification" msgstr "??????????????ID????????????ID?????" msgid "show only the primary user ID in signature verification" -msgstr "????????????ID????????" +msgstr "????????????????ID????????" msgid "validate signatures with PKA data" msgstr "PKA???????????" @@ -3242,20 +3242,16 @@ msgstr "?????????: %s\n" msgid "Key not changed so no update needed.\n" msgstr "????????????????\n" -#, fuzzy -#| msgid "You can't delete the last user ID!\n" msgid "cannot revoke the last valid user ID.\n" -msgstr "??????ID????????!\n" +msgstr "?????????ID?????????\n" -#, fuzzy, c-format -#| msgid "checking the trust list failed: %s\n" +#, c-format msgid "revoking the user ID failed: %s\n" -msgstr "???????????????: %s\n" +msgstr "???ID??????????: %s\n" -#, fuzzy, c-format -#| msgid "checking the trust list failed: %s\n" +#, c-format msgid "setting the primary user ID failed: %s\n" -msgstr "???????????????: %s\n" +msgstr "?????????ID??????????: %s\n" #, c-format msgid "\"%s\" is not a fingerprint\n" @@ -3573,10 +3569,8 @@ msgstr "???ID\"%s\"????????????\n" msgid "WARNING: a user ID signature is dated %d seconds in the future\n" msgstr "*??*: ???ID????%d?????\n" -#, fuzzy -#| msgid "You can't delete the last user ID!\n" msgid "Cannot revoke the last valid user ID.\n" -msgstr "??????ID????????!\n" +msgstr "?????????ID?????????\n" #, c-format msgid "Key %s is already revoked.\n" commit 5744d2038bd17b8b1be4e73d0ad3bc41772efe96 Author: NIIBE Yutaka Date: Tue Apr 4 10:39:00 2017 +0900 agent: Minor fix for get_client_pid. * agent/command-ssh.c (get_client_pid): Use 0 to initialize. Signed-off-by: NIIBE Yutaka diff --git a/agent/command-ssh.c b/agent/command-ssh.c index 5a02542..b15d8b2 100644 --- a/agent/command-ssh.c +++ b/agent/command-ssh.c @@ -3567,7 +3567,7 @@ ssh_request_process (ctrl_t ctrl, estream_t stream_sock) static unsigned long get_client_pid (int fd) { - pid_t client_pid = (pid_t)(-1); + pid_t client_pid = (pid_t)0; #ifdef SO_PEERCRED { @@ -3578,7 +3578,7 @@ get_client_pid (int fd) #endif socklen_t cl = sizeof cr; - if ( !getsockopt (fd, SOL_SOCKET, SO_PEERCRED, &cr, &cl)) + if (!getsockopt (fd, SOL_SOCKET, SO_PEERCRED, &cr, &cl)) { #if defined (HAVE_STRUCT_SOCKPEERCRED_PID) || defined (HAVE_STRUCT_UCRED_PID) client_pid = cr.pid; @@ -3593,7 +3593,7 @@ get_client_pid (int fd) { socklen_t len = sizeof (pid_t); - getsockopt(fd, SOL_LOCAL, LOCAL_PEERPID, &client_pid, &len); + getsockopt (fd, SOL_LOCAL, LOCAL_PEERPID, &client_pid, &len); } #elif defined (LOCAL_PEEREID) { @@ -3613,9 +3613,11 @@ get_client_pid (int fd) ucred_free (ucred); } } +#else + (void)fd; #endif - return client_pid == (pid_t)(-1)? 0 : (unsigned long)client_pid; + return (unsigned long)client_pid; } ----------------------------------------------------------------------- Summary of changes: agent/command-ssh.c | 10 ++++++---- po/ja.po | 24 +++++++++--------------- 2 files changed, 15 insertions(+), 19 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 4 10:47:36 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Tue, 04 Apr 2017 10:47:36 +0200 Subject: [git] GCRYPT - branch, master, updated. libgcrypt-1.7.3-78-g719468e Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU crypto library". The branch, master has been updated via 719468e53133d3bdf12156c5bfdea2bf15f9f6f1 (commit) from 654024081cfa103c87bb163b117ea3568171d408 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 719468e53133d3bdf12156c5bfdea2bf15f9f6f1 Author: NIIBE Yutaka Date: Tue Apr 4 17:38:05 2017 +0900 mpi: Simplify mpi_powm. * mpi/mpi-pow.c (_gcry_mpi_powm): Simplify the loop. -- This fix is not a solution for the problem reported (yet). The problem is that the current algorithm of _gcry_mpi_powm depends on exponent and some information leaks is possible. Reported-by: Andreas Zankl Signed-off-by: NIIBE Yutaka diff --git a/mpi/mpi-pow.c b/mpi/mpi-pow.c index a780ebd..7b3dc31 100644 --- a/mpi/mpi-pow.c +++ b/mpi/mpi-pow.c @@ -609,12 +609,8 @@ _gcry_mpi_powm (gcry_mpi_t res, if (e == 0) { j += c; - i--; - if ( i < 0 ) - { - c = 0; - break; - } + if ( --i < 0 ) + break; e = ep[i]; c = BITS_PER_MPI_LIMB; @@ -629,38 +625,33 @@ _gcry_mpi_powm (gcry_mpi_t res, c -= c0; j += c0; + e0 = (e >> (BITS_PER_MPI_LIMB - W)); if (c >= W) - { - e0 = (e >> (BITS_PER_MPI_LIMB - W)); - e = (e << W); - c -= W; - } + c0 = 0; else { - i--; - if ( i < 0 ) + if ( --i < 0 ) { - e = (e >> (BITS_PER_MPI_LIMB - c)); - break; + e0 = (e >> (BITS_PER_MPI_LIMB - c)); + j += c - W; + goto last_step; + } + else + { + c0 = c; + e = ep[i]; + c = BITS_PER_MPI_LIMB; + e0 |= (e >> (BITS_PER_MPI_LIMB - (W - c0))); } - - c0 = c; - e0 = (e >> (BITS_PER_MPI_LIMB - W)) - | (ep[i] >> (BITS_PER_MPI_LIMB - W + c0)); - e = (ep[i] << (W - c0)); - c = BITS_PER_MPI_LIMB - W + c0; } + e = e << (W - c0); + c -= (W - c0); + + last_step: count_trailing_zeros (c0, e0); e0 = (e0 >> c0) >> 1; - for (j += W - c0; j; j--) - { - mul_mod (xp, &xsize, rp, rsize, rp, rsize, mp, msize, &karactx); - tp = rp; rp = xp; xp = tp; - rsize = xsize; - } - /* * base_u <= precomp[e0] * base_u_size <= precomp_size[e0] @@ -677,25 +668,23 @@ _gcry_mpi_powm (gcry_mpi_t res, u.d = precomp[k]; mpi_set_cond (&w, &u, k == e0); - base_u_size |= (precomp_size[k] & ((mpi_size_t)0 - (k == e0)) ); + base_u_size |= ( precomp_size[k] & ((mpi_size_t)0 - (k == e0)) ); } - mul_mod (xp, &xsize, rp, rsize, base_u, base_u_size, - mp, msize, &karactx); - tp = rp; rp = xp; xp = tp; - rsize = xsize; + for (j += W - c0; j >= 0; j--) + { + mul_mod (xp, &xsize, rp, rsize, + j == 0 ? base_u : rp, j == 0 ? base_u_size : rsize, + mp, msize, &karactx); + tp = rp; rp = xp; xp = tp; + rsize = xsize; + } j = c0; + if ( i < 0 ) + break; } - if (c != 0) - { - j += c; - count_trailing_zeros (c, e); - e = (e >> c); - j -= c; - } - while (j--) { mul_mod (xp, &xsize, rp, rsize, rp, rsize, mp, msize, &karactx); @@ -703,40 +692,6 @@ _gcry_mpi_powm (gcry_mpi_t res, rsize = xsize; } - if (e != 0) - { - /* - * base_u <= precomp[(e>>1)] - * base_u_size <= precomp_size[(e>>1)] - */ - base_u_size = 0; - for (k = 0; k < (1<< (W - 1)); k++) - { - struct gcry_mpi w, u; - w.alloced = w.nlimbs = precomp_size[k]; - u.alloced = u.nlimbs = precomp_size[k]; - w.sign = u.sign = 0; - w.flags = u.flags = 0; - w.d = base_u; - u.d = precomp[k]; - - mpi_set_cond (&w, &u, k == (e>>1)); - base_u_size |= (precomp_size[k] & ((mpi_size_t)0 - (k == (e>>1))) ); - } - - mul_mod (xp, &xsize, rp, rsize, base_u, base_u_size, - mp, msize, &karactx); - tp = rp; rp = xp; xp = tp; - rsize = xsize; - - for (; c; c--) - { - mul_mod (xp, &xsize, rp, rsize, rp, rsize, mp, msize, &karactx); - tp = rp; rp = xp; xp = tp; - rsize = xsize; - } - } - /* We shifted MOD, the modulo reduction argument, left MOD_SHIFT_CNT steps. Adjust the result by reducing it with the original MOD. ----------------------------------------------------------------------- Summary of changes: mpi/mpi-pow.c | 105 +++++++++++++++++----------------------------------------- 1 file changed, 30 insertions(+), 75 deletions(-) hooks/post-receive -- The GNU crypto library http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 4 18:27:00 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 04 Apr 2017 18:27:00 +0200 Subject: [git] gnupg-doc - branch, master, updated. 3795fe224f53aa6ef9e98c350519274874afb04d Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via 3795fe224f53aa6ef9e98c350519274874afb04d (commit) via eefb7b978a8463593ec96606cd558d7a27524a95 (commit) from 7284451e89f576666bc53e8f67f024417d79c4d0 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 3795fe224f53aa6ef9e98c350519274874afb04d Author: Werner Koch Date: Tue Apr 4 18:23:05 2017 +0200 tools: Minor fix to build-website.sh We need to move the headlines.txt also to the webspace so that the mkkudos script can use them to update the list of recent blog entries on the frontpage. diff --git a/tools/build-website.sh b/tools/build-website.sh index 22f235f..3a8b945 100755 --- a/tools/build-website.sh +++ b/tools/build-website.sh @@ -98,7 +98,7 @@ fi trap "rm -f $LOCKFILE" 0 -# These flags are set to the stage directory iof a sync is required +# These flags are set to the stage directory if a sync is required sync_web= sync_blog= @@ -225,8 +225,7 @@ fi if [ -n "$sync_blog" ]; then cd "$sync_blog" rsync -rt --links --exclude '*~' --exclude '*.sh' \ - --exclude '*tmp' --exclude '*.org' --exclude headlines.txt \ - . ${htdocs_blog}/ + --exclude '*tmp' --exclude '*.org' . ${htdocs_blog}/ any_sync=yes fi commit eefb7b978a8463593ec96606cd558d7a27524a95 Author: Werner Koch Date: Tue Apr 4 18:21:28 2017 +0200 web: Explain the term SEPA on the donation page. diff --git a/web/donate/index.org b/web/donate/index.org index 30b8552..b1b383c 100644 --- a/web/donate/index.org +++ b/web/donate/index.org @@ -108,7 +108,7 @@ + value="se" />SEPA (European bank transfer)   ----------------------------------------------------------------------- Summary of changes: tools/build-website.sh | 5 ++--- web/donate/index.org | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 4 18:55:22 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Tue, 04 Apr 2017 18:55:22 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-7-g32b75fb Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 32b75fb7743f35936d7014fce33c90ba97dfa374 (commit) via 6261611d3786f19fd84ccc79f45a89cadac518e8 (commit) via a80d4a9b50ad47eae1f8c740dd73804311e38783 (commit) via d858096c99705ccf2e115475f81c4cf88edbeebf (commit) from 685438bf6fe78c38919031a6ae35576ece7f47cf (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 32b75fb7743f35936d7014fce33c90ba97dfa374 Author: Justus Winter Date: Tue Apr 4 14:32:04 2017 +0200 tests: Fix setup of ephemeral home directories. * tests/openpgp/defs.scm (with-ephemeral-home-directory): Create configuration files when we enter the context. * tests/openpgp/setup.scm: Do not use an ephemeral home directory. Tests should always use the cwd. * tests/gpgsm/setup.scm: Likewise. * tests/gpgsm/export.scm: Add explicit constructor function. * tests/openpgp/decrypt-session-key.scm: Likewise. * tests/openpgp/decrypt-unwrap-verify.scm: Likewise. -- Previously, ephemeral homedirectories lacked a configuration, hence GnuPG tried to start backend daemons using their installed locations. Fix this by explicitly creating a suitable configuration. GnuPG-bug-id: 3047 Signed-off-by: Justus Winter diff --git a/tests/gpgsm/export.scm b/tests/gpgsm/export.scm index 1ee91e4..47fb06e 100644 --- a/tests/gpgsm/export.scm +++ b/tests/gpgsm/export.scm @@ -25,7 +25,7 @@ (lambda (cert) (lettmp (exported) (call-check `(, at gpgsm --output ,exported --export ,cert::uid::CN)) - (with-ephemeral-home-directory + (with-ephemeral-home-directory setup-gpgsm-environment (call-check `(, at gpgsm --import ,exported)) (assert (sm-have-public-key? cert))))) (lambda (cert) cert::uid::CN) diff --git a/tests/gpgsm/setup.scm b/tests/gpgsm/setup.scm index 91821a0..aa1ab41 100644 --- a/tests/gpgsm/setup.scm +++ b/tests/gpgsm/setup.scm @@ -23,8 +23,6 @@ (unless (and tarball (not (null? tarball))) (error "Usage: setup.scm --create-tarball ...")) -(with-ephemeral-home-directory - (chdir (getenv "GNUPGHOME")) - (create-gpgsmhome) - (stop-agent) - (call-check `(,(tool 'gpgtar) --create --output ,(car tarball) "."))) +(setenv "GNUPGHOME" (getcwd) #t) +(create-gpgsmhome) +(call-check `(,(tool 'gpgtar) --create --output ,(car tarball) ".")) diff --git a/tests/openpgp/decrypt-session-key.scm b/tests/openpgp/decrypt-session-key.scm index 771b53d..989ce30 100755 --- a/tests/openpgp/decrypt-session-key.scm +++ b/tests/openpgp/decrypt-session-key.scm @@ -37,7 +37,7 @@ (lambda (name) (let* ((source (in-srcdir (string-append name ".asc"))) (key (get-session-key source))) - (with-ephemeral-home-directory + (with-ephemeral-home-directory setup-environment (tr:do (tr:open source) (tr:gpg "" `(--yes --decrypt --override-session-key ,key)) diff --git a/tests/openpgp/decrypt-unwrap-verify.scm b/tests/openpgp/decrypt-unwrap-verify.scm index 97a72e4..ef9a99a 100755 --- a/tests/openpgp/decrypt-unwrap-verify.scm +++ b/tests/openpgp/decrypt-unwrap-verify.scm @@ -35,7 +35,7 @@ ;; Then, verify the signature with a clean working directory ;; containing only Steve's public key. - (with-ephemeral-home-directory + (with-ephemeral-home-directory setup-environment (call-check `(, at gpg --import ,steve's-key)) (call-check `(, at gpg --verify ,unwrapped))))) '("encsig-2-keys-3" "encsig-2-keys-4"))) diff --git a/tests/openpgp/defs.scm b/tests/openpgp/defs.scm index e8d06c0..4271ba0 100644 --- a/tests/openpgp/defs.scm +++ b/tests/openpgp/defs.scm @@ -289,14 +289,18 @@ ;; Evaluate a sequence of expressions with an ephemeral home ;; directory. -(define-macro (with-ephemeral-home-directory . expressions) +(define-macro (with-ephemeral-home-directory setup-fn . expressions) (let ((original-home-directory (gensym)) - (ephemeral-home-directory (gensym))) + (ephemeral-home-directory (gensym)) + (setup (gensym))) `(let ((,original-home-directory (getenv "GNUPGHOME")) - (,ephemeral-home-directory (mkdtemp))) + (,ephemeral-home-directory (mkdtemp)) + (,setup (delay (,setup-fn)))) (finally (unlink-recursively ,ephemeral-home-directory) (dynamic-wind - (lambda () (setenv "GNUPGHOME" ,ephemeral-home-directory #t)) + (lambda () + (force ,setup) + (setenv "GNUPGHOME" ,ephemeral-home-directory #t)) (lambda () , at expressions) (lambda () (setenv "GNUPGHOME" ,original-home-directory #t))))))) diff --git a/tests/openpgp/setup.scm b/tests/openpgp/setup.scm index 4b3bfcb..a7d14e7 100755 --- a/tests/openpgp/setup.scm +++ b/tests/openpgp/setup.scm @@ -40,10 +40,9 @@ '(gpgconf gpg gpg-agent scdaemon gpgsm dirmngr gpg-connect-agent gpg-preset-passphrase gpgtar pinentry))) -(with-ephemeral-home-directory - (chdir (getenv "GNUPGHOME")) - (create-gpghome) - (start-agent) - (create-legacy-gpghome) - (stop-agent) - (call-check `(,(tool 'gpgtar) --create --output ,(cadr *args*) "."))) +(setenv "GNUPGHOME" (getcwd) #t) +(create-gpghome) +(start-agent) +(create-legacy-gpghome) +(stop-agent) +(call-check `(,(tool 'gpgtar) --create --output ,(cadr *args*) ".")) commit 6261611d3786f19fd84ccc79f45a89cadac518e8 Author: Justus Winter Date: Tue Apr 4 17:36:45 2017 +0200 gpgscm: Fix copying values. * tests/gpgscm/scheme.c (copy_value): New function. (mk_tagged_value): Use new function. (opexe_4): Likewise for OP_SAVE_FORCED. -- Occasionally, we need to copy a value from one location in the storage to another. Scheme objects are fine. Some primitive objects, however, require finalization, usually to free resources. For these values, we either make a copy or acquire a reference. Fixes e.g. a double free if a delayed expression evaluating to a string is forced. Signed-off-by: Justus Winter diff --git a/tests/gpgscm/scheme.c b/tests/gpgscm/scheme.c index 736486f..51fdef0 100644 --- a/tests/gpgscm/scheme.c +++ b/tests/gpgscm/scheme.c @@ -624,6 +624,56 @@ static long binary_decode(const char *s) { +/* + * Copying values. + * + * Occasionally, we need to copy a value from one location in the + * storage to another. Scheme objects are fine. Some primitive + * objects, however, require finalization, usually to free resources. + * + * For these values, we either make a copy or acquire a reference. + */ + +/* + * Copy SRC to DST. + * + * Copies the representation of SRC to DST. This makes SRC + * indistinguishable from DST from the perspective of a Scheme + * expression modulo the fact that they reside at a different location + * in the store. + * + * Conditions: + * + * - SRC must not be a vector. + * - Caller must ensure that any resources associated with the + * value currently stored in DST is accounted for. + */ +static void +copy_value(scheme *sc, pointer dst, pointer src) +{ + memcpy(dst, src, sizeof *src); + + /* We may need to make a copy or acquire a reference. */ + if (typeflag(dst) & T_FINALIZE) + switch (type(dst)) { + case T_STRING: + strvalue(dst) = store_string(sc, strlength(dst), strvalue(dst), 0); + break; + case T_PORT: + /* XXX acquire reference */ + assert (!"implemented"); + break; + case T_FOREIGN_OBJECT: + /* XXX acquire reference */ + assert (!"implemented"); + break; + case T_VECTOR: + assert (!"vectors cannot be copied"); + } +} + + + /* Tags are like property lists, but can be attached to arbitrary * values. */ @@ -640,7 +690,7 @@ mk_tagged_value(scheme *sc, pointer v, pointer tag_car, pointer tag_cdr) if (r == sc->sink) return sc->sink; - memcpy(r, v, sizeof *v); + copy_value(sc, r, v); typeflag(r) |= T_TAGGED; t = r + 1; @@ -4603,7 +4653,7 @@ static pointer opexe_4(scheme *sc, enum scheme_opcodes op) { } CASE(OP_SAVE_FORCED): /* Save forced value replacing promise */ - memcpy(sc->code,sc->value,sizeof(struct cell)); + copy_value(sc, sc->code, sc->value); s_return(sc,sc->value); CASE(OP_WRITE): /* write */ commit a80d4a9b50ad47eae1f8c740dd73804311e38783 Author: Justus Winter Date: Tue Apr 4 17:38:50 2017 +0200 gpgscm: Simplify get-output-string operation. * tests/gpgscm/scheme.c (opexe_4): Simplify 'get-output-string'. Signed-off-by: Justus Winter diff --git a/tests/gpgscm/scheme.c b/tests/gpgscm/scheme.c index 3c7afa3..736486f 100644 --- a/tests/gpgscm/scheme.c +++ b/tests/gpgscm/scheme.c @@ -4811,20 +4811,12 @@ static pointer opexe_4(scheme *sc, enum scheme_opcodes op) { port *p; if ((p=car(sc->args)->_object._port)->kind&port_string) { - off_t size; - char *str; - - size=p->rep.string.curr-p->rep.string.start+1; - str=sc->malloc(size); - if(str != NULL) { - pointer s; - - memcpy(str,p->rep.string.start,size-1); - str[size-1]='\0'; - s=mk_string(sc,str); - sc->free(str); - s_return(sc,s); - } + gc_disable(sc, 1); + s_return_enable_gc( + sc, + mk_counted_string(sc, + p->rep.string.start, + p->rep.string.curr - p->rep.string.start)); } s_return(sc,sc->F); } commit d858096c99705ccf2e115475f81c4cf88edbeebf Author: Justus Winter Date: Tue Apr 4 14:28:45 2017 +0200 gpgscm: Simplify substring operation. * tests/gpgscm/scheme.c (opexe_2): Simplify 'substring'. Signed-off-by: Justus Winter diff --git a/tests/gpgscm/scheme.c b/tests/gpgscm/scheme.c index fbc562d..3c7afa3 100644 --- a/tests/gpgscm/scheme.c +++ b/tests/gpgscm/scheme.c @@ -4355,7 +4355,6 @@ static pointer opexe_2(scheme *sc, enum scheme_opcodes op) { char *str; int index0; int index1; - int len; str=strvalue(car(sc->args)); @@ -4374,13 +4373,8 @@ static pointer opexe_2(scheme *sc, enum scheme_opcodes op) { index1=strlength(car(sc->args)); } - len=index1-index0; gc_disable(sc, 1); - x=mk_empty_string(sc,len,' '); - memcpy(strvalue(x),str+index0,len); - strvalue(x)[len]=0; - - s_return_enable_gc(sc, x); + s_return_enable_gc(sc, mk_counted_string(sc, str + index0, index1 - index0)); } CASE(OP_VECTOR): { /* vector */ ----------------------------------------------------------------------- Summary of changes: tests/gpgscm/scheme.c | 82 ++++++++++++++++++++++++--------- tests/gpgsm/export.scm | 2 +- tests/gpgsm/setup.scm | 8 ++-- tests/openpgp/decrypt-session-key.scm | 2 +- tests/openpgp/decrypt-unwrap-verify.scm | 2 +- tests/openpgp/defs.scm | 12 +++-- tests/openpgp/setup.scm | 13 +++--- 7 files changed, 79 insertions(+), 42 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 4 19:04:39 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 04 Apr 2017 19:04:39 +0200 Subject: [git] gnupg-doc - branch, master, updated. aa59c373a26e16ef52b5025696a1f8f4708dce40 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via aa59c373a26e16ef52b5025696a1f8f4708dce40 (commit) from 3795fe224f53aa6ef9e98c350519274874afb04d (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit aa59c373a26e16ef52b5025696a1f8f4708dce40 Author: Werner Koch Date: Tue Apr 4 18:59:10 2017 +0200 web: Add Snowden quote to the front page. The term "Even if you have nothing to hide" implicates that this can be considered be a true statement. We better don't mention this at all but counter directly with a good argument. diff --git a/web/index.org b/web/index.org index 726c4a6..d015b79 100644 --- a/web/index.org +++ b/web/index.org @@ -32,11 +32,17 @@ as well as English and German manuals. * Reconquer your privacy -Even if you have nothing to hide, using encryption helps protect the -privacy of people you communicate with, and makes life difficult for -bulk surveillance systems. If you do have something important to hide, -you are in good company; GnuPG is one of the tools that Edward Snowden -used to uncover the secrets of the NSA. +#+begin_quote +Arguing that you don't care about the right to privacy +because you have nothing to hide is no different from +saying you don't care about free speech because you have +nothing to say. \ndash\nbsp{}Edward\nbsp{}Snowden +#+end_quote + +Using encryption helps to protect your privacy and the privacy of the +people you communicate with. Encryption makes life difficult for bulk +surveillance systems. GnuPG is one of the tools that Snowden used to +uncover the secrets of the NSA. Please visit the [[https://emailselfdefense.fsf.org][Email Self-Defense]] site to learn how and why you should use GnuPG for your electronic communication. If you need ----------------------------------------------------------------------- Summary of changes: web/index.org | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 4 20:27:31 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 04 Apr 2017 20:27:31 +0200 Subject: [git] gnupg-doc - branch, master, updated. 4710d1e0b1f7b7f526ea7e1342b5a99d2aeca61e Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via 4710d1e0b1f7b7f526ea7e1342b5a99d2aeca61e (commit) from aa59c373a26e16ef52b5025696a1f8f4708dce40 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 4710d1e0b1f7b7f526ea7e1342b5a99d2aeca61e Author: Werner Koch Date: Tue Apr 4 20:24:07 2017 +0200 web: Update the page describing the bug tracker. diff --git a/web/devel/index.org b/web/devel/index.org index dce2156..d5c5121 100644 --- a/web/devel/index.org +++ b/web/devel/index.org @@ -4,4 +4,5 @@ * Resources for Developers - - [[file:creating-a-release.org][How to create a release]]. +- [[https://www.gnupg.org/faq/HACKING.html][Coding guidelines]]. +- [[file:creating-a-release.org][How to create a release]]. diff --git a/web/documentation/bts.org b/web/documentation/bts.org index 1db13dd..04d322d 100644 --- a/web/documentation/bts.org +++ b/web/documentation/bts.org @@ -4,18 +4,101 @@ * Bug Tracking System - Our bug tracking system can be found at [[https://bugs.gnupg.org/gnupg/index][bugs.gnupg.org]]. Please, - query the database before you create a new bug report. You need to - create an account to file a bug or edit existing bugs. See the - [[https://bugs.gnupg.org/index.html#intro][Introduction to the BTS]]. Bug reports need to be written in English + Our bug tracking system can be found at [[https://dev.gnupg.org][dev.gnupg.org]]. Please, + query the database before you create a new bug report (aka /Task/). + See below for some more information. Bug reports need to be written + in English. If you can fix one of these bugs/limitations, we will certainly be - glad to receive a patch via the gnupg-devel mailing list. If the - patch is non-trivial please read the file [[https://www.gnupg.org/faq/HACKING.html][doc/HACKING]] first. + glad to receive a patch via the above platform or the gnupg-devel + mailing list. If the patch is non-trivial please read our + [[https://www.gnupg.org/faq/HACKING.html][coding guidelines]] first. + Our bug tracker can also be used to report problems related to this + GnuPG.org site. Simply, follow the instructions for a regular bug + and add the tag /gpgweb/. -** GnuPG.org - The *Bug Tracking System* can also be used to report problems - related to GnuPG.org site. Simply, follow the instructions given - above and set the "category" field to *gpgweb*. +** Hints on how to add a new bug + + Please note that this bug tracker is a public resource and + everything you enter there will be available for the whole + networked world. It is similar to a public mailing list and there + is no easy way to retract any information. + + You should follow these steps to enter a new bug (issue): + + - Review the documentation and the mailing list archives to see + whether your problem has already been addressed. Often bugs are + mere configuration problems. + + - Check that the bug has not yet been entered and that there is no + similar bug in the tracker. Use the search option for this. It + is best to also look through already closed (resolved) + issues. + + - If you consider the bug a severe security problem and you do not + want to publish it, please write to security 'at' gnupg.org to + ask for advice and our encryption keys. See also the AUTHORS + file in each package. + + - In the left sidebar select /Tasks/ and then click on /+ Create + Task/ which you find in the upper right corner. On our + development platform a /Task/ is a synonym for a /bug/. + + - Come up with a meaningful short description of the bug and enter + this into the /Title/ field. + + - If you want to want to ask for a new feature or have another + wish, please indicate the in the /Priority/ field. Bug should in + general be left at the default priority of /Needs Triage/ and you + should not assign the bug to anyone if you want to get it fixed + soon. + + - Now for the most important field: The Description of the problem. + You enter this information into the, surprise, /Description/ field. + Please take care to use hard line breaks and format the report as + you would do by mail.\\ + \nbsp{}\\ + Make sure that you describe the bug as good as possible and try + to come up with a minimal recipe on how to replicate the bug. We + need to know the version of the software and if you are using a + non-released version the Git commit id. Use the separate field + /Version/ at the bottom of the page for this. The type and + version of your operating system is usually important, so please + tell us. In particular tell us if your problem occurs on a + non-Unix system, i.e. MS Windows. + + - If you want to provide more information, you may upload any kind + of file using the menu at the top of the /Description/ field. + However, please do this only if you are sure that these + information are important and that they do not contain + confidential data. Uploaded files will be public and it might + not be possible to retract them anymore. Avoid screen shots + unless you are asked for them. The problem with screen shots or, + worse, screen casts is that we would need to transcript them to + text for evaluating the problem. That takes away time we better + spend solving the problem; it is easy to help us by providing a + transcription. + + - You may optionally assign one or more /Tags/ to a report. The + package name is a good guess ("gnupg", "libgcrypt", etc.). If + you know that the bug is Microsoft Windows specific, please enter + add the tag "w32". You do not need to do it if you already + specified Windows specific package (like "gpgol"). For macOS + specific bugs, use "MacOS". + + - Please be kind and do _not_ assign a /Due Date/. We will later + evaluate the importance of bugs in the light of other open bugs. + + - If you want to refer to an external bug description (for example + a similar entry in Debian's bug tracker), enter the URL into the + /External Link/ field. + + - The /Version/ field should be filled as described above. If you + don't know the version leave it blank and describe what you know + about the software in the /Description/ field. + + - If everything is as you want it, click the /Create New Task/ + button. This entry as well as all future changes will also be + mailed to you. ----------------------------------------------------------------------- Summary of changes: web/devel/index.org | 3 +- web/documentation/bts.org | 103 +++++++++++++++++++++++++++++++++++++++++----- 2 files changed, 95 insertions(+), 11 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Wed Apr 5 15:23:07 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Wed, 05 Apr 2017 15:23:07 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-8-g01e84d4 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 01e84d429aeeb1450012ff0576a6a24de50693c6 (commit) from 32b75fb7743f35936d7014fce33c90ba97dfa374 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 01e84d429aeeb1450012ff0576a6a24de50693c6 Author: Justus Winter Date: Wed Apr 5 15:18:30 2017 +0200 tests: Fix setup of ephemeral home directories. * tests/openpgp/defs.scm (with-ephemeral-home-directory): Set GNUPGHOME and cwd to the ephemeral directory before calling the setup function. GnuPG-bug-id: 3047 Fixes-commit: 32b75fb7743f35936d7014fce33c90ba97dfa374 Signed-off-by: Justus Winter diff --git a/tests/openpgp/defs.scm b/tests/openpgp/defs.scm index 4271ba0..815a560 100644 --- a/tests/openpgp/defs.scm +++ b/tests/openpgp/defs.scm @@ -299,8 +299,8 @@ (finally (unlink-recursively ,ephemeral-home-directory) (dynamic-wind (lambda () - (force ,setup) - (setenv "GNUPGHOME" ,ephemeral-home-directory #t)) + (setenv "GNUPGHOME" ,ephemeral-home-directory #t) + (with-working-directory ,ephemeral-home-directory (force ,setup))) (lambda () , at expressions) (lambda () (setenv "GNUPGHOME" ,original-home-directory #t))))))) ----------------------------------------------------------------------- Summary of changes: tests/openpgp/defs.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed Apr 5 15:36:15 2017 From: cvs at cvs.gnupg.org (by Kai Michaelis) Date: Wed, 05 Apr 2017 15:36:15 +0200 Subject: [git] gnupg-doc - branch, master, updated. fa0fcd3483230a085d56359cf5cb0eb79b7a6fee Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via fa0fcd3483230a085d56359cf5cb0eb79b7a6fee (commit) from 4710d1e0b1f7b7f526ea7e1342b5a99d2aeca61e (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit fa0fcd3483230a085d56359cf5cb0eb79b7a6fee Author: Kai Michaelis Date: Wed Apr 5 15:37:17 2017 +0200 web: Add profile pic for Kai diff --git a/web/people/kai.png b/web/people/kai.png index f75a213..768934c 100644 Binary files a/web/people/kai.png and b/web/people/kai.png differ ----------------------------------------------------------------------- Summary of changes: web/people/kai.png | Bin 183 -> 20754 bytes 1 file changed, 0 insertions(+), 0 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Wed Apr 5 16:43:50 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Wed, 05 Apr 2017 16:43:50 +0200 Subject: [git] GPGME - branch, master, updated. gpgme-1.9.0-14-ge7d9c0c Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG Made Easy". The branch, master has been updated via e7d9c0c3d773f826dbd2ed417d04e25c410f3374 (commit) via 801d7d8c5dd530d26ad6c4bcc94d986e6e022da4 (commit) via adfa09699c7ecad5dec5b79944a59291eaec75b4 (commit) from 50565982cdd502c3852fcc6f598932bd32b5cdc3 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit e7d9c0c3d773f826dbd2ed417d04e25c410f3374 Author: Justus Winter Date: Mon Apr 3 15:44:14 2017 +0200 python: Fix vpath builds, fix distcheck. * lang/python/gpgme-h-clean.py: Delete file. * lang/python/MANIFEST.in: Adapt accordingly. * lang/python/Makefile.am (EXTRA_DIST): Likewise. (COPY_FILES_GPG): Bring variable back. (copystamp): Copy files. (clean-local): Delete copied files. (install-exec-local): Do not create and install list of installed files. (uninstall-local): Instead, create some explicit rules to uninstall the extension. * lang/python/setup.py.in: Parse arguments. Locate files either in the source directory, or in the build base directory. Inline the code from 'gpgme-h-clean.py'. Copy 'helpers.c', add source directory as include directory. Fixes-commit: 801d7d8c5dd530d26ad6c4bcc94d986e6e022da4 Signed-off-by: Justus Winter diff --git a/lang/python/MANIFEST.in b/lang/python/MANIFEST.in index 8f63640..ff38172 100644 --- a/lang/python/MANIFEST.in +++ b/lang/python/MANIFEST.in @@ -1,4 +1,4 @@ recursive-include examples *.py -include gpgme-h-clean.py gpgme.i +include gpgme.i include helpers.c helpers.h private.h recursive-include gpg *.py diff --git a/lang/python/Makefile.am b/lang/python/Makefile.am index b9145f5..42beeee 100644 --- a/lang/python/Makefile.am +++ b/lang/python/Makefile.am @@ -21,12 +21,20 @@ EXTRA_DIST = \ MANIFEST.in \ gpgme.i \ helpers.c helpers.h private.h \ - gpgme-h-clean.py \ examples \ gpg SUBDIRS = . tests +COPY_FILES_GPG = \ + $(srcdir)/gpg/callbacks.py \ + $(srcdir)/gpg/constants \ + $(srcdir)/gpg/core.py \ + $(srcdir)/gpg/errors.py \ + $(srcdir)/gpg/__init__.py \ + $(srcdir)/gpg/results.py \ + $(srcdir)/gpg/util.py + .PHONY: prepare prepare: copystamp @@ -35,12 +43,14 @@ prepare: copystamp copystamp: ln -sf "$(abs_top_srcdir)/src/data.h" . ln -sf "$(abs_top_builddir)/config.h" . + if test $(srcdir) != . ; then cp -R $(COPY_FILES_GPG) gpg ; fi touch $@ all-local: copystamp set -e ; set $(PYTHONS); for VERSION in $(PYTHON_VERSIONS); do \ PYTHON="$$1" ; shift ; \ CFLAGS="$(CFLAGS)" \ + srcdir="$(srcdir)" \ abs_top_builddir="$(abs_top_builddir)" \ $$PYTHON setup.py build --verbose --build-base=python$${VERSION}-gpg ; \ done @@ -48,6 +58,7 @@ all-local: copystamp python$(PYTHON_VERSION)-gpg/dist/gpg-$(VERSION).tar.gz.asc: copystamp $(MKDIR_P) python$(PYTHON_VERSION)-gpg-dist CFLAGS="$(CFLAGS)" \ + srcdir="$(srcdir)" \ abs_top_builddir="$(abs_top_builddir)" \ $(PYTHON) setup.py sdist --verbose --dist-dir=python$(PYTHON_VERSION)-gpg-dist \ --manifest=python$(PYTHON_VERSION)-gpg-dist/MANIFEST @@ -73,6 +84,12 @@ CLEANFILES = copystamp \ # permissions. clean-local: rm -rf -- build + if test $(srcdir) != . ; then \ + find gpg -type d ! -perm -200 -exec chmod u+w {} ';' ; \ + for FILE in $(COPY_FILES_GPG); do \ + rm -rf -- gpg/$$(basename $$FILE) ; \ + done \ + fi for VERSION in $(PYTHON_VERSIONS); do \ find python$${VERSION}-gpg -type d ! -perm -200 -exec chmod u+w {} ';' ; \ rm -rf -- python$${VERSION}-gpg ; \ @@ -81,20 +98,18 @@ clean-local: install-exec-local: set -e ; set $(PYTHONS); for VERSION in $(PYTHON_VERSIONS); do \ PYTHON="$$1" ; shift ; \ + srcdir="$(srcdir)" \ abs_top_builddir="$(abs_top_builddir)" \ $$PYTHON setup.py \ build \ --build-base=python$${VERSION}-gpg \ install \ --prefix "$(DESTDIR)$(prefix)" \ - --record files.txt \ --verbose ; \ - cat files.txt >> install_files.txt ; \ - rm files.txt ; \ done - $(MKDIR_P) "$(DESTDIR)$(pythondir)/gpg" - mv install_files.txt "$(DESTDIR)$(pythondir)/gpg" uninstall-local: - xargs < "$(DESTDIR)$(pythondir)/gpg/install_files.txt" -- rm -rf -- - rm -rf -- "$(DESTDIR)$(pythondir)/gpg" + GV=$$(echo $(VERSION) | tr - _); for PV in $(PYTHON_VERSIONS); do \ + rm -rf -- "$(DESTDIR)$(prefix)/lib/python$$PV/site-packages/gpg" \ +"$(DESTDIR)$(prefix)/lib/python$$PV/site-packages/gpg-$$GV-py$$PV.egg-info" ; \ + done diff --git a/lang/python/gpgme-h-clean.py b/lang/python/gpgme-h-clean.py deleted file mode 100755 index 52f8676..0000000 --- a/lang/python/gpgme-h-clean.py +++ /dev/null @@ -1,53 +0,0 @@ -#!/usr/bin/env python - -# Copyright (C) 2016 g10 Code GmbH -# Copyright (C) 2004,2008 Igor Belyi -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -from __future__ import absolute_import, print_function, unicode_literals -del absolute_import, print_function, unicode_literals - -import sys, re - -if len(sys.argv) != 2: - sys.stderr.write("Usage: %s path/to/[gpgme|gpg-error].h\n" % sys.argv[0]) - sys.exit(1) - -deprec_func = re.compile(r'^(.*typedef.*|.*\(.*\)|[^#]+\s+.+)' - + r'\s*_GPGME_DEPRECATED(_OUTSIDE_GPGME)?\(.*\);\s*', - re.S) -line_break = re.compile(';|\\$|\\x0c|^\s*#|{'); - -if 'gpgme.h' in sys.argv[1]: - gpgme = open(sys.argv[1]) - tmp = gpgme.readline() - text = '' - while tmp: - text += re.sub(' class ', ' _py_obsolete_class ', tmp) - if line_break.search(tmp): - if not deprec_func.search(text): - sys.stdout.write(text) - text = '' - tmp = gpgme.readline() - sys.stdout.write(text) - gpgme.close() -else: - filter_re = re.compile(r'GPG_ERR_[^ ]* =') - rewrite_re = re.compile(r' *(.*) = .*') - for line in open(sys.argv[1]): - if not filter_re.search(line): - continue - print(rewrite_re.sub(r'%constant long \1 = \1;', line.strip())) diff --git a/lang/python/setup.py.in b/lang/python/setup.py.in index 6692de6..2114aaf 100755 --- a/lang/python/setup.py.in +++ b/lang/python/setup.py.in @@ -1,7 +1,7 @@ #!/usr/bin/env python -# Copyright (C) 2016 g10 Code GmbH -# Copyright (C) 2004 Igor Belyi +# Copyright (C) 2016-2017 g10 Code GmbH +# Copyright (C) 2004,2008 Igor Belyi # Copyright (C) 2002 John Goerzen # # This library is free software; you can redistribute it and/or @@ -19,11 +19,18 @@ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA from distutils.core import setup, Extension +import argparse import os, os.path, sys import glob +import re import shutil import subprocess +# We parse a subset of the arguments. +parser = argparse.ArgumentParser(add_help=False) +parser.add_argument('--build-base', default='') +options, _ = parser.parse_known_args() + # Out-of-tree build of the gpg bindings. gpg_error_config = ["gpg-error-config"] gpgme_config_flags = ["--thread=pthread"] @@ -31,6 +38,7 @@ gpgme_config = ["gpgme-config"] + gpgme_config_flags gpgme_h = "" include_dirs = [os.getcwd()] library_dirs = [] +vpath_build = os.environ.get('srcdir', '.') != '.' in_tree = False extra_swig_opts = [] extra_macros = dict() @@ -133,6 +141,14 @@ if uname_s.startswith("MINGW32"): library_dirs.append(os.path.join(tgt, item)) break +def in_srcdir(name): + return os.path.join(os.environ.get("srcdir", ""), name) +def in_build_base(name): + return os.path.join(options.build_base, name) +def up_to_date(source, target): + return (os.path.exists(target) + and os.path.getmtime(source) <= os.path.getmtime(target)) + # We build an Extension using SWIG, which generates a Python module. # By default, the 'build_py' step is run before 'build_ext', and # therefore the generated Python module is not copied into the build @@ -143,25 +159,60 @@ if uname_s.startswith("MINGW32"): from distutils.command.build import build class BuildExtFirstHack(build): + def _generate_gpgme_h(self, source_name, sink_name): + if up_to_date(source_name, sink_name): + return + + deprec_func = re.compile(r'^(.*typedef.*|.*\(.*\)|[^#]+\s+.+)' + + r'\s*_GPGME_DEPRECATED(_OUTSIDE_GPGME)?\(.*\);\s*', + re.S) + line_break = re.compile(';|\\$|\\x0c|^\s*#|{') + + with open(sink_name, "w") as sink, open(source_name) as source: + text = '' + for line in source: + text += re.sub(' class ', ' _py_obsolete_class ', line) + if line_break.search(line): + if not deprec_func.search(text): + sink.write(text) + text = '' + sink.write(text) + + def _generate_errors_i(self, source_name, sink_name): + if up_to_date(source_name, sink_name): + return + + filter_re = re.compile(r'GPG_ERR_[^ ]* =') + rewrite_re = re.compile(r' *(.*) = .*') + + with open(sink_name, "w") as sink, open(source_name) as source: + for line in source: + if not filter_re.search(line): + continue + sink.write(rewrite_re.sub(r'%constant long \1 = \1;'+'\n', line.strip())) + def _generate(self): print("Building python gpg module using {} and {}.".format(gpgme_h, gpg_error_h)) # Cleanup gpgme.h from deprecated functions and typedefs. - # Keep timestamp to avoid rebuild if not os.path.exists(self.build_base): os.makedirs(self.build_base) - for src, dst in ( - (gpgme_h, os.path.join(self.build_base, "gpgme.h")), - (gpg_error_h, os.path.join(self.build_base, "errors.i")) - ): - subprocess.check_call([sys.executable, "gpgme-h-clean.py", src], - stdout=open(dst, "w")) - shutil.copystat(src, dst) + self._generate_gpgme_h(gpgme_h, in_build_base("gpgme.h")) + self._generate_errors_i(gpg_error_h, in_build_base("errors.i")) + + # Keep timestamp to avoid rebuild + for source, target in ((gpgme_h, in_build_base("gpgme.h")), + (gpg_error_h, in_build_base("errors.i"))): + if not up_to_date(source, target): + shutil.copystat(source, target) # Copy due to http://bugs.python.org/issue2624 # Avoid creating in srcdir - shutil.copy2("gpgme.i", self.build_base) + for source, target in ((in_srcdir(n), in_build_base(n)) + for n in ('gpgme.i', 'helpers.c')): + if not up_to_date(source, target): + shutil.copy2(source, target) def run(self): self._generate() @@ -171,14 +222,18 @@ class BuildExtFirstHack(build): os.makedirs(os.path.join(self.build_lib, "gpg")) swig_sources.append(os.path.join(self.build_base, 'gpgme.i')) - swig_opts.extend(['-I' + self.build_base, '-outdir', os.path.join(self.build_lib, 'gpg')]) + swig_opts.extend(['-I' + self.build_base, + '-I' + in_srcdir('.'), + '-outdir', os.path.join(self.build_lib, 'gpg')]) + if vpath_build: + include_dirs.append(in_srcdir('.')) include_dirs.append(self.build_base) self.run_command('build_ext') build.run(self) py3 = [] if sys.version_info.major < 3 else ['-py3'] -swig_sources = ['helpers.c'] +swig_sources = [in_build_base('helpers.c')] swig_opts = ['-threads'] + py3 + extra_swig_opts swige = Extension("gpg._gpgme", sources = swig_sources, commit 801d7d8c5dd530d26ad6c4bcc94d986e6e022da4 Author: Alon Bar-Lev Date: Sun Apr 2 02:29:52 2017 +0300 python: Generate files into build directory * lang/python/setup.py.in: Generate files within BuildExtFirstHack adjust build flags at this point instead of global. * lang/python/Makefile.am: Remove logic of separate source directory per python version in favor of build directory. * lang/python/tests/run-tests.py: Adjust build directory location. -- Generate files into build directory, leaving the source directory clean. Use the same source directory for multiple python version build. Result of 'prepare' target is a standard distutil layout that can be used easily by downstream to build all python targets in-place. Signed-off-by: Alon Bar-Lev diff --git a/lang/python/Makefile.am b/lang/python/Makefile.am index a18a014..b9145f5 100644 --- a/lang/python/Makefile.am +++ b/lang/python/Makefile.am @@ -27,70 +27,45 @@ EXTRA_DIST = \ SUBDIRS = . tests -COPY_FILES = \ - $(srcdir)/gpgme.i \ - $(srcdir)/README \ - $(srcdir)/MANIFEST.in \ - $(srcdir)/gpgme-h-clean.py \ - $(srcdir)/examples \ - $(srcdir)/helpers.c $(srcdir)/helpers.h $(srcdir)/private.h - -COPY_FILES_GPG = \ - $(srcdir)/gpg/callbacks.py \ - $(srcdir)/gpg/constants \ - $(srcdir)/gpg/core.py \ - $(srcdir)/gpg/errors.py \ - $(srcdir)/gpg/__init__.py \ - $(srcdir)/gpg/results.py \ - $(srcdir)/gpg/util.py - .PHONY: prepare -prepare: - test -n "$(PREPAREDIR)" - $(MKDIR_P) "$(PREPAREDIR)/gpg" - cp -R $(COPY_FILES) "$(PREPAREDIR)" - cp setup.py "$(PREPAREDIR)" - cp gpg/version.py "$(PREPAREDIR)/gpg" - ln -sf "$(abs_top_srcdir)/src/data.h" "$(PREPAREDIR)" - ln -sf "$(abs_top_builddir)/config.h" "$(PREPAREDIR)" - cp -R $(COPY_FILES_GPG) "$(PREPAREDIR)/gpg" +prepare: copystamp # For VPATH builds we need to copy some files because Python's # distutils are not VPATH-aware. -copystamp: $(COPY_FILES) $(COPY_FILES_GPG) - set -e ; for VERSION in $(PYTHON_VERSIONS); do \ - $(MAKE) PREPAREDIR=python$${VERSION}-gpg prepare; \ - done +copystamp: + ln -sf "$(abs_top_srcdir)/src/data.h" . + ln -sf "$(abs_top_builddir)/config.h" . touch $@ all-local: copystamp set -e ; set $(PYTHONS); for VERSION in $(PYTHON_VERSIONS); do \ PYTHON="$$1" ; shift ; \ - cd python$${VERSION}-gpg && \ CFLAGS="$(CFLAGS)" \ abs_top_builddir="$(abs_top_builddir)" \ - $$PYTHON setup.py build --verbose ; \ - cd .. ; \ + $$PYTHON setup.py build --verbose --build-base=python$${VERSION}-gpg ; \ done -python$(PYTHON_VERSION)-gpg/dist/gpg-$(VERSION).tar.gz \ python$(PYTHON_VERSION)-gpg/dist/gpg-$(VERSION).tar.gz.asc: copystamp - cd python$(PYTHON_VERSION)-gpg && \ + $(MKDIR_P) python$(PYTHON_VERSION)-gpg-dist CFLAGS="$(CFLAGS)" \ abs_top_builddir="$(abs_top_builddir)" \ - $(PYTHON) setup.py sdist --verbose - gpg2 --detach-sign --armor python$(PYTHON_VERSION)-gpg/dist/gpg-$(VERSION).tar.gz + $(PYTHON) setup.py sdist --verbose --dist-dir=python$(PYTHON_VERSION)-gpg-dist \ + --manifest=python$(PYTHON_VERSION)-gpg-dist/MANIFEST + gpg2 --detach-sign --armor python$(PYTHON_VERSION)-gpg-dist/gpg-$(VERSION).tar.gz .PHONY: sdist -sdist: python$(PYTHON_VERSION)-gpg/dist/gpg-$(VERSION).tar.gz \ - python$(PYTHON_VERSION)-gpg/dist/gpg-$(VERSION).tar.gz.asc +sdist: python$(PYTHON_VERSION)-gpg/dist/gpg-$(VERSION).tar.gz.asc .PHONY: upload -upload: python$(PYTHON_VERSION)-gpg/dist/gpg-$(VERSION).tar.gz \ - python$(PYTHON_VERSION)-gpg/dist/gpg-$(VERSION).tar.gz.asc +upload: python$(PYTHON_VERSION)-gpg-dist/gpg-$(VERSION).tar.gz \ + python$(PYTHON_VERSION)-gpg-dist/gpg-$(VERSION).tar.gz.asc twine upload $^ -CLEANFILES = copystamp +CLEANFILES = copystamp \ + config.h \ + data.h \ + files.txt \ + install_files.txt # Remove the rest. # @@ -104,22 +79,22 @@ clean-local: done install-exec-local: - rm -f install_files.txt set -e ; set $(PYTHONS); for VERSION in $(PYTHON_VERSIONS); do \ PYTHON="$$1" ; shift ; \ - cd python$${VERSION}-gpg ; \ abs_top_builddir="$(abs_top_builddir)" \ - $$PYTHON setup.py install \ - --prefix $(DESTDIR)$(prefix) \ + $$PYTHON setup.py \ + build \ + --build-base=python$${VERSION}-gpg \ + install \ + --prefix "$(DESTDIR)$(prefix)" \ --record files.txt \ --verbose ; \ - cat files.txt >> ../install_files.txt ; \ + cat files.txt >> install_files.txt ; \ rm files.txt ; \ - cd .. ; \ done - $(MKDIR_P) $(DESTDIR)$(pythondir)/gpg - mv install_files.txt $(DESTDIR)$(pythondir)/gpg + $(MKDIR_P) "$(DESTDIR)$(pythondir)/gpg" + mv install_files.txt "$(DESTDIR)$(pythondir)/gpg" uninstall-local: - xargs <$(DESTDIR)$(pythondir)/gpg/install_files.txt -- rm -rf -- - rm -rf -- $(DESTDIR)$(pythondir)/gpg + xargs < "$(DESTDIR)$(pythondir)/gpg/install_files.txt" -- rm -rf -- + rm -rf -- "$(DESTDIR)$(pythondir)/gpg" diff --git a/lang/python/setup.py.in b/lang/python/setup.py.in index 8ddbf27..6692de6 100755 --- a/lang/python/setup.py.in +++ b/lang/python/setup.py.in @@ -21,6 +21,7 @@ from distutils.core import setup, Extension import os, os.path, sys import glob +import shutil import subprocess # Out-of-tree build of the gpg bindings. @@ -89,14 +90,6 @@ if not os.path.exists(gpg_error_h): glob.glob(os.path.join(gpg_error_prefix, "include", "*", "gpg-error.h"))[0] -print("Building python gpg module using {} and {}.".format(gpgme_h, gpg_error_h)) - -# Cleanup gpgme.h from deprecated functions and typedefs. -subprocess.check_call([sys.executable, "gpgme-h-clean.py", gpgme_h], - stdout=open("gpgme.h", "w")) -subprocess.check_call([sys.executable, "gpgme-h-clean.py", gpg_error_h], - stdout=open("errors.i", "w")) - define_macros = [] libs = getconfig('libs') @@ -149,14 +142,47 @@ if uname_s.startswith("MINGW32"): # http://stackoverflow.com/questions/12491328/python-distutils-not-include-the-swig-generated-module from distutils.command.build import build class BuildExtFirstHack(build): + + def _generate(self): + print("Building python gpg module using {} and {}.".format(gpgme_h, gpg_error_h)) + + # Cleanup gpgme.h from deprecated functions and typedefs. + # Keep timestamp to avoid rebuild + if not os.path.exists(self.build_base): + os.makedirs(self.build_base) + + for src, dst in ( + (gpgme_h, os.path.join(self.build_base, "gpgme.h")), + (gpg_error_h, os.path.join(self.build_base, "errors.i")) + ): + subprocess.check_call([sys.executable, "gpgme-h-clean.py", src], + stdout=open(dst, "w")) + shutil.copystat(src, dst) + + # Copy due to http://bugs.python.org/issue2624 + # Avoid creating in srcdir + shutil.copy2("gpgme.i", self.build_base) + def run(self): + self._generate() + + # Append generated files via build_base + if not os.path.exists(os.path.join(self.build_lib, "gpg")): + os.makedirs(os.path.join(self.build_lib, "gpg")) + + swig_sources.append(os.path.join(self.build_base, 'gpgme.i')) + swig_opts.extend(['-I' + self.build_base, '-outdir', os.path.join(self.build_lib, 'gpg')]) + include_dirs.append(self.build_base) + self.run_command('build_ext') build.run(self) py3 = [] if sys.version_info.major < 3 else ['-py3'] -swige = Extension("gpg._gpgme", ["gpgme.i", "helpers.c"], - swig_opts = ['-threads', - '-outdir', 'gpg'] + py3 + extra_swig_opts, +swig_sources = ['helpers.c'] +swig_opts = ['-threads'] + py3 + extra_swig_opts +swige = Extension("gpg._gpgme", + sources = swig_sources, + swig_opts = swig_opts, include_dirs = include_dirs, define_macros = define_macros, library_dirs = library_dirs, diff --git a/lang/python/tests/run-tests.py b/lang/python/tests/run-tests.py index 9e061d8..9e2fb78 100644 --- a/lang/python/tests/run-tests.py +++ b/lang/python/tests/run-tests.py @@ -71,7 +71,6 @@ for interpreter in args.interpreters: pattern = os.path.join(args.builddir, "..", "python{0}-gpg".format(version), - "build", "lib*"+version) builddirs = glob.glob(pattern) if len(builddirs) == 0: commit adfa09699c7ecad5dec5b79944a59291eaec75b4 Author: Justus Winter Date: Wed Apr 5 14:48:04 2017 +0200 Fix typo. -- Signed-off-by: Justus Winter diff --git a/NEWS b/NEWS index a5cc1da..0520768 100644 --- a/NEWS +++ b/NEWS @@ -49,7 +49,7 @@ Noteworthy changes in version 1.9.0 (2017-03-28) GPGME_ENCRYPT_WRAP NEW. GPGME_DECRYPT_VERIFY NEW. GPGME_DECRYPT_UNWRAP NEW. -o gpgme_data_rewind UN-DEPRECATE. + gpgme_data_rewind UN-DEPRECATE. cpp: Context::revUid(const Key&, const char*) NEW. cpp: Context::startRevUid(const Key&, const char*) NEW. cpp: Context::addUid(const Key&, const char*) NEW. ----------------------------------------------------------------------- Summary of changes: NEWS | 2 +- lang/python/MANIFEST.in | 2 +- lang/python/Makefile.am | 82 ++++++++++++++----------------- lang/python/gpgme-h-clean.py | 53 -------------------- lang/python/setup.py.in | 107 ++++++++++++++++++++++++++++++++++++----- lang/python/tests/run-tests.py | 1 - 6 files changed, 132 insertions(+), 115 deletions(-) delete mode 100755 lang/python/gpgme-h-clean.py hooks/post-receive -- GnuPG Made Easy http://git.gnupg.org From cvs at cvs.gnupg.org Thu Apr 6 10:29:39 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Thu, 06 Apr 2017 10:29:39 +0200 Subject: [git] gnupg-doc - branch, master, updated. df62925eb36ad7d2908a9d1f991703d33a530816 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via df62925eb36ad7d2908a9d1f991703d33a530816 (commit) from fa0fcd3483230a085d56359cf5cb0eb79b7a6fee (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit df62925eb36ad7d2908a9d1f991703d33a530816 Author: Werner Koch Date: Thu Apr 6 10:25:52 2017 +0200 web: Add a note that the Verein is now charitable. diff --git a/web/verein/index.org b/web/verein/index.org index 5842249..b54dcdf 100644 --- a/web/verein/index.org +++ b/web/verein/index.org @@ -23,6 +23,6 @@ German; a legally non-binding founding protocol can can be read {{{atgit(legal/founding-protocol-20170208.txt,here)}}}. -The rules on how to apply for membership will soon be posted. We -applied on March 27 for charitable status with the goal to allow for -tax exempted donations at least in Germany. +The rules on how to apply for membership will soon be posted. The tax +office D?sseldorf-Altstadt confirmed our charitable state on +2017-04-03. ----------------------------------------------------------------------- Summary of changes: web/verein/index.org | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Thu Apr 6 12:36:06 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Thu, 06 Apr 2017 12:36:06 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-9-g9464531 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 94645311f8a3e9ae33643512f87fbef41bf0556f (commit) from 01e84d429aeeb1450012ff0576a6a24de50693c6 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 94645311f8a3e9ae33643512f87fbef41bf0556f Author: Justus Winter Date: Thu Apr 6 12:33:37 2017 +0200 tests: Make test more robust. * tests/openpgp/4gb-packet.scm: Skip if we do not have BZIP2. * tests/openpgp/defs.scm (have-compression-algo?): New function. GnuPG-bug-id: 3028 Signed-off-by: Justus Winter diff --git a/tests/openpgp/4gb-packet.scm b/tests/openpgp/4gb-packet.scm index b827181..109e61d 100755 --- a/tests/openpgp/4gb-packet.scm +++ b/tests/openpgp/4gb-packet.scm @@ -23,6 +23,7 @@ (load (with-path "defs.scm")) (setup-environment) -(if (= 0 (call `(, at GPG --list-packets ,(in-srcdir "4gb-packet.asc")))) - (info "Can parse 4GB packets.") - (fail "Failed to parse 4GB packet.")) +(unless (have-compression-algo? "BZIP2") + (skip "BZIP2 support not compiled in.")) + +(call-check `(, at GPG --list-packets ,(in-srcdir "4gb-packet.asc"))) diff --git a/tests/openpgp/defs.scm b/tests/openpgp/defs.scm index 815a560..29eb775 100644 --- a/tests/openpgp/defs.scm +++ b/tests/openpgp/defs.scm @@ -258,6 +258,8 @@ (not (not (member x (force all-hash-algos))))) (define (have-cipher-algo? x) (not (not (member x (force all-cipher-algos))))) +(define (have-compression-algo? x) + (not (not (member x (force all-compression-algos))))) (define (gpg-pipe args0 args1 errfd) (lambda (source sink) ----------------------------------------------------------------------- Summary of changes: tests/openpgp/4gb-packet.scm | 7 ++++--- tests/openpgp/defs.scm | 2 ++ 2 files changed, 6 insertions(+), 3 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Thu Apr 6 13:32:00 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Thu, 06 Apr 2017 13:32:00 +0200 Subject: [git] gnupg-doc - branch, master, updated. 2070774a8025daa5b1836016b5b7bda650dc3457 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via 2070774a8025daa5b1836016b5b7bda650dc3457 (commit) via f558d66878641b1956c164a38422ca229034ee4b (commit) via 25a44e820e31809c2919db98e5b455aca7311b82 (commit) from df62925eb36ad7d2908a9d1f991703d33a530816 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 2070774a8025daa5b1836016b5b7bda650dc3457 Author: Justus Winter Date: Thu Apr 6 13:30:42 2017 +0200 jenkins: ignore failures to run the tests on Windows diff --git a/misc/jenkins/bin/build.bash b/misc/jenkins/bin/build.bash index 8a56904..54d0098 100755 --- a/misc/jenkins/bin/build.bash +++ b/misc/jenkins/bin/build.bash @@ -277,7 +277,7 @@ case "$XTARGET" in gnupg/*|gnupg-2.2/*) bash /home/jenkins/bin/make-windows-cd.sh # We need to pass the absolute path of the iso. - bash $HOME/bin/run-tests-w32.bash "$(readlink -f gnupg-test.iso)" || echo "FAIL: error running tests on Windows." + bash $HOME/bin/run-tests-w32.bash "$(readlink -f gnupg-test.iso)" || echo "Warning: error running tests on Windows." ;; esac ;; commit f558d66878641b1956c164a38422ca229034ee4b Author: Justus Winter Date: Thu Apr 6 13:29:50 2017 +0200 jenkins: add in-tree build target diff --git a/misc/jenkins/bin/build.bash b/misc/jenkins/bin/build.bash index c4ee11e..8a56904 100755 --- a/misc/jenkins/bin/build.bash +++ b/misc/jenkins/bin/build.bash @@ -211,6 +211,22 @@ case "$XTARGET" in $MAKE install ;; + in-tree) + cd .. + ./configure --prefix=$PREFIX --enable-maintainer-mode \ + $CONFIGUREFLAGS \ + "$CONFIGUREFLAGS_0" \ + CFLAGS="$CFLAGS" \ + CXXFLAGS="$CXXFLAGS -std=c++11" + $MAKE $MAKEFLAGS + + env $test_environment $MAKE -k check verbose=2 \ + || echo "FAIL: make check failed with status $?" + # Jenkins looks for "FAIL:" to mark a build unstable, + # hence || ... here + + $MAKE install + ;; sanitizer) # asan breaks the configure tests, so we disable it here. ASAN_OPTIONS=detect_leaks=0 \ commit 25a44e820e31809c2919db98e5b455aca7311b82 Author: Justus Winter Date: Thu Apr 6 13:25:49 2017 +0200 jenkins: use ccache if available diff --git a/misc/jenkins/bin/build.bash b/misc/jenkins/bin/build.bash index c5a7fda..c4ee11e 100755 --- a/misc/jenkins/bin/build.bash +++ b/misc/jenkins/bin/build.bash @@ -15,6 +15,19 @@ case "$(uname)" in ;; esac +if [ "$XTARGET" = w32 ]; then + CC=i686-w64-mingw32-gcc + CXX=i686-w64-mingw32-g++ +fi + +# Setup ccache if installed. +if ccache --version >/dev/null; then + export CCACHE_DIR="$HOME/cache/$JOB_NAME" + mkdir -p "$CCACHE_DIR" + export CC="ccache ${CC:-gcc}" + export CXX="ccache ${CXX:-g++}" +fi + # Setup important envars PREFIX=$HOME/prefix/$XTARGET ORIGINAL_PREFIX=$HOME/prefix/$XTARGET ----------------------------------------------------------------------- Summary of changes: misc/jenkins/bin/build.bash | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Thu Apr 6 14:35:50 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Thu, 06 Apr 2017 14:35:50 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-10-gaf1c1a5 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via af1c1a57e46a00a32d83c1a58c5f3ef6f4a1c1d1 (commit) from 94645311f8a3e9ae33643512f87fbef41bf0556f (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit af1c1a57e46a00a32d83c1a58c5f3ef6f4a1c1d1 Author: Justus Winter Date: Thu Apr 6 14:31:54 2017 +0200 tests: Disable 'pkits' test suite. * tests/Makefile.am (SUBDIRS): Drop 'pkits'. * tests/pkits/common.sh: Fix locating 'PKITS_data.tar.bz2'. * tests/pkits/inittests: Likewise. -- These tests are unmaintained and broken, and were previously only run when doing in-tree builds, hence nobody noticed that they were badly broken. GnuPG-bug-id: 3067 Signed-off-by: Justus Winter diff --git a/tests/Makefile.am b/tests/Makefile.am index bb75c97..7cbf9e8 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -18,7 +18,7 @@ ## Process this file with automake to produce Makefile.in -SUBDIRS = gpgscm openpgp migrations gpgsm gpgme pkits . +SUBDIRS = gpgscm openpgp migrations gpgsm gpgme . GPGSM = ../sm/gpgsm diff --git a/tests/pkits/common.sh b/tests/pkits/common.sh index ca18b95..697f28f 100644 --- a/tests/pkits/common.sh +++ b/tests/pkits/common.sh @@ -52,7 +52,7 @@ if [ -n "$GPG_AGENT_INFO" ]; then exit 1 fi -if [ -f PKITS_data.tar.bz2 ]; then +if [ -f "$srcdir/PKITS_data.tar.bz2" ]; then : else if [ "$pgmname" = "import-all-certs" ]; then diff --git a/tests/pkits/inittests b/tests/pkits/inittests index 5c29bdc..4bff0a8 100755 --- a/tests/pkits/inittests +++ b/tests/pkits/inittests @@ -58,8 +58,8 @@ if [ -n "$GPG_AGENT_INFO" ]; then exit 1 fi -if test -f PKITS_data.tar.bz2; then - if ! bunzip2 -c PKITS_data.tar.bz2 | tar xf - ; then +if test -f "$srcdir/PKITS_data.tar.bz2"; then + if ! bunzip2 -c "$srcdir/PKITS_data.tar.bz2" | tar xf - ; then echo "inittests: failed to untar the test data" >&2 exit 1 fi ----------------------------------------------------------------------- Summary of changes: tests/Makefile.am | 2 +- tests/pkits/common.sh | 2 +- tests/pkits/inittests | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Thu Apr 6 15:22:04 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Thu, 06 Apr 2017 15:22:04 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-11-g23f00f1 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 23f00f109ddba595db4f73a6182750177c7dd75d (commit) from af1c1a57e46a00a32d83c1a58c5f3ef6f4a1c1d1 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 23f00f109ddba595db4f73a6182750177c7dd75d Author: Justus Winter Date: Thu Apr 6 15:17:08 2017 +0200 tests: Fix distcheck. * tests/Makefile.am (SUBDIRS): Add 'pkits' again. Simply dropping it makes 'make distcheck' unhappy. * tests/pkits/Makefile.am (TESTS): Remove all tests. -- Disable the 'pkits' tests in a way that keeps 'make distcheck' happy. To run tests individually, do make -Ctests/pkits check TESTS=some-test GnuPG-bug-id: 3067 Fixes-commit: af1c1a57e46a00a32d83c1a58c5f3ef6f4a1c1d1 Signed-off-by: Justus Winter diff --git a/tests/Makefile.am b/tests/Makefile.am index 7cbf9e8..bb75c97 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -18,7 +18,7 @@ ## Process this file with automake to produce Makefile.in -SUBDIRS = gpgscm openpgp migrations gpgsm gpgme . +SUBDIRS = gpgscm openpgp migrations gpgsm gpgme pkits . GPGSM = ../sm/gpgsm diff --git a/tests/pkits/Makefile.am b/tests/pkits/Makefile.am index 9de1f8c..3dc2f16 100644 --- a/tests/pkits/Makefile.am +++ b/tests/pkits/Makefile.am @@ -46,7 +46,7 @@ testscripts = import-all-certs validate-all-certs \ EXTRA_DIST = inittests runtest common.sh $(testscripts) ChangeLog-2011 \ import-all-certs.data -TESTS = $(testscripts) +TESTS = CLEANFILES = inittests.stamp scratch.*.tmp x y z out err *.lock .\#lk* *.log ----------------------------------------------------------------------- Summary of changes: tests/Makefile.am | 2 +- tests/pkits/Makefile.am | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Thu Apr 6 16:26:49 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Thu, 06 Apr 2017 16:26:49 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-13-gf1dc34f Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via f1dc34f502a68673e7a29f3fcf57b8dc6a4fac89 (commit) via b83903f59ec5d49ac579f263da70ebc8dc3645b5 (commit) from 23f00f109ddba595db4f73a6182750177c7dd75d (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit f1dc34f502a68673e7a29f3fcf57b8dc6a4fac89 Author: Justus Winter Date: Thu Apr 6 16:24:49 2017 +0200 gpgscm: Avoid mutating integer. * tests/gpgscm/scheme.c (opexe_5): Do not modify the integer in-place while printing an vector. Integer objects may be shared, so they must not be mutated. Signed-off-by: Justus Winter diff --git a/tests/gpgscm/scheme.c b/tests/gpgscm/scheme.c index 3719e53..aa0cf69 100644 --- a/tests/gpgscm/scheme.c +++ b/tests/gpgscm/scheme.c @@ -5181,7 +5181,7 @@ static pointer opexe_5(scheme *sc, enum scheme_opcodes op) { s_return(sc,sc->T); } else { pointer elem=vector_elem(vec,i); - ivalue_unchecked(cdr(sc->args))=i+1; + cdr(sc->args) = mk_integer(sc, i + 1); s_save(sc,OP_PVECFROM, sc->args, sc->NIL); sc->args=elem; if (i > 0) commit b83903f59ec5d49ac579f263da70ebc8dc3645b5 Author: Justus Winter Date: Thu Apr 6 16:21:48 2017 +0200 gpgscm: Initialize unused slots in vectors. * tests/gpgscm/scheme.c (get_vector_object): Initialize unused slots at the end of vectors. -- They should not be used for anything, but let's just initialize them to something benign to be sure. GnuPG-bug-id: 3014 Signed-off-by: Justus Winter diff --git a/tests/gpgscm/scheme.c b/tests/gpgscm/scheme.c index 51fdef0..3719e53 100644 --- a/tests/gpgscm/scheme.c +++ b/tests/gpgscm/scheme.c @@ -1083,11 +1083,19 @@ static pointer get_cell(scheme *sc, pointer a, pointer b) static pointer get_vector_object(scheme *sc, int len, pointer init) { pointer cells = get_consecutive_cells(sc, vector_size(len)); + int i; + int alloc_len = 1 + 3 * (vector_size(len) - 1); if(sc->no_memory) { return sc->sink; } /* Record it as a vector so that gc understands it. */ typeflag(cells) = (T_VECTOR | T_ATOM | T_FINALIZE); vector_length(cells) = len; fill_vector(cells,init); + + /* Initialize the unused slots at the end. */ + assert (alloc_len - len < 3); + for (i = len; i < alloc_len; i++) + cells->_object._vector._elements[i] = sc->NIL; + if (gc_enabled (sc)) push_recent_alloc(sc, cells, sc->NIL); return cells; ----------------------------------------------------------------------- Summary of changes: tests/gpgscm/scheme.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Thu Apr 6 16:59:16 2017 From: cvs at cvs.gnupg.org (by Marcus Brinkmann) Date: Thu, 06 Apr 2017 16:59:16 +0200 Subject: [git] gnupg-doc - branch, master, updated. 4d585593e209518ac00301d0024e683dea8bf943 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via 4d585593e209518ac00301d0024e683dea8bf943 (commit) from 2070774a8025daa5b1836016b5b7bda650dc3457 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 4d585593e209518ac00301d0024e683dea8bf943 Author: Marcus Brinkmann Date: Thu Apr 6 16:21:19 2017 +0200 web: Remove obsolete roadmap task. diff --git a/web/roadmap.org b/web/roadmap.org index 573dd2b..67619d8 100644 --- a/web/roadmap.org +++ b/web/roadmap.org @@ -86,13 +86,6 @@ - Add RSS feed for the blogs -** BTS - - - Migrate Roundup from Sqlite to Postgres so speed it up. The - assumption is that we have more concurrent users which slows all - things down. - - ** Hardware - We need more disk space for Thrithemius and best also more RAM. ----------------------------------------------------------------------- Summary of changes: web/roadmap.org | 7 ------- 1 file changed, 7 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Fri Apr 7 01:44:57 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Fri, 07 Apr 2017 01:44:57 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-14-gebe12be Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via ebe12be034f052cdec871f0d8ad1bfab85d7b943 (commit) from f1dc34f502a68673e7a29f3fcf57b8dc6a4fac89 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit ebe12be034f052cdec871f0d8ad1bfab85d7b943 Author: NIIBE Yutaka Date: Fri Apr 7 08:39:26 2017 +0900 agent: Serialize access to passphrase cache. * agent/cache.c (encryption_lock): Remove. (cache_lock): New. Now, we have coarse grain lock to serialize entire cache access. (initialize_module_cache): Use CACHE_LOCK. (init_encryption, new_data): Remove ENCRYPTION_LOCK. (agent_flush_cache, agent_put_cache, agent_get_cache): Lock the cache. -- GnuPG-bug-id: 3027 Signed-off-by: NIIBE Yutaka diff --git a/agent/cache.c b/agent/cache.c index 41e0905..80d5f8d 100644 --- a/agent/cache.c +++ b/agent/cache.c @@ -31,9 +31,8 @@ /* The size of the encryption key in bytes. */ #define ENCRYPTION_KEYSIZE (128/8) -/* A mutex used to protect the encryption. This is required because - we use one context to do all encryption and decryption. */ -static npth_mutex_t encryption_lock; +/* A mutex used to serialize access to the cache. */ +static npth_mutex_t cache_lock; /* The encryption context. This is the only place where the encryption key for all cached entries is available. It would be nice to keep this (or just the key) in some hardware device, for example @@ -76,7 +75,7 @@ initialize_module_cache (void) { int err; - err = npth_mutex_init (&encryption_lock, NULL); + err = npth_mutex_init (&cache_lock, NULL); if (err) log_fatal ("error initializing cache module: %s\n", strerror (err)); @@ -102,15 +101,10 @@ init_encryption (void) { gpg_error_t err; void *key; - int res; if (encryption_handle) return 0; /* Shortcut - Already initialized. */ - res = npth_mutex_lock (&encryption_lock); - if (res) - log_fatal ("failed to acquire cache encryption mutex: %s\n", strerror (res)); - err = gcry_cipher_open (&encryption_handle, GCRY_CIPHER_AES128, GCRY_CIPHER_MODE_AESWRAP, GCRY_CIPHER_SECURE); if (!err) @@ -133,10 +127,6 @@ init_encryption (void) log_error ("error initializing cache encryption context: %s\n", gpg_strerror (err)); - res = npth_mutex_unlock (&encryption_lock); - if (res) - log_fatal ("failed to release cache encryption mutex: %s\n", strerror (res)); - return err? gpg_error (GPG_ERR_NOT_INITIALIZED) : 0; } @@ -155,7 +145,6 @@ new_data (const char *string, struct secret_data_s **r_data) struct secret_data_s *d, *d_enc; size_t length; int total; - int res; *r_data = NULL; @@ -186,17 +175,9 @@ new_data (const char *string, struct secret_data_s **r_data) } d_enc->totallen = total; - res = npth_mutex_lock (&encryption_lock); - if (res) - log_fatal ("failed to acquire cache encryption mutex: %s\n", - strerror (res)); - err = gcry_cipher_encrypt (encryption_handle, d_enc->data, total, d->data, total - 8); xfree (d); - res = npth_mutex_unlock (&encryption_lock); - if (res) - log_fatal ("failed to release cache encryption mutex: %s\n", strerror (res)); if (err) { xfree (d_enc); @@ -281,10 +262,15 @@ void agent_flush_cache (void) { ITEM r; + int res; if (DBG_CACHE) log_debug ("agent_flush_cache\n"); + res = npth_mutex_lock (&cache_lock); + if (res) + log_fatal ("failed to acquire cache mutex: %s\n", strerror (res)); + for (r=thecache; r; r = r->next) { if (r->pw) @@ -296,6 +282,10 @@ agent_flush_cache (void) r->accessed = 0; } } + + res = npth_mutex_unlock (&cache_lock); + if (res) + log_fatal ("failed to release cache mutex: %s\n", strerror (res)); } @@ -321,6 +311,11 @@ agent_put_cache (const char *key, cache_mode_t cache_mode, { gpg_error_t err = 0; ITEM r; + int res; + + res = npth_mutex_lock (&cache_lock); + if (res) + log_fatal ("failed to acquire cache mutex: %s\n", strerror (res)); if (DBG_CACHE) log_debug ("agent_put_cache '%s' (mode %d) requested ttl=%d\n", @@ -336,7 +331,7 @@ agent_put_cache (const char *key, cache_mode_t cache_mode, } } if ((!ttl && data) || cache_mode == CACHE_MODE_IGNORE) - return 0; + goto out; for (r=thecache; r; r = r->next) { @@ -386,6 +381,12 @@ agent_put_cache (const char *key, cache_mode_t cache_mode, if (err) log_error ("error inserting cache item: %s\n", gpg_strerror (err)); } + + out: + res = npth_mutex_unlock (&cache_lock); + if (res) + log_fatal ("failed to release cache mutex: %s\n", strerror (res)); + return err; } @@ -405,15 +406,18 @@ agent_get_cache (const char *key, cache_mode_t cache_mode) if (cache_mode == CACHE_MODE_IGNORE) return NULL; + res = npth_mutex_lock (&cache_lock); + if (res) + log_fatal ("failed to acquire cache mutex: %s\n", strerror (res)); + if (!key) { key = last_stored_cache_key; if (!key) - return NULL; + goto out; last_stored = 1; } - if (DBG_CACHE) log_debug ("agent_get_cache '%s' (mode %d)%s ...\n", key, cache_mode, @@ -440,17 +444,9 @@ agent_get_cache (const char *key, cache_mode_t cache_mode) err = gpg_error_from_syserror (); else { - res = npth_mutex_lock (&encryption_lock); - if (res) - log_fatal ("failed to acquire cache encryption mutex: %s\n", - strerror (res)); err = gcry_cipher_decrypt (encryption_handle, value, r->pw->totallen - 8, r->pw->data, r->pw->totallen); - res = npth_mutex_unlock (&encryption_lock); - if (res) - log_fatal ("failed to release cache encryption mutex: %s\n", - strerror (res)); } if (err) { @@ -459,13 +455,18 @@ agent_get_cache (const char *key, cache_mode_t cache_mode) log_error ("retrieving cache entry '%s' failed: %s\n", key, gpg_strerror (err)); } - return value; + break; } } - if (DBG_CACHE) + if (DBG_CACHE && value == NULL) log_debug ("... miss\n"); - return NULL; + out: + res = npth_mutex_unlock (&cache_lock); + if (res) + log_fatal ("failed to release cache mutex: %s\n", strerror (res)); + + return value; } ----------------------------------------------------------------------- Summary of changes: agent/cache.c | 73 ++++++++++++++++++++++++++++++----------------------------- 1 file changed, 37 insertions(+), 36 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Fri Apr 7 06:32:48 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Fri, 07 Apr 2017 06:32:48 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-16-gcc420d3 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via cc420d34880e2a050b39f969873974cfc35fa5c3 (commit) via 3c93595d701c59cbc9b67a7fd0bcde7ee0fada1a (commit) from ebe12be034f052cdec871f0d8ad1bfab85d7b943 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit cc420d34880e2a050b39f969873974cfc35fa5c3 Author: NIIBE Yutaka Date: Fri Apr 7 13:30:35 2017 +0900 scd: Internal CCID reader cleanup. * scd/ccid-reader.c (scan_usb_device): Only for scan mode, so, rename from scan_or_find_usb_device. (scan_devices): Likewise. Remove support of special transport types. (ccid_get_reader_list): Simplify. (abort_cmd): Fix error return. (send_escape_cmd): Fix for RESULTLEN == NULL. (ccid_transceive_secure): Remove unnecessary var updates. Signed-off-by: NIIBE Yutaka diff --git a/scd/ccid-driver.c b/scd/ccid-driver.c index a471adf..d135ca6 100644 --- a/scd/ccid-driver.c +++ b/scd/ccid-driver.c @@ -1129,21 +1129,11 @@ find_endpoint (const struct libusb_interface_descriptor *ifcdesc, int mode) } -/* Helper for scan_or_find_devices. This function returns true if a +/* Helper for scan_devices. This function returns true if a requested device has been found or the caller should stop scanning for other reasons. */ -static int -scan_or_find_usb_device (int scan_mode, - int readerno, int *count, char **rid_list, - const char *readerid, - struct libusb_device *dev, - char **r_rid, - struct libusb_device_descriptor *desc, - libusb_device_handle **r_idev, - unsigned char **ifcdesc_extra, - size_t *ifcdesc_extra_len, - int *interface_number, int *setting_number, - int *ep_bulk_out, int *ep_bulk_in, int *ep_intr) +static void +scan_usb_device (int *count, char **rid_list, struct libusb_device *dev) { int ifc_no; int set_no; @@ -1152,16 +1142,16 @@ scan_or_find_usb_device (int scan_mode, libusb_device_handle *idev = NULL; int err; struct libusb_config_descriptor *config; + struct libusb_device_descriptor desc; + char *p; - err = libusb_get_device_descriptor (dev, desc); + err = libusb_get_device_descriptor (dev, &desc); if (err) - return 0; - - *r_idev = NULL; + return; err = libusb_get_active_config_descriptor (dev, &config); if (err) - return 0; + return; for (ifc_no=0; ifc_no < config->bNumInterfaces; ifc_no++) for (set_no=0; set_no < config->interface[ifc_no].num_altsetting; set_no++) @@ -1177,15 +1167,13 @@ scan_or_find_usb_device (int scan_mode, && ifcdesc->bInterfaceSubClass == 0 && ifcdesc->bInterfaceProtocol == 0) || (ifcdesc->bInterfaceClass == 255 - && desc->idVendor == VENDOR_SCM - && desc->idProduct == SCM_SPR532) + && desc.idVendor == VENDOR_SCM + && desc.idProduct == SCM_SPR532) || (ifcdesc->bInterfaceClass == 255 - && desc->idVendor == VENDOR_CHERRY - && desc->idProduct == CHERRY_ST2000))) + && desc.idVendor == VENDOR_CHERRY + && desc.idProduct == CHERRY_ST2000))) { ++*count; - if (!scan_mode && ((readerno > 0 && readerno != *count - 1))) - continue; err = libusb_open (dev, &idev); if (err) @@ -1194,89 +1182,36 @@ scan_or_find_usb_device (int scan_mode, continue; /* with next setting. */ } - rid = make_reader_id (idev, desc->idVendor, desc->idProduct, - desc->iSerialNumber); + rid = make_reader_id (idev, desc.idVendor, desc.idProduct, + desc.iSerialNumber); if (!rid) { libusb_free_config_descriptor (config); - return 0; + return; } - if (!scan_mode && readerno == -1 && readerid - && strncmp (rid, readerid, strlen (readerid))) - continue; - - if (scan_mode) + /* We are collecting infos about all available CCID + readers. Store them and continue. */ + DEBUGOUT_2 ("found CCID reader %d (ID=%s)\n", *count, rid); + p = malloc ((*rid_list? strlen (*rid_list):0) + 1 + + strlen (rid) + 1); + if (p) { - char *p; - - /* We are collecting infos about all - available CCID readers. Store them and - continue. */ - DEBUGOUT_2 ("found CCID reader %d (ID=%s)\n", *count, rid); - p = malloc ((*rid_list? strlen (*rid_list):0) + 1 - + strlen (rid) + 1); - if (p) - { - *p = 0; - if (*rid_list) - { - strcat (p, *rid_list); - free (*rid_list); - } - strcat (p, rid); - strcat (p, "\n"); - *rid_list = p; - } - else /* Out of memory. */ + *p = 0; + if (*rid_list) { - libusb_free_config_descriptor (config); - free (rid); - return 0; + strcat (p, *rid_list); + free (*rid_list); } + strcat (p, rid); + strcat (p, "\n"); + *rid_list = p; } - else + else /* Out of memory. */ { - /* We found the requested reader. */ - if (ifcdesc_extra && ifcdesc_extra_len) - { - *ifcdesc_extra = malloc (ifcdesc->extra_length); - if (!*ifcdesc_extra) - { - libusb_close (idev); - free (rid); - libusb_free_config_descriptor (config); - return 1; /* Out of core. */ - } - memcpy (*ifcdesc_extra, ifcdesc->extra, - ifcdesc->extra_length); - *ifcdesc_extra_len = ifcdesc->extra_length; - } - - if (interface_number) - *interface_number = ifc_no; - - if (setting_number) - *setting_number = set_no; - - if (ep_bulk_out) - *ep_bulk_out = find_endpoint (ifcdesc, 0); - if (ep_bulk_in) - *ep_bulk_in = find_endpoint (ifcdesc, 1); - if (ep_intr) - *ep_intr = find_endpoint (ifcdesc, 2); - - if (r_rid) - { - *r_rid = rid; - rid = NULL; - } - else - free (rid); - - *r_idev = idev; libusb_free_config_descriptor (config); - return 1; /* Found requested device. */ + free (rid); + return; } free (rid); @@ -1286,205 +1221,44 @@ scan_or_find_usb_device (int scan_mode, } libusb_free_config_descriptor (config); - - return 0; } -/* Combination function to either scan all CCID devices or to find and - open one specific device. +/* Scan all CCID devices. The function returns 0 if a reader has been found or when a scan returned without error. - With READERNO = -1 and READERID is NULL, scan mode is used and R_RID should be the address where to store the list of reader_ids we found. If on return this list is empty, no CCID device has been found; otherwise it points to an allocated linked list of reader - IDs. Note that in this mode the function always returns NULL. - - With READERNO >= 0 or READERID is not NULL find mode is used. This - uses the same algorithm as the scan mode but stops and returns at - the entry number READERNO and return the handle for the opened - USB device. If R_RID is not NULL it will receive the reader ID of - that device. If R_DEV is not NULL it will the device pointer of - that device. If IFCDESC_EXTRA is NOT NULL it will receive a - malloced copy of the interfaces "extra: data filed; - IFCDESC_EXTRA_LEN receive the length of this field. If there is - no reader with number READERNO or that reader is not usable by our - implementation NULL will be returned. The caller must close a - returned USB device handle and free (if not passed as NULL) the - returned reader ID info as well as the IFCDESC_EXTRA. On error - NULL will get stored at R_RID, R_DEV, IFCDESC_EXTRA and - IFCDESC_EXTRA_LEN. With READERID being -1 the function stops if - the READERID was found. - - If R_FD is not -1 on return the device is not using USB for - transport but the device associated with that file descriptor. In - this case INTERFACE will receive the transport type and the other - USB specific return values are not used; the return value is - (void*)(1). - - Note that the first entry of the returned reader ID list in scan mode - corresponds with a READERNO of 0 in find mode. + IDs. */ static int -scan_or_find_devices (int readerno, const char *readerid, - char **r_rid, - struct libusb_device_descriptor *r_desc, - unsigned char **ifcdesc_extra, - size_t *ifcdesc_extra_len, - int *interface_number, int *setting_number, - int *ep_bulk_out, int *ep_bulk_in, int *ep_intr, - libusb_device_handle **r_idev, - int *r_fd) +scan_devices (char **r_rid) { char *rid_list = NULL; int count = 0; libusb_device **dev_list = NULL; libusb_device *dev; - libusb_device_handle *idev = NULL; - int scan_mode = (readerno == -1 && !readerid); int i; ssize_t n; - struct libusb_device_descriptor desc; /* Set return values to a default. */ if (r_rid) *r_rid = NULL; - if (ifcdesc_extra) - *ifcdesc_extra = NULL; - if (ifcdesc_extra_len) - *ifcdesc_extra_len = 0; - if (interface_number) - *interface_number = 0; - if (setting_number) - *setting_number = 0; - if (r_idev) - *r_idev = NULL; - if (r_fd) - *r_fd = -1; - - /* See whether we want scan or find mode. */ - if (scan_mode) - { - assert (r_rid); - } n = libusb_get_device_list (NULL, &dev_list); for (i = 0; i < n; i++) { dev = dev_list[i]; - if (scan_or_find_usb_device (scan_mode, readerno, &count, &rid_list, - readerid, - dev, - r_rid, - &desc, - &idev, - ifcdesc_extra, - ifcdesc_extra_len, - interface_number, setting_number, - ep_bulk_out, ep_bulk_in, ep_intr)) - { - libusb_free_device_list (dev_list, 1); - /* Found requested device or out of core. */ - if (!idev) - { - free (rid_list); - return -1; /* error */ - } - *r_idev = idev; - if (r_desc) - memcpy (r_desc, &desc, sizeof (struct libusb_device_descriptor)); - return 0; - } + scan_usb_device (&count, &rid_list, dev); } libusb_free_device_list (dev_list, 1); - /* Now check whether there are any devices with special transport types. */ - for (i=0; transports[i].name; i++) - { - int fd; - char *rid, *p; - - fd = open (transports[i].name, O_RDWR); - if (fd == -1 && scan_mode && errno == EBUSY) - { - /* Ignore this error in scan mode because it indicates that - the device exists but is already open (most likely by us) - and thus in general suitable as a reader. */ - } - else if (fd == -1) - { - DEBUGOUT_2 ("failed to open '%s': %s\n", - transports[i].name, strerror (errno)); - continue; - } - - rid = malloc (strlen (transports[i].name) + 30 + 10); - if (!rid) - { - if (fd != -1) - close (fd); - free (rid_list); - return -1; /* Error. */ - } - sprintf (rid, "0000:%04X:%s:0", transports[i].type, transports[i].name); - if (scan_mode) - { - DEBUGOUT_2 ("found CCID reader %d (ID=%s)\n", count, rid); - p = malloc ((rid_list? strlen (rid_list):0) + 1 + strlen (rid) + 1); - if (!p) - { - if (fd != -1) - close (fd); - free (rid_list); - free (rid); - return -1; /* Error. */ - } - *p = 0; - if (rid_list) - { - strcat (p, rid_list); - free (rid_list); - } - strcat (p, rid); - strcat (p, "\n"); - rid_list = p; - ++count; - } - else if (!readerno || - (readerno < 0 && readerid && !strcmp (readerid, rid))) - { - /* Found requested device. */ - if (interface_number) - *interface_number = transports[i].type; - if (r_rid) - *r_rid = rid; - else - free (rid); - if (r_fd) - *r_fd = fd; - return 0; /* Okay, found device */ - } - else /* This is not yet the reader we want. */ - { - if (readerno >= 0) - --readerno; - } - free (rid); - if (fd != -1) - close (fd); - } - - if (scan_mode) - { - *r_rid = rid_list; - return 0; - } - else - return -1; + *r_rid = rid_list; + return 0; } @@ -1517,8 +1291,7 @@ ccid_get_reader_list (void) initialized_usb = 1; } - if (scan_or_find_devices (-1, NULL, &reader_list, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL)) + if (scan_devices (&reader_list)) return NULL; /* Error. */ return reader_list; } @@ -2484,7 +2257,7 @@ abort_cmd (ccid_driver_t handle, int seqno) if (!handle->idev) { /* I don't know how to send an abort to non-USB devices. */ - rc = CCID_DRIVER_ERR_NOT_SUPPORTED; + return CCID_DRIVER_ERR_NOT_SUPPORTED; } seqno &= 0xff; @@ -2639,7 +2412,8 @@ send_escape_cmd (ccid_driver_t handle, else { memcpy (result, msg, msglen); - *resultlen = msglen; + if (resultlen) + *resultlen = msglen; rc = 0; } } @@ -4006,9 +3780,7 @@ ccid_transceive_secure (ccid_driver_t handle, } memcpy (resp, p, n); - resp += n; *nresp += n; - maxresplen -= n; } if (!(tpdu[1] & 0x20)) commit 3c93595d701c59cbc9b67a7fd0bcde7ee0fada1a Author: NIIBE Yutaka Date: Fri Apr 7 12:18:16 2017 +0900 scd: Don't keep CCID reader open when card is not available. * scd/apdu.c (open_ccid_reader): Fail if no ATR. Signed-off-by: NIIBE Yutaka diff --git a/scd/apdu.c b/scd/apdu.c index 147bf73..65f770d 100644 --- a/scd/apdu.c +++ b/scd/apdu.c @@ -1496,6 +1496,9 @@ open_ccid_reader (struct dev_list *dl) err = ccid_open_reader (dl->portstr, dl->idx, dl->ccid_table, &slotp->ccid.handle, &slotp->rdrname); + if (!err) + err = ccid_get_atr (slotp->ccid.handle, + slotp->atr, sizeof slotp->atr, &slotp->atrlen); if (err) { slotp->used = 0; @@ -1503,14 +1506,6 @@ open_ccid_reader (struct dev_list *dl) return -1; } - err = ccid_get_atr (slotp->ccid.handle, - slotp->atr, sizeof slotp->atr, &slotp->atrlen); - if (err) - { - slotp->atrlen = 0; - err = 0; - } - require_get_status = ccid_require_get_status (slotp->ccid.handle); reader_table[slot].close_reader = close_ccid_reader; ----------------------------------------------------------------------- Summary of changes: scd/apdu.c | 11 +- scd/ccid-driver.c | 310 ++++++++---------------------------------------------- 2 files changed, 44 insertions(+), 277 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Fri Apr 7 10:17:26 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Fri, 07 Apr 2017 10:17:26 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-17-g547bc01 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 547bc01d57528ecc27b3b5e16797967a7f88fecf (commit) from cc420d34880e2a050b39f969873974cfc35fa5c3 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 547bc01d57528ecc27b3b5e16797967a7f88fecf Author: Werner Koch Date: Fri Apr 7 10:11:07 2017 +0200 gpg: Fix printing of offline taken subkey. * g10/keylist.c (list_keyblock_print): Set SECRET to 2 and not 0x32. -- Reported-by: Danielle McLean Signed-off-by: Werner Koch diff --git a/g10/keylist.c b/g10/keylist.c index 2b6ee9f..c75856f 100644 --- a/g10/keylist.c +++ b/g10/keylist.c @@ -1016,7 +1016,7 @@ list_keyblock_print (ctrl_t ctrl, kbnode_t keyblock, int secret, int fpr, if (!agent_get_keyinfo (NULL, hexgrip, &serialno, NULL)) secret = serialno? 3 : 1; else - secret = '2'; /* Key not found. */ + secret = 2; /* Key not found. */ } /* Print the "sub" line. */ ----------------------------------------------------------------------- Summary of changes: g10/keylist.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Fri Apr 7 10:30:20 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Fri, 07 Apr 2017 10:30:20 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-18-g9c9fde1 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 9c9fde1495be4accf4526a2626110876fd9d788d (commit) from 547bc01d57528ecc27b3b5e16797967a7f88fecf (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 9c9fde1495be4accf4526a2626110876fd9d788d Author: Werner Koch Date: Fri Apr 7 10:26:55 2017 +0200 doc: Explain the '>' in a key listing. -- Signed-off-by: Werner Koch diff --git a/doc/gpg.texi b/doc/gpg.texi index 37e1ff1..c0d7cc4 100644 --- a/doc/gpg.texi +++ b/doc/gpg.texi @@ -301,10 +301,13 @@ and other programs. @itemx -K @opindex list-secret-keys List the specified secret keys. If no keys are specified, then all -known secret keys are listed. A @code{#} after the letters @code{sec} -means that the secret key is not usable (for example, if it was -exported using @option{--export-secret-subkeys}). See also - at option{--list-keys}. +known secret keys are listed. A @code{#} after the intial tags + at code{sec} or @code{ssb} means that the secret key or subkey is +currently not usable. We also say that this key has been taken +offline (for example, a primary key can be taken offline by exported +the key using the command @option{--export-secret-subkeys}). A + at code{>} after these tags indicate that the key is stored on a +smartcard. See also @option{--list-keys}. @item --list-signatures @opindex list-signatures ----------------------------------------------------------------------- Summary of changes: doc/gpg.texi | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Fri Apr 7 13:05:56 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Fri, 07 Apr 2017 13:05:56 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-19-gbf8b5e9 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via bf8b5e9042b3d86d419b2ac1987a9298c9d21500 (commit) from 9c9fde1495be4accf4526a2626110876fd9d788d (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit bf8b5e9042b3d86d419b2ac1987a9298c9d21500 Author: Justus Winter Date: Fri Apr 7 12:27:47 2017 +0200 gpgscm: Fix compact vector encoding. * tests/gpgscm/scheme-private.h (struct cell): Use uintptr_t for '_flags'. This way, '_flags' has the size of a machine word. -- The compact vector representation introduced in 49e2ae65 requires that we can tell apart pointers and type flags. This did not work on 64-bit big-endian architectures. Fixes a crash on 64-bit big-endian architectures. Hat-tip-to: gniibe Fixes-commit: 49e2ae65e892f93be7f87cfaae3392b50a99e4b1 Signed-off-by: Justus Winter diff --git a/tests/gpgscm/scheme-private.h b/tests/gpgscm/scheme-private.h index abd89e8..fe50135 100644 --- a/tests/gpgscm/scheme-private.h +++ b/tests/gpgscm/scheme-private.h @@ -3,6 +3,7 @@ #ifndef _SCHEME_PRIVATE_H #define _SCHEME_PRIVATE_H +#include #include "scheme.h" /*------------------ Ugly internals -----------------------------------*/ /*------------------ Of interest only to FFI users --------------------*/ @@ -42,7 +43,7 @@ typedef struct port { /* cell structure */ struct cell { - unsigned int _flag; + uintptr_t _flag; union { struct { char *_svalue; ----------------------------------------------------------------------- Summary of changes: tests/gpgscm/scheme-private.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Fri Apr 7 13:21:58 2017 From: cvs at cvs.gnupg.org (by Alon Bar-Lev) Date: Fri, 07 Apr 2017 13:21:58 +0200 Subject: [git] GPGME - branch, master, updated. gpgme-1.9.0-15-g49195c4 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG Made Easy". The branch, master has been updated via 49195c487e6c923f7137f092b982e7d833d98de6 (commit) from e7d9c0c3d773f826dbd2ed417d04e25c410f3374 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 49195c487e6c923f7137f092b982e7d833d98de6 Author: Alon Bar-Lev Date: Wed Apr 5 19:47:08 2017 +0300 python: simplify build, some fixups * lang/python/gpg/version.py.in: Rename to lang/python/version.py.in. configure.ac: Generate version.py.in in lang/python. * lang/python/MANIFEST.in: Include version.py explicitly. * lang/python/gpg: Rename to 'src'. * lang/python/Makefile.am: Do not copy source files, do not use absolute directories, support lib64 in uninstall, clean also dist directory, use symlink for gpg src. * lang/python/setup.py.in: Use builddir, copy sources into builddir, copy version.py into module. -- Simplify build to symlink the gpg sources into builddir instead of copying. This requires handling of version.py as generated file. In addition apply some cleanups: Drop the absolution pathes, clean the dist directory as well, support lib64 for sitelib at uninstall. Signed-off-by: Alon Bar-Lev diff --git a/configure.ac b/configure.ac index 7ab94e7..9974abb 100644 --- a/configure.ac +++ b/configure.ac @@ -881,7 +881,7 @@ AC_CONFIG_FILES([lang/Makefile lang/cl/Makefile lang/cl/gpgme.asd]) AM_COND_IF([HAVE_DOXYGEN], [AC_CONFIG_FILES([lang/qt/doc/Doxyfile])]) AC_CONFIG_FILES(lang/qt/doc/Makefile) AC_CONFIG_FILES([lang/python/Makefile - lang/python/gpg/version.py + lang/python/version.py lang/python/tests/Makefile]) AC_CONFIG_FILES([lang/python/setup.py], [chmod a+x lang/python/setup.py]) AC_OUTPUT diff --git a/lang/python/MANIFEST.in b/lang/python/MANIFEST.in index ff38172..c34e84a 100644 --- a/lang/python/MANIFEST.in +++ b/lang/python/MANIFEST.in @@ -1,4 +1,5 @@ recursive-include examples *.py include gpgme.i include helpers.c helpers.h private.h +include version.py recursive-include gpg *.py diff --git a/lang/python/Makefile.am b/lang/python/Makefile.am index 42beeee..4ebd214 100644 --- a/lang/python/Makefile.am +++ b/lang/python/Makefile.am @@ -22,28 +22,19 @@ EXTRA_DIST = \ gpgme.i \ helpers.c helpers.h private.h \ examples \ - gpg + src SUBDIRS = . tests -COPY_FILES_GPG = \ - $(srcdir)/gpg/callbacks.py \ - $(srcdir)/gpg/constants \ - $(srcdir)/gpg/core.py \ - $(srcdir)/gpg/errors.py \ - $(srcdir)/gpg/__init__.py \ - $(srcdir)/gpg/results.py \ - $(srcdir)/gpg/util.py - .PHONY: prepare prepare: copystamp # For VPATH builds we need to copy some files because Python's # distutils are not VPATH-aware. copystamp: - ln -sf "$(abs_top_srcdir)/src/data.h" . - ln -sf "$(abs_top_builddir)/config.h" . - if test $(srcdir) != . ; then cp -R $(COPY_FILES_GPG) gpg ; fi + ln -sf "$(top_srcdir)/src/data.h" . + ln -sf "$(top_builddir)/config.h" . + ln -sf "$(srcdir)/src" gpg touch $@ all-local: copystamp @@ -51,7 +42,7 @@ all-local: copystamp PYTHON="$$1" ; shift ; \ CFLAGS="$(CFLAGS)" \ srcdir="$(srcdir)" \ - abs_top_builddir="$(abs_top_builddir)" \ + top_builddir="$(top_builddir)" \ $$PYTHON setup.py build --verbose --build-base=python$${VERSION}-gpg ; \ done @@ -59,7 +50,7 @@ python$(PYTHON_VERSION)-gpg/dist/gpg-$(VERSION).tar.gz.asc: copystamp $(MKDIR_P) python$(PYTHON_VERSION)-gpg-dist CFLAGS="$(CFLAGS)" \ srcdir="$(srcdir)" \ - abs_top_builddir="$(abs_top_builddir)" \ + top_builddir="$(top_builddir)" \ $(PYTHON) setup.py sdist --verbose --dist-dir=python$(PYTHON_VERSION)-gpg-dist \ --manifest=python$(PYTHON_VERSION)-gpg-dist/MANIFEST gpg2 --detach-sign --armor python$(PYTHON_VERSION)-gpg-dist/gpg-$(VERSION).tar.gz @@ -75,6 +66,7 @@ upload: python$(PYTHON_VERSION)-gpg-dist/gpg-$(VERSION).tar.gz \ CLEANFILES = copystamp \ config.h \ data.h \ + gpg \ files.txt \ install_files.txt @@ -84,22 +76,16 @@ CLEANFILES = copystamp \ # permissions. clean-local: rm -rf -- build - if test $(srcdir) != . ; then \ - find gpg -type d ! -perm -200 -exec chmod u+w {} ';' ; \ - for FILE in $(COPY_FILES_GPG); do \ - rm -rf -- gpg/$$(basename $$FILE) ; \ - done \ - fi for VERSION in $(PYTHON_VERSIONS); do \ - find python$${VERSION}-gpg -type d ! -perm -200 -exec chmod u+w {} ';' ; \ - rm -rf -- python$${VERSION}-gpg ; \ + find python$${VERSION}-gpg* -type d ! -perm -200 -exec chmod u+w {} ';' ; \ + rm -rf -- python$${VERSION}-gpg* ; \ done install-exec-local: set -e ; set $(PYTHONS); for VERSION in $(PYTHON_VERSIONS); do \ PYTHON="$$1" ; shift ; \ srcdir="$(srcdir)" \ - abs_top_builddir="$(abs_top_builddir)" \ + top_builddir="$(top_builddir)" \ $$PYTHON setup.py \ build \ --build-base=python$${VERSION}-gpg \ @@ -110,6 +96,6 @@ install-exec-local: uninstall-local: GV=$$(echo $(VERSION) | tr - _); for PV in $(PYTHON_VERSIONS); do \ - rm -rf -- "$(DESTDIR)$(prefix)/lib/python$$PV/site-packages/gpg" \ -"$(DESTDIR)$(prefix)/lib/python$$PV/site-packages/gpg-$$GV-py$$PV.egg-info" ; \ + rm -rf -- "$(DESTDIR)$(prefix)"/lib*/python$$PV/site-packages/gpg \ +"$(DESTDIR)$(prefix)"/lib*/python$$PV/site-packages/gpg-$$GV-py$$PV.egg-info ; \ done diff --git a/lang/python/setup.py.in b/lang/python/setup.py.in index 2114aaf..5d94c70 100755 --- a/lang/python/setup.py.in +++ b/lang/python/setup.py.in @@ -38,18 +38,17 @@ gpgme_config = ["gpgme-config"] + gpgme_config_flags gpgme_h = "" include_dirs = [os.getcwd()] library_dirs = [] -vpath_build = os.environ.get('srcdir', '.') != '.' in_tree = False extra_swig_opts = [] extra_macros = dict() -abs_top_builddir = os.environ.get("abs_top_builddir") -if abs_top_builddir: +top_builddir = os.environ.get("top_builddir") +if top_builddir: # In-tree build. in_tree = True - gpgme_config = [os.path.join(abs_top_builddir, "src/gpgme-config")] + gpgme_config_flags - gpgme_h = os.path.join(abs_top_builddir, "src/gpgme.h") - library_dirs = [os.path.join(abs_top_builddir, "src/.libs")] # XXX uses libtool internals + gpgme_config = [os.path.join(top_builddir, "src/gpgme-config")] + gpgme_config_flags + gpgme_h = os.path.join(top_builddir, "src/gpgme.h") + library_dirs = [os.path.join(top_builddir, "src/.libs")] # XXX uses libtool internals extra_macros.update( HAVE_CONFIG_H=1, HAVE_DATA_H=1, @@ -210,23 +209,21 @@ class BuildExtFirstHack(build): # Copy due to http://bugs.python.org/issue2624 # Avoid creating in srcdir for source, target in ((in_srcdir(n), in_build_base(n)) - for n in ('gpgme.i', 'helpers.c')): + for n in ('gpgme.i', 'helpers.c', 'private.h', 'helpers.h')): if not up_to_date(source, target): shutil.copy2(source, target) - def run(self): - self._generate() - # Append generated files via build_base if not os.path.exists(os.path.join(self.build_lib, "gpg")): os.makedirs(os.path.join(self.build_lib, "gpg")) + shutil.copy2("version.py", os.path.join(self.build_lib, "gpg")) + + def run(self): + self._generate() swig_sources.append(os.path.join(self.build_base, 'gpgme.i')) swig_opts.extend(['-I' + self.build_base, - '-I' + in_srcdir('.'), '-outdir', os.path.join(self.build_lib, 'gpg')]) - if vpath_build: - include_dirs.append(in_srcdir('.')) include_dirs.append(self.build_base) self.run_command('build_ext') diff --git a/lang/python/gpg/__init__.py b/lang/python/src/__init__.py similarity index 100% rename from lang/python/gpg/__init__.py rename to lang/python/src/__init__.py diff --git a/lang/python/gpg/callbacks.py b/lang/python/src/callbacks.py similarity index 100% rename from lang/python/gpg/callbacks.py rename to lang/python/src/callbacks.py diff --git a/lang/python/gpg/constants/__init__.py b/lang/python/src/constants/__init__.py similarity index 100% rename from lang/python/gpg/constants/__init__.py rename to lang/python/src/constants/__init__.py diff --git a/lang/python/gpg/constants/create.py b/lang/python/src/constants/create.py similarity index 100% rename from lang/python/gpg/constants/create.py rename to lang/python/src/constants/create.py diff --git a/lang/python/gpg/constants/data/__init__.py b/lang/python/src/constants/data/__init__.py similarity index 100% rename from lang/python/gpg/constants/data/__init__.py rename to lang/python/src/constants/data/__init__.py diff --git a/lang/python/gpg/constants/data/encoding.py b/lang/python/src/constants/data/encoding.py similarity index 100% rename from lang/python/gpg/constants/data/encoding.py rename to lang/python/src/constants/data/encoding.py diff --git a/lang/python/gpg/constants/event.py b/lang/python/src/constants/event.py similarity index 100% rename from lang/python/gpg/constants/event.py rename to lang/python/src/constants/event.py diff --git a/lang/python/gpg/constants/import.py b/lang/python/src/constants/import.py similarity index 100% rename from lang/python/gpg/constants/import.py rename to lang/python/src/constants/import.py diff --git a/lang/python/gpg/constants/keylist/__init__.py b/lang/python/src/constants/keylist/__init__.py similarity index 100% rename from lang/python/gpg/constants/keylist/__init__.py rename to lang/python/src/constants/keylist/__init__.py diff --git a/lang/python/gpg/constants/keylist/mode.py b/lang/python/src/constants/keylist/mode.py similarity index 100% rename from lang/python/gpg/constants/keylist/mode.py rename to lang/python/src/constants/keylist/mode.py diff --git a/lang/python/gpg/constants/keysign.py b/lang/python/src/constants/keysign.py similarity index 100% rename from lang/python/gpg/constants/keysign.py rename to lang/python/src/constants/keysign.py diff --git a/lang/python/gpg/constants/md.py b/lang/python/src/constants/md.py similarity index 100% rename from lang/python/gpg/constants/md.py rename to lang/python/src/constants/md.py diff --git a/lang/python/gpg/constants/pk.py b/lang/python/src/constants/pk.py similarity index 100% rename from lang/python/gpg/constants/pk.py rename to lang/python/src/constants/pk.py diff --git a/lang/python/gpg/constants/protocol.py b/lang/python/src/constants/protocol.py similarity index 100% rename from lang/python/gpg/constants/protocol.py rename to lang/python/src/constants/protocol.py diff --git a/lang/python/gpg/constants/sig/__init__.py b/lang/python/src/constants/sig/__init__.py similarity index 100% rename from lang/python/gpg/constants/sig/__init__.py rename to lang/python/src/constants/sig/__init__.py diff --git a/lang/python/gpg/constants/sig/mode.py b/lang/python/src/constants/sig/mode.py similarity index 100% rename from lang/python/gpg/constants/sig/mode.py rename to lang/python/src/constants/sig/mode.py diff --git a/lang/python/gpg/constants/sig/notation.py b/lang/python/src/constants/sig/notation.py similarity index 100% rename from lang/python/gpg/constants/sig/notation.py rename to lang/python/src/constants/sig/notation.py diff --git a/lang/python/gpg/constants/sigsum.py b/lang/python/src/constants/sigsum.py similarity index 100% rename from lang/python/gpg/constants/sigsum.py rename to lang/python/src/constants/sigsum.py diff --git a/lang/python/gpg/constants/status.py b/lang/python/src/constants/status.py similarity index 100% rename from lang/python/gpg/constants/status.py rename to lang/python/src/constants/status.py diff --git a/lang/python/gpg/constants/tofu/__init__.py b/lang/python/src/constants/tofu/__init__.py similarity index 100% rename from lang/python/gpg/constants/tofu/__init__.py rename to lang/python/src/constants/tofu/__init__.py diff --git a/lang/python/gpg/constants/tofu/policy.py b/lang/python/src/constants/tofu/policy.py similarity index 100% rename from lang/python/gpg/constants/tofu/policy.py rename to lang/python/src/constants/tofu/policy.py diff --git a/lang/python/gpg/constants/validity.py b/lang/python/src/constants/validity.py similarity index 100% rename from lang/python/gpg/constants/validity.py rename to lang/python/src/constants/validity.py diff --git a/lang/python/gpg/core.py b/lang/python/src/core.py similarity index 100% rename from lang/python/gpg/core.py rename to lang/python/src/core.py diff --git a/lang/python/gpg/errors.py b/lang/python/src/errors.py similarity index 100% rename from lang/python/gpg/errors.py rename to lang/python/src/errors.py diff --git a/lang/python/gpg/results.py b/lang/python/src/results.py similarity index 100% rename from lang/python/gpg/results.py rename to lang/python/src/results.py diff --git a/lang/python/gpg/util.py b/lang/python/src/util.py similarity index 100% rename from lang/python/gpg/util.py rename to lang/python/src/util.py diff --git a/lang/python/gpg/version.py.in b/lang/python/version.py.in similarity index 100% rename from lang/python/gpg/version.py.in rename to lang/python/version.py.in ----------------------------------------------------------------------- Summary of changes: configure.ac | 2 +- lang/python/MANIFEST.in | 1 + lang/python/Makefile.am | 38 +++++++--------------- lang/python/setup.py.in | 23 ++++++------- lang/python/{gpg => src}/__init__.py | 0 lang/python/{gpg => src}/callbacks.py | 0 lang/python/{gpg => src}/constants/__init__.py | 0 lang/python/{gpg => src}/constants/create.py | 0 .../python/{gpg => src}/constants/data/__init__.py | 0 .../python/{gpg => src}/constants/data/encoding.py | 0 lang/python/{gpg => src}/constants/event.py | 0 lang/python/{gpg => src}/constants/import.py | 0 .../{gpg => src}/constants/keylist/__init__.py | 0 lang/python/{gpg => src}/constants/keylist/mode.py | 0 lang/python/{gpg => src}/constants/keysign.py | 0 lang/python/{gpg => src}/constants/md.py | 0 lang/python/{gpg => src}/constants/pk.py | 0 lang/python/{gpg => src}/constants/protocol.py | 0 lang/python/{gpg => src}/constants/sig/__init__.py | 0 lang/python/{gpg => src}/constants/sig/mode.py | 0 lang/python/{gpg => src}/constants/sig/notation.py | 0 lang/python/{gpg => src}/constants/sigsum.py | 0 lang/python/{gpg => src}/constants/status.py | 0 .../python/{gpg => src}/constants/tofu/__init__.py | 0 lang/python/{gpg => src}/constants/tofu/policy.py | 0 lang/python/{gpg => src}/constants/validity.py | 0 lang/python/{gpg => src}/core.py | 0 lang/python/{gpg => src}/errors.py | 0 lang/python/{gpg => src}/results.py | 0 lang/python/{gpg => src}/util.py | 0 lang/python/{gpg => }/version.py.in | 0 31 files changed, 24 insertions(+), 40 deletions(-) rename lang/python/{gpg => src}/__init__.py (100%) rename lang/python/{gpg => src}/callbacks.py (100%) rename lang/python/{gpg => src}/constants/__init__.py (100%) rename lang/python/{gpg => src}/constants/create.py (100%) rename lang/python/{gpg => src}/constants/data/__init__.py (100%) rename lang/python/{gpg => src}/constants/data/encoding.py (100%) rename lang/python/{gpg => src}/constants/event.py (100%) rename lang/python/{gpg => src}/constants/import.py (100%) rename lang/python/{gpg => src}/constants/keylist/__init__.py (100%) rename lang/python/{gpg => src}/constants/keylist/mode.py (100%) rename lang/python/{gpg => src}/constants/keysign.py (100%) rename lang/python/{gpg => src}/constants/md.py (100%) rename lang/python/{gpg => src}/constants/pk.py (100%) rename lang/python/{gpg => src}/constants/protocol.py (100%) rename lang/python/{gpg => src}/constants/sig/__init__.py (100%) rename lang/python/{gpg => src}/constants/sig/mode.py (100%) rename lang/python/{gpg => src}/constants/sig/notation.py (100%) rename lang/python/{gpg => src}/constants/sigsum.py (100%) rename lang/python/{gpg => src}/constants/status.py (100%) rename lang/python/{gpg => src}/constants/tofu/__init__.py (100%) rename lang/python/{gpg => src}/constants/tofu/policy.py (100%) rename lang/python/{gpg => src}/constants/validity.py (100%) rename lang/python/{gpg => src}/core.py (100%) rename lang/python/{gpg => src}/errors.py (100%) rename lang/python/{gpg => src}/results.py (100%) rename lang/python/{gpg => src}/util.py (100%) rename lang/python/{gpg => }/version.py.in (100%) hooks/post-receive -- GnuPG Made Easy http://git.gnupg.org From cvs at cvs.gnupg.org Fri Apr 7 13:53:18 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Fri, 07 Apr 2017 13:53:18 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-22-g8640fa8 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 8640fa880d7050917f4729f2c0cb506e165ee446 (commit) via c9c3fe883271868d3b2dd287d295cf6a8f8ffc05 (commit) via 56638c28adc1bbe9fc052b92549a50935c0fe99c (commit) from bf8b5e9042b3d86d419b2ac1987a9298c9d21500 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 8640fa880d7050917f4729f2c0cb506e165ee446 Author: Justus Winter Date: Thu Mar 23 15:21:36 2017 +0100 gpgscm: Allocate small integers in the rodata section. * tests/gpgscm/Makefile.am (gpgscm_SOURCES): Add new file. * tests/gpgscm/scheme-private.h (struct cell): Move number to the top of the union so that we can initialize it. (struct scheme): Remove 'integer_segment'. * tests/gpgscm/scheme.c (initialize_small_integers): Remove function. (small_integers): New variable. (MAX_SMALL_INTEGER): Compute. (mk_small_integer): Adapt. (mark): Avoid marking objects already marked. This allows us to run the algorithm over objects in the rodata section if they are already marked. (scheme_init_custom_alloc): Remove initialization. (scheme_deinit): Remove deallocation. * tests/gpgscm/small-integers.h: New file. -- Allocate small integers from a fixed pool in the rodata section. This spares us the initialization, and deduplicates integers across different processes. It also makes the integers immutable, increasing memory safety. Signed-off-by: Justus Winter diff --git a/tests/gpgscm/Makefile.am b/tests/gpgscm/Makefile.am index 8942c7c..15fc883 100644 --- a/tests/gpgscm/Makefile.am +++ b/tests/gpgscm/Makefile.am @@ -44,7 +44,8 @@ commonpth_libs = ../$(libcommonpth) gpgscm_CFLAGS = -imacros scheme-config.h \ $(LIBGCRYPT_CFLAGS) $(LIBASSUAN_CFLAGS) $(GPG_ERROR_CFLAGS) gpgscm_SOURCES = main.c private.h ffi.c ffi.h ffi-private.h \ - scheme-config.h opdefines.h scheme.c scheme.h scheme-private.h + scheme-config.h scheme.c scheme.h scheme-private.h \ + opdefines.h small-integers.h gpgscm_LDADD = $(LDADD) $(common_libs) \ $(NETLIBS) $(LIBICONV) $(LIBREADLINE) $(LIBINTL) \ $(LIBGCRYPT_LIBS) $(GPG_ERROR_LIBS) diff --git a/tests/gpgscm/scheme-private.h b/tests/gpgscm/scheme-private.h index 69b78f2..abe65e7 100644 --- a/tests/gpgscm/scheme-private.h +++ b/tests/gpgscm/scheme-private.h @@ -45,11 +45,11 @@ typedef struct port { struct cell { uintptr_t _flag; union { + num _number; struct { char *_svalue; int _length; } _string; - num _number; port *_port; foreign_func _ff; struct { @@ -152,11 +152,6 @@ pointer SHARP_HOOK; /* *sharp-hook* */ pointer COMPILE_HOOK; /* *compile-hook* */ #endif -#if USE_SMALL_INTEGERS -/* A fixed allocation of small integers. */ -struct cell_segment *integer_segment; -#endif - pointer free_cell; /* pointer to top of free cells */ long fcells; /* # of free cells */ size_t inhibit_gc; /* nesting of gc_disable */ diff --git a/tests/gpgscm/scheme.c b/tests/gpgscm/scheme.c index c37b568..e04394d 100644 --- a/tests/gpgscm/scheme.c +++ b/tests/gpgscm/scheme.c @@ -1312,31 +1312,22 @@ INTERFACE pointer mk_character(scheme *sc, int c) { /* s_save assumes that all opcodes can be expressed as a small * integer. */ -#define MAX_SMALL_INTEGER OP_MAXDEFINED - -static int -initialize_small_integers(scheme *sc) -{ - int i; - if (_alloc_cellseg(sc, MAX_SMALL_INTEGER, &sc->integer_segment)) - return 1; - - for (i = 0; i < MAX_SMALL_INTEGER; i++) { - pointer x = &sc->integer_segment->cells[i]; - typeflag(x) = T_NUMBER | T_ATOM | MARK; - ivalue_unchecked(x) = i; - set_num_integer(x); - } +static const struct cell small_integers[] = { +#define DEFINE_INTEGER(n) { T_NUMBER | T_ATOM | MARK, {{ 1, {n}}}}, +#include "small-integers.h" +#undef DEFINE_INTEGER + {0} +}; - return 0; -} +#define MAX_SMALL_INTEGER (sizeof small_integers / sizeof *small_integers - 1) static INLINE pointer mk_small_integer(scheme *sc, long n) { #define mk_small_integer_allocates 0 + (void) sc; assert(0 <= n && n < MAX_SMALL_INTEGER); - return &sc->integer_segment->cells[n]; + return (pointer) &small_integers[n]; } #else @@ -1644,7 +1635,8 @@ static void mark(pointer a) { t = (pointer) 0; p = a; -E2: setmark(p); +E2: if (! is_mark(p)) + setmark(p); if(is_vector(p)) { int i; for (i = 0; i < vector_length(p); i++) { @@ -5629,13 +5621,6 @@ int scheme_init_custom_alloc(scheme *sc, func_alloc malloc, func_dealloc free) { sc->F = &sc->_HASHF; sc->EOF_OBJ=&sc->_EOF_OBJ; -#if USE_SMALL_INTEGERS - if (initialize_small_integers(sc)) { - sc->no_memory=1; - return 0; - } -#endif - sc->free_cell = &sc->_NIL; sc->fcells = 0; sc->inhibit_gc = GC_ENABLED; @@ -5789,10 +5774,6 @@ void scheme_deinit(scheme *sc) { sc->gc_verbose=0; gc(sc,sc->NIL,sc->NIL); -#if USE_SMALL_INTEGERS - _dealloc_cellseg(sc, sc->integer_segment); -#endif - for (s = sc->cell_segments; s; s = _dealloc_cellseg(sc, s)) { /* nop */ } diff --git a/tests/gpgscm/small-integers.h b/tests/gpgscm/small-integers.h new file mode 100644 index 0000000..46eda34 --- /dev/null +++ b/tests/gpgscm/small-integers.h @@ -0,0 +1,847 @@ +/* Constant integer objects for TinySCHEME. + * + * Copyright (C) 2017 g10 code GmbH + * + * This file is part of GnuPG. + * + * GnuPG is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * GnuPG is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see . + */ + +/* + * Ohne Worte. Generated using: + * + * $ n=0; while read line ; do \ + * echo "DEFINE_INTEGER($n)" ; \ + * n="$(expr $n + 1)" ; \ + * done <./init.scm >> small-integers.h + */ + +DEFINE_INTEGER(0) +DEFINE_INTEGER(1) +DEFINE_INTEGER(2) +DEFINE_INTEGER(3) +DEFINE_INTEGER(4) +DEFINE_INTEGER(5) +DEFINE_INTEGER(6) +DEFINE_INTEGER(7) +DEFINE_INTEGER(8) +DEFINE_INTEGER(9) +DEFINE_INTEGER(10) +DEFINE_INTEGER(11) +DEFINE_INTEGER(12) +DEFINE_INTEGER(13) +DEFINE_INTEGER(14) +DEFINE_INTEGER(15) +DEFINE_INTEGER(16) +DEFINE_INTEGER(17) +DEFINE_INTEGER(18) +DEFINE_INTEGER(19) +DEFINE_INTEGER(20) +DEFINE_INTEGER(21) +DEFINE_INTEGER(22) +DEFINE_INTEGER(23) +DEFINE_INTEGER(24) +DEFINE_INTEGER(25) +DEFINE_INTEGER(26) +DEFINE_INTEGER(27) +DEFINE_INTEGER(28) +DEFINE_INTEGER(29) +DEFINE_INTEGER(30) +DEFINE_INTEGER(31) +DEFINE_INTEGER(32) +DEFINE_INTEGER(33) +DEFINE_INTEGER(34) +DEFINE_INTEGER(35) +DEFINE_INTEGER(36) +DEFINE_INTEGER(37) +DEFINE_INTEGER(38) +DEFINE_INTEGER(39) +DEFINE_INTEGER(40) +DEFINE_INTEGER(41) +DEFINE_INTEGER(42) +DEFINE_INTEGER(43) +DEFINE_INTEGER(44) +DEFINE_INTEGER(45) +DEFINE_INTEGER(46) +DEFINE_INTEGER(47) +DEFINE_INTEGER(48) +DEFINE_INTEGER(49) +DEFINE_INTEGER(50) +DEFINE_INTEGER(51) +DEFINE_INTEGER(52) +DEFINE_INTEGER(53) +DEFINE_INTEGER(54) +DEFINE_INTEGER(55) +DEFINE_INTEGER(56) +DEFINE_INTEGER(57) +DEFINE_INTEGER(58) +DEFINE_INTEGER(59) +DEFINE_INTEGER(60) +DEFINE_INTEGER(61) +DEFINE_INTEGER(62) +DEFINE_INTEGER(63) +DEFINE_INTEGER(64) +DEFINE_INTEGER(65) +DEFINE_INTEGER(66) +DEFINE_INTEGER(67) +DEFINE_INTEGER(68) +DEFINE_INTEGER(69) +DEFINE_INTEGER(70) +DEFINE_INTEGER(71) +DEFINE_INTEGER(72) +DEFINE_INTEGER(73) +DEFINE_INTEGER(74) +DEFINE_INTEGER(75) +DEFINE_INTEGER(76) +DEFINE_INTEGER(77) +DEFINE_INTEGER(78) +DEFINE_INTEGER(79) +DEFINE_INTEGER(80) +DEFINE_INTEGER(81) +DEFINE_INTEGER(82) +DEFINE_INTEGER(83) +DEFINE_INTEGER(84) +DEFINE_INTEGER(85) +DEFINE_INTEGER(86) +DEFINE_INTEGER(87) +DEFINE_INTEGER(88) +DEFINE_INTEGER(89) +DEFINE_INTEGER(90) +DEFINE_INTEGER(91) +DEFINE_INTEGER(92) +DEFINE_INTEGER(93) +DEFINE_INTEGER(94) +DEFINE_INTEGER(95) +DEFINE_INTEGER(96) +DEFINE_INTEGER(97) +DEFINE_INTEGER(98) +DEFINE_INTEGER(99) +DEFINE_INTEGER(100) +DEFINE_INTEGER(101) +DEFINE_INTEGER(102) +DEFINE_INTEGER(103) +DEFINE_INTEGER(104) +DEFINE_INTEGER(105) +DEFINE_INTEGER(106) +DEFINE_INTEGER(107) +DEFINE_INTEGER(108) +DEFINE_INTEGER(109) +DEFINE_INTEGER(110) +DEFINE_INTEGER(111) +DEFINE_INTEGER(112) +DEFINE_INTEGER(113) +DEFINE_INTEGER(114) +DEFINE_INTEGER(115) +DEFINE_INTEGER(116) +DEFINE_INTEGER(117) +DEFINE_INTEGER(118) +DEFINE_INTEGER(119) +DEFINE_INTEGER(120) +DEFINE_INTEGER(121) +DEFINE_INTEGER(122) +DEFINE_INTEGER(123) +DEFINE_INTEGER(124) +DEFINE_INTEGER(125) +DEFINE_INTEGER(126) +DEFINE_INTEGER(127) +DEFINE_INTEGER(128) +DEFINE_INTEGER(129) +DEFINE_INTEGER(130) +DEFINE_INTEGER(131) +DEFINE_INTEGER(132) +DEFINE_INTEGER(133) +DEFINE_INTEGER(134) +DEFINE_INTEGER(135) +DEFINE_INTEGER(136) +DEFINE_INTEGER(137) +DEFINE_INTEGER(138) +DEFINE_INTEGER(139) +DEFINE_INTEGER(140) +DEFINE_INTEGER(141) +DEFINE_INTEGER(142) +DEFINE_INTEGER(143) +DEFINE_INTEGER(144) +DEFINE_INTEGER(145) +DEFINE_INTEGER(146) +DEFINE_INTEGER(147) +DEFINE_INTEGER(148) +DEFINE_INTEGER(149) +DEFINE_INTEGER(150) +DEFINE_INTEGER(151) +DEFINE_INTEGER(152) +DEFINE_INTEGER(153) +DEFINE_INTEGER(154) +DEFINE_INTEGER(155) +DEFINE_INTEGER(156) +DEFINE_INTEGER(157) +DEFINE_INTEGER(158) +DEFINE_INTEGER(159) +DEFINE_INTEGER(160) +DEFINE_INTEGER(161) +DEFINE_INTEGER(162) +DEFINE_INTEGER(163) +DEFINE_INTEGER(164) +DEFINE_INTEGER(165) +DEFINE_INTEGER(166) +DEFINE_INTEGER(167) +DEFINE_INTEGER(168) +DEFINE_INTEGER(169) +DEFINE_INTEGER(170) +DEFINE_INTEGER(171) +DEFINE_INTEGER(172) +DEFINE_INTEGER(173) +DEFINE_INTEGER(174) +DEFINE_INTEGER(175) +DEFINE_INTEGER(176) +DEFINE_INTEGER(177) +DEFINE_INTEGER(178) +DEFINE_INTEGER(179) +DEFINE_INTEGER(180) +DEFINE_INTEGER(181) +DEFINE_INTEGER(182) +DEFINE_INTEGER(183) +DEFINE_INTEGER(184) +DEFINE_INTEGER(185) +DEFINE_INTEGER(186) +DEFINE_INTEGER(187) +DEFINE_INTEGER(188) +DEFINE_INTEGER(189) +DEFINE_INTEGER(190) +DEFINE_INTEGER(191) +DEFINE_INTEGER(192) +DEFINE_INTEGER(193) +DEFINE_INTEGER(194) +DEFINE_INTEGER(195) +DEFINE_INTEGER(196) +DEFINE_INTEGER(197) +DEFINE_INTEGER(198) +DEFINE_INTEGER(199) +DEFINE_INTEGER(200) +DEFINE_INTEGER(201) +DEFINE_INTEGER(202) +DEFINE_INTEGER(203) +DEFINE_INTEGER(204) +DEFINE_INTEGER(205) +DEFINE_INTEGER(206) +DEFINE_INTEGER(207) +DEFINE_INTEGER(208) +DEFINE_INTEGER(209) +DEFINE_INTEGER(210) +DEFINE_INTEGER(211) +DEFINE_INTEGER(212) +DEFINE_INTEGER(213) +DEFINE_INTEGER(214) +DEFINE_INTEGER(215) +DEFINE_INTEGER(216) +DEFINE_INTEGER(217) +DEFINE_INTEGER(218) +DEFINE_INTEGER(219) +DEFINE_INTEGER(220) +DEFINE_INTEGER(221) +DEFINE_INTEGER(222) +DEFINE_INTEGER(223) +DEFINE_INTEGER(224) +DEFINE_INTEGER(225) +DEFINE_INTEGER(226) +DEFINE_INTEGER(227) +DEFINE_INTEGER(228) +DEFINE_INTEGER(229) +DEFINE_INTEGER(230) +DEFINE_INTEGER(231) +DEFINE_INTEGER(232) +DEFINE_INTEGER(233) +DEFINE_INTEGER(234) +DEFINE_INTEGER(235) +DEFINE_INTEGER(236) +DEFINE_INTEGER(237) +DEFINE_INTEGER(238) +DEFINE_INTEGER(239) +DEFINE_INTEGER(240) +DEFINE_INTEGER(241) +DEFINE_INTEGER(242) +DEFINE_INTEGER(243) +DEFINE_INTEGER(244) +DEFINE_INTEGER(245) +DEFINE_INTEGER(246) +DEFINE_INTEGER(247) +DEFINE_INTEGER(248) +DEFINE_INTEGER(249) +DEFINE_INTEGER(250) +DEFINE_INTEGER(251) +DEFINE_INTEGER(252) +DEFINE_INTEGER(253) +DEFINE_INTEGER(254) +DEFINE_INTEGER(255) +DEFINE_INTEGER(256) +DEFINE_INTEGER(257) +DEFINE_INTEGER(258) +DEFINE_INTEGER(259) +DEFINE_INTEGER(260) +DEFINE_INTEGER(261) +DEFINE_INTEGER(262) +DEFINE_INTEGER(263) +DEFINE_INTEGER(264) +DEFINE_INTEGER(265) +DEFINE_INTEGER(266) +DEFINE_INTEGER(267) +DEFINE_INTEGER(268) +DEFINE_INTEGER(269) +DEFINE_INTEGER(270) +DEFINE_INTEGER(271) +DEFINE_INTEGER(272) +DEFINE_INTEGER(273) +DEFINE_INTEGER(274) +DEFINE_INTEGER(275) +DEFINE_INTEGER(276) +DEFINE_INTEGER(277) +DEFINE_INTEGER(278) +DEFINE_INTEGER(279) +DEFINE_INTEGER(280) +DEFINE_INTEGER(281) +DEFINE_INTEGER(282) +DEFINE_INTEGER(283) +DEFINE_INTEGER(284) +DEFINE_INTEGER(285) +DEFINE_INTEGER(286) +DEFINE_INTEGER(287) +DEFINE_INTEGER(288) +DEFINE_INTEGER(289) +DEFINE_INTEGER(290) +DEFINE_INTEGER(291) +DEFINE_INTEGER(292) +DEFINE_INTEGER(293) +DEFINE_INTEGER(294) +DEFINE_INTEGER(295) +DEFINE_INTEGER(296) +DEFINE_INTEGER(297) +DEFINE_INTEGER(298) +DEFINE_INTEGER(299) +DEFINE_INTEGER(300) +DEFINE_INTEGER(301) +DEFINE_INTEGER(302) +DEFINE_INTEGER(303) +DEFINE_INTEGER(304) +DEFINE_INTEGER(305) +DEFINE_INTEGER(306) +DEFINE_INTEGER(307) +DEFINE_INTEGER(308) +DEFINE_INTEGER(309) +DEFINE_INTEGER(310) +DEFINE_INTEGER(311) +DEFINE_INTEGER(312) +DEFINE_INTEGER(313) +DEFINE_INTEGER(314) +DEFINE_INTEGER(315) +DEFINE_INTEGER(316) +DEFINE_INTEGER(317) +DEFINE_INTEGER(318) +DEFINE_INTEGER(319) +DEFINE_INTEGER(320) +DEFINE_INTEGER(321) +DEFINE_INTEGER(322) +DEFINE_INTEGER(323) +DEFINE_INTEGER(324) +DEFINE_INTEGER(325) +DEFINE_INTEGER(326) +DEFINE_INTEGER(327) +DEFINE_INTEGER(328) +DEFINE_INTEGER(329) +DEFINE_INTEGER(330) +DEFINE_INTEGER(331) +DEFINE_INTEGER(332) +DEFINE_INTEGER(333) +DEFINE_INTEGER(334) +DEFINE_INTEGER(335) +DEFINE_INTEGER(336) +DEFINE_INTEGER(337) +DEFINE_INTEGER(338) +DEFINE_INTEGER(339) +DEFINE_INTEGER(340) +DEFINE_INTEGER(341) +DEFINE_INTEGER(342) +DEFINE_INTEGER(343) +DEFINE_INTEGER(344) +DEFINE_INTEGER(345) +DEFINE_INTEGER(346) +DEFINE_INTEGER(347) +DEFINE_INTEGER(348) +DEFINE_INTEGER(349) +DEFINE_INTEGER(350) +DEFINE_INTEGER(351) +DEFINE_INTEGER(352) +DEFINE_INTEGER(353) +DEFINE_INTEGER(354) +DEFINE_INTEGER(355) +DEFINE_INTEGER(356) +DEFINE_INTEGER(357) +DEFINE_INTEGER(358) +DEFINE_INTEGER(359) +DEFINE_INTEGER(360) +DEFINE_INTEGER(361) +DEFINE_INTEGER(362) +DEFINE_INTEGER(363) +DEFINE_INTEGER(364) +DEFINE_INTEGER(365) +DEFINE_INTEGER(366) +DEFINE_INTEGER(367) +DEFINE_INTEGER(368) +DEFINE_INTEGER(369) +DEFINE_INTEGER(370) +DEFINE_INTEGER(371) +DEFINE_INTEGER(372) +DEFINE_INTEGER(373) +DEFINE_INTEGER(374) +DEFINE_INTEGER(375) +DEFINE_INTEGER(376) +DEFINE_INTEGER(377) +DEFINE_INTEGER(378) +DEFINE_INTEGER(379) +DEFINE_INTEGER(380) +DEFINE_INTEGER(381) +DEFINE_INTEGER(382) +DEFINE_INTEGER(383) +DEFINE_INTEGER(384) +DEFINE_INTEGER(385) +DEFINE_INTEGER(386) +DEFINE_INTEGER(387) +DEFINE_INTEGER(388) +DEFINE_INTEGER(389) +DEFINE_INTEGER(390) +DEFINE_INTEGER(391) +DEFINE_INTEGER(392) +DEFINE_INTEGER(393) +DEFINE_INTEGER(394) +DEFINE_INTEGER(395) +DEFINE_INTEGER(396) +DEFINE_INTEGER(397) +DEFINE_INTEGER(398) +DEFINE_INTEGER(399) +DEFINE_INTEGER(400) +DEFINE_INTEGER(401) +DEFINE_INTEGER(402) +DEFINE_INTEGER(403) +DEFINE_INTEGER(404) +DEFINE_INTEGER(405) +DEFINE_INTEGER(406) +DEFINE_INTEGER(407) +DEFINE_INTEGER(408) +DEFINE_INTEGER(409) +DEFINE_INTEGER(410) +DEFINE_INTEGER(411) +DEFINE_INTEGER(412) +DEFINE_INTEGER(413) +DEFINE_INTEGER(414) +DEFINE_INTEGER(415) +DEFINE_INTEGER(416) +DEFINE_INTEGER(417) +DEFINE_INTEGER(418) +DEFINE_INTEGER(419) +DEFINE_INTEGER(420) +DEFINE_INTEGER(421) +DEFINE_INTEGER(422) +DEFINE_INTEGER(423) +DEFINE_INTEGER(424) +DEFINE_INTEGER(425) +DEFINE_INTEGER(426) +DEFINE_INTEGER(427) +DEFINE_INTEGER(428) +DEFINE_INTEGER(429) +DEFINE_INTEGER(430) +DEFINE_INTEGER(431) +DEFINE_INTEGER(432) +DEFINE_INTEGER(433) +DEFINE_INTEGER(434) +DEFINE_INTEGER(435) +DEFINE_INTEGER(436) +DEFINE_INTEGER(437) +DEFINE_INTEGER(438) +DEFINE_INTEGER(439) +DEFINE_INTEGER(440) +DEFINE_INTEGER(441) +DEFINE_INTEGER(442) +DEFINE_INTEGER(443) +DEFINE_INTEGER(444) +DEFINE_INTEGER(445) +DEFINE_INTEGER(446) +DEFINE_INTEGER(447) +DEFINE_INTEGER(448) +DEFINE_INTEGER(449) +DEFINE_INTEGER(450) +DEFINE_INTEGER(451) +DEFINE_INTEGER(452) +DEFINE_INTEGER(453) +DEFINE_INTEGER(454) +DEFINE_INTEGER(455) +DEFINE_INTEGER(456) +DEFINE_INTEGER(457) +DEFINE_INTEGER(458) +DEFINE_INTEGER(459) +DEFINE_INTEGER(460) +DEFINE_INTEGER(461) +DEFINE_INTEGER(462) +DEFINE_INTEGER(463) +DEFINE_INTEGER(464) +DEFINE_INTEGER(465) +DEFINE_INTEGER(466) +DEFINE_INTEGER(467) +DEFINE_INTEGER(468) +DEFINE_INTEGER(469) +DEFINE_INTEGER(470) +DEFINE_INTEGER(471) +DEFINE_INTEGER(472) +DEFINE_INTEGER(473) +DEFINE_INTEGER(474) +DEFINE_INTEGER(475) +DEFINE_INTEGER(476) +DEFINE_INTEGER(477) +DEFINE_INTEGER(478) +DEFINE_INTEGER(479) +DEFINE_INTEGER(480) +DEFINE_INTEGER(481) +DEFINE_INTEGER(482) +DEFINE_INTEGER(483) +DEFINE_INTEGER(484) +DEFINE_INTEGER(485) +DEFINE_INTEGER(486) +DEFINE_INTEGER(487) +DEFINE_INTEGER(488) +DEFINE_INTEGER(489) +DEFINE_INTEGER(490) +DEFINE_INTEGER(491) +DEFINE_INTEGER(492) +DEFINE_INTEGER(493) +DEFINE_INTEGER(494) +DEFINE_INTEGER(495) +DEFINE_INTEGER(496) +DEFINE_INTEGER(497) +DEFINE_INTEGER(498) +DEFINE_INTEGER(499) +DEFINE_INTEGER(500) +DEFINE_INTEGER(501) +DEFINE_INTEGER(502) +DEFINE_INTEGER(503) +DEFINE_INTEGER(504) +DEFINE_INTEGER(505) +DEFINE_INTEGER(506) +DEFINE_INTEGER(507) +DEFINE_INTEGER(508) +DEFINE_INTEGER(509) +DEFINE_INTEGER(510) +DEFINE_INTEGER(511) +DEFINE_INTEGER(512) +DEFINE_INTEGER(513) +DEFINE_INTEGER(514) +DEFINE_INTEGER(515) +DEFINE_INTEGER(516) +DEFINE_INTEGER(517) +DEFINE_INTEGER(518) +DEFINE_INTEGER(519) +DEFINE_INTEGER(520) +DEFINE_INTEGER(521) +DEFINE_INTEGER(522) +DEFINE_INTEGER(523) +DEFINE_INTEGER(524) +DEFINE_INTEGER(525) +DEFINE_INTEGER(526) +DEFINE_INTEGER(527) +DEFINE_INTEGER(528) +DEFINE_INTEGER(529) +DEFINE_INTEGER(530) +DEFINE_INTEGER(531) +DEFINE_INTEGER(532) +DEFINE_INTEGER(533) +DEFINE_INTEGER(534) +DEFINE_INTEGER(535) +DEFINE_INTEGER(536) +DEFINE_INTEGER(537) +DEFINE_INTEGER(538) +DEFINE_INTEGER(539) +DEFINE_INTEGER(540) +DEFINE_INTEGER(541) +DEFINE_INTEGER(542) +DEFINE_INTEGER(543) +DEFINE_INTEGER(544) +DEFINE_INTEGER(545) +DEFINE_INTEGER(546) +DEFINE_INTEGER(547) +DEFINE_INTEGER(548) +DEFINE_INTEGER(549) +DEFINE_INTEGER(550) +DEFINE_INTEGER(551) +DEFINE_INTEGER(552) +DEFINE_INTEGER(553) +DEFINE_INTEGER(554) +DEFINE_INTEGER(555) +DEFINE_INTEGER(556) +DEFINE_INTEGER(557) +DEFINE_INTEGER(558) +DEFINE_INTEGER(559) +DEFINE_INTEGER(560) +DEFINE_INTEGER(561) +DEFINE_INTEGER(562) +DEFINE_INTEGER(563) +DEFINE_INTEGER(564) +DEFINE_INTEGER(565) +DEFINE_INTEGER(566) +DEFINE_INTEGER(567) +DEFINE_INTEGER(568) +DEFINE_INTEGER(569) +DEFINE_INTEGER(570) +DEFINE_INTEGER(571) +DEFINE_INTEGER(572) +DEFINE_INTEGER(573) +DEFINE_INTEGER(574) +DEFINE_INTEGER(575) +DEFINE_INTEGER(576) +DEFINE_INTEGER(577) +DEFINE_INTEGER(578) +DEFINE_INTEGER(579) +DEFINE_INTEGER(580) +DEFINE_INTEGER(581) +DEFINE_INTEGER(582) +DEFINE_INTEGER(583) +DEFINE_INTEGER(584) +DEFINE_INTEGER(585) +DEFINE_INTEGER(586) +DEFINE_INTEGER(587) +DEFINE_INTEGER(588) +DEFINE_INTEGER(589) +DEFINE_INTEGER(590) +DEFINE_INTEGER(591) +DEFINE_INTEGER(592) +DEFINE_INTEGER(593) +DEFINE_INTEGER(594) +DEFINE_INTEGER(595) +DEFINE_INTEGER(596) +DEFINE_INTEGER(597) +DEFINE_INTEGER(598) +DEFINE_INTEGER(599) +DEFINE_INTEGER(600) +DEFINE_INTEGER(601) +DEFINE_INTEGER(602) +DEFINE_INTEGER(603) +DEFINE_INTEGER(604) +DEFINE_INTEGER(605) +DEFINE_INTEGER(606) +DEFINE_INTEGER(607) +DEFINE_INTEGER(608) +DEFINE_INTEGER(609) +DEFINE_INTEGER(610) +DEFINE_INTEGER(611) +DEFINE_INTEGER(612) +DEFINE_INTEGER(613) +DEFINE_INTEGER(614) +DEFINE_INTEGER(615) +DEFINE_INTEGER(616) +DEFINE_INTEGER(617) +DEFINE_INTEGER(618) +DEFINE_INTEGER(619) +DEFINE_INTEGER(620) +DEFINE_INTEGER(621) +DEFINE_INTEGER(622) +DEFINE_INTEGER(623) +DEFINE_INTEGER(624) +DEFINE_INTEGER(625) +DEFINE_INTEGER(626) +DEFINE_INTEGER(627) +DEFINE_INTEGER(628) +DEFINE_INTEGER(629) +DEFINE_INTEGER(630) +DEFINE_INTEGER(631) +DEFINE_INTEGER(632) +DEFINE_INTEGER(633) +DEFINE_INTEGER(634) +DEFINE_INTEGER(635) +DEFINE_INTEGER(636) +DEFINE_INTEGER(637) +DEFINE_INTEGER(638) +DEFINE_INTEGER(639) +DEFINE_INTEGER(640) +DEFINE_INTEGER(641) +DEFINE_INTEGER(642) +DEFINE_INTEGER(643) +DEFINE_INTEGER(644) +DEFINE_INTEGER(645) +DEFINE_INTEGER(646) +DEFINE_INTEGER(647) +DEFINE_INTEGER(648) +DEFINE_INTEGER(649) +DEFINE_INTEGER(650) +DEFINE_INTEGER(651) +DEFINE_INTEGER(652) +DEFINE_INTEGER(653) +DEFINE_INTEGER(654) +DEFINE_INTEGER(655) +DEFINE_INTEGER(656) +DEFINE_INTEGER(657) +DEFINE_INTEGER(658) +DEFINE_INTEGER(659) +DEFINE_INTEGER(660) +DEFINE_INTEGER(661) +DEFINE_INTEGER(662) +DEFINE_INTEGER(663) +DEFINE_INTEGER(664) +DEFINE_INTEGER(665) +DEFINE_INTEGER(666) +DEFINE_INTEGER(667) +DEFINE_INTEGER(668) +DEFINE_INTEGER(669) +DEFINE_INTEGER(670) +DEFINE_INTEGER(671) +DEFINE_INTEGER(672) +DEFINE_INTEGER(673) +DEFINE_INTEGER(674) +DEFINE_INTEGER(675) +DEFINE_INTEGER(676) +DEFINE_INTEGER(677) +DEFINE_INTEGER(678) +DEFINE_INTEGER(679) +DEFINE_INTEGER(680) +DEFINE_INTEGER(681) +DEFINE_INTEGER(682) +DEFINE_INTEGER(683) +DEFINE_INTEGER(684) +DEFINE_INTEGER(685) +DEFINE_INTEGER(686) +DEFINE_INTEGER(687) +DEFINE_INTEGER(688) +DEFINE_INTEGER(689) +DEFINE_INTEGER(690) +DEFINE_INTEGER(691) +DEFINE_INTEGER(692) +DEFINE_INTEGER(693) +DEFINE_INTEGER(694) +DEFINE_INTEGER(695) +DEFINE_INTEGER(696) +DEFINE_INTEGER(697) +DEFINE_INTEGER(698) +DEFINE_INTEGER(699) +DEFINE_INTEGER(700) +DEFINE_INTEGER(701) +DEFINE_INTEGER(702) +DEFINE_INTEGER(703) +DEFINE_INTEGER(704) +DEFINE_INTEGER(705) +DEFINE_INTEGER(706) +DEFINE_INTEGER(707) +DEFINE_INTEGER(708) +DEFINE_INTEGER(709) +DEFINE_INTEGER(710) +DEFINE_INTEGER(711) +DEFINE_INTEGER(712) +DEFINE_INTEGER(713) +DEFINE_INTEGER(714) +DEFINE_INTEGER(715) +DEFINE_INTEGER(716) +DEFINE_INTEGER(717) +DEFINE_INTEGER(718) +DEFINE_INTEGER(719) +DEFINE_INTEGER(720) +DEFINE_INTEGER(721) +DEFINE_INTEGER(722) +DEFINE_INTEGER(723) +DEFINE_INTEGER(724) +DEFINE_INTEGER(725) +DEFINE_INTEGER(726) +DEFINE_INTEGER(727) +DEFINE_INTEGER(728) +DEFINE_INTEGER(729) +DEFINE_INTEGER(730) +DEFINE_INTEGER(731) +DEFINE_INTEGER(732) +DEFINE_INTEGER(733) +DEFINE_INTEGER(734) +DEFINE_INTEGER(735) +DEFINE_INTEGER(736) +DEFINE_INTEGER(737) +DEFINE_INTEGER(738) +DEFINE_INTEGER(739) +DEFINE_INTEGER(740) +DEFINE_INTEGER(741) +DEFINE_INTEGER(742) +DEFINE_INTEGER(743) +DEFINE_INTEGER(744) +DEFINE_INTEGER(745) +DEFINE_INTEGER(746) +DEFINE_INTEGER(747) +DEFINE_INTEGER(748) +DEFINE_INTEGER(749) +DEFINE_INTEGER(750) +DEFINE_INTEGER(751) +DEFINE_INTEGER(752) +DEFINE_INTEGER(753) +DEFINE_INTEGER(754) +DEFINE_INTEGER(755) +DEFINE_INTEGER(756) +DEFINE_INTEGER(757) +DEFINE_INTEGER(758) +DEFINE_INTEGER(759) +DEFINE_INTEGER(760) +DEFINE_INTEGER(761) +DEFINE_INTEGER(762) +DEFINE_INTEGER(763) +DEFINE_INTEGER(764) +DEFINE_INTEGER(765) +DEFINE_INTEGER(766) +DEFINE_INTEGER(767) +DEFINE_INTEGER(768) +DEFINE_INTEGER(769) +DEFINE_INTEGER(770) +DEFINE_INTEGER(771) +DEFINE_INTEGER(772) +DEFINE_INTEGER(773) +DEFINE_INTEGER(774) +DEFINE_INTEGER(775) +DEFINE_INTEGER(776) +DEFINE_INTEGER(777) +DEFINE_INTEGER(778) +DEFINE_INTEGER(779) +DEFINE_INTEGER(780) +DEFINE_INTEGER(781) +DEFINE_INTEGER(782) +DEFINE_INTEGER(783) +DEFINE_INTEGER(784) +DEFINE_INTEGER(785) +DEFINE_INTEGER(786) +DEFINE_INTEGER(787) +DEFINE_INTEGER(788) +DEFINE_INTEGER(789) +DEFINE_INTEGER(790) +DEFINE_INTEGER(791) +DEFINE_INTEGER(792) +DEFINE_INTEGER(793) +DEFINE_INTEGER(794) +DEFINE_INTEGER(795) +DEFINE_INTEGER(796) +DEFINE_INTEGER(797) +DEFINE_INTEGER(798) +DEFINE_INTEGER(799) +DEFINE_INTEGER(800) +DEFINE_INTEGER(801) +DEFINE_INTEGER(802) +DEFINE_INTEGER(803) +DEFINE_INTEGER(804) +DEFINE_INTEGER(805) +DEFINE_INTEGER(806) +DEFINE_INTEGER(807) +DEFINE_INTEGER(808) +DEFINE_INTEGER(809) +DEFINE_INTEGER(810) +DEFINE_INTEGER(811) +DEFINE_INTEGER(812) +DEFINE_INTEGER(813) +DEFINE_INTEGER(814) +DEFINE_INTEGER(815) +DEFINE_INTEGER(816) +DEFINE_INTEGER(817) commit c9c3fe883271868d3b2dd287d295cf6a8f8ffc05 Author: Justus Winter Date: Thu Mar 23 12:50:27 2017 +0100 gpgscm: Make global data constant when possible. * tests/gpgscm/scheme-private.h (struct scheme): Make 'vptr' const. * tests/gpgscm/scheme.c (num_zero): Statically initialize and turn into constant. (num_one): Likewise. (charnames): Change type so that it can be stored in rodata. (is_ascii_name): Adapt slightly. (assign_proc): Make argument const char *. (op_code_info): Make some fields const char *. (tests): Make const. (dispatch_table): Make const. At least it can be made read-only after relocation. (Eval_Cycle): Adapt slightly. (vtbl): Make const. Signed-off-by: Justus Winter diff --git a/tests/gpgscm/scheme-private.h b/tests/gpgscm/scheme-private.h index 093442f..69b78f2 100644 --- a/tests/gpgscm/scheme-private.h +++ b/tests/gpgscm/scheme-private.h @@ -200,7 +200,7 @@ unsigned int flags; void *ext_data; /* For the benefit of foreign functions */ long gensym_cnt; -struct scheme_interface *vptr; +const struct scheme_interface *vptr; }; /* operator code */ diff --git a/tests/gpgscm/scheme.c b/tests/gpgscm/scheme.c index 08b53a1..c37b568 100644 --- a/tests/gpgscm/scheme.c +++ b/tests/gpgscm/scheme.c @@ -205,8 +205,8 @@ static INLINE int num_is_integer(pointer p) { return ((p)->_object._number.is_fixnum); } -static num num_zero; -static num num_one; +static const struct num num_zero = { 1, {0} }; +static const struct num num_one = { 1, {1} }; /* macros for cell operations */ #define typeflag(p) ((p)->_flag) @@ -339,7 +339,7 @@ static INLINE int Cislower(int c) { return isascii(c) && islower(c); } #endif #if USE_ASCII_NAMES -static const char *charnames[32]={ +static const char charnames[32][3]={ "nul", "soh", "stx", @@ -377,12 +377,12 @@ static const char *charnames[32]={ static int is_ascii_name(const char *name, int *pc) { int i; for(i=0; i<32; i++) { - if(stricmp(name,charnames[i])==0) { + if (strncasecmp(name, charnames[i], 3) == 0) { *pc=i; return 1; } } - if(stricmp(name,"del")==0) { + if (strcasecmp(name, "del") == 0) { *pc=127; return 1; } @@ -447,7 +447,7 @@ static pointer opexe_6(scheme *sc, enum scheme_opcodes op); static void Eval_Cycle(scheme *sc, enum scheme_opcodes op); static void assign_syntax(scheme *sc, char *name); static int syntaxnum(pointer p); -static void assign_proc(scheme *sc, enum scheme_opcodes, char *name); +static void assign_proc(scheme *sc, enum scheme_opcodes, const char *name); #define num_ivalue(n) (n.is_fixnum?(n).value.ivalue:(long)(n).value.rvalue) #define num_rvalue(n) (!n.is_fixnum?(n).value.rvalue:(double)(n).value.ivalue) @@ -5308,7 +5308,7 @@ static int is_nonneg(pointer p) { } /* Correspond carefully with following defines! */ -static struct { +static const struct { test_predicate fct; const char *kind; } tests[]={ @@ -5347,17 +5347,18 @@ static struct { typedef struct { dispatch_func func; - char *name; + const char *name; int min_arity; int max_arity; - char *arg_tests_encoding; + const char *arg_tests_encoding; } op_code_info; #define INF_ARG 0xffff -static op_code_info dispatch_table[]= { +static const op_code_info dispatch_table[]= { #define _OP_DEF(A,B,C,D,E,OP) {A,B,C,D,E}, #include "opdefines.h" +#undef _OP_DEF { 0 } }; @@ -5374,7 +5375,7 @@ static const char *procname(pointer x) { static void Eval_Cycle(scheme *sc, enum scheme_opcodes op) { sc->op = op; for (;;) { - op_code_info *pcd=dispatch_table+sc->op; + const op_code_info *pcd=dispatch_table+sc->op; if (pcd->name!=0) { /* if built-in function, check arguments */ char msg[STRBUFFSIZE]; int ok=1; @@ -5457,7 +5458,7 @@ static void assign_syntax(scheme *sc, char *name) { typeflag(x) |= T_SYNTAX; } -static void assign_proc(scheme *sc, enum scheme_opcodes op, char *name) { +static void assign_proc(scheme *sc, enum scheme_opcodes op, const char *name) { pointer x, y; x = mk_symbol(sc, name); @@ -5519,7 +5520,7 @@ INTERFACE static pointer s_immutable_cons(scheme *sc, pointer a, pointer b) { return immutable_cons(sc,a,b); } -static struct scheme_interface vtbl ={ +static const struct scheme_interface vtbl = { scheme_define, s_cons, s_immutable_cons, @@ -5616,11 +5617,6 @@ int scheme_init_custom_alloc(scheme *sc, func_alloc malloc, func_dealloc free) { int i, n=sizeof(dispatch_table)/sizeof(dispatch_table[0]); pointer x; - num_zero.is_fixnum=1; - num_zero.value.ivalue=0; - num_one.is_fixnum=1; - num_one.value.ivalue=1; - #if USE_INTERFACE sc->vptr=&vtbl; #endif commit 56638c28adc1bbe9fc052b92549a50935c0fe99c Author: Justus Winter Date: Wed Mar 22 16:22:57 2017 +0100 gpgscm: Remove arbitrary limit on number of cell segments. * tests/gpgscm/scheme-private.h (struct scheme): Remove fixed-size arrays for cell segments, replace them with a pointer to the new 'struct cell_segment' instead. * tests/gpgscm/scheme.c (struct cell_segment): New definition. (_alloc_cellseg): Allocate the header within the segment, return a pointer to the header. (_dealloc_cellseg): New function. (alloc_cellseg): Insert the segments into a list. (_get_cell): Allocate a new segment if less than a quarter of CELL_SIGSIZE is recovered during garbage collection. (initialize_small_integers): Adapt callsite. (gc): Walk the list of segments. (scheme_init_custom_alloc): Remove initialization of removed field. (scheme_deinit): Adapt deallocation. -- Previously the number of cells that could be allocated was a compile-time limit. Remove this limit. Signed-off-by: Justus Winter diff --git a/tests/gpgscm/scheme-private.h b/tests/gpgscm/scheme-private.h index fe50135..093442f 100644 --- a/tests/gpgscm/scheme-private.h +++ b/tests/gpgscm/scheme-private.h @@ -108,12 +108,7 @@ int tracing; #ifndef CELL_SEGSIZE #define CELL_SEGSIZE 5000 /* # of cells in one segment */ #endif -#ifndef CELL_NSEGMENT -#define CELL_NSEGMENT 10 /* # of segments for cells */ -#endif -void *alloc_seg[CELL_NSEGMENT]; -pointer cell_seg[CELL_NSEGMENT]; -int last_cell_seg; +struct cell_segment *cell_segments; /* We use 4 registers. */ pointer args; /* register for arguments of function */ @@ -159,8 +154,7 @@ pointer COMPILE_HOOK; /* *compile-hook* */ #if USE_SMALL_INTEGERS /* A fixed allocation of small integers. */ -void *integer_alloc; -pointer integer_cells; +struct cell_segment *integer_segment; #endif pointer free_cell; /* pointer to top of free cells */ diff --git a/tests/gpgscm/scheme.c b/tests/gpgscm/scheme.c index aa0cf69..08b53a1 100644 --- a/tests/gpgscm/scheme.c +++ b/tests/gpgscm/scheme.c @@ -725,9 +725,26 @@ get_tag(scheme *sc, pointer v) +/* Low-level allocator. + * + * Memory is allocated in segments. Every segment holds a fixed + * number of cells. Segments are linked into a list, sorted in + * reverse address order (i.e. those with a higher address first). + * This is used in the garbage collector to build the freelist in + * address order. + */ + +struct cell_segment +{ + struct cell_segment *next; + void *alloc; + pointer cells; + size_t cells_len; +}; + /* Allocate a new cell segment but do not make it available yet. */ static int -_alloc_cellseg(scheme *sc, size_t len, void **alloc, pointer *cells) +_alloc_cellseg(scheme *sc, size_t len, struct cell_segment **segment) { int adj = ADJ; void *cp; @@ -735,46 +752,64 @@ _alloc_cellseg(scheme *sc, size_t len, void **alloc, pointer *cells) if (adj < sizeof(struct cell)) adj = sizeof(struct cell); - cp = sc->malloc(len * sizeof(struct cell) + adj); + /* The segment header is conveniently allocated with the cells. */ + cp = sc->malloc(sizeof **segment + len * sizeof(struct cell) + adj); if (cp == NULL) return 1; - *alloc = cp; + *segment = cp; + (*segment)->next = NULL; + (*segment)->alloc = cp; + cp = (void *) ((uintptr_t) cp + sizeof **segment); /* adjust in TYPE_BITS-bit boundary */ if (((uintptr_t) cp) % adj != 0) cp = (void *) (adj * ((uintptr_t) cp / adj + 1)); - *cells = cp; + (*segment)->cells = cp; + (*segment)->cells_len = len; return 0; } +/* Deallocate a cell segment. Returns the next cell segment. + * Convenient for deallocation in a loop. */ +static struct cell_segment * +_dealloc_cellseg(scheme *sc, struct cell_segment *segment) +{ + + struct cell_segment *next; + + if (segment == NULL) + return NULL; + + next = segment->next; + sc->free(segment->alloc); + return next; +} + /* allocate new cell segment */ static int alloc_cellseg(scheme *sc, int n) { - pointer newp; pointer last; pointer p; - long i; int k; for (k = 0; k < n; k++) { - if (sc->last_cell_seg >= CELL_NSEGMENT - 1) - return k; - i = ++sc->last_cell_seg; - if (_alloc_cellseg(sc, CELL_SEGSIZE, &sc->alloc_seg[i], &newp)) { - sc->last_cell_seg--; + struct cell_segment *new, **s; + if (_alloc_cellseg(sc, CELL_SEGSIZE, &new)) { return k; } - /* insert new segment in address order */ - sc->cell_seg[i] = newp; - while (i > 0 && sc->cell_seg[i - 1] > sc->cell_seg[i]) { - p = sc->cell_seg[i]; - sc->cell_seg[i] = sc->cell_seg[i - 1]; - sc->cell_seg[--i] = p; - } - sc->fcells += CELL_SEGSIZE; - last = newp + CELL_SEGSIZE - 1; - for (p = newp; p <= last; p++) { + /* insert new segment in reverse address order */ + for (s = &sc->cell_segments; + *s && (uintptr_t) (*s)->alloc > (uintptr_t) new->alloc; + s = &(*s)->next) { + /* walk */ + } + new->next = *s; + *s = new; + + sc->fcells += new->cells_len; + last = new->cells + new->cells_len - 1; + for (p = new->cells; p <= last; p++) { typeflag(p) = 0; cdr(p) = p + 1; car(p) = sc->NIL; @@ -782,13 +817,13 @@ static int alloc_cellseg(scheme *sc, int n) { /* insert new cells in address order on free list */ if (sc->free_cell == sc->NIL || p < sc->free_cell) { cdr(last) = sc->free_cell; - sc->free_cell = newp; + sc->free_cell = new->cells; } else { p = sc->free_cell; - while (cdr(p) != sc->NIL && newp > cdr(p)) + while (cdr(p) != sc->NIL && (uintptr_t) new->cells > (uintptr_t) cdr(p)) p = cdr(p); cdr(last) = cdr(p); - cdr(p) = newp; + cdr(p) = new->cells; } } return n; @@ -922,7 +957,7 @@ static pointer _get_cell(scheme *sc, pointer a, pointer b) { assert (gc_enabled (sc)); if (sc->free_cell == sc->NIL) { - const int min_to_be_recovered = sc->last_cell_seg*8; + const int min_to_be_recovered = CELL_SEGSIZE / 4; gc(sc,a, b); if (sc->fcells < min_to_be_recovered || sc->free_cell == sc->NIL) { @@ -1283,12 +1318,11 @@ static int initialize_small_integers(scheme *sc) { int i; - if (_alloc_cellseg(sc, MAX_SMALL_INTEGER, &sc->integer_alloc, - &sc->integer_cells)) + if (_alloc_cellseg(sc, MAX_SMALL_INTEGER, &sc->integer_segment)) return 1; for (i = 0; i < MAX_SMALL_INTEGER; i++) { - pointer x = &sc->integer_cells[i]; + pointer x = &sc->integer_segment->cells[i]; typeflag(x) = T_NUMBER | T_ATOM | MARK; ivalue_unchecked(x) = i; set_num_integer(x); @@ -1302,7 +1336,7 @@ mk_small_integer(scheme *sc, long n) { #define mk_small_integer_allocates 0 assert(0 <= n && n < MAX_SMALL_INTEGER); - return &sc->integer_cells[n]; + return &sc->integer_segment->cells[n]; } #else @@ -1666,6 +1700,7 @@ E6: /* up. Undo the link switching from steps E4 and E5. */ /* garbage collection. parameter a, b is marked. */ static void gc(scheme *sc, pointer a, pointer b) { pointer p; + struct cell_segment *s; int i; assert (gc_enabled (sc)); @@ -1712,9 +1747,9 @@ static void gc(scheme *sc, pointer a, pointer b) { (which are also kept sorted by address) downwards to build the free-list in sorted order. */ - for (i = sc->last_cell_seg; i >= 0; i--) { - p = sc->cell_seg[i] + CELL_SEGSIZE; - while (--p >= sc->cell_seg[i]) { + for (s = sc->cell_segments; s; s = s->next) { + p = s->cells + s->cells_len; + while (--p >= s->cells) { if ((typeflag(p) & 1) == 0) /* All types have the LSB set. This is not a typeflag. */ continue; @@ -5592,7 +5627,6 @@ int scheme_init_custom_alloc(scheme *sc, func_alloc malloc, func_dealloc free) { sc->gensym_cnt=0; sc->malloc=malloc; sc->free=free; - sc->last_cell_seg = -1; sc->sink = &sc->_sink; sc->NIL = &sc->_NIL; sc->T = &sc->_HASHT; @@ -5626,6 +5660,7 @@ int scheme_init_custom_alloc(scheme *sc, func_alloc malloc, func_dealloc free) { } sc->strbuff_size = STRBUFFSIZE; + sc->cell_segments = NULL; if (alloc_cellseg(sc,FIRST_CELLSEGS) != FIRST_CELLSEGS) { sc->no_memory=1; return 0; @@ -5726,6 +5761,7 @@ void scheme_set_external_data(scheme *sc, void *p) { } void scheme_deinit(scheme *sc) { + struct cell_segment *s; int i; sc->oblist=sc->NIL; @@ -5758,11 +5794,11 @@ void scheme_deinit(scheme *sc) { gc(sc,sc->NIL,sc->NIL); #if USE_SMALL_INTEGERS - sc->free(sc->integer_alloc); + _dealloc_cellseg(sc, sc->integer_segment); #endif - for(i=0; i<=sc->last_cell_seg; i++) { - sc->free(sc->alloc_seg[i]); + for (s = sc->cell_segments; s; s = _dealloc_cellseg(sc, s)) { + /* nop */ } sc->free(sc->strbuff); } ----------------------------------------------------------------------- Summary of changes: tests/gpgscm/Makefile.am | 3 +- tests/gpgscm/scheme-private.h | 17 +- tests/gpgscm/scheme.c | 173 +++++---- tests/gpgscm/small-integers.h | 847 ++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 945 insertions(+), 95 deletions(-) create mode 100644 tests/gpgscm/small-integers.h hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 10 05:29:47 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Mon, 10 Apr 2017 05:29:47 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-23-g34199ef Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 34199ef677bb40eadf0da696a111f7036bc3187e (commit) from 8640fa880d7050917f4729f2c0cb506e165ee446 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 34199ef677bb40eadf0da696a111f7036bc3187e Author: NIIBE Yutaka Date: Mon Apr 10 12:25:06 2017 +0900 scd: Remove "special transport" support. * scd/ccid-driver.c (transports, my_sleep, prepare_special_transport) (writen): Remove. (ccid_dev_scan, ccid_dev_scan_finish, ccid_get_BAI): Only for USB. (ccid_open_reader, do_close_reader, bulk_out, bulk_in, abort_cmd) (ccid_poll, ccid_transceive): Likewise. Signed-off-by: NIIBE Yutaka diff --git a/scd/ccid-driver.c b/scd/ccid-driver.c index d135ca6..c10787b 100644 --- a/scd/ccid-driver.c +++ b/scd/ccid-driver.c @@ -218,31 +218,11 @@ enum { #define CCID_ERROR_CODE(buf) (((unsigned char *)(buf))[8]) -/* A list and a table with special transport descriptions. */ -enum { - TRANSPORT_USB = 0, /* Standard USB transport. */ - TRANSPORT_CM4040 = 1 /* As used by the Cardman 4040. */ -}; - -static struct -{ - char *name; /* Device name. */ - int type; - -} transports[] = { - { "/dev/cmx0", TRANSPORT_CM4040 }, - { "/dev/cmx1", TRANSPORT_CM4040 }, - { NULL }, -}; - - /* Store information on the driver's state. A pointer to such a structure is used as handle for most functions. */ struct ccid_driver_s { libusb_device_handle *idev; - int dev_fd; /* -1 for USB transport or file descriptor of the - transport device. */ unsigned int bai; unsigned short id_vendor; unsigned short id_product; @@ -330,20 +310,6 @@ set_msg_len (unsigned char *msg, unsigned int length) static void -my_sleep (int seconds) -{ -#ifdef USE_NPTH - npth_sleep (seconds); -#else -# ifdef HAVE_W32_SYSTEM - Sleep (seconds*1000); -# else - sleep (seconds); -# endif -#endif -} - -static void print_progress (ccid_driver_t handle) { time_t ct = time (NULL); @@ -717,31 +683,6 @@ print_r2p_unknown (const unsigned char *msg, size_t msglen) } -/* Given a handle used for special transport prepare it for use. In - particular setup all information in way that resembles what - parse_cccid_descriptor does. */ -static void -prepare_special_transport (ccid_driver_t handle) -{ - assert (!handle->id_vendor); - - handle->nonnull_nad = 0; - handle->auto_ifsd = 0; - handle->max_ifsd = 32; - handle->max_ccid_msglen = CCID_MAX_BUF; - handle->has_pinpad = 0; - handle->apdu_level = 0; - switch (handle->id_product) - { - case TRANSPORT_CM4040: - DEBUGOUT ("setting up transport for CardMan 4040\n"); - handle->apdu_level = 1; - break; - - default: assert (!"transport not defined"); - } -} - /* Parse a CCID descriptor, optionally print all available features and test whether this reader is usable by this driver. Returns 0 if it is usable. @@ -1328,7 +1269,6 @@ ccid_vendor_specific_init (ccid_driver_t handle) struct ccid_dev_table { int n; /* Index to ccid_usb_dev_list */ - int transport; int interface_number; int setting_number; unsigned char *ifcdesc_extra; @@ -1407,7 +1347,6 @@ ccid_dev_scan (int *idx_max_p, struct ccid_dev_table **t_p) } memcpy (ifcdesc_extra, ifcdesc->extra, ifcdesc->extra_length); - ccid_dev_table[idx].transport = TRANSPORT_USB; ccid_dev_table[idx].n = i; ccid_dev_table[idx].interface_number = ifc_no; ccid_dev_table[idx].setting_number = set_no; @@ -1430,30 +1369,6 @@ ccid_dev_scan (int *idx_max_p, struct ccid_dev_table **t_p) libusb_free_config_descriptor (config); } - /* Now check whether there are any devices with special transport types. */ - for (i=0; transports[i].name; i++) - { - if (access (transports[i].name, (R_OK|W_OK)) == 0) - { - /* Found a device. */ - DEBUGOUT_1 ("Found CCID reader %d\n", idx); - - ccid_dev_table[idx].transport = TRANSPORT_CM4040; - ccid_dev_table[idx].n = i; - ccid_dev_table[idx].interface_number = 0; - ccid_dev_table[idx].setting_number = 0; - ccid_dev_table[idx].ifcdesc_extra = NULL; - ccid_dev_table[idx].ifcdesc_extra_len = 0; - ccid_dev_table[idx].ep_bulk_out = 0; - ccid_dev_table[idx].ep_bulk_in = 0; - ccid_dev_table[idx].ep_intr = 0; - - idx++; - if (idx >= MAX_DEVICE) - goto scan_finish; - } - } - scan_finish: if (err) @@ -1463,7 +1378,6 @@ ccid_dev_scan (int *idx_max_p, struct ccid_dev_table **t_p) for (i = 0; i < idx; i++) { free (ccid_dev_table[idx].ifcdesc_extra); - ccid_dev_table[idx].transport = 0; ccid_dev_table[idx].n = 0; ccid_dev_table[idx].interface_number = 0; ccid_dev_table[idx].setting_number = 0; @@ -1496,7 +1410,6 @@ ccid_dev_scan_finish (struct ccid_dev_table *tbl, int max) for (i = 0; i < max; i++) { free (tbl[i].ifcdesc_extra); - tbl[i].transport = 0; tbl[i].n = 0; tbl[i].interface_number = 0; tbl[i].setting_number = 0; @@ -1516,24 +1429,15 @@ ccid_get_BAI (int idx, struct ccid_dev_table *tbl) int n; int bus, addr, intf; unsigned int bai; + libusb_device *dev; - if (tbl[idx].transport == TRANSPORT_USB) - { - libusb_device *dev; - - n = tbl[idx].n; - dev = ccid_usb_dev_list[n]; + n = tbl[idx].n; + dev = ccid_usb_dev_list[n]; - bus = libusb_get_bus_number (dev); - addr = libusb_get_device_address (dev); - intf = tbl[idx].interface_number; - bai = (bus << 16) | (addr << 8) | intf; - } - else - { - n = tbl[idx].n; - bai = 0xFFFF0000 | n; - } + bus = libusb_get_bus_number (dev); + addr = libusb_get_device_address (dev); + intf = tbl[idx].interface_number; + bai = (bus << 16) | (addr << 8) | intf; return bai; } @@ -1710,7 +1614,6 @@ ccid_open_usb_reader (const char *spec_reader_name, (*handle)->id_vendor = desc.idVendor; (*handle)->id_product = desc.idProduct; (*handle)->idev = idev; - (*handle)->dev_fd = -1; (*handle)->bai = bai; (*handle)->ifc_no = ifc_no; (*handle)->ep_bulk_out = ccid_table[idx].ep_bulk_out; @@ -1779,10 +1682,6 @@ ccid_open_reader (const char *spec_reader_name, int idx, struct ccid_dev_table *ccid_table, ccid_driver_t *handle, char **rdrname_p) { - int n; - int fd; - char *rid; - *handle = calloc (1, sizeof **handle); if (!*handle) { @@ -1790,58 +1689,8 @@ ccid_open_reader (const char *spec_reader_name, int idx, return CCID_DRIVER_ERR_OUT_OF_CORE; } - if (ccid_table[idx].transport == TRANSPORT_USB) - return ccid_open_usb_reader (spec_reader_name, idx, ccid_table, - handle, rdrname_p); - - /* Special transport support. */ - - n = ccid_table[idx].n; - fd = open (transports[n].name, O_RDWR); - if (fd < 0) - { - DEBUGOUT_2 ("failed to open '%s': %s\n", - transports[n].name, strerror (errno)); - free (*handle); - *handle = NULL; - return -1; - } - - rid = malloc (strlen (transports[n].name) + 30 + 10); - if (!rid) - { - close (fd); - free (*handle); - *handle = NULL; - return -1; /* Error. */ - } - - sprintf (rid, "0000:%04X:%s:0", transports[n].type, transports[n].name); - - /* Check to see if reader name matches the spec. */ - if (spec_reader_name - && strncmp (rid, spec_reader_name, strlen (spec_reader_name))) - { - DEBUGOUT ("device not matched\n"); - free (rid); - close (fd); - free (*handle); - *handle = NULL; - return -1; - } - - (*handle)->id_vendor = 0; - (*handle)->id_product = transports[n].type; - (*handle)->idev = NULL; - (*handle)->dev_fd = fd; - (*handle)->bai = 0xFFFF0000 | n; - prepare_special_transport (*handle); - if (rdrname_p) - *rdrname_p = rid; - else - free (rid); - - return 0; + return ccid_open_usb_reader (spec_reader_name, idx, ccid_table, + handle, rdrname_p); } @@ -1898,41 +1747,34 @@ do_close_reader (ccid_driver_t handle) bulk_in (handle, msg, sizeof msg, &msglen, RDR_to_PC_SlotStatus, seqno, 2000, 0); } - if (handle->idev) + + if (handle->transfer) { - if (handle->transfer) + if (!handle->powered_off) { - if (!handle->powered_off) - { - DEBUGOUT ("libusb_cancel_transfer\n"); + DEBUGOUT ("libusb_cancel_transfer\n"); - rc = libusb_cancel_transfer (handle->transfer); - if (rc != LIBUSB_ERROR_NOT_FOUND) - while (!handle->powered_off) - { - DEBUGOUT ("libusb_handle_events_completed\n"); + rc = libusb_cancel_transfer (handle->transfer); + if (rc != LIBUSB_ERROR_NOT_FOUND) + while (!handle->powered_off) + { + DEBUGOUT ("libusb_handle_events_completed\n"); #ifdef USE_NPTH - npth_unprotect (); + npth_unprotect (); #endif - libusb_handle_events_completed (NULL, &handle->powered_off); + libusb_handle_events_completed (NULL, &handle->powered_off); #ifdef USE_NPTH - npth_protect (); + npth_protect (); #endif - } - } - - libusb_free_transfer (handle->transfer); + } } - libusb_release_interface (handle->idev, handle->ifc_no); - --ccid_usb_thread_is_alive; - libusb_close (handle->idev); - handle->idev = NULL; - } - if (handle->dev_fd != -1) - { - close (handle->dev_fd); - handle->dev_fd = -1; + + libusb_free_transfer (handle->transfer); } + libusb_release_interface (handle->idev, handle->ifc_no); + --ccid_usb_thread_is_alive; + libusb_close (handle->idev); + handle->idev = NULL; } @@ -1954,7 +1796,7 @@ ccid_set_progress_cb (ccid_driver_t handle, int ccid_close_reader (ccid_driver_t handle) { - if (!handle || (!handle->idev && handle->dev_fd == -1)) + if (!handle) return 0; do_close_reader (handle); @@ -1972,31 +1814,6 @@ ccid_check_card_presence (ccid_driver_t handle) } -/* Write NBYTES of BUF to file descriptor FD. */ -static int -writen (int fd, const void *buf, size_t nbytes) -{ - size_t nleft = nbytes; - int nwritten; - - while (nleft > 0) - { - nwritten = write (fd, buf, nleft); - if (nwritten < 0) - { - if (errno == EINTR) - nwritten = 0; - else - return -1; - } - nleft -= nwritten; - buf = (const char*)buf + nwritten; - } - - return 0; -} - - /* Write a MSG of length MSGLEN to the designated bulk out endpoint. Returns 0 on success. */ static int @@ -2004,6 +1821,7 @@ bulk_out (ccid_driver_t handle, unsigned char *msg, size_t msglen, int no_debug) { int rc; + int transferred; /* No need to continue and clutter the log with USB write error messages after we got the first ENODEV. */ @@ -2062,42 +1880,29 @@ bulk_out (ccid_driver_t handle, unsigned char *msg, size_t msglen, } } - if (handle->idev) - { - int transferred; - #ifdef USE_NPTH - npth_unprotect (); + npth_unprotect (); #endif - rc = libusb_bulk_transfer (handle->idev, handle->ep_bulk_out, - (char*)msg, msglen, &transferred, - 5000 /* ms timeout */); + rc = libusb_bulk_transfer (handle->idev, handle->ep_bulk_out, + (char*)msg, msglen, &transferred, + 5000 /* ms timeout */); #ifdef USE_NPTH - npth_protect (); + npth_protect (); #endif - if (rc == 0 && transferred == msglen) - return 0; + if (rc == 0 && transferred == msglen) + return 0; - if (rc) + if (rc) + { + DEBUGOUT_1 ("usb_bulk_write error: %s\n", libusb_error_name (rc)); + if (rc == LIBUSB_ERROR_NO_DEVICE) { - DEBUGOUT_1 ("usb_bulk_write error: %s\n", libusb_error_name (rc)); - if (rc == LIBUSB_ERROR_NO_DEVICE) - { - handle->enodev_seen = 1; - return CCID_DRIVER_ERR_NO_READER; - } + handle->enodev_seen = 1; + return CCID_DRIVER_ERR_NO_READER; } } - else - { - rc = writen (handle->dev_fd, msg, msglen); - if (!rc) - return 0; - DEBUGOUT_2 ("writen to %d failed: %s\n", - handle->dev_fd, strerror (errno)); - } - return CCID_DRIVER_ERR_CARD_IO_ERROR; + return 0; } @@ -2115,55 +1920,34 @@ bulk_in (ccid_driver_t handle, unsigned char *buffer, size_t length, { int rc; int msglen; - int eagain_retries = 0; /* Fixme: The next line for the current Valgrind without support for USB IOCTLs. */ memset (buffer, 0, length); retry: - if (handle->idev) - { + #ifdef USE_NPTH - npth_unprotect (); + npth_unprotect (); #endif - rc = libusb_bulk_transfer (handle->idev, handle->ep_bulk_in, - (char*)buffer, length, &msglen, timeout); + rc = libusb_bulk_transfer (handle->idev, handle->ep_bulk_in, + (char*)buffer, length, &msglen, timeout); #ifdef USE_NPTH - npth_protect (); + npth_protect (); #endif - if (rc) - { - DEBUGOUT_1 ("usb_bulk_read error: %s\n", libusb_error_name (rc)); - if (rc == LIBUSB_ERROR_NO_DEVICE) - { - handle->enodev_seen = 1; - return CCID_DRIVER_ERR_NO_READER; - } - - return CCID_DRIVER_ERR_CARD_IO_ERROR; - } - if (msglen < 0) - return CCID_DRIVER_ERR_INV_VALUE; /* Faulty libusb. */ - *nread = msglen; - } - else + if (rc) { - rc = read (handle->dev_fd, buffer, length); - if (rc < 0) + DEBUGOUT_1 ("usb_bulk_read error: %s\n", libusb_error_name (rc)); + if (rc == LIBUSB_ERROR_NO_DEVICE) { - rc = errno; - DEBUGOUT_2 ("read from %d failed: %s\n", - handle->dev_fd, strerror (rc)); - if (rc == EAGAIN && eagain_retries++ < 5) - { - my_sleep (1); - goto retry; - } - return CCID_DRIVER_ERR_CARD_IO_ERROR; + handle->enodev_seen = 1; + return CCID_DRIVER_ERR_NO_READER; } - *nread = msglen = rc; + + return CCID_DRIVER_ERR_CARD_IO_ERROR; } - eagain_retries = 0; + if (msglen < 0) + return CCID_DRIVER_ERR_INV_VALUE; /* Faulty libusb. */ + *nread = msglen; if (msglen < 10) { @@ -2254,12 +2038,6 @@ abort_cmd (ccid_driver_t handle, int seqno) unsigned char msg[100]; int msglen; - if (!handle->idev) - { - /* I don't know how to send an abort to non-USB devices. */ - return CCID_DRIVER_ERR_NOT_SUPPORTED; - } - seqno &= 0xff; DEBUGOUT_1 ("sending abort sequence for seqno %d\n", seqno); /* Send the abort command to the control pipe. Note that we don't @@ -2445,15 +2223,10 @@ ccid_poll (ccid_driver_t handle) int msglen; int i, j; - if (handle->idev) - { - rc = libusb_interrupt_transfer (handle->idev, handle->ep_intr, - (char*)msg, sizeof msg, &msglen, - 0 /* ms timeout */ ); - if (rc == LIBUSB_ERROR_TIMEOUT) - return 0; - } - else + rc = libusb_interrupt_transfer (handle->idev, handle->ep_intr, + (char*)msg, sizeof msg, &msglen, + 0 /* ms timeout */ ); + if (rc == LIBUSB_ERROR_TIMEOUT) return 0; if (rc) @@ -3187,8 +2960,7 @@ ccid_transceive (ccid_driver_t handle, ccid_transceive_secure which leads to a loss of sync on the CCID level. If Cherry wants to make their keyboard work again, they should hand over some docs. */ - if ((handle->id_vendor == VENDOR_OMNIKEY - || (!handle->idev && handle->id_product == TRANSPORT_CM4040)) + if ((handle->id_vendor == VENDOR_OMNIKEY) && handle->apdu_level < 2 && is_exlen_apdu (apdu_buf, apdu_buflen)) via_escape = 1; ----------------------------------------------------------------------- Summary of changes: scd/ccid-driver.c | 356 ++++++++++-------------------------------------------- 1 file changed, 64 insertions(+), 292 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 10 06:16:16 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Mon, 10 Apr 2017 06:16:16 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-24-g3c1ad96 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 3c1ad96f1ce838daf2d861b33e6611f6d3043d25 (commit) from 34199ef677bb40eadf0da696a111f7036bc3187e (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 3c1ad96f1ce838daf2d861b33e6611f6d3043d25 Author: NIIBE Yutaka Date: Mon Apr 10 12:59:29 2017 +0900 scd: Relax a condition for p15 driver. * scd/app-p15.c (read_ef_aodf): Remove possibly redundant condition. Signed-off-by: NIIBE Yutaka diff --git a/scd/app-p15.c b/scd/app-p15.c index 68e8c4f..f0bcdf4 100644 --- a/scd/app-p15.c +++ b/scd/app-p15.c @@ -1823,7 +1823,7 @@ read_ef_aodf (app_t app, unsigned short fid, aodf_object_t *result) if (!err && (objlen > nn || class != CLASS_UNIVERSAL || tag != TAG_ENUMERATED)) err = gpg_error (GPG_ERR_INV_OBJ); - if (!err && (objlen > sizeof (pin_type_t) || objlen > sizeof (ul))) + if (!err && || objlen > sizeof (ul)) err = gpg_error (GPG_ERR_UNSUPPORTED_ENCODING); if (err) goto parse_error; ----------------------------------------------------------------------- Summary of changes: scd/app-p15.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 10 06:20:00 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Mon, 10 Apr 2017 06:20:00 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-25-g7501f2e Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 7501f2e9c4e6fd94a191b381d52ec2fe1d103e29 (commit) from 3c1ad96f1ce838daf2d861b33e6611f6d3043d25 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 7501f2e9c4e6fd94a191b381d52ec2fe1d103e29 Author: NIIBE Yutaka Date: Mon Apr 10 13:18:30 2017 +0900 scd: Relax a condition for p15 driver. * scd/app-p15.c (read_ef_aodf): Fix. -- Fixes-commit: 3c1ad96f1ce838daf2d861b33e6611f6d3043d25 Signed-off-by: NIIBE Yutaka diff --git a/scd/app-p15.c b/scd/app-p15.c index f0bcdf4..0bb5f9e 100644 --- a/scd/app-p15.c +++ b/scd/app-p15.c @@ -1823,7 +1823,7 @@ read_ef_aodf (app_t app, unsigned short fid, aodf_object_t *result) if (!err && (objlen > nn || class != CLASS_UNIVERSAL || tag != TAG_ENUMERATED)) err = gpg_error (GPG_ERR_INV_OBJ); - if (!err && || objlen > sizeof (ul)) + if (!err && objlen > sizeof (ul)) err = gpg_error (GPG_ERR_UNSUPPORTED_ENCODING); if (err) goto parse_error; ----------------------------------------------------------------------- Summary of changes: scd/app-p15.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 10 08:09:31 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Mon, 10 Apr 2017 08:09:31 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-26-g170660e Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 170660ed11b56145dea4865e751ae5aff1681fe2 (commit) from 7501f2e9c4e6fd94a191b381d52ec2fe1d103e29 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 170660ed11b56145dea4865e751ae5aff1681fe2 Author: NIIBE Yutaka Date: Mon Apr 10 15:04:57 2017 +0900 agent: Use "ll" length specifier when time_t is larger. * agent/command.c (cmd_keytocard): Use KEYTOCARD_TIMESTAMP_FORMAT. -- On a big-endian 32-bit platform which uses 64-bit time_t, it might go wrong. Signed-off-by: NIIBE Yutaka diff --git a/agent/command.c b/agent/command.c index 1f8f7c2..ab6d7eb 100644 --- a/agent/command.c +++ b/agent/command.c @@ -2477,6 +2477,12 @@ cmd_delete_key (assuan_context_t ctx, char *line) +#if SIZEOF_TIME_T > SIZEOF_UNSIGNED_LONG +#define KEYTOCARD_TIMESTAMP_FORMAT "(10:created-at10:%010llu))" +#else +#define KEYTOCARD_TIMESTAMP_FORMAT "(10:created-at10:%010lu))" +#endif + static const char hlp_keytocard[] = "KEYTOCARD [--force] \n" "\n"; @@ -2580,7 +2586,7 @@ cmd_keytocard (assuan_context_t ctx, char *line) gcry_sexp_release (s_skey); keydatalen--; /* Decrement for last '\0'. */ /* Add timestamp "created-at" in the private key */ - snprintf (keydata+keydatalen-1, 30, "(10:created-at10:%010lu))", timestamp); + snprintf (keydata+keydatalen-1, 30, KEYTOCARD_TIMESTAMP_FORMAT, timestamp); keydatalen += 10 + 19 - 1; err = divert_writekey (ctrl, force, serialno, id, keydata, keydatalen); xfree (keydata); ----------------------------------------------------------------------- Summary of changes: agent/command.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 10 14:33:44 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Mon, 10 Apr 2017 14:33:44 +0200 Subject: [git] gnupg-doc - branch, master, updated. 1106e2a424afd7bf68850fe0e3560b615a6dd694 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via 1106e2a424afd7bf68850fe0e3560b615a6dd694 (commit) via 619135c390c52fa1c2c9fb86777f93ff8b8812e6 (commit) from 4d585593e209518ac00301d0024e683dea8bf943 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 1106e2a424afd7bf68850fe0e3560b615a6dd694 Author: Justus Winter Date: Mon Apr 10 14:33:31 2017 +0200 jenkins: keep failed distchecks around for investigation diff --git a/misc/jenkins/bin/build.bash b/misc/jenkins/bin/build.bash index aca5cc2..0e9a698 100755 --- a/misc/jenkins/bin/build.bash +++ b/misc/jenkins/bin/build.bash @@ -331,6 +331,8 @@ case "$XTARGET" in # Jenkins looks for "FAIL:" to mark a build unstable, # hence we ignore errors here. echo "FAIL: make distcheck failed with status $?" + # Disable the cleanup so that we can investigate. + trap - EXIT exit 0 fi commit 619135c390c52fa1c2c9fb86777f93ff8b8812e6 Author: Justus Winter Date: Mon Apr 10 14:30:01 2017 +0200 jenkins: fix the runpath hack for in-tree builds diff --git a/misc/jenkins/bin/build.bash b/misc/jenkins/bin/build.bash index 54d0098..aca5cc2 100755 --- a/misc/jenkins/bin/build.bash +++ b/misc/jenkins/bin/build.bash @@ -220,6 +220,10 @@ case "$XTARGET" in CXXFLAGS="$CXXFLAGS -std=c++11" $MAKE $MAKEFLAGS + # HACKHACKHACK: Fix the test_environment hack. + test_environment="$(echo $test_environment | sed -e 's#obj/##g')" + # KCAHKCAHKCAH + env $test_environment $MAKE -k check verbose=2 \ || echo "FAIL: make check failed with status $?" # Jenkins looks for "FAIL:" to mark a build unstable, ----------------------------------------------------------------------- Summary of changes: misc/jenkins/bin/build.bash | 6 ++++++ 1 file changed, 6 insertions(+) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 10 15:45:45 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Mon, 10 Apr 2017 15:45:45 +0200 Subject: [git] GPGME - branch, master, updated. gpgme-1.9.0-23-g63bec9f Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG Made Easy". The branch, master has been updated via 63bec9f48666d811b65e2ef5cc63f8b731249088 (commit) via db476e923415f8e458720aaafde7234b802a33ab (commit) via 3cc90b67fa970e716c8672ec5c5f591fa11ab216 (commit) via 7309ce6f5f7c86570953a141965d4f54cd9ad9a0 (commit) via df8433bffa9e669897243f08edf7845762250e4a (commit) via 25e6444b3f4601c7821beab06bc4520deacb007b (commit) via ebefc6cbf937d14ced65f7ded79c4ba901507d23 (commit) via 365c649ad073f2697438dc014160943ae31a1447 (commit) from 49195c487e6c923f7137f092b982e7d833d98de6 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 63bec9f48666d811b65e2ef5cc63f8b731249088 Author: Justus Winter Date: Mon Apr 10 15:24:03 2017 +0200 python: Prune CLEANFILES. -- Fixes-commit: e7d9c0c3d773f826dbd2ed417d04e25c410f3374 Signed-off-by: Justus Winter diff --git a/lang/python/Makefile.am b/lang/python/Makefile.am index 8f80a6b..3fa98b5 100644 --- a/lang/python/Makefile.am +++ b/lang/python/Makefile.am @@ -65,9 +65,7 @@ upload: python$(PYTHON_VERSION)-gpg-dist/gpg-$(VERSION).tar.gz \ CLEANFILES = copystamp \ config.h \ data.h \ - gpg \ - files.txt \ - install_files.txt + gpg # Remove the rest. # commit db476e923415f8e458720aaafde7234b802a33ab Author: Justus Winter Date: Mon Apr 10 15:20:34 2017 +0200 python: Fix distcheck. * lang/python/Makefile.am (uninstall-local): Explicitly request the scheme 'posix_prefix'. On Python2.7 the default scheme is 'posix_local', breaking distcheck. Fixes-commit: 25e6444b3f4601c7821beab06bc4520deacb007b Signed-off-by: Justus Winter diff --git a/lang/python/Makefile.am b/lang/python/Makefile.am index 90075f7..8f80a6b 100644 --- a/lang/python/Makefile.am +++ b/lang/python/Makefile.am @@ -93,8 +93,8 @@ install-exec-local: done uninstall-local: - GV=$$(echo $(VERSION) | tr - _); for PYTHON in $(PYTHONS); do \ - PLATLIB="$(prefix)/$$("$${PYTHON}" -c 'import sysconfig, os; print(os.path.relpath(sysconfig.get_path("platlib"), sysconfig.get_config_var("prefix")))')" ; \ + set -x; GV=$$(echo $(VERSION) | tr - _); for PYTHON in $(PYTHONS); do \ + PLATLIB="$(prefix)/$$("$${PYTHON}" -c 'import sysconfig, os; print(os.path.relpath(sysconfig.get_path("platlib", scheme="posix_prefix"), sysconfig.get_config_var("prefix")))')" ; \ rm -rf -- "$(DESTDIR)$${PLATLIB}/gpg" \ "$(DESTDIR)$${PLATLIB}"/gpg-$$GV-py*.egg-info ; \ done commit 3cc90b67fa970e716c8672ec5c5f591fa11ab216 Author: Alon Bar-Lev Date: Sat Apr 8 16:34:33 2017 +0300 python: Support alternatate libdir for tests * lang/python/tests/run-tests.py: Add --python-libdir optional parameter. -- This will make the python tests usable for downstream that build python module outside of autotools build system. Signed-off-by: Alon Bar-Lev diff --git a/lang/python/tests/run-tests.py b/lang/python/tests/run-tests.py index f236712..78a0ec2 100644 --- a/lang/python/tests/run-tests.py +++ b/lang/python/tests/run-tests.py @@ -51,6 +51,9 @@ parser.add_argument('--srcdir', type=str, parser.add_argument('--builddir', type=str, default=os.environ.get("abs_builddir", ""), help='Location of the tests.') +parser.add_argument('--python-libdir', type=str, + default=None, + help='Optional location of the in-tree module lib directory.') parser.add_argument('--parallel', action="store_true", default=False, help='Ignored. For compatibility with run-tests.scm.') @@ -69,18 +72,20 @@ for interpreter in args.interpreters: version = subprocess.check_output( [interpreter, "-c", "import sys; print('{0}.{1}'.format(sys.version_info[0], sys.version_info[1]))"]).strip().decode() - pattern = os.path.join(args.builddir, "..", - "{0}-gpg".format(os.path.basename(interpreter)), - "lib*") - builddirs = glob.glob(pattern) - if len(builddirs) == 0: - sys.exit("Build directory matching {0!r} not found.".format(pattern)) - elif len(builddirs) > 1: - sys.exit("Multiple build directories matching {0!r} found: {1}".format( - pattern, builddirs)) + if not args.python_libdir: + pattern = os.path.join(args.builddir, "..", + "{0}-gpg".format(os.path.basename(interpreter)), + "lib*") + libdirs = glob.glob(pattern) + if len(libdirs) == 0: + sys.exit("Build directory matching {0!r} not found.".format(pattern)) + elif len(libdirs) > 1: + sys.exit("Multiple build directories matching {0!r} found: {1}".format( + pattern, libdirs)) + python_libdir = libdirs[0] env = dict(os.environ) - env["PYTHONPATH"] = builddirs[0] + env["PYTHONPATH"] = python_libdir if not args.quiet: print("Running tests using {0} ({1})...".format(interpreter, version)) commit 7309ce6f5f7c86570953a141965d4f54cd9ad9a0 Author: Alon Bar-Lev Date: Sat Apr 8 16:34:32 2017 +0300 python: Read gpg-error.h using the pre-processor * lang/python/setup.py.in: Read gpg-error.h using the pre-processor. -- The libgpg-error may be installed in multilib configuration in which there is a wrapper header at /usr/include that includes the actual header at /usr/include/*. This causes invalid errors.i generation. Let the pre-processor extract the header content instead reading it explicitly. Signed-off-by: Alon Bar-Lev diff --git a/lang/python/setup.py.in b/lang/python/setup.py.in index f4ce64f..a1279f8 100755 --- a/lang/python/setup.py.in +++ b/lang/python/setup.py.in @@ -55,13 +55,6 @@ else: devnull = open(os.devnull, "w") try: - subprocess.check_call(gpg_error_config + ['--version'], - stdout=devnull) -except: - sys.exit("Could not find gpg-error-config. " + - "Please install the libgpg-error development package.") - -try: subprocess.check_call(gpgme_config + ['--version'], stdout=devnull) except: @@ -84,13 +77,6 @@ if not (major > 1 or (major == 1 and minor >= 7)): if not gpgme_h: gpgme_h = os.path.join(getconfig("prefix")[0], "include", "gpgme.h") -gpg_error_prefix = getconfig("prefix", config=gpg_error_config)[0] -gpg_error_h = os.path.join(gpg_error_prefix, "include", "gpg-error.h") -if not os.path.exists(gpg_error_h): - gpg_error_h = \ - glob.glob(os.path.join(gpg_error_prefix, "include", - "*", "gpg-error.h"))[0] - define_macros = [] libs = getconfig('libs') @@ -150,10 +136,27 @@ def up_to_date(source, target): from distutils.command.build import build class BuildExtFirstHack(build): + def _read_header(self, header, cflags): + tmp_include = self._in_build_base("include1.h") + with open(tmp_include, 'w') as f: + f.write("#include <%s>" % header) + return subprocess.check_output(os.environ.get('CPP', 'cc -E').split() + cflags + [tmp_include]).decode('utf-8') + + def _write_if_unchanged(self, target, content): + if os.path.exists(target): + with open(target) as f: + if f.read() == content: + return + + with open(target, "w") as sink: + sink.write(content) + def _generate_gpgme_h(self, source_name, sink_name): if up_to_date(source_name, sink_name): return + print("Using gpgme.h from {}".format(source_name)) + deprec_func = re.compile(r'^(.*typedef.*|.*\(.*\)|[^#]+\s+.+)' + r'\s*_GPGME_DEPRECATED(_OUTSIDE_GPGME)?\(.*\);\s*', re.S) @@ -169,31 +172,38 @@ class BuildExtFirstHack(build): text = '' sink.write(text) - def _generate_errors_i(self, source_name, sink_name): - if up_to_date(source_name, sink_name): - return + def _generate_errors_i(self): + + try: + subprocess.check_call(gpg_error_config + ['--version'], + stdout=devnull) + except: + sys.exit("Could not find gpg-error-config. " + + "Please install the libgpg-error development package.") + + gpg_error_content = self._read_header("gpg-error.h", getconfig("cflags", config=gpg_error_config)) filter_re = re.compile(r'GPG_ERR_[^ ]* =') rewrite_re = re.compile(r' *(.*) = .*') - with open(sink_name, "w") as sink, open(source_name) as source: - for line in source: - if not filter_re.search(line): - continue - sink.write(rewrite_re.sub(r'%constant long \1 = \1;'+'\n', line.strip())) + errors_i_content = '' + for line in gpg_error_content.splitlines(): + if not filter_re.search(line): + continue + errors_i_content += rewrite_re.sub(r'%constant long \1 = \1;'+'\n', line.strip()) + + self._write_if_unchanged(self._in_build_base("errors.i"), errors_i_content) def _in_build_base(self, name): return os.path.join(self.build_base, name) def _generate(self): - print("Building python gpg module using {} and {}.".format(gpgme_h, gpg_error_h)) - # Cleanup gpgme.h from deprecated functions and typedefs. if not os.path.exists(self.build_base): os.makedirs(self.build_base) self._generate_gpgme_h(gpgme_h, self._in_build_base("gpgme.h")) - self._generate_errors_i(gpg_error_h, self._in_build_base("errors.i")) + self._generate_errors_i() # Copy due to http://bugs.python.org/issue2624 # Avoid creating in srcdir commit df8433bffa9e669897243f08edf7845762250e4a Author: Alon Bar-Lev Date: Sat Apr 8 16:34:31 2017 +0300 python: Remove unneeded stats copy * lang/python/setup.py.in: errors.i, gpgme.h are generated and always newer than the original. Signed-off-by: Alon Bar-Lev diff --git a/lang/python/setup.py.in b/lang/python/setup.py.in index e50971c..f4ce64f 100755 --- a/lang/python/setup.py.in +++ b/lang/python/setup.py.in @@ -195,12 +195,6 @@ class BuildExtFirstHack(build): self._generate_gpgme_h(gpgme_h, self._in_build_base("gpgme.h")) self._generate_errors_i(gpg_error_h, self._in_build_base("errors.i")) - # Keep timestamp to avoid rebuild - for source, target in ((gpgme_h, self._in_build_base("gpgme.h")), - (gpg_error_h, self._in_build_base("errors.i"))): - if not up_to_date(source, target): - shutil.copystat(source, target) - # Copy due to http://bugs.python.org/issue2624 # Avoid creating in srcdir for source, target in ((in_srcdir(n), self._in_build_base(n)) commit 25e6444b3f4601c7821beab06bc4520deacb007b Author: Alon Bar-Lev Date: Sat Apr 8 16:34:30 2017 +0300 python: Remove usage of PYTHON_VERSIONS * configure.ac: Remove PYTHON_VERSIONS subst. * lang/python/Makefile.am: Use basename of python as builddir prefix. * lang/python/tests/run-tests.py: Likewise. -- Two variables needs be at sync PYTHONS and PYTHON_VERSIONS, these may go out of sync in some cases, for example in Gentoo where default python is 3.4 we get: PYTHON='/usr/bin/python2' PYTHONS='/usr/bin/python /usr/bin/python2' PYTHON_VERSIONS='2.7 3.4' We can use the basename of the python interpreter to achieve similar effect without having to sync indexes between these two variables. Signed-off-by: Alon Bar-Lev diff --git a/configure.ac b/configure.ac index 9974abb..becd156 100644 --- a/configure.ac +++ b/configure.ac @@ -474,7 +474,6 @@ if test "$found_py" = "1" -o "$found_py2" = "1" -o "$found_py3" = "1"; then fi AC_SUBST(PYTHONS, $PYTHONS) - AC_SUBST(PYTHON_VERSIONS, $PYTHON_VERSIONS) fi fi diff --git a/lang/python/Makefile.am b/lang/python/Makefile.am index 4ebd214..90075f7 100644 --- a/lang/python/Makefile.am +++ b/lang/python/Makefile.am @@ -38,12 +38,11 @@ copystamp: touch $@ all-local: copystamp - set -e ; set $(PYTHONS); for VERSION in $(PYTHON_VERSIONS); do \ - PYTHON="$$1" ; shift ; \ + set -e ; for PYTHON in $(PYTHONS); do \ CFLAGS="$(CFLAGS)" \ srcdir="$(srcdir)" \ top_builddir="$(top_builddir)" \ - $$PYTHON setup.py build --verbose --build-base=python$${VERSION}-gpg ; \ + $$PYTHON setup.py build --verbose --build-base="$$(basename "$${PYTHON}")-gpg" ; \ done python$(PYTHON_VERSION)-gpg/dist/gpg-$(VERSION).tar.gz.asc: copystamp @@ -76,26 +75,26 @@ CLEANFILES = copystamp \ # permissions. clean-local: rm -rf -- build - for VERSION in $(PYTHON_VERSIONS); do \ - find python$${VERSION}-gpg* -type d ! -perm -200 -exec chmod u+w {} ';' ; \ - rm -rf -- python$${VERSION}-gpg* ; \ + for PYTHON in $(PYTHONS); do \ + find "$$(basename "$${PYTHON}")-gpg" -type d ! -perm -200 -exec chmod u+w {} ';' ; \ + rm -rf -- "$$(basename "$${PYTHON}")-gpg" ; \ done install-exec-local: - set -e ; set $(PYTHONS); for VERSION in $(PYTHON_VERSIONS); do \ - PYTHON="$$1" ; shift ; \ + set -e ; for PYTHON in $(PYTHONS); do \ srcdir="$(srcdir)" \ top_builddir="$(top_builddir)" \ $$PYTHON setup.py \ build \ - --build-base=python$${VERSION}-gpg \ + --build-base="$$(basename "$${PYTHON}")-gpg" \ install \ --prefix "$(DESTDIR)$(prefix)" \ --verbose ; \ done uninstall-local: - GV=$$(echo $(VERSION) | tr - _); for PV in $(PYTHON_VERSIONS); do \ - rm -rf -- "$(DESTDIR)$(prefix)"/lib*/python$$PV/site-packages/gpg \ -"$(DESTDIR)$(prefix)"/lib*/python$$PV/site-packages/gpg-$$GV-py$$PV.egg-info ; \ + GV=$$(echo $(VERSION) | tr - _); for PYTHON in $(PYTHONS); do \ + PLATLIB="$(prefix)/$$("$${PYTHON}" -c 'import sysconfig, os; print(os.path.relpath(sysconfig.get_path("platlib"), sysconfig.get_config_var("prefix")))')" ; \ + rm -rf -- "$(DESTDIR)$${PLATLIB}/gpg" \ + "$(DESTDIR)$${PLATLIB}"/gpg-$$GV-py*.egg-info ; \ done diff --git a/lang/python/tests/run-tests.py b/lang/python/tests/run-tests.py index 9e2fb78..f236712 100644 --- a/lang/python/tests/run-tests.py +++ b/lang/python/tests/run-tests.py @@ -70,8 +70,8 @@ for interpreter in args.interpreters: [interpreter, "-c", "import sys; print('{0}.{1}'.format(sys.version_info[0], sys.version_info[1]))"]).strip().decode() pattern = os.path.join(args.builddir, "..", - "python{0}-gpg".format(version), - "lib*"+version) + "{0}-gpg".format(os.path.basename(interpreter)), + "lib*") builddirs = glob.glob(pattern) if len(builddirs) == 0: sys.exit("Build directory matching {0!r} not found.".format(pattern)) commit ebefc6cbf937d14ced65f7ded79c4ba901507d23 Author: Alon Bar-Lev Date: Fri Apr 7 17:32:18 2017 +0300 tests: Do not use check-local magic as dependency * tests/gpg/Makefile.am: Use BUILT_SOURCES instead of check-local and initial.test. * lang/qt/tests/Makefile.am: Ditto. -- This fixes "make dist" failure when source tree is clean: git clean -dxf autoreconf -ivf ./configure make dist BUILT_SOURCES should be used when file as generated without explicit dependency. The check-local is all-am dependency, this means that it will be resolved also in "make dist". Signed-off-by: Alon Bar-Lev diff --git a/lang/qt/tests/Makefile.am b/lang/qt/tests/Makefile.am index 93dce07..fb45eec 100644 --- a/lang/qt/tests/Makefile.am +++ b/lang/qt/tests/Makefile.am @@ -43,12 +43,6 @@ AM_CPPFLAGS = -I$(top_srcdir)/lang/cpp/src -I$(top_builddir)/src \ -I$(top_srcdir)/lang/qt/src \ -DTOP_SRCDIR="$(top_srcdir)" -check-local: ./pubring-stamp - -# To guarantee that check-local is run before any tests we -# add this dependency: -initial.test : check-local - support_src = t-support.h t-support.cpp t_keylist_SOURCES = t-keylist.cpp $(support_src) @@ -64,7 +58,7 @@ run_keyformailboxjob_SOURCES = run-keyformailboxjob.cpp nodist_t_keylist_SOURCES = $(moc_files) -BUILT_SOURCES = $(moc_files) +BUILT_SOURCES = $(moc_files) pubring-stamp noinst_PROGRAMS = t-keylist t-keylocate t-ownertrust t-tofuinfo t-encrypt \ run-keyformailboxjob t-wkspublish t-verify t-various t-config @@ -79,7 +73,7 @@ clean-local: export GNUPGHOME := $(abs_builddir) -./pubring-stamp: $(top_srcdir)/tests/gpg/pubdemo.asc \ +pubring-stamp: $(top_srcdir)/tests/gpg/pubdemo.asc \ $(top_srcdir)/tests/gpg/secdemo.asc echo "ignore-invalid-option allow-loopback-pinentry" > $(abs_builddir)/gpg-agent.conf echo "allow-loopback-pinentry" >> gpg-agent.conf @@ -90,7 +84,7 @@ export GNUPGHOME := $(abs_builddir) $(GPG) --no-permission-warning \ --passphrase "abc" \ --import $(top_srcdir)/tests/gpg/secdemo.asc - touch ./pubring-stamp + touch pubring-stamp .cpp.moc: $(MOC) `test -f '$<' || echo '$(srcdir)/'`$< -o $@ diff --git a/tests/gpg/Makefile.am b/tests/gpg/Makefile.am index 9b74ba6..1d9a6df 100644 --- a/tests/gpg/Makefile.am +++ b/tests/gpg/Makefile.am @@ -60,6 +60,8 @@ EXTRA_DIST = initial.test final.test \ pubdemo.asc secdemo.asc cipher-1.asc cipher-2.asc \ geheim.txt pubkey-1.asc seckey-1.asc pinentry $(private_keys) +BUILT_SOURCES = gpg.conf gpg-agent.conf pubring-stamp \ + private-keys-v1.d/gpg-sample.stamp AM_CPPFLAGS = -I$(top_builddir)/src @GPG_ERROR_CFLAGS@ AM_LDFLAGS = -no-install LDADD = ../../src/libgpgme.la @@ -82,13 +84,6 @@ clean-local: -$(top_srcdir)/tests/start-stop-agent --stop -rm -fR private-keys-v1.d -check-local: ./gpg.conf ./gpg-agent.conf ./pubring-stamp \ - ./private-keys-v1.d/gpg-sample.stamp - -# To guarantee that check-local is run before any tests we -# add this dependency: -initial.test : check-local - export GNUPGHOME := $(abs_builddir) export GPG_AGENT_INFO := commit 365c649ad073f2697438dc014160943ae31a1447 Author: Alon Bar-Lev Date: Fri Apr 7 17:31:47 2017 +0300 python: support .pydistutils.cfg mode * lang/python/setup.py.in: Do not parse arguments. -- The distutils settings can come from either command-line or configuration file. Parsing parameters is not working in all cases. Signed-off-by: Alon Bar-Lev diff --git a/lang/python/setup.py.in b/lang/python/setup.py.in index 5d94c70..e50971c 100755 --- a/lang/python/setup.py.in +++ b/lang/python/setup.py.in @@ -19,18 +19,12 @@ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA from distutils.core import setup, Extension -import argparse import os, os.path, sys import glob import re import shutil import subprocess -# We parse a subset of the arguments. -parser = argparse.ArgumentParser(add_help=False) -parser.add_argument('--build-base', default='') -options, _ = parser.parse_known_args() - # Out-of-tree build of the gpg bindings. gpg_error_config = ["gpg-error-config"] gpgme_config_flags = ["--thread=pthread"] @@ -142,8 +136,6 @@ if uname_s.startswith("MINGW32"): def in_srcdir(name): return os.path.join(os.environ.get("srcdir", ""), name) -def in_build_base(name): - return os.path.join(options.build_base, name) def up_to_date(source, target): return (os.path.exists(target) and os.path.getmtime(source) <= os.path.getmtime(target)) @@ -190,6 +182,9 @@ class BuildExtFirstHack(build): continue sink.write(rewrite_re.sub(r'%constant long \1 = \1;'+'\n', line.strip())) + def _in_build_base(self, name): + return os.path.join(self.build_base, name) + def _generate(self): print("Building python gpg module using {} and {}.".format(gpgme_h, gpg_error_h)) @@ -197,18 +192,18 @@ class BuildExtFirstHack(build): if not os.path.exists(self.build_base): os.makedirs(self.build_base) - self._generate_gpgme_h(gpgme_h, in_build_base("gpgme.h")) - self._generate_errors_i(gpg_error_h, in_build_base("errors.i")) + self._generate_gpgme_h(gpgme_h, self._in_build_base("gpgme.h")) + self._generate_errors_i(gpg_error_h, self._in_build_base("errors.i")) # Keep timestamp to avoid rebuild - for source, target in ((gpgme_h, in_build_base("gpgme.h")), - (gpg_error_h, in_build_base("errors.i"))): + for source, target in ((gpgme_h, self._in_build_base("gpgme.h")), + (gpg_error_h, self._in_build_base("errors.i"))): if not up_to_date(source, target): shutil.copystat(source, target) # Copy due to http://bugs.python.org/issue2624 # Avoid creating in srcdir - for source, target in ((in_srcdir(n), in_build_base(n)) + for source, target in ((in_srcdir(n), self._in_build_base(n)) for n in ('gpgme.i', 'helpers.c', 'private.h', 'helpers.h')): if not up_to_date(source, target): shutil.copy2(source, target) @@ -221,7 +216,7 @@ class BuildExtFirstHack(build): def run(self): self._generate() - swig_sources.append(os.path.join(self.build_base, 'gpgme.i')) + swig_sources.extend((self._in_build_base('gpgme.i'), self._in_build_base('helpers.c'))) swig_opts.extend(['-I' + self.build_base, '-outdir', os.path.join(self.build_lib, 'gpg')]) include_dirs.append(self.build_base) @@ -230,7 +225,7 @@ class BuildExtFirstHack(build): build.run(self) py3 = [] if sys.version_info.major < 3 else ['-py3'] -swig_sources = [in_build_base('helpers.c')] +swig_sources = [] swig_opts = ['-threads'] + py3 + extra_swig_opts swige = Extension("gpg._gpgme", sources = swig_sources, ----------------------------------------------------------------------- Summary of changes: configure.ac | 1 - lang/python/Makefile.am | 27 ++++++-------- lang/python/setup.py.in | 85 +++++++++++++++++++++--------------------- lang/python/tests/run-tests.py | 25 ++++++++----- lang/qt/tests/Makefile.am | 12 ++---- tests/gpg/Makefile.am | 9 +---- 6 files changed, 74 insertions(+), 85 deletions(-) hooks/post-receive -- GnuPG Made Easy http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 11 04:28:18 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Tue, 11 Apr 2017 04:28:18 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-43-ga144616 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via a1446163d584cdc3003c7d5b5fc6d74737c1732d (commit) from 1b6adab41d386b587f65e5c6f14a63859ac1226b (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit a1446163d584cdc3003c7d5b5fc6d74737c1732d Author: NIIBE Yutaka Date: Tue Apr 11 11:23:05 2017 +0900 tools: Portability fix for gpgparsemail. * tools/rfc822parse.c (my_stpcpy): Rename from stpcpy. -- When HAVE_STPCPY is not defined (no definition in libc), still, compiler may have definition as a built-in function (for some specific case like second argument is constant). In that case, having stpcpy implementation with the same name but different signature ("static" qualifier) is not good. Signed-off-by: NIIBE Yutaka diff --git a/tools/rfc822parse.c b/tools/rfc822parse.c index ee81b5d..412599b 100644 --- a/tools/rfc822parse.c +++ b/tools/rfc822parse.c @@ -155,7 +155,7 @@ capitalize_header_name (unsigned char *name) #ifndef HAVE_STPCPY static char * -stpcpy (char *a,const char *b) +my_stpcpy (char *a,const char *b) { while (*b) *a++ = *b++; @@ -163,6 +163,7 @@ stpcpy (char *a,const char *b) return (char*)a; } +#define stpcpy my_stpcpy #endif ----------------------------------------------------------------------- Summary of changes: tools/rfc822parse.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 11 04:55:17 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Tue, 11 Apr 2017 04:55:17 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-44-g456c5cd Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 456c5cdb2d72bba77e2a30c8fdb1c1cebbe9b1d2 (commit) from a1446163d584cdc3003c7d5b5fc6d74737c1732d (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 456c5cdb2d72bba77e2a30c8fdb1c1cebbe9b1d2 Author: NIIBE Yutaka Date: Tue Apr 11 11:53:52 2017 +0900 common: Portability fix for logging.c. * common/logging.c (S_IRGRP, S_IWGRP, S_IROTH, S_IWOTH): Avoid duplicated definition. Signed-off-by: NIIBE Yutaka diff --git a/common/logging.c b/common/logging.c index 18c40b3..bc5f72b 100644 --- a/common/logging.c +++ b/common/logging.c @@ -64,10 +64,14 @@ #include "sysutils.h" #ifdef HAVE_W32_SYSTEM -# define S_IRGRP S_IRUSR -# define S_IROTH S_IRUSR -# define S_IWGRP S_IWUSR -# define S_IWOTH S_IWUSR +# ifndef S_IRWXG +# define S_IRGRP S_IRUSR +# define S_IWGRP S_IWUSR +# endif +# ifndef S_IRWXO +# define S_IROTH S_IRUSR +# define S_IWOTH S_IWUSR +# endif #endif ----------------------------------------------------------------------- Summary of changes: common/logging.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 11 05:53:28 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Tue, 11 Apr 2017 05:53:28 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-45-gf079822 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via f079822b2ce06c18b7ea45efed2d29b54e38f04d (commit) from 456c5cdb2d72bba77e2a30c8fdb1c1cebbe9b1d2 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit f079822b2ce06c18b7ea45efed2d29b54e38f04d Author: NIIBE Yutaka Date: Tue Apr 11 12:51:47 2017 +0900 g10: Minor clean up for TOFU. * g10/tofu.c (ask_about_binding): Fix for qualifier. Signed-off-by: NIIBE Yutaka diff --git a/g10/tofu.c b/g10/tofu.c index 169e29e..9f83fa4 100644 --- a/g10/tofu.c +++ b/g10/tofu.c @@ -1573,7 +1573,7 @@ ask_about_binding (ctrl_t ctrl, struct signature_stats *stats = NULL; struct signature_stats *stats_iter = NULL; char *prompt = NULL; - char *choices; + const char *choices; dbs = ctrl->tofu.dbs; log_assert (dbs); ----------------------------------------------------------------------- Summary of changes: g10/tofu.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 11 06:54:35 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Tue, 11 Apr 2017 06:54:35 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-46-g03d77b6 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 03d77b60befa4e2f8437a80ac429cca3e54688f8 (commit) from f079822b2ce06c18b7ea45efed2d29b54e38f04d (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 03d77b60befa4e2f8437a80ac429cca3e54688f8 Author: NIIBE Yutaka Date: Tue Apr 11 13:52:19 2017 +0900 g10,tools: Fix bzlib.h include order. * g10/compress-bz2.c: Include bzlib.h after gcrypt.h. * tools/gpgsplit.c: Likewise. -- bzlib.h may include windows.h on Windows. It is better after gcrypt.h which may include winsock2.h. Signed-off-by: NIIBE Yutaka diff --git a/g10/compress-bz2.c b/g10/compress-bz2.c index 4adca9b..45aa40d 100644 --- a/g10/compress-bz2.c +++ b/g10/compress-bz2.c @@ -20,10 +20,11 @@ #include #include #include /* Early versions of bzlib (1.0) require stdio.h */ -#include #include "gpg.h" #include "../common/util.h" +#include + #include "packet.h" #include "filter.h" #include "main.h" diff --git a/tools/gpgsplit.c b/tools/gpgsplit.c index ce2777d..b9787b1 100644 --- a/tools/gpgsplit.c +++ b/tools/gpgsplit.c @@ -32,9 +32,6 @@ #ifdef HAVE_ZIP # include #endif -#ifdef HAVE_BZIP2 -# include -#endif /* HAVE_BZIP2 */ #if defined(__riscos__) && defined(USE_ZLIBRISCOS) # include "zlib-riscos.h" #endif @@ -43,6 +40,10 @@ #include "../common/util.h" #include "../common/openpgpdefs.h" +#ifdef HAVE_BZIP2 +# include +#endif /* HAVE_BZIP2 */ + static int opt_verbose; static const char *opt_prefix = ""; static int opt_uncompress; ----------------------------------------------------------------------- Summary of changes: g10/compress-bz2.c | 3 ++- tools/gpgsplit.c | 7 ++++--- 2 files changed, 6 insertions(+), 4 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 11 09:13:29 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Tue, 11 Apr 2017 09:13:29 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-47-g3133402 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 3133402241167ccad70fa888a47ffcbe04e7b4c5 (commit) from 03d77b60befa4e2f8437a80ac429cca3e54688f8 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 3133402241167ccad70fa888a47ffcbe04e7b4c5 Author: NIIBE Yutaka Date: Tue Apr 11 16:12:34 2017 +0900 dirmngr: Fix build for Windows. * dirmngr/ldap-wrapper-ce.c (outstream_cookie_writer): Use gpgrt_ssize_t. Signed-off-by: NIIBE Yutaka diff --git a/dirmngr/ldap-wrapper-ce.c b/dirmngr/ldap-wrapper-ce.c index 478e694..1e42189 100644 --- a/dirmngr/ldap-wrapper-ce.c +++ b/dirmngr/ldap-wrapper-ce.c @@ -196,7 +196,7 @@ buffer_put_data (struct outstream_cookie_s *cookie, const char *src, int cnt) /* The writer function for the outstream. This is used to transfer the output of the ldap wrapper thread to the ksba reader object. */ -static ssize_t +static gpgrt_ssize_t outstream_cookie_writer (void *cookie_arg, const void *buffer, size_t size) { struct outstream_cookie_s *cookie = cookie_arg; ----------------------------------------------------------------------- Summary of changes: dirmngr/ldap-wrapper-ce.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 11 10:23:09 2017 From: cvs at cvs.gnupg.org (by Alon Bar-Lev) Date: Tue, 11 Apr 2017 10:23:09 +0200 Subject: [git] GPGME - branch, master, updated. gpgme-1.9.0-24-gd785c05 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG Made Easy". The branch, master has been updated via d785c053a982bddefd7014dc6856d1af345fe9fb (commit) from 63bec9f48666d811b65e2ef5cc63f8b731249088 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit d785c053a982bddefd7014dc6856d1af345fe9fb Author: Alon Bar-Lev Date: Tue Apr 11 01:55:13 2017 +0300 python: fix run-tests missing python_libdir * lang/python/tests/run-tests.py: Set python_libdir if --python-libdir is set. Signed-off-by: Alon Bar-Lev diff --git a/lang/python/tests/run-tests.py b/lang/python/tests/run-tests.py index 78a0ec2..95df197 100644 --- a/lang/python/tests/run-tests.py +++ b/lang/python/tests/run-tests.py @@ -72,7 +72,9 @@ for interpreter in args.interpreters: version = subprocess.check_output( [interpreter, "-c", "import sys; print('{0}.{1}'.format(sys.version_info[0], sys.version_info[1]))"]).strip().decode() - if not args.python_libdir: + if args.python_libdir: + python_libdir = args.python_libdir + else: pattern = os.path.join(args.builddir, "..", "{0}-gpg".format(os.path.basename(interpreter)), "lib*") ----------------------------------------------------------------------- Summary of changes: lang/python/tests/run-tests.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) hooks/post-receive -- GnuPG Made Easy http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 11 11:28:17 2017 From: cvs at cvs.gnupg.org (by Alon Bar-Lev) Date: Tue, 11 Apr 2017 11:28:17 +0200 Subject: [git] GPGME - branch, master, updated. gpgme-1.9.0-25-ga827382 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG Made Easy". The branch, master has been updated via a827382cafe7f1425455dcc8bf5ef049172eb493 (commit) from d785c053a982bddefd7014dc6856d1af345fe9fb (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit a827382cafe7f1425455dcc8bf5ef049172eb493 Author: Alon Bar-Lev Date: Tue Apr 11 03:56:00 2017 +0300 python: use autoconf pre-processor when building via autoconf * configure.ac: Add AC_PROG_CPP. * lang/python/Makefile.am: Set CPP environment for setup.py to use. Signed-off-by: Alon Bar-Lev diff --git a/configure.ac b/configure.ac index becd156..b4878cc 100644 --- a/configure.ac +++ b/configure.ac @@ -109,6 +109,7 @@ AH_VERBATIM([_REENTRANT], #endif]) AC_PROG_CC +AC_PROG_CPP AC_PROG_CXX # Note: A suitable gitlog-to-changelog script can be found in GnuPG master. diff --git a/lang/python/Makefile.am b/lang/python/Makefile.am index 3fa98b5..8d74cbd 100644 --- a/lang/python/Makefile.am +++ b/lang/python/Makefile.am @@ -39,6 +39,7 @@ copystamp: all-local: copystamp set -e ; for PYTHON in $(PYTHONS); do \ + CPP="$(CPP)" \ CFLAGS="$(CFLAGS)" \ srcdir="$(srcdir)" \ top_builddir="$(top_builddir)" \ @@ -47,6 +48,7 @@ all-local: copystamp python$(PYTHON_VERSION)-gpg/dist/gpg-$(VERSION).tar.gz.asc: copystamp $(MKDIR_P) python$(PYTHON_VERSION)-gpg-dist + CPP="$(CPP)" \ CFLAGS="$(CFLAGS)" \ srcdir="$(srcdir)" \ top_builddir="$(top_builddir)" \ @@ -80,6 +82,8 @@ clean-local: install-exec-local: set -e ; for PYTHON in $(PYTHONS); do \ + CPP="$(CPP)" \ + CFLAGS="$(CFLAGS)" \ srcdir="$(srcdir)" \ top_builddir="$(top_builddir)" \ $$PYTHON setup.py \ ----------------------------------------------------------------------- Summary of changes: configure.ac | 1 + lang/python/Makefile.am | 4 ++++ 2 files changed, 5 insertions(+) hooks/post-receive -- GnuPG Made Easy http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 11 11:42:19 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Tue, 11 Apr 2017 11:42:19 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-50-gcde626e Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via cde626e7f7349a73d58ec3236ab3b43dec852bb5 (commit) via 1b28d9dbe0260b2a4645c4b5caae11d9f375c942 (commit) via ccd2187212c12b84c86a10fd4417a16536243179 (commit) from 3133402241167ccad70fa888a47ffcbe04e7b4c5 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit cde626e7f7349a73d58ec3236ab3b43dec852bb5 Author: Justus Winter Date: Tue Apr 11 11:37:37 2017 +0200 tests: Avoid relying on implicit gpg commands. * tests/openpgp/armdetach.scm: Always use an explicit command instead of relying on gpg to guess what we want. * tests/openpgp/armdetachm.scm: Likewise. * tests/openpgp/armencrypt.scm: Likewise. * tests/openpgp/armencryptp.scm: Likewise. * tests/openpgp/armor.scm: Likewise. * tests/openpgp/armsignencrypt.scm: Likewise. * tests/openpgp/armsigs.scm: Likewise. * tests/openpgp/clearsig.scm: Likewise. * tests/openpgp/compression.scm: Likewise. * tests/openpgp/conventional-mdc.scm: Likewise. * tests/openpgp/conventional.scm: Likewise. * tests/openpgp/decrypt-dsa.scm: Likewise. * tests/openpgp/decrypt.scm: Likewise. * tests/openpgp/detach.scm: Likewise. * tests/openpgp/detachm.scm: Likewise. * tests/openpgp/ecc.scm: Likewise. * tests/openpgp/encrypt-dsa.scm: Likewise. * tests/openpgp/encrypt-multifile.scm: Likewise. * tests/openpgp/encrypt.scm: Likewise. * tests/openpgp/encryptp.scm: Likewise. * tests/openpgp/seat.scm: Likewise. * tests/openpgp/signencrypt-dsa.scm: Likewise. * tests/openpgp/signencrypt.scm: Likewise. * tests/openpgp/sigs-dsa.scm: Likewise. * tests/openpgp/sigs.scm: Likewise. Signed-off-by: Justus Winter diff --git a/tests/openpgp/armdetach.scm b/tests/openpgp/armdetach.scm index f458441..3bae28b 100755 --- a/tests/openpgp/armdetach.scm +++ b/tests/openpgp/armdetach.scm @@ -28,5 +28,5 @@ --output ,tmp ,source ) usrpass1) (pipe:do (pipe:open source (logior O_RDONLY O_BINARY)) - (pipe:spawn `(, at GPG --yes ,tmp))))) + (pipe:spawn `(, at GPG --yes --verify ,tmp -))))) (append plain-files data-files)) diff --git a/tests/openpgp/armdetachm.scm b/tests/openpgp/armdetachm.scm index 8d30fd3..6812263 100755 --- a/tests/openpgp/armdetachm.scm +++ b/tests/openpgp/armdetachm.scm @@ -33,4 +33,4 @@ (pipe:open file (logior O_RDONLY O_BINARY)) (pipe:splice sink))) files))) - (pipe:spawn `(, at GPG --yes ,tmp)))) + (pipe:spawn `(, at GPG --yes --verify ,tmp -)))) diff --git a/tests/openpgp/armencrypt.scm b/tests/openpgp/armencrypt.scm index b9dfc1e..21131ea 100755 --- a/tests/openpgp/armencrypt.scm +++ b/tests/openpgp/armencrypt.scm @@ -26,6 +26,6 @@ (tr:do (tr:open source) (tr:gpg usrpass1 `(--yes --passphrase-fd "0" -ea --recipient ,usrname2)) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity source))) (append plain-files data-files)) diff --git a/tests/openpgp/armencryptp.scm b/tests/openpgp/armencryptp.scm index d280902..4a00166 100755 --- a/tests/openpgp/armencryptp.scm +++ b/tests/openpgp/armencryptp.scm @@ -27,6 +27,6 @@ (tr:open source) (tr:pipe-do (pipe:gpg `(--yes -ea --recipient ,usrname2)) - (pipe:gpg '(--yes))) + (pipe:gpg '(--yes --decrypt))) (tr:assert-identity source))) (append plain-files data-files)) diff --git a/tests/openpgp/armor.scm b/tests/openpgp/armor.scm index 7498ba7..6f57c78 100755 --- a/tests/openpgp/armor.scm +++ b/tests/openpgp/armor.scm @@ -764,4 +764,4 @@ wg7Md81a5RI3F2FG8747t9gX (tr:do (tr:pipe-do (pipe:echo nopad_armored_msg) - (pipe:gpg '()))) + (pipe:gpg '(--decrypt)))) diff --git a/tests/openpgp/armsignencrypt.scm b/tests/openpgp/armsignencrypt.scm index 18178f1..49eea07 100755 --- a/tests/openpgp/armsignencrypt.scm +++ b/tests/openpgp/armsignencrypt.scm @@ -26,6 +26,6 @@ (tr:do (tr:open source) (tr:gpg usrpass1 `(--yes --passphrase-fd "0" -sea --recipient ,usrname2)) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity source))) (append plain-files data-files)) diff --git a/tests/openpgp/armsigs.scm b/tests/openpgp/armsigs.scm index 6e5d056..2fab729 100755 --- a/tests/openpgp/armsigs.scm +++ b/tests/openpgp/armsigs.scm @@ -26,6 +26,6 @@ (tr:do (tr:open source) (tr:gpg usrpass1 `(--yes --passphrase-fd "0" -sa --recipient ,usrname2)) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity source))) (append plain-files data-files)) diff --git a/tests/openpgp/clearsig.scm b/tests/openpgp/clearsig.scm index cdbf603..a9f20f2 100755 --- a/tests/openpgp/clearsig.scm +++ b/tests/openpgp/clearsig.scm @@ -25,7 +25,7 @@ (lettmp (signed) (call-popen `(, at GPG --output ,signed --yes , at args ,source) input) - (call-popen `(, at GPG --output ,sink --yes ,signed) "")))) + (call-popen `(, at GPG --output ,sink --yes --verify ,signed) "")))) (for-each-p "Checking signing and verifying plain text messages" diff --git a/tests/openpgp/compression.scm b/tests/openpgp/compression.scm index f39c132..bab7572 100755 --- a/tests/openpgp/compression.scm +++ b/tests/openpgp/compression.scm @@ -30,7 +30,7 @@ (tr:open source) (tr:gpg "" `(--yes --encrypt --recipient ,usrname2 --compress-algo ,compression)) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity source))) (append plain-files data-files))) (force all-compression-algos)) diff --git a/tests/openpgp/conventional-mdc.scm b/tests/openpgp/conventional-mdc.scm index 5b009ae..af27fad 100755 --- a/tests/openpgp/conventional-mdc.scm +++ b/tests/openpgp/conventional-mdc.scm @@ -34,7 +34,7 @@ (tr:gpg passphrase `(--yes --passphrase-fd "0" ,s2k --force-mdc -c --cipher-algo ,algo)) - (tr:gpg passphrase `(--yes --passphrase-fd "0" ,s2k)) + (tr:gpg passphrase `(--yes --passphrase-fd "0" --decrypt ,s2k)) (tr:assert-identity source))) '("plain-1" "data-80000"))) (force all-cipher-algos)) @@ -45,6 +45,6 @@ (tr:do (tr:open source) (tr:gpg passphrase `(--yes --passphrase-fd "0" ,s2k -cs)) - (tr:gpg passphrase `(--yes --passphrase-fd "0" ,s2k)) + (tr:gpg passphrase `(--yes --passphrase-fd "0" --decrypt ,s2k)) (tr:assert-identity source))) (append plain-files data-files)) diff --git a/tests/openpgp/conventional.scm b/tests/openpgp/conventional.scm index 612b992..4bca3c9 100755 --- a/tests/openpgp/conventional.scm +++ b/tests/openpgp/conventional.scm @@ -29,7 +29,7 @@ (tr:do (tr:open source) (tr:gpg passphrase `(--yes --passphrase-fd "0" ,s2k -c)) - (tr:gpg passphrase `(--yes --passphrase-fd "0" ,s2k)) + (tr:gpg passphrase `(--yes --passphrase-fd "0" --decrypt ,s2k)) (tr:assert-identity source))) '("plain-2" "data-32000")) @@ -43,7 +43,7 @@ (tr:open source) (tr:gpg passphrase `(--yes --passphrase-fd "0" ,s2k -c --cipher-algo ,algo)) - (tr:gpg passphrase `(--yes --passphrase-fd "0" ,s2k)) + (tr:gpg passphrase `(--yes --passphrase-fd "0" --decrypt ,s2k)) (tr:assert-identity source))) '("plain-1" "data-80000"))) (force all-cipher-algos)) diff --git a/tests/openpgp/decrypt-dsa.scm b/tests/openpgp/decrypt-dsa.scm index 49f9534..640dfd2 100755 --- a/tests/openpgp/decrypt-dsa.scm +++ b/tests/openpgp/decrypt-dsa.scm @@ -25,6 +25,6 @@ (lambda (name) (tr:do (tr:open (in-srcdir (string-append name "-pgp.asc"))) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity name))) (list (car plain-files))) diff --git a/tests/openpgp/decrypt.scm b/tests/openpgp/decrypt.scm index ba8bcee..8dac38a 100755 --- a/tests/openpgp/decrypt.scm +++ b/tests/openpgp/decrypt.scm @@ -25,6 +25,6 @@ (lambda (name) (tr:do (tr:open (in-srcdir (string-append name ".asc"))) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity name))) plain-files) diff --git a/tests/openpgp/detach.scm b/tests/openpgp/detach.scm index 2180f78..ac2bc36 100755 --- a/tests/openpgp/detach.scm +++ b/tests/openpgp/detach.scm @@ -28,5 +28,5 @@ --output ,tmp ,source ) usrpass1) (pipe:do (pipe:open source (logior O_RDONLY O_BINARY)) - (pipe:spawn `(, at GPG --yes ,tmp))))) + (pipe:spawn `(, at GPG --yes --verify ,tmp -))))) (append plain-files data-files)) diff --git a/tests/openpgp/detachm.scm b/tests/openpgp/detachm.scm index 1de8da9..0b64458 100755 --- a/tests/openpgp/detachm.scm +++ b/tests/openpgp/detachm.scm @@ -33,4 +33,4 @@ (pipe:open file (logior O_RDONLY O_BINARY)) (pipe:splice sink))) files))) - (pipe:spawn `(, at GPG --yes ,tmp)))) + (pipe:spawn `(, at GPG --yes --verify ,tmp -)))) diff --git a/tests/openpgp/ecc.scm b/tests/openpgp/ecc.scm index a40869d..2ea8c39 100755 --- a/tests/openpgp/ecc.scm +++ b/tests/openpgp/ecc.scm @@ -101,8 +101,7 @@ Ic1RdzgeCfosMF+l/zVRchcLKzenEQA= (lettmp (x y) (call-with-output-file x (lambda (p) (display (eval test (current-environment)) p))) - (call-check `(,(tool 'gpg) --verify ,x)) - (call-check `(,(tool 'gpg) --output ,y ,x)) + (call-check `(,(tool 'gpg) --output ,y --verify ,x)) (unless (file=? y z) (fail "mismatch")))) '(msg_opaque_signed_256 msg_opaque_signed_384 msg_opaque_signed_521))) @@ -181,7 +180,7 @@ Rg== (lettmp (x y) (call-with-output-file x (lambda (p) (display (eval test (current-environment)) p))) - (call-check `(, at GPG --yes --output ,y ,x)) + (call-check `(, at GPG --yes --output ,y --decrypt ,x)) (unless (file=? y z) (fail "mismatch")))) '(msg_encrypted_256 msg_encrypted_384 msg_encrypted_521))) @@ -200,7 +199,7 @@ Rg== (tr:do (tr:open source) (tr:gpg "" `(--yes --encrypt --recipient ,keyid)) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity source))) mainkeyids)) (append plain-files data-files)) @@ -217,7 +216,7 @@ Rg== (tr:do (tr:open source) (tr:gpg "" `(--yes --sign --local-user ,keyid)) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity source))) mainkeyids)) (append plain-files data-files)) diff --git a/tests/openpgp/encrypt-dsa.scm b/tests/openpgp/encrypt-dsa.scm index 7ac1916..0c5a2fd 100755 --- a/tests/openpgp/encrypt-dsa.scm +++ b/tests/openpgp/encrypt-dsa.scm @@ -26,7 +26,7 @@ (tr:do (tr:open source) (tr:gpg "" `(--yes --encrypt --recipient ,dsa-usrname2)) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity source))) (append plain-files data-files)) @@ -40,7 +40,7 @@ (tr:open source) (tr:gpg "" `(--yes --encrypt --recipient ,dsa-usrname2 --cipher-algo ,cipher)) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity source))) (append plain-files data-files))) (force all-cipher-algos)) diff --git a/tests/openpgp/encrypt-multifile.scm b/tests/openpgp/encrypt-multifile.scm index 4b76ff0..d55971c 100755 --- a/tests/openpgp/encrypt-multifile.scm +++ b/tests/openpgp/encrypt-multifile.scm @@ -34,6 +34,6 @@ (lambda (source) (tr:do (tr:open (string-append source ".gpg")) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity source))) files) diff --git a/tests/openpgp/encrypt.scm b/tests/openpgp/encrypt.scm index 4247aa8..1888a00 100755 --- a/tests/openpgp/encrypt.scm +++ b/tests/openpgp/encrypt.scm @@ -26,7 +26,7 @@ (tr:do (tr:open source) (tr:gpg "" `(--yes --encrypt --recipient ,usrname2)) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity source))) (append plain-files data-files)) @@ -40,7 +40,7 @@ (tr:open source) (tr:gpg "" `(--yes --encrypt --recipient ,usrname2 --cipher-algo ,cipher)) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity source))) (append plain-files data-files))) (force all-cipher-algos)) @@ -56,6 +56,6 @@ (tr:gpg "" `(--yes -v --no-keyring --encrypt --recipient-file ,(in-srcdir key-file1) --hidden-recipient-file ,(in-srcdir key-file2))) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity source))) plain-files) diff --git a/tests/openpgp/encryptp.scm b/tests/openpgp/encryptp.scm index d939190..ccd5c7b 100755 --- a/tests/openpgp/encryptp.scm +++ b/tests/openpgp/encryptp.scm @@ -27,6 +27,6 @@ (tr:open source) (tr:pipe-do (pipe:gpg `(--yes --encrypt --recipient ,usrname2)) - (pipe:gpg '(--yes))) + (pipe:gpg '(--yes --decrypt))) (tr:assert-identity source))) (append plain-files data-files)) diff --git a/tests/openpgp/seat.scm b/tests/openpgp/seat.scm index 22a5a67..31bd71a 100755 --- a/tests/openpgp/seat.scm +++ b/tests/openpgp/seat.scm @@ -26,6 +26,6 @@ (tr:do (tr:open source) (tr:gpg usrpass1 '(--yes -seat -r two at example.com --passphrase-fd "0")) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-weak-identity source))) plain-files) diff --git a/tests/openpgp/signencrypt-dsa.scm b/tests/openpgp/signencrypt-dsa.scm index c969d2f..00ce625 100755 --- a/tests/openpgp/signencrypt-dsa.scm +++ b/tests/openpgp/signencrypt-dsa.scm @@ -28,7 +28,7 @@ (tr:gpg usrpass1 `(--yes --passphrase-fd "0" -se -u ,dsa-usrname1 --recipient ,dsa-usrname2)) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity source))) (append plain-files data-files)) @@ -44,6 +44,6 @@ -u ,dsa-usrname1 --recipient ,dsa-usrname2 --digest-algo ,hash)) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity (car plain-files)))) algos) diff --git a/tests/openpgp/signencrypt.scm b/tests/openpgp/signencrypt.scm index 35ac89a..3021eb4 100755 --- a/tests/openpgp/signencrypt.scm +++ b/tests/openpgp/signencrypt.scm @@ -26,14 +26,14 @@ (tr:do (tr:open source) (tr:gpg usrpass1 `(--yes --passphrase-fd "0" -se --recipient ,usrname2)) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity source))) (append plain-files data-files)) (info "Checking bug 537: MDC problem with old style compressed packets.") (lettmp (tmp) (call-popen `(, at GPG --yes --passphrase-fd "0" - --output ,tmp ,(in-srcdir "bug537-test.data.asc")) + --output ,tmp --decrypt ,(in-srcdir "bug537-test.data.asc")) usrpass1) (if (not (string=? "4336AE2A528FAE091E73E59E325B588FEE795F9B" (cadar (gpg-hash-string `(--print-md SHA1 ,tmp) "")))) diff --git a/tests/openpgp/sigs-dsa.scm b/tests/openpgp/sigs-dsa.scm index f909078..d8494d5 100755 --- a/tests/openpgp/sigs-dsa.scm +++ b/tests/openpgp/sigs-dsa.scm @@ -26,7 +26,7 @@ (tr:do (tr:open source) (tr:gpg "" `(--yes --sign --user ,dsa-usrname1)) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity source))) (append plain-files data-files)) @@ -39,6 +39,6 @@ (tr:do (tr:open (car plain-files)) (tr:gpg "" `(--yes --sign --user ,dsa-usrname1 --digest-algo ,hash)) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity (car plain-files)))) algos) diff --git a/tests/openpgp/sigs.scm b/tests/openpgp/sigs.scm index 5a1efa7..c2298f9 100755 --- a/tests/openpgp/sigs.scm +++ b/tests/openpgp/sigs.scm @@ -26,7 +26,7 @@ (tr:do (tr:open source) (tr:gpg "" '(--yes --sign)) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity source))) (append plain-files data-files)) @@ -38,7 +38,7 @@ (tr:do (tr:open (car plain-files)) (tr:gpg "" `(--yes --sign --user ,usrname3 --digest-algo ,hash)) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity (car plain-files)))) (if (not (equal? "MD5" hash)) ;; Using the DSA sig key - only 160 bit or larger hashes @@ -46,6 +46,6 @@ (tr:open (car plain-files)) (tr:gpg usrpass1 `(--yes --sign --passphrase-fd "0" --digest-algo ,hash)) - (tr:gpg "" '(--yes)) + (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity (car plain-files))))) (force all-hash-algos)) commit 1b28d9dbe0260b2a4645c4b5caae11d9f375c942 Author: Justus Winter Date: Tue Apr 11 10:46:09 2017 +0200 tests: Make tests more robust. * tests/openpgp/defs.scm (have-opt-always-trust): Execute in empty ephemeral home directory. This prevents gpg from picking up the configuration from the current gnupghome (if any). * tests/migrations/common.scm (untar-armored): Likewise. Signed-off-by: Justus Winter diff --git a/tests/migrations/common.scm b/tests/migrations/common.scm index fa8f129..cba6590 100644 --- a/tests/migrations/common.scm +++ b/tests/migrations/common.scm @@ -39,10 +39,11 @@ (define GPGTAR (path-join (getenv "objdir") "tools" (qualify "gpgtar"))) (define (untar-armored source-name) - (pipe:do - (pipe:open source-name (logior O_RDONLY O_BINARY)) - (pipe:spawn `(, at GPG --dearmor)) - (pipe:spawn `(,GPGTAR --extract --directory=. -)))) + (with-ephemeral-home-directory (lambda ()) + (pipe:do + (pipe:open source-name (logior O_RDONLY O_BINARY)) + (pipe:spawn `(, at GPG --dearmor)) + (pipe:spawn `(,GPGTAR --extract --directory=. -))))) (define (run-test message src-tarball test) (catch (skip "gpgtar not built") diff --git a/tests/openpgp/defs.scm b/tests/openpgp/defs.scm index cb22de7..c4b321c 100644 --- a/tests/openpgp/defs.scm +++ b/tests/openpgp/defs.scm @@ -201,7 +201,8 @@ (define have-opt-always-trust (catch #f - (call-check `(,(tool 'gpg) --gpgconf-test --always-trust)) + (with-ephemeral-home-directory (lambda ()) + (call-check `(,(tool 'gpg) --gpgconf-test --always-trust))) #t)) (define GPG `(,(tool 'gpg) --no-permission-warning commit ccd2187212c12b84c86a10fd4417a16536243179 Author: Justus Winter Date: Tue Apr 11 10:43:52 2017 +0200 tests: Move common functionality. * tests/openpgp/defs.scm (with-home-directory, with-ephemeral-home-directory): Move... * tests/gpgscm/gnupg.scm: ... to this new file. * tests/gpgscm/main.c (main): Load the new file. Signed-off-by: Justus Winter diff --git a/tests/gpgscm/gnupg.scm b/tests/gpgscm/gnupg.scm new file mode 100644 index 0000000..5fcf9fd --- /dev/null +++ b/tests/gpgscm/gnupg.scm @@ -0,0 +1,44 @@ +;; Common definitions for executing gpg and related tools. +;; +;; Copyright (C) 2016, 2017 g10 Code GmbH +;; +;; This file is part of GnuPG. +;; +;; GnuPG is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 3 of the License, or +;; (at your option) any later version. +;; +;; GnuPG is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. +;; +;; You should have received a copy of the GNU General Public License +;; along with this program; if not, see . + +;; Evaluate a sequence of expressions with the given home directory. +(define-macro (with-home-directory gnupghome . expressions) + (let ((original-home-directory (gensym))) + `(let ((,original-home-directory (getenv "GNUPGHOME"))) + (dynamic-wind + (lambda () (setenv "GNUPGHOME" ,gnupghome #t)) + (lambda () , at expressions) + (lambda () (setenv "GNUPGHOME" ,original-home-directory #t)))))) + +;; Evaluate a sequence of expressions with an ephemeral home +;; directory. +(define-macro (with-ephemeral-home-directory setup-fn . expressions) + (let ((original-home-directory (gensym)) + (ephemeral-home-directory (gensym)) + (setup (gensym))) + `(let ((,original-home-directory (getenv "GNUPGHOME")) + (,ephemeral-home-directory (mkdtemp)) + (,setup (delay (,setup-fn)))) + (finally (unlink-recursively ,ephemeral-home-directory) + (dynamic-wind + (lambda () + (setenv "GNUPGHOME" ,ephemeral-home-directory #t) + (with-working-directory ,ephemeral-home-directory (force ,setup))) + (lambda () , at expressions) + (lambda () (setenv "GNUPGHOME" ,original-home-directory #t))))))) diff --git a/tests/gpgscm/main.c b/tests/gpgscm/main.c index 79072a5..5e04d97 100644 --- a/tests/gpgscm/main.c +++ b/tests/gpgscm/main.c @@ -314,6 +314,8 @@ main (int argc, char **argv) err = load (sc, "repl.scm", 0, 1); if (! err) err = load (sc, "tests.scm", 0, 1); + if (! err) + err = load (sc, "gnupg.scm", 0, 1); if (err) { fprintf (stderr, "Error initializing gpgscm: %s.\n", diff --git a/tests/openpgp/defs.scm b/tests/openpgp/defs.scm index 29eb775..cb22de7 100644 --- a/tests/openpgp/defs.scm +++ b/tests/openpgp/defs.scm @@ -280,32 +280,6 @@ ;; GnuPG helper. ;; -;; Evaluate a sequence of expressions with the given home directory. -(define-macro (with-home-directory gnupghome . expressions) - (let ((original-home-directory (gensym))) - `(let ((,original-home-directory (getenv "GNUPGHOME"))) - (dynamic-wind - (lambda () (setenv "GNUPGHOME" ,gnupghome #t)) - (lambda () , at expressions) - (lambda () (setenv "GNUPGHOME" ,original-home-directory #t)))))) - -;; Evaluate a sequence of expressions with an ephemeral home -;; directory. -(define-macro (with-ephemeral-home-directory setup-fn . expressions) - (let ((original-home-directory (gensym)) - (ephemeral-home-directory (gensym)) - (setup (gensym))) - `(let ((,original-home-directory (getenv "GNUPGHOME")) - (,ephemeral-home-directory (mkdtemp)) - (,setup (delay (,setup-fn)))) - (finally (unlink-recursively ,ephemeral-home-directory) - (dynamic-wind - (lambda () - (setenv "GNUPGHOME" ,ephemeral-home-directory #t) - (with-working-directory ,ephemeral-home-directory (force ,setup))) - (lambda () , at expressions) - (lambda () (setenv "GNUPGHOME" ,original-home-directory #t))))))) - ;; Call GPG to obtain the hash sums. Either specify an input file in ;; ARGS, or an string in INPUT. Returns a list of ( ;; "") lists. ----------------------------------------------------------------------- Summary of changes: tests/gpgscm/gnupg.scm | 44 +++++++++++++++++++++++++++++++++++++ tests/gpgscm/main.c | 2 ++ tests/migrations/common.scm | 9 ++++---- tests/openpgp/armdetach.scm | 2 +- tests/openpgp/armdetachm.scm | 2 +- tests/openpgp/armencrypt.scm | 2 +- tests/openpgp/armencryptp.scm | 2 +- tests/openpgp/armor.scm | 2 +- tests/openpgp/armsignencrypt.scm | 2 +- tests/openpgp/armsigs.scm | 2 +- tests/openpgp/clearsig.scm | 2 +- tests/openpgp/compression.scm | 2 +- tests/openpgp/conventional-mdc.scm | 4 ++-- tests/openpgp/conventional.scm | 4 ++-- tests/openpgp/decrypt-dsa.scm | 2 +- tests/openpgp/decrypt.scm | 2 +- tests/openpgp/defs.scm | 29 ++---------------------- tests/openpgp/detach.scm | 2 +- tests/openpgp/detachm.scm | 2 +- tests/openpgp/ecc.scm | 9 ++++---- tests/openpgp/encrypt-dsa.scm | 4 ++-- tests/openpgp/encrypt-multifile.scm | 2 +- tests/openpgp/encrypt.scm | 6 ++--- tests/openpgp/encryptp.scm | 2 +- tests/openpgp/seat.scm | 2 +- tests/openpgp/signencrypt-dsa.scm | 4 ++-- tests/openpgp/signencrypt.scm | 4 ++-- tests/openpgp/sigs-dsa.scm | 4 ++-- tests/openpgp/sigs.scm | 6 ++--- 29 files changed, 91 insertions(+), 70 deletions(-) create mode 100644 tests/gpgscm/gnupg.scm hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 11 11:52:05 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Tue, 11 Apr 2017 11:52:05 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-51-g00be2a9 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 00be2a92625e832e8dd621f2a8f72b124c6d50ca (commit) from cde626e7f7349a73d58ec3236ab3b43dec852bb5 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 00be2a92625e832e8dd621f2a8f72b124c6d50ca Author: Justus Winter Date: Tue Apr 11 11:50:54 2017 +0200 tests: Fix distcheck. * tests/gpgscm/Makefile.am (EXTRA_DIST): Add 'gnupg.scm'. Fixes-commit: ccd2187212c12b84c86a10fd4417a16536243179 Signed-off-by: Justus Winter diff --git a/tests/gpgscm/Makefile.am b/tests/gpgscm/Makefile.am index 15fc883..dc999fb 100644 --- a/tests/gpgscm/Makefile.am +++ b/tests/gpgscm/Makefile.am @@ -26,6 +26,7 @@ EXTRA_DIST = \ repl.scm \ t-child.scm \ tests.scm \ + gnupg.scm \ time.scm AM_CPPFLAGS = -I$(top_srcdir)/common ----------------------------------------------------------------------- Summary of changes: tests/gpgscm/Makefile.am | 1 + 1 file changed, 1 insertion(+) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 11 12:26:37 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Tue, 11 Apr 2017 12:26:37 +0200 Subject: [git] GPGME - branch, master, updated. gpgme-1.9.0-26-g979d48e Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG Made Easy". The branch, master has been updated via 979d48e823357af9999a2adb34d75adaade8dec2 (commit) from a827382cafe7f1425455dcc8bf5ef049172eb493 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 979d48e823357af9999a2adb34d75adaade8dec2 Author: Justus Winter Date: Tue Apr 11 12:07:59 2017 +0200 python: Skip TOFU test if not supported by GnuPG. * lang/python/tests/support.py (have_tofu_support): New function. * lang/python/tests/t-quick-key-manipulation.py: Skip TOFU test if not supported by GnuPG. Signed-off-by: Justus Winter diff --git a/lang/python/tests/support.py b/lang/python/tests/support.py index fabd818..efccf31 100644 --- a/lang/python/tests/support.py +++ b/lang/python/tests/support.py @@ -35,6 +35,12 @@ def assert_gpg_version(version=(2, 1, 0)): c.engine_info.version, '.'.join(map(str, version)))) sys.exit(77) +def have_tofu_support(ctx, some_uid): + keys = list(ctx.keylist(some_uid, + mode=(gpg.constants.keylist.mode.LOCAL + |gpg.constants.keylist.mode.WITH_TOFU))) + return len(keys) > 0 + # Skip the Python tests for GnuPG < 2.1.12. Prior versions do not # understand the command line flags that we assume exist. C.f. issue # 3008. diff --git a/lang/python/tests/t-quick-key-manipulation.py b/lang/python/tests/t-quick-key-manipulation.py index 0f47006..37e05b3 100755 --- a/lang/python/tests/t-quick-key-manipulation.py +++ b/lang/python/tests/t-quick-key-manipulation.py @@ -22,6 +22,7 @@ del absolute_import, print_function, unicode_literals import os import gpg +import sys import support support.assert_gpg_version((2, 1, 14)) @@ -97,6 +98,10 @@ with support.EphemeralContext() as ctx: with open(os.path.join(ctx.home_dir, "gpg.conf"), "a") as handle: handle.write("trust-model tofu+pgp\n") + if not support.have_tofu_support(ctx, bravo): + print("GnuPG does not support TOFU, skipping TOFU tests.") + sys.exit() + for name, policy in [(name, getattr(gpg.constants.tofu.policy, name)) for name in filter(lambda x: not x.startswith('__'), dir(gpg.constants.tofu.policy))]: ----------------------------------------------------------------------- Summary of changes: lang/python/tests/support.py | 6 ++++++ lang/python/tests/t-quick-key-manipulation.py | 5 +++++ 2 files changed, 11 insertions(+) hooks/post-receive -- GnuPG Made Easy http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 11 13:00:21 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Tue, 11 Apr 2017 13:00:21 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-52-gc3cc955 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via c3cc9551dcc89cc25c0a0ec16d8eb12c1c221638 (commit) from 00be2a92625e832e8dd621f2a8f72b124c6d50ca (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit c3cc9551dcc89cc25c0a0ec16d8eb12c1c221638 Author: NIIBE Yutaka Date: Tue Apr 11 19:59:07 2017 +0900 g13: Include sys/sysmacros.h if available. * configure.ac: Add test for sys/sysmacros.h. * g13/sh-dmcrypt.c: Include sys/sysmacros.h. Signed-off-by: NIIBE Yutaka diff --git a/configure.ac b/configure.ac index f58708c..4c90d6c 100644 --- a/configure.ac +++ b/configure.ac @@ -1278,7 +1278,7 @@ AC_HEADER_STDC AC_CHECK_HEADERS([string.h unistd.h langinfo.h termio.h locale.h getopt.h \ pty.h utmp.h pwd.h inttypes.h signal.h sys/select.h \ stdint.h signal.h util.h libutil.h termios.h \ - ucred.h]) + ucred.h sys/sysmacros.h]) AC_HEADER_TIME diff --git a/g13/sh-dmcrypt.c b/g13/sh-dmcrypt.c index f7ec797..c5489c9 100644 --- a/g13/sh-dmcrypt.c +++ b/g13/sh-dmcrypt.c @@ -25,6 +25,9 @@ #include #include #include +#ifdef HAVE_SYS_SYSMACROS_H +# include +#endif #ifdef HAVE_STAT # include #endif ----------------------------------------------------------------------- Summary of changes: configure.ac | 2 +- g13/sh-dmcrypt.c | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed Apr 12 02:50:55 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Wed, 12 Apr 2017 02:50:55 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-56-g1538523 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 1538523156be568046f632d1775eae30ea8bd556 (commit) via c64763c3a74ecc61c2f6c5edb679a2a3879d79e7 (commit) via 64904ce627b6b0661acf15b5b70103c4842bb0f3 (commit) via 05218829589f6d4b09933fa19f568c2019367d5c (commit) from c3cc9551dcc89cc25c0a0ec16d8eb12c1c221638 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 1538523156be568046f632d1775eae30ea8bd556 Author: NIIBE Yutaka Date: Wed Apr 12 09:48:27 2017 +0900 dirmngr: Fix dns-stuff.c. * dirmngr/dns-stuff.c: Don't include arpa/nameser.h. -- It is not needed at all. T_CERT may be defined by different type of ns_type. Signed-off-by: NIIBE Yutaka diff --git a/dirmngr/dns-stuff.c b/dirmngr/dns-stuff.c index 728f662..8b25e02 100644 --- a/dirmngr/dns-stuff.c +++ b/dirmngr/dns-stuff.c @@ -40,7 +40,6 @@ #else # if HAVE_SYSTEM_RESOLVER # include -# include # include # endif # include commit c64763c3a74ecc61c2f6c5edb679a2a3879d79e7 Author: NIIBE Yutaka Date: Wed Apr 12 09:24:48 2017 +0900 agent: Simplify stream_read_cstring. * agent/command-ssh.c (stream_read_cstring): Just call stream_read_string. Signed-off-by: NIIBE Yutaka diff --git a/agent/command-ssh.c b/agent/command-ssh.c index b15d8b2..eeb1498 100644 --- a/agent/command-ssh.c +++ b/agent/command-ssh.c @@ -674,13 +674,7 @@ stream_read_blob (estream_t stream, unsigned int secure, gcry_mpi_t *r_mpi) static gpg_error_t stream_read_cstring (estream_t stream, char **string) { - gpg_error_t err; - unsigned char *buffer; - - err = stream_read_string (stream, 0, &buffer, NULL); - if (!err) - *string = (char *)buffer; - return err; + return stream_read_string (stream, 0, (unsigned char **)string, NULL); } commit 64904ce627b6b0661acf15b5b70103c4842bb0f3 Author: NIIBE Yutaka Date: Wed Apr 12 09:11:20 2017 +0900 dirmngr: Use a function to increment network short. * dirmngr/dns.c (plus1_ns): New. (dns_p_push): Use it. -- On OpenBSD, htons and ntohs are expanded to GCC's statement expressions where local variable is allowed. Consecutive use of htons and ntohs causes problem of variable name. Signed-off-by: NIIBE Yutaka diff --git a/dirmngr/dns.c b/dirmngr/dns.c index 869e7ed..ae3c3b0 100644 --- a/dirmngr/dns.c +++ b/dirmngr/dns.c @@ -1968,6 +1968,15 @@ void dns_p_dictadd(struct dns_packet *P, unsigned short dn) { } /* dns_p_dictadd() */ +static inline uint16_t +plus1_ns (uint16_t count_net) +{ + uint16_t count = ntohs (count); + + count++; + return htons (count); +} + int dns_p_push(struct dns_packet *P, enum dns_section section, const void *dn, size_t dnlen, enum dns_type type, enum dns_class class, unsigned ttl, const void *any) { size_t end = P->end; int error; @@ -2009,7 +2018,7 @@ update: if (!P->memo.qd.base && (error = dns_p_study(P))) goto error; - dns_header(P)->qdcount = htons(ntohs(dns_header(P)->qdcount) + 1); + dns_header(P)->qdcount = plus1_ns (dns_header(P)->qdcount); P->memo.qd.end = P->end; P->memo.an.base = P->end; @@ -2027,7 +2036,7 @@ update: if (!P->memo.an.base && (error = dns_p_study(P))) goto error; - dns_header(P)->ancount = htons(ntohs(dns_header(P)->ancount) + 1); + dns_header(P)->ancount = plus1_ns (dns_header(P)->ancount); P->memo.an.end = P->end; P->memo.ns.base = P->end; @@ -2043,7 +2052,7 @@ update: if (!P->memo.ns.base && (error = dns_p_study(P))) goto error; - dns_header(P)->nscount = htons(ntohs(dns_header(P)->nscount) + 1); + dns_header(P)->nscount = plus1_ns (dns_header(P)->nscount); P->memo.ns.end = P->end; P->memo.ar.base = P->end; @@ -2054,7 +2063,7 @@ update: if (!P->memo.ar.base && (error = dns_p_study(P))) goto error; - dns_header(P)->arcount = htons(ntohs(dns_header(P)->arcount) + 1); + dns_header(P)->arcount = plus1_ns (dns_header(P)->arcount); P->memo.ar.end = P->end; commit 05218829589f6d4b09933fa19f568c2019367d5c Author: NIIBE Yutaka Date: Wed Apr 12 08:47:23 2017 +0900 g10: Minor clean up for export.c. * g10/export.c (export_ssh_key): Check IDENTIFIER for error. Release base64 thing on error of get_membuf. -- Compiler (older) may misunderstand the variable IDENTIFIER is not initialized, while good one can do better analysys on the value for ERR (and thus, IDENTIFIER). On the error of get_membuf, still, b64enc_finish should be called, even if it lost the ERR value. Signed-off-by: NIIBE Yutaka diff --git a/g10/export.c b/g10/export.c index 31caa55..9b203e3 100644 --- a/g10/export.c +++ b/g10/export.c @@ -2125,7 +2125,7 @@ export_ssh_key (ctrl_t ctrl, const char *userid) u32 curtime = make_timestamp (); kbnode_t latest_key, node; PKT_public_key *pk; - const char *identifier; + const char *identifier = NULL; membuf_t mb; estream_t fp = NULL; struct b64state b64_state; @@ -2321,8 +2321,6 @@ export_ssh_key (ctrl_t ctrl, const char *userid) identifier = "ecdsa-sha2-nistp384"; else if (!strcmp (curve, "nistp521")) identifier = "ecdsa-sha2-nistp521"; - else - identifier = NULL; if (!identifier) err = gpg_error (GPG_ERR_UNKNOWN_CURVE); @@ -2353,7 +2351,7 @@ export_ssh_key (ctrl_t ctrl, const char *userid) break; } - if (err) + if (!identifier) goto leave; if (opt.outfile && *opt.outfile && strcmp (opt.outfile, "-")) @@ -2369,22 +2367,21 @@ export_ssh_key (ctrl_t ctrl, const char *userid) es_fprintf (fp, "%s ", identifier); err = b64enc_start_es (&b64_state, fp, ""); - if (err) - goto leave; - { - void *blob; - size_t bloblen; + if (!err) + { + void *blob; + size_t bloblen; - blob = get_membuf (&mb, &bloblen); - if (!blob) - err = gpg_error_from_syserror (); - else - err = b64enc_write (&b64_state, blob, bloblen); - xfree (blob); - if (err) - goto leave; - } - err = b64enc_finish (&b64_state); + blob = get_membuf (&mb, &bloblen); + if (blob) + { + err = b64enc_write (&b64_state, blob, bloblen); + xfree (blob); + if (err) + goto leave; + } + err = b64enc_finish (&b64_state); + } if (err) goto leave; es_fprintf (fp, " openpgp:0x%08lX\n", (ulong)keyid_from_pk (pk, NULL)); ----------------------------------------------------------------------- Summary of changes: agent/command-ssh.c | 8 +------- dirmngr/dns-stuff.c | 1 - dirmngr/dns.c | 17 +++++++++++++---- g10/export.c | 35 ++++++++++++++++------------------- 4 files changed, 30 insertions(+), 31 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed Apr 12 03:22:22 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Wed, 12 Apr 2017 03:22:22 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-58-gbd0c949 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via bd0c94939faf8ccfc117fb595e9bc0105edcafa4 (commit) via 0b904ddea8bddaa2fd7893a9dce1df1cb5e36b00 (commit) from 1538523156be568046f632d1775eae30ea8bd556 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit bd0c94939faf8ccfc117fb595e9bc0105edcafa4 Author: NIIBE Yutaka Date: Wed Apr 12 10:19:27 2017 +0900 dirmngr: Fix dns-stuff.c in another way. * dirmngr/dns-stuff.c (T_CERT): Define our own. -- T_CERT may be defined by another enum type even if the value is same. Signed-off-by: NIIBE Yutaka diff --git a/dirmngr/dns-stuff.c b/dirmngr/dns-stuff.c index 728f662..cb0456a 100644 --- a/dirmngr/dns-stuff.c +++ b/dirmngr/dns-stuff.c @@ -95,9 +95,8 @@ #ifndef T_SRV #define T_SRV 33 #endif -#ifndef T_CERT -# define T_CERT 37 -#endif +#undef T_CERT +#define T_CERT 37 /* The standard SOCKS and TOR ports. */ #define SOCKS_PORT 1080 commit 0b904ddea8bddaa2fd7893a9dce1df1cb5e36b00 Author: NIIBE Yutaka Date: Wed Apr 12 10:00:37 2017 +0900 Revert "dirmngr: Fix dns-stuff.c." This reverts commit 1538523156be568046f632d1775eae30ea8bd556. diff --git a/dirmngr/dns-stuff.c b/dirmngr/dns-stuff.c index 8b25e02..728f662 100644 --- a/dirmngr/dns-stuff.c +++ b/dirmngr/dns-stuff.c @@ -40,6 +40,7 @@ #else # if HAVE_SYSTEM_RESOLVER # include +# include # include # endif # include ----------------------------------------------------------------------- Summary of changes: dirmngr/dns-stuff.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed Apr 12 04:22:28 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Wed, 12 Apr 2017 04:22:28 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-59-gf053f99 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via f053f99ed0b0c6de7b7c4a07cbd7f7d213ddf0db (commit) from bd0c94939faf8ccfc117fb595e9bc0105edcafa4 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit f053f99ed0b0c6de7b7c4a07cbd7f7d213ddf0db Author: NIIBE Yutaka Date: Wed Apr 12 11:21:08 2017 +0900 scd: Handle unexpected suspend/resume by CCID driver. * scd/ccid-driver.c (bulk_in): Handle unexpected failure. -- GnuPG-bug-id: 3083 Signed-off-by: NIIBE Yutaka diff --git a/scd/ccid-driver.c b/scd/ccid-driver.c index c10787b..fbbd157 100644 --- a/scd/ccid-driver.c +++ b/scd/ccid-driver.c @@ -1980,7 +1980,7 @@ bulk_in (ccid_driver_t handle, unsigned char *buffer, size_t length, goto retry; } - if (buffer[0] != expected_type) + if (buffer[0] != expected_type && buffer[0] != RDR_to_PC_SlotStatus) { DEBUGOUT_1 ("unexpected bulk-in msg type (%02x)\n", buffer[0]); abort_cmd (handle, seqno); @@ -2020,11 +2020,23 @@ bulk_in (ccid_driver_t handle, unsigned char *buffer, size_t length, switch ((buffer[7] & 0x03)) { case 0: /* no error */ break; - case 1: return CCID_DRIVER_ERR_CARD_INACTIVE; - case 2: return CCID_DRIVER_ERR_NO_CARD; + case 1: rc = CCID_DRIVER_ERR_CARD_INACTIVE; break; + case 2: rc = CCID_DRIVER_ERR_NO_CARD; break; case 3: /* RFU */ break; } - return 0; + + if (rc) + { + /* + * Communication failure by device side. + * Possibly, it was forcibly suspended and resumed. + */ + DEBUGOUT ("CCID: card inactive/removed\n"); + handle->powered_off = 1; + scd_kick_the_loop (); + } + + return rc; } ----------------------------------------------------------------------- Summary of changes: scd/ccid-driver.c | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed Apr 12 04:50:04 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Wed, 12 Apr 2017 04:50:04 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-60-g60d9a9e Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 60d9a9e6b4ae3af029596d14732c02f49203326d (commit) from f053f99ed0b0c6de7b7c4a07cbd7f7d213ddf0db (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 60d9a9e6b4ae3af029596d14732c02f49203326d Author: NIIBE Yutaka Date: Wed Apr 12 11:44:10 2017 +0900 dirmngr: Fix plus1_ns. * dirmngr/dns.c (plus1_ns): Fix the initial implementation. -- Fixes-commit: 64904ce627b6b0661acf15b5b70103c4842bb0f3 Signed-off-by: NIIBE Yutaka diff --git a/dirmngr/dns.c b/dirmngr/dns.c index ae3c3b0..39d3295 100644 --- a/dirmngr/dns.c +++ b/dirmngr/dns.c @@ -54,6 +54,9 @@ #endif #include #include +#ifdef TIME_WITH_SYS_TIME +#include /* gettimeofday(2) */ +#endif #else #include /* gettimeofday(2) */ #include /* FD_SETSIZE socklen_t */ @@ -1971,7 +1974,7 @@ void dns_p_dictadd(struct dns_packet *P, unsigned short dn) { static inline uint16_t plus1_ns (uint16_t count_net) { - uint16_t count = ntohs (count); + uint16_t count = ntohs (count_net); count++; return htons (count); ----------------------------------------------------------------------- Summary of changes: dirmngr/dns.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed Apr 12 05:06:46 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Wed, 12 Apr 2017 05:06:46 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-61-g7f9032d Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 7f9032d4a8ce53ce1a972bd3c1f8d20b3776756b (commit) from 60d9a9e6b4ae3af029596d14732c02f49203326d (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 7f9032d4a8ce53ce1a972bd3c1f8d20b3776756b Author: NIIBE Yutaka Date: Wed Apr 12 12:05:53 2017 +0900 gpgscm: Fix test program. * tests/gpgscm/t-child.c (main): Fix for setmode. Signed-off-by: NIIBE Yutaka diff --git a/tests/gpgscm/t-child.c b/tests/gpgscm/t-child.c index 547eb17..f4e3a04 100644 --- a/tests/gpgscm/t-child.c +++ b/tests/gpgscm/t-child.c @@ -33,9 +33,9 @@ main (int argc, char **argv) char buffer[4096]; memset (buffer, 'A', sizeof buffer); #if _WIN32 - if (! setmode (stdin, O_BINARY)) + if (! setmode (fileno (stdin), O_BINARY)) return 23; - if (! setmode (stdout, O_BINARY)) + if (! setmode (fileno (stdout), O_BINARY)) return 23; #endif ----------------------------------------------------------------------- Summary of changes: tests/gpgscm/t-child.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed Apr 12 07:51:06 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Wed, 12 Apr 2017 07:51:06 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-62-g7b4edf1 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 7b4edf14bb16fbe786e55b829a208960396ce8df (commit) from 7f9032d4a8ce53ce1a972bd3c1f8d20b3776756b (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 7b4edf14bb16fbe786e55b829a208960396ce8df Author: NIIBE Yutaka Date: Wed Apr 12 14:47:30 2017 +0900 common: Simplify format_text. * common/stringhelp.c (format_text): Don't allow IN_PLACE formatting. * common/stringhelp.h: Change the API with no IN_PLACE. * common/t-stringhelp.c (test_format_text): Follow the change. * g10/gpgcompose.c (show_help): Likewise. * g10/tofu.c (format_conflict_msg_part1, ask_about_binding) (show_statistics, show_warning): Likewise. Signed-off-by: NIIBE Yutaka diff --git a/common/stringhelp.c b/common/stringhelp.c index bea1466..509d327 100644 --- a/common/stringhelp.c +++ b/common/stringhelp.c @@ -1443,11 +1443,10 @@ compare_version_strings (const char *my_version, const char *req_version) /* Format a string so that it fits within about TARGET_COLS columns. - If IN_PLACE is 0, then TEXT is copied to a new buffer, which is - returned. Otherwise, TEXT is modified in place and returned. + TEXT_IN is copied to a new buffer, which is returned. Normally, target_cols will be 72 and max_cols is 80. */ char * -format_text (char *text, int in_place, int target_cols, int max_cols) +format_text (const char *text_in, int target_cols, int max_cols) { const int do_debug = 0; @@ -1459,9 +1458,9 @@ format_text (char *text, int in_place, int target_cols, int max_cols) char *last_space = NULL; int last_space_cols = 0; int copied_last_space = 0; + char *text; - if (! in_place) - text = xstrdup (text); + text = xstrdup (text_in); p = line = text; while (1) diff --git a/common/stringhelp.h b/common/stringhelp.h index 3852d0f..a643f35 100644 --- a/common/stringhelp.h +++ b/common/stringhelp.h @@ -155,7 +155,7 @@ int split_fields (char *string, char **array, int arraysize); int compare_version_strings (const char *my_version, const char *req_version); /* Format a string so that it fits within about TARGET_COLS columns. */ -char *format_text (char *text, int in_place, int target_cols, int max_cols); +char *format_text (const char *text, int target_cols, int max_cols); /*-- mapstrings.c --*/ diff --git a/common/t-stringhelp.c b/common/t-stringhelp.c index a105ad1..869ca56 100644 --- a/common/t-stringhelp.c +++ b/common/t-stringhelp.c @@ -885,7 +885,7 @@ test_format_text (void) { struct test *test = &tests[i]; char *result = - format_text (test->input, 0, test->target_cols, test->max_cols); + format_text (test->input, test->target_cols, test->max_cols); if (strcmp (result, test->expected) != 0) { printf ("%s: Test #%d failed.\nExpected: '%s'\nResult: '%s'\n", diff --git a/g10/gpgcompose.c b/g10/gpgcompose.c index d585502..071d6bf 100644 --- a/g10/gpgcompose.c +++ b/g10/gpgcompose.c @@ -305,7 +305,7 @@ show_help (struct option options[]) if (! option) space = 72; - formatted = format_text (tmp, 0, space, space + 4); + formatted = format_text (tmp, space, space + 4); if (tmp != help) xfree (tmp); diff --git a/g10/tofu.c b/g10/tofu.c index 9f83fa4..4e12905 100644 --- a/g10/tofu.c +++ b/g10/tofu.c @@ -1355,7 +1355,7 @@ format_conflict_msg_part1 (int policy, strlist_t conflict_set, es_fputc (0, fp); if (es_fclose_snatch (fp, (void **)&tmpstr, NULL)) log_fatal ("error snatching memory stream\n"); - text = format_text (tmpstr, 0, 72, 80); + text = format_text (tmpstr, 72, 80); es_free (tmpstr); return text; @@ -1913,7 +1913,7 @@ ask_about_binding (ctrl_t ctrl, /* TRANSLATORS: Please translate the text found in the source * file below. We don't directly internationalize that text so * that we can tweak it without breaking translations. */ - char *text = _("TOFU detected a binding conflict"); + const char *text = _("TOFU detected a binding conflict"); char *textbuf; if (!strcmp (text, "TOFU detected a binding conflict")) { @@ -1926,7 +1926,7 @@ ask_about_binding (ctrl_t ctrl, "attack! Before accepting this association, you should talk to or " "call the person to make sure this new key is legitimate."; } - textbuf = format_text (text, 0, 72, 80); + textbuf = format_text (text, 72, 80); es_fprintf (fp, "\n%s\n", textbuf); xfree (textbuf); } @@ -3190,7 +3190,7 @@ show_statistics (tofu_dbs_t dbs, es_fputc (0, fp); if (es_fclose_snatch (fp, (void **) &tmpmsg, NULL)) log_fatal ("error snatching memory stream\n"); - msg = format_text (tmpmsg, 0, 72, 80); + msg = format_text (tmpmsg, 72, 80); es_free (tmpmsg); /* Print a status line but suppress the trailing LF. @@ -3265,7 +3265,7 @@ show_warning (const char *fingerprint, strlist_t user_id_list) strlist_length (user_id_list)), set_policy_command); - text = format_text (tmpmsg, 0, 72, 80); + text = format_text (tmpmsg, 72, 80); xfree (tmpmsg); log_string (GPGRT_LOG_INFO, text); xfree (text); ----------------------------------------------------------------------- Summary of changes: common/stringhelp.c | 9 ++++----- common/stringhelp.h | 2 +- common/t-stringhelp.c | 2 +- g10/gpgcompose.c | 2 +- g10/tofu.c | 10 +++++----- 5 files changed, 12 insertions(+), 13 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed Apr 12 09:07:12 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Wed, 12 Apr 2017 09:07:12 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-64-gf52f6af Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via f52f6af834cc488d11612e349e4af023d69a45f4 (commit) via 7ae1857c90ab43ad9e31f0fb6dbd37f25cc37278 (commit) from 7b4edf14bb16fbe786e55b829a208960396ce8df (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit f52f6af834cc488d11612e349e4af023d69a45f4 Author: NIIBE Yutaka Date: Wed Apr 12 16:01:16 2017 +0900 tools: Fix condition for gpg-connect-agent. * tools/gpg-connect-agent.c (start_agent): Add paren. -- The intention is comparing the error code depending opt.use_dirmngr. Considering C Operator Precedence, we should have paren here. Signed-off-by: NIIBE Yutaka diff --git a/tools/gpg-connect-agent.c b/tools/gpg-connect-agent.c index ef71d27..f20d331 100644 --- a/tools/gpg-connect-agent.c +++ b/tools/gpg-connect-agent.c @@ -2237,7 +2237,7 @@ start_agent (void) { if (!opt.autostart && (gpg_err_code (err) - == opt.use_dirmngr? GPG_ERR_NO_DIRMNGR : GPG_ERR_NO_AGENT)) + == (opt.use_dirmngr? GPG_ERR_NO_DIRMNGR : GPG_ERR_NO_AGENT))) { /* In the no-autostart case we don't make gpg-connect-agent fail on a missing server. */ commit 7ae1857c90ab43ad9e31f0fb6dbd37f25cc37278 Author: NIIBE Yutaka Date: Wed Apr 12 15:58:11 2017 +0900 dirmngr: Fix possible null reference. * dirmngr/dns.c (dns_error_t dns_trace_fput): Check NULL. Signed-off-by: NIIBE Yutaka diff --git a/dirmngr/dns.c b/dirmngr/dns.c index 39d3295..9bba329 100644 --- a/dirmngr/dns.c +++ b/dirmngr/dns.c @@ -4606,8 +4606,9 @@ dns_error_t dns_trace_fput(const struct dns_trace_event *te, const void *data, s if (fwrite(&tmp, 1, headsize, fp) < headsize) return errno; - if (fwrite(data, 1, datasize, fp) < datasize) - return errno; + if (data) + if (fwrite(data, 1, datasize, fp) < datasize) + return errno; if (fflush(fp)) return errno; ----------------------------------------------------------------------- Summary of changes: dirmngr/dns.c | 5 +++-- tools/gpg-connect-agent.c | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed Apr 12 13:51:54 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Wed, 12 Apr 2017 13:51:54 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-65-g6755b3b Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 6755b3b505f79a5a233b18e85f57a0d3a455e664 (commit) from f52f6af834cc488d11612e349e4af023d69a45f4 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 6755b3b505f79a5a233b18e85f57a0d3a455e664 Author: NIIBE Yutaka Date: Wed Apr 12 20:50:50 2017 +0900 dirmngr: Fix type of sock. * dirmngr/http.c (send_request): Use assuan_fd_t for SOCK. Signed-off-by: NIIBE Yutaka diff --git a/dirmngr/http.c b/dirmngr/http.c index 04a30d6..356e2bc 100644 --- a/dirmngr/http.c +++ b/dirmngr/http.c @@ -1643,7 +1643,7 @@ send_request (http_t hd, const char *httphost, const char *auth, const char *http_proxy = NULL; char *proxy_authstr = NULL; char *authstr = NULL; - int sock; + assuan_fd_t sock; if (hd->uri->use_tls && !hd->session) { ----------------------------------------------------------------------- Summary of changes: dirmngr/http.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Thu Apr 13 02:53:37 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Thu, 13 Apr 2017 02:53:37 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-66-g5af104b Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 5af104b541ed430a54eb0163a1d29e1d043f9377 (commit) from 6755b3b505f79a5a233b18e85f57a0d3a455e664 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 5af104b541ed430a54eb0163a1d29e1d043f9377 Author: NIIBE Yutaka Date: Thu Apr 13 09:52:19 2017 +0900 dirmngr: More fix for Windows. * dirmngr/dns.c (socket_fd_t, STDCALL): New. (dns_te_initname): Use. Signed-off-by: NIIBE Yutaka diff --git a/dirmngr/dns.c b/dirmngr/dns.c index 9bba329..7a6202f 100644 --- a/dirmngr/dns.c +++ b/dirmngr/dns.c @@ -54,10 +54,14 @@ #endif #include #include +typedef SOCKET socket_fd_t; +#define STDCALL __stdcall #ifdef TIME_WITH_SYS_TIME #include /* gettimeofday(2) */ #endif #else +typedef int socket_fd_t; +#define STDCALL #include /* gettimeofday(2) */ #include /* FD_SETSIZE socklen_t */ #include /* FD_ZERO FD_SET fd_set select(2) */ @@ -4448,7 +4452,7 @@ struct dns_trace { } cnames; }; -static void dns_te_initname(struct sockaddr_storage *ss, int fd, int (*f)(int, struct sockaddr *, socklen_t *)) { +static void dns_te_initname(struct sockaddr_storage *ss, int fd, int (* STDCALL f)(socket_fd_t, struct sockaddr *, socklen_t *)) { socklen_t n = sizeof *ss; if (0 != f(fd, (struct sockaddr *)ss, &n)) ----------------------------------------------------------------------- Summary of changes: dirmngr/dns.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Thu Apr 13 06:00:07 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Thu, 13 Apr 2017 06:00:07 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-67-g7425827 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 74258278efacd7069e8c1df8ff6fc3f4675d713e (commit) from 5af104b541ed430a54eb0163a1d29e1d043f9377 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 74258278efacd7069e8c1df8ff6fc3f4675d713e Author: NIIBE Yutaka Date: Thu Apr 13 12:54:52 2017 +0900 common, g10: Fix enumeration types. * common/openpgpdefs.h (CIPHER_ALGO_PRIVATE10, PUBKEY_ALGO_PRIVATE10) (DIGEST_ALGO_PRIVATE10, COMPRESS_ALGO_PRIVATE10): New. * g10/misc.c (map_pk_gcry_to_openpgp): Add type conversion. (map_cipher_openpgp_to_gcry, openpgp_cipher_algo_name) (openpgp_pk_test_algo2, map_md_openpgp_to_gcry) (pubkey_get_npkey): Add default handling. -- Compilers may emit code assuming the maximum value of enum type. According to OpenPGP specification, there are cases for private uses. Signed-off-by: NIIBE Yutaka diff --git a/common/openpgpdefs.h b/common/openpgpdefs.h index 3d5d306..85a4251 100644 --- a/common/openpgpdefs.h +++ b/common/openpgpdefs.h @@ -136,7 +136,8 @@ typedef enum CIPHER_ALGO_TWOFISH = 10, /* 256 bit */ CIPHER_ALGO_CAMELLIA128 = 11, CIPHER_ALGO_CAMELLIA192 = 12, - CIPHER_ALGO_CAMELLIA256 = 13 + CIPHER_ALGO_CAMELLIA256 = 13, + CIPHER_ALGO_PRIVATE10 = 110 } cipher_algo_t; @@ -152,7 +153,8 @@ typedef enum PUBKEY_ALGO_ECDSA = 19, /* RFC-6637 */ PUBKEY_ALGO_ELGAMAL = 20, /* Elgamal encrypt+sign (legacy). */ /* 21 reserved by OpenPGP. */ - PUBKEY_ALGO_EDDSA = 22 /* EdDSA (not yet assigned). */ + PUBKEY_ALGO_EDDSA = 22, /* EdDSA (not yet assigned). */ + PUBKEY_ALGO_PRIVATE10 = 110 } pubkey_algo_t; @@ -166,7 +168,8 @@ typedef enum DIGEST_ALGO_SHA256 = 8, DIGEST_ALGO_SHA384 = 9, DIGEST_ALGO_SHA512 = 10, - DIGEST_ALGO_SHA224 = 11 + DIGEST_ALGO_SHA224 = 11, + DIGEST_ALGO_PRIVATE10 = 110 } digest_algo_t; @@ -176,7 +179,8 @@ typedef enum COMPRESS_ALGO_NONE = 0, COMPRESS_ALGO_ZIP = 1, COMPRESS_ALGO_ZLIB = 2, - COMPRESS_ALGO_BZIP2 = 3 + COMPRESS_ALGO_BZIP2 = 3, + COMPRESS_ALGO_PRIVATE10 = 110 } compress_algo_t; diff --git a/g10/misc.c b/g10/misc.c index 0ecdb04..abae6c9 100644 --- a/g10/misc.c +++ b/g10/misc.c @@ -473,8 +473,8 @@ map_cipher_openpgp_to_gcry (cipher_algo_t algo) #else case CIPHER_ALGO_CAMELLIA256: return 0; #endif + default: return 0; } - return 0; } /* The inverse function of above. */ @@ -509,7 +509,7 @@ map_pk_gcry_to_openpgp (enum gcry_pk_algos algo) { case GCRY_PK_ECDSA: return PUBKEY_ALGO_ECDSA; case GCRY_PK_ECDH: return PUBKEY_ALGO_ECDH; - default: return algo < 110 ? algo : 0; + default: return algo < 110 ? (pubkey_algo_t)algo : 0; } } @@ -565,7 +565,6 @@ openpgp_cipher_algo_name (cipher_algo_t algo) { switch (algo) { - case CIPHER_ALGO_NONE: break; case CIPHER_ALGO_IDEA: return "IDEA"; case CIPHER_ALGO_3DES: return "3DES"; case CIPHER_ALGO_CAST5: return "CAST5"; @@ -577,8 +576,9 @@ openpgp_cipher_algo_name (cipher_algo_t algo) case CIPHER_ALGO_CAMELLIA128: return "CAMELLIA128"; case CIPHER_ALGO_CAMELLIA192: return "CAMELLIA192"; case CIPHER_ALGO_CAMELLIA256: return "CAMELLIA256"; + case CIPHER_ALGO_NONE: + default: return "?"; } - return "?"; } @@ -636,6 +636,9 @@ openpgp_pk_test_algo2 (pubkey_algo_t algo, unsigned int use) if (RFC2440) ga = GCRY_PK_ELG; break; + + default: + break; } if (!ga) return gpg_error (GPG_ERR_PUBKEY_ALGO); @@ -699,8 +702,8 @@ openpgp_pk_algo_name (pubkey_algo_t algo) case PUBKEY_ALGO_ECDH: return "ECDH"; case PUBKEY_ALGO_ECDSA: return "ECDSA"; case PUBKEY_ALGO_EDDSA: return "EDDSA"; + default: return "?"; } - return "?"; } @@ -832,8 +835,8 @@ map_md_openpgp_to_gcry (digest_algo_t algo) #else case DIGEST_ALGO_SHA512: return 0; #endif + default: return 0; } - return 0; } @@ -1652,8 +1655,8 @@ pubkey_get_npkey (pubkey_algo_t algo) case PUBKEY_ALGO_ECDSA: return 2; case PUBKEY_ALGO_ELGAMAL: return 3; case PUBKEY_ALGO_EDDSA: return 2; + default: return 0; } - return 0; } @@ -1672,8 +1675,8 @@ pubkey_get_nskey (pubkey_algo_t algo) case PUBKEY_ALGO_ECDSA: return 3; case PUBKEY_ALGO_ELGAMAL: return 4; case PUBKEY_ALGO_EDDSA: return 3; + default: return 0; } - return 0; } /* Temporary helper. */ @@ -1691,8 +1694,8 @@ pubkey_get_nsig (pubkey_algo_t algo) case PUBKEY_ALGO_ECDSA: return 2; case PUBKEY_ALGO_ELGAMAL: return 2; case PUBKEY_ALGO_EDDSA: return 2; + default: return 0; } - return 0; } @@ -1711,8 +1714,8 @@ pubkey_get_nenc (pubkey_algo_t algo) case PUBKEY_ALGO_ECDSA: return 0; case PUBKEY_ALGO_ELGAMAL: return 2; case PUBKEY_ALGO_EDDSA: return 0; + default: return 0; } - return 0; } ----------------------------------------------------------------------- Summary of changes: common/openpgpdefs.h | 12 ++++++++---- g10/misc.c | 23 +++++++++++++---------- 2 files changed, 21 insertions(+), 14 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Thu Apr 13 07:37:54 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Thu, 13 Apr 2017 07:37:54 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-69-g892b33b Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 892b33bb2c57785927ea6652091191da2deed464 (commit) via 37018adce6ea4920b34d59afcfe4f55f716b3086 (commit) from 74258278efacd7069e8c1df8ff6fc3f4675d713e (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 892b33bb2c57785927ea6652091191da2deed464 Author: NIIBE Yutaka Date: Thu Apr 13 14:33:33 2017 +0900 dirmngr: Fix alignment of ADDR. * dirmngr/dns-stuff.h (dns_addrinfo_s): Use struct sockaddr_storage for size and alignment. * dirmngr/dns-stuff.c (resolve_name_libdns): Follow the change. (resolve_dns_name): Use struct sockaddr_storage. (resolve_addr_standard, resolve_dns_addr): Likewise. (resolve_dns_addr): Likewise. Signed-off-by: NIIBE Yutaka diff --git a/dirmngr/dns-stuff.c b/dirmngr/dns-stuff.c index cb0456a..0635115 100644 --- a/dirmngr/dns-stuff.c +++ b/dirmngr/dns-stuff.c @@ -844,7 +844,7 @@ resolve_name_libdns (const char *name, unsigned short port, (*r_canonname)[strlen (*r_canonname)-1] = 0; } - dai = xtrymalloc (sizeof *dai + ent->ai_addrlen -1); + dai = xtrymalloc (sizeof *dai); if (dai == NULL) { err = gpg_error_from_syserror (); @@ -968,7 +968,7 @@ resolve_name_standard (const char *name, unsigned short port, if (opt_disable_ipv6 && ai->ai_family == AF_INET6) continue; - dai = xtrymalloc (sizeof *dai + ai->ai_addrlen - 1); + dai = xtrymalloc (sizeof *dai); dai->family = ai->ai_family; dai->socktype = ai->ai_socktype; dai->protocol = ai->ai_protocol; @@ -1036,7 +1036,7 @@ resolve_dns_name (const char *name, unsigned short port, #ifdef USE_LIBDNS /* Resolve an address using libdns. */ static gpg_error_t -resolve_addr_libdns (const struct sockaddr *addr, int addrlen, +resolve_addr_libdns (const struct sockaddr_storage *addr, int addrlen, unsigned int flags, char **r_name) { gpg_error_t err; @@ -1050,13 +1050,13 @@ resolve_addr_libdns (const struct sockaddr *addr, int addrlen, /* First we turn ADDR into a DNS name (with ".arpa" suffix). */ err = 0; - if (addr->sa_family == AF_INET6) + if (addr->ss_family == AF_INET6) { const struct sockaddr_in6 *a6 = (const struct sockaddr_in6 *)addr; if (!dns_aaaa_arpa (host, sizeof host, (void*)&a6->sin6_addr)) err = gpg_error (GPG_ERR_INV_OBJ); } - else if (addr->sa_family == AF_INET) + else if (addr->ss_family == AF_INET) { const struct sockaddr_in *a4 = (const struct sockaddr_in *)addr; if (!dns_a_arpa (host, sizeof host, (void*)&a4->sin_addr)) @@ -1144,18 +1144,19 @@ resolve_addr_libdns (const struct sockaddr *addr, int addrlen, buflen = sizeof ptr.host; p = buffer; - if (addr->sa_family == AF_INET6 && (flags & DNS_WITHBRACKET)) + if (addr->ss_family == AF_INET6 && (flags & DNS_WITHBRACKET)) { *p++ = '['; buflen -= 2; } - ec = getnameinfo (addr, addrlen, p, buflen, NULL, 0, NI_NUMERICHOST); + ec = getnameinfo ((const struct sockaddr *)addr, + addrlen, p, buflen, NULL, 0, NI_NUMERICHOST); if (ec) { err = map_eai_to_gpg_error (ec); goto leave; } - if (addr->sa_family == AF_INET6 && (flags & DNS_WITHBRACKET)) + if (addr->ss_family == AF_INET6 && (flags & DNS_WITHBRACKET)) strcat (buffer, "]"); } @@ -1169,7 +1170,7 @@ resolve_addr_libdns (const struct sockaddr *addr, int addrlen, /* Resolve an address using the standard system function. */ static gpg_error_t -resolve_addr_standard (const struct sockaddr *addr, int addrlen, +resolve_addr_standard (const struct sockaddr_storage *addr, int addrlen, unsigned int flags, char **r_name) { gpg_error_t err; @@ -1187,20 +1188,22 @@ resolve_addr_standard (const struct sockaddr *addr, int addrlen, if ((flags & DNS_NUMERICHOST) || tor_mode) ec = EAI_NONAME; else - ec = getnameinfo (addr, addrlen, buffer, buflen, NULL, 0, NI_NAMEREQD); + ec = getnameinfo ((const struct sockaddr *)addr, + addrlen, buffer, buflen, NULL, 0, NI_NAMEREQD); if (!ec && *buffer == '[') ec = EAI_FAIL; /* A name may never start with a bracket. */ else if (ec == EAI_NONAME) { p = buffer; - if (addr->sa_family == AF_INET6 && (flags & DNS_WITHBRACKET)) + if (addr->ss_family == AF_INET6 && (flags & DNS_WITHBRACKET)) { *p++ = '['; buflen -= 2; } - ec = getnameinfo (addr, addrlen, p, buflen, NULL, 0, NI_NUMERICHOST); - if (!ec && addr->sa_family == AF_INET6 && (flags & DNS_WITHBRACKET)) + ec = getnameinfo ((const struct sockaddr *)addr, + addrlen, p, buflen, NULL, 0, NI_NUMERICHOST); + if (!ec && addr->ss_family == AF_INET6 && (flags & DNS_WITHBRACKET)) strcat (buffer, "]"); } @@ -1229,7 +1232,7 @@ resolve_addr_standard (const struct sockaddr *addr, int addrlen, /* A wrapper around getnameinfo. */ gpg_error_t -resolve_dns_addr (const struct sockaddr *addr, int addrlen, +resolve_dns_addr (const struct sockaddr_storage *addr, int addrlen, unsigned int flags, char **r_name) { gpg_error_t err; diff --git a/dirmngr/dns-stuff.h b/dirmngr/dns-stuff.h index 71605b7..adb0b80 100644 --- a/dirmngr/dns-stuff.h +++ b/dirmngr/dns-stuff.h @@ -78,7 +78,7 @@ struct dns_addrinfo_s int socktype; int protocol; int addrlen; - struct sockaddr addr[1]; + struct sockaddr_storage addr[1]; }; @@ -142,7 +142,7 @@ gpg_error_t resolve_dns_name (const char *name, unsigned short port, dns_addrinfo_t *r_dai, char **r_canonname); /* Function similar to getnameinfo. */ -gpg_error_t resolve_dns_addr (const struct sockaddr *addr, int addrlen, +gpg_error_t resolve_dns_addr (const struct sockaddr_storage *addr, int addrlen, unsigned int flags, char **r_name); /* Return true if NAME is a numerical IP address. */ commit 37018adce6ea4920b34d59afcfe4f55f716b3086 Author: NIIBE Yutaka Date: Thu Apr 13 13:06:38 2017 +0900 dirmngr: Fix thread key type. * dirmngr/dirmngr.c (my_tlskey_current_fd): Use npth_key_t. Signed-off-by: NIIBE Yutaka diff --git a/dirmngr/dirmngr.c b/dirmngr/dirmngr.c index 07b3b91..36716c6 100644 --- a/dirmngr/dirmngr.c +++ b/dirmngr/dirmngr.c @@ -350,7 +350,7 @@ union int_and_ptr_u local storage. We use this in conjunction with the log_set_pid_suffix_cb feature. */ #ifndef HAVE_W32_SYSTEM -static int my_tlskey_current_fd; +static npth_key_t my_tlskey_current_fd; #endif /* Prototypes. */ ----------------------------------------------------------------------- Summary of changes: dirmngr/dirmngr.c | 2 +- dirmngr/dns-stuff.c | 31 +++++++++++++++++-------------- dirmngr/dns-stuff.h | 4 ++-- 3 files changed, 20 insertions(+), 17 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Thu Apr 13 07:48:14 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Thu, 13 Apr 2017 07:48:14 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-70-g86dcb03 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 86dcb03134fd4957d51ebaa06b7991239f9ee56a (commit) from 892b33bb2c57785927ea6652091191da2deed464 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 86dcb03134fd4957d51ebaa06b7991239f9ee56a Author: NIIBE Yutaka Date: Thu Apr 13 14:46:57 2017 +0900 dirmngr: Fix http.c for sockaddr_storage. dirmngr/http.c (use_socks): Use sockaddr_storage. (my_sock_new_for_addr, connect_server): Likewise. Signed-off-by: NIIBE Yutaka diff --git a/dirmngr/http.c b/dirmngr/http.c index 356e2bc..e645a54 100644 --- a/dirmngr/http.c +++ b/dirmngr/http.c @@ -2470,13 +2470,13 @@ start_server () * This function is basically a copy of the same internal fucntion in * Libassuan. */ static int -use_socks (struct sockaddr *addr) +use_socks (struct sockaddr_storage *addr) { int mode; if (assuan_sock_get_flag (ASSUAN_INVALID_FD, "tor-mode", &mode) || !mode) return 0; /* Not in Tor mode. */ - else if (addr->sa_family == AF_INET6) + else if (addr->ss_family == AF_INET6) { struct sockaddr_in6 *addr_in6 = (struct sockaddr_in6 *)addr; const unsigned char *s; @@ -2491,7 +2491,7 @@ use_socks (struct sockaddr *addr) return 0; /* This is the loopback address. */ } - else if (addr->sa_family == AF_INET) + else if (addr->ss_family == AF_INET) { struct sockaddr_in *addr_in = (struct sockaddr_in *)addr; @@ -2508,7 +2508,7 @@ use_socks (struct sockaddr *addr) /* Wrapper around assuan_sock_new which takes the domain from an * address parameter. */ static assuan_fd_t -my_sock_new_for_addr (struct sockaddr *addr, int type, int proto) +my_sock_new_for_addr (struct sockaddr_storage *addr, int type, int proto) { int domain; @@ -2519,7 +2519,7 @@ my_sock_new_for_addr (struct sockaddr *addr, int type, int proto) domain = AF_INET; } else - domain = addr->sa_family; + domain = addr->ss_family; return assuan_sock_new (domain, type, proto); } @@ -2644,7 +2644,8 @@ connect_server (const char *server, unsigned short port, } anyhostaddr = 1; - if (assuan_sock_connect (sock, ai->addr, ai->addrlen)) + if (assuan_sock_connect (sock, (struct sockaddr *)ai->addr, + ai->addrlen)) { last_err = gpg_err_make (default_errsource, gpg_err_code_from_syserror ()); ----------------------------------------------------------------------- Summary of changes: dirmngr/http.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Thu Apr 13 09:56:00 2017 From: cvs at cvs.gnupg.org (by Andre Heinecke) Date: Thu, 13 Apr 2017 09:56:00 +0200 Subject: [git] GPA - branch, master, updated. gpa-0.9.10-7-g2dae64a Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Assistant". The branch, master has been updated via 2dae64a65080c52a731d98a905a447de1428cc7c (commit) from 0a78795146661234070681737b3e08228616441f (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 2dae64a65080c52a731d98a905a447de1428cc7c Author: Andre Heinecke Date: Thu Apr 13 09:44:47 2017 +0200 w32: Make location of locale dir more flexible * src/gpa.c (get_locale_dir): If installed under a bin subdirectory strip this out of the locale path. -- This fixes loading locales when GPA is installed under a bin subdirectory like it is with GnuPG 2.1 and Gpg4win. diff --git a/src/gpa.c b/src/gpa.c index be8490d..bad001f 100644 --- a/src/gpa.c +++ b/src/gpa.c @@ -160,7 +160,15 @@ get_locale_dir (void) if (! GetModuleFileNameA (0, name, sizeof (name) - 30)) return NULL; - p = strrchr (name, '\\'); + + /* If installed under bin assume that share is on the same + hierarchy as the bin subdirectory. Otherwise assume that + share is a subdirectory of the gpa.exe location. */ + p = strstr (name, "\\bin\\"); + if (!p) + { + p = strrchr (name, '\\'); + } if (!p) { *name = '\\'; ----------------------------------------------------------------------- Summary of changes: src/gpa.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Assistant http://git.gnupg.org From cvs at cvs.gnupg.org Fri Apr 14 01:35:05 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Fri, 14 Apr 2017 01:35:05 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-71-g4771bad Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 4771bad610eb59e701fe8e53468e2af22d45eeb0 (commit) from 86dcb03134fd4957d51ebaa06b7991239f9ee56a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 4771bad610eb59e701fe8e53468e2af22d45eeb0 Author: NIIBE Yutaka Date: Fri Apr 14 08:32:49 2017 +0900 dirmngr: More fix for Windows. * dirmngr/http.c (simple_cookie_read, simple_cookie_write): Only valid with HTTP_USE_NTBTLS. (_my_socket_new): Simply cast to int since it's for debug. (_my_socket_ref, _my_socket_unref): Likewise. Signed-off-by: NIIBE Yutaka diff --git a/dirmngr/http.c b/dirmngr/http.c index e645a54..9b70599 100644 --- a/dirmngr/http.c +++ b/dirmngr/http.c @@ -166,7 +166,7 @@ static gpgrt_ssize_t cookie_read (void *cookie, void *buffer, size_t size); static gpgrt_ssize_t cookie_write (void *cookie, const void *buffer, size_t size); static int cookie_close (void *cookie); -#ifdef HAVE_W32_SYSTEM +#if defined(HAVE_W32_SYSTEM) && defined(HTTP_USE_NTBTLS) static gpgrt_ssize_t simple_cookie_read (void *cookie, void *buffer, size_t size); static gpgrt_ssize_t simple_cookie_write (void *cookie, @@ -213,7 +213,7 @@ typedef struct cookie_s *cookie_t; /* Simple cookie functions. Here the cookie is an int with the * socket. */ -#ifdef HAVE_W32_SYSTEM +#if defined(HAVE_W32_SYSTEM) && defined(HTTP_USE_NTBTLS) static es_cookie_io_functions_t simple_cookie_functions = { simple_cookie_read, @@ -383,7 +383,7 @@ _my_socket_new (int lnr, assuan_fd_t fd) so->refcount = 1; if (opt_debug) log_debug ("http.c:%d:socket_new: object %p for fd %d created\n", - lnr, so, so->fd); + lnr, so, (int)so->fd); return so; } #define my_socket_new(a) _my_socket_new (__LINE__, (a)) @@ -395,7 +395,7 @@ _my_socket_ref (int lnr, my_socket_t so) so->refcount++; if (opt_debug > 1) log_debug ("http.c:%d:socket_ref: object %p for fd %d refcount now %d\n", - lnr, so, so->fd, so->refcount); + lnr, so, (int)so->fd, so->refcount); return so; } #define my_socket_ref(a) _my_socket_ref (__LINE__,(a)) @@ -413,7 +413,7 @@ _my_socket_unref (int lnr, my_socket_t so, so->refcount--; if (opt_debug > 1) log_debug ("http.c:%d:socket_unref: object %p for fd %d ref now %d\n", - lnr, so, so->fd, so->refcount); + lnr, so, (int)so->fd, so->refcount); if (!so->refcount) { @@ -2923,7 +2923,7 @@ cookie_write (void *cookie, const void *buffer_arg, size_t size) } -#ifdef HAVE_W32_SYSTEM +#if defined(HAVE_W32_SYSTEM) && defined(HTTP_USE_NTBTLS) static gpgrt_ssize_t simple_cookie_read (void *cookie, void *buffer, size_t size) { ----------------------------------------------------------------------- Summary of changes: dirmngr/http.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Fri Apr 14 02:19:32 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Fri, 14 Apr 2017 02:19:32 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-72-gadb77d0 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via adb77d095b3958482863a17c83746f33945638dc (commit) from 4771bad610eb59e701fe8e53468e2af22d45eeb0 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit adb77d095b3958482863a17c83746f33945638dc Author: NIIBE Yutaka Date: Fri Apr 14 09:18:41 2017 +0900 dirmngr: More fix for test program. * dirmngr/t-http.c (main): Care about no TLS. Signed-off-by: NIIBE Yutaka diff --git a/dirmngr/t-http.c b/dirmngr/t-http.c index 622dce5..a3a74dd 100644 --- a/dirmngr/t-http.c +++ b/dirmngr/t-http.c @@ -347,6 +347,10 @@ main (int argc, char **argv) if (tls_dbg) gnutls_global_set_log_level (tls_dbg); +#else + (void)err; + (void)tls_dbg; + (void)no_crl; #endif /*HTTP_USE_GNUTLS*/ rc = http_parse_uri (&uri, *argv, 1); ----------------------------------------------------------------------- Summary of changes: dirmngr/t-http.c | 4 ++++ 1 file changed, 4 insertions(+) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Fri Apr 14 07:50:21 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Fri, 14 Apr 2017 07:50:21 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-73-g36c4e54 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 36c4e540f1a4992675ee6e0acca1231325457079 (commit) from adb77d095b3958482863a17c83746f33945638dc (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 36c4e540f1a4992675ee6e0acca1231325457079 Author: NIIBE Yutaka Date: Fri Apr 14 12:54:06 2017 +0900 agent: Clean up error initialize/return. * agent/call-pinentry.c (start_pinentry): Return RC. * agent/command-ssh.c (ssh_handler_request_identities): Don't set ERR. * agent/findkey.c (try_unprotect_cb): Return ERR. (unprotect): Don't set RC. * agent/gpg-agent.c (handle_connections): Don't set fd. Signed-off-by: NIIBE Yutaka diff --git a/agent/call-pinentry.c b/agent/call-pinentry.c index a35a3fb..6524cb1 100644 --- a/agent/call-pinentry.c +++ b/agent/call-pinentry.c @@ -654,7 +654,7 @@ start_pinentry (ctrl_t ctrl) xfree (flavor_version); - return 0; + return rc; } diff --git a/agent/command-ssh.c b/agent/command-ssh.c index eeb1498..5c7cf1f 100644 --- a/agent/command-ssh.c +++ b/agent/command-ssh.c @@ -2576,7 +2576,6 @@ ssh_handler_request_identities (ctrl_t ctrl, key_public = NULL; key_counter = 0; - err = 0; key_blobs = es_fopenmem (0, "r+b"); if (! key_blobs) diff --git a/agent/findkey.c b/agent/findkey.c index 0b2ddf1..f3c8ca9 100644 --- a/agent/findkey.c +++ b/agent/findkey.c @@ -328,7 +328,7 @@ try_unprotect_cb (struct pin_entry_info_s *pi) xfree (desc); } - return 0; + return err; } @@ -552,7 +552,6 @@ unprotect (ctrl_t ctrl, const char *cache_nonce, const char *desc_text, return 0; } xfree (pw); - rc = 0; } else if (cache_mode == CACHE_MODE_NORMAL) { @@ -590,7 +589,6 @@ unprotect (ctrl_t ctrl, const char *cache_nonce, const char *desc_text, return 0; } xfree (pw); - rc = 0; } } diff --git a/agent/gpg-agent.c b/agent/gpg-agent.c index e23f438..c764be8 100644 --- a/agent/gpg-agent.c +++ b/agent/gpg-agent.c @@ -2964,7 +2964,6 @@ handle_connections (gnupg_fd_t listen_fd, xfree (ctrl); } } - fd = GNUPG_INVALID_FD; } } } ----------------------------------------------------------------------- Summary of changes: agent/call-pinentry.c | 2 +- agent/command-ssh.c | 1 - agent/findkey.c | 4 +--- agent/gpg-agent.c | 1 - 4 files changed, 2 insertions(+), 6 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 17 02:19:13 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Mon, 17 Apr 2017 02:19:13 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-75-g0dec0cc Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 0dec0cc281dfa26db89f8cc5ee002dea5c2b2e81 (commit) via af5f8ecf51f5e1f33e832d4946d02313b78a0536 (commit) from 36c4e540f1a4992675ee6e0acca1231325457079 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 0dec0cc281dfa26db89f8cc5ee002dea5c2b2e81 Author: NIIBE Yutaka Date: Mon Apr 17 09:15:13 2017 +0900 g10: Minor fixes. * g10/export.c (cleartext_secret_key_to_openpgp): No initialization. (do_export_one_keyblock): Initialize with GPG_ERR_NOT_FOUND. * g10/getkey.c (get_best_pubkey_byname): Add non-null check. * g10/tofu.c (tofu_set_policy): ERR initialize to 0. Signed-off-by: NIIBE Yutaka diff --git a/g10/export.c b/g10/export.c index 9b203e3..ce79a2f 100644 --- a/g10/export.c +++ b/g10/export.c @@ -580,7 +580,7 @@ canon_pk_algo (enum gcry_pk_algos algo) static gpg_error_t cleartext_secret_key_to_openpgp (gcry_sexp_t s_key, PKT_public_key *pk) { - gpg_error_t err = gpg_error (GPG_ERR_NOT_IMPLEMENTED); + gpg_error_t err; gcry_sexp_t top_list; gcry_sexp_t key = NULL; char *key_type = NULL; @@ -1539,7 +1539,7 @@ do_export_one_keyblock (ctrl_t ctrl, kbnode_t keyblock, u32 *keyid, KEYDB_SEARCH_DESC *desc, size_t ndesc, size_t descindex, gcry_cipher_hd_t cipherhd) { - gpg_error_t err; + gpg_error_t err = gpg_error (GPG_ERR_NOT_FOUND); char *cache_nonce = NULL; subkey_list_t subkey_list = NULL; /* Track already processed subkeys. */ int skip_until_subkey = 0; diff --git a/g10/getkey.c b/g10/getkey.c index dab63fa..75b8564 100644 --- a/g10/getkey.c +++ b/g10/getkey.c @@ -1654,7 +1654,8 @@ get_best_pubkey_byname (ctrl_t ctrl, GETKEY_CTX *retctx, PKT_public_key *pk, if (! ctx->kr_handle) { xfree (ctx); - *retctx = NULL; + if (retctx) + *retctx = NULL; rc = gpg_error_from_syserror (); } else diff --git a/g10/tofu.c b/g10/tofu.c index 4e12905..7bef27b 100644 --- a/g10/tofu.c +++ b/g10/tofu.c @@ -3857,7 +3857,7 @@ tofu_get_validity (ctrl_t ctrl, PKT_public_key *pk, strlist_t user_id_list, gpg_error_t tofu_set_policy (ctrl_t ctrl, kbnode_t kb, enum tofu_policy policy) { - gpg_error_t err; + gpg_error_t err = 0; time_t now = gnupg_get_time (); tofu_dbs_t dbs; PKT_public_key *pk; commit af5f8ecf51f5e1f33e832d4946d02313b78a0536 Author: NIIBE Yutaka Date: Mon Apr 17 09:08:31 2017 +0900 g10: Fix import/export filter property match. * g10/import.c (impex_filter_getval): Fix to "else if". Signed-off-by: NIIBE Yutaka diff --git a/g10/import.c b/g10/import.c index 54d649b..ba1c44a 100644 --- a/g10/import.c +++ b/g10/import.c @@ -1261,7 +1261,7 @@ impex_filter_getval (void *cookie, const char *propname) snprintf (numbuf, sizeof numbuf, "%d", pk->pubkey_algo); result = numbuf; } - if (!strcmp (propname, "key_created")) + else if (!strcmp (propname, "key_created")) { snprintf (numbuf, sizeof numbuf, "%lu", (ulong)pk->timestamp); result = numbuf; ----------------------------------------------------------------------- Summary of changes: g10/export.c | 4 ++-- g10/getkey.c | 3 ++- g10/import.c | 2 +- g10/tofu.c | 2 +- 4 files changed, 6 insertions(+), 5 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 17 02:45:25 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Mon, 17 Apr 2017 02:45:25 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-77-gb9440aa Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via b9440aa3693a4bb91e1ba8ff09e2d93ff22dd70a (commit) via 256e861bce3dc9aba8fab4df47a40cae3bede175 (commit) from 0dec0cc281dfa26db89f8cc5ee002dea5c2b2e81 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit b9440aa3693a4bb91e1ba8ff09e2d93ff22dd70a Author: NIIBE Yutaka Date: Mon Apr 17 09:44:37 2017 +0900 tests: Minor memory fix. * tests/openpgp/fake-pinentry.c (get_passphrase): Free the memory. Signed-off-by: NIIBE Yutaka diff --git a/tests/openpgp/fake-pinentry.c b/tests/openpgp/fake-pinentry.c index 6585b01..fb0c6ae 100644 --- a/tests/openpgp/fake-pinentry.c +++ b/tests/openpgp/fake-pinentry.c @@ -126,6 +126,8 @@ get_passphrase (const char *fname) fname, fname_new, strerror (errno)); exit (1); } + + free (fname_new); return passphrase; } commit 256e861bce3dc9aba8fab4df47a40cae3bede175 Author: NIIBE Yutaka Date: Mon Apr 17 09:33:19 2017 +0900 g10: Fix parse_ring_trust. * g10/parse-packet.c (parse_ring_trust): Fix condition. Signed-off-by: NIIBE Yutaka diff --git a/g10/parse-packet.c b/g10/parse-packet.c index 2be9849..fa44f83 100644 --- a/g10/parse-packet.c +++ b/g10/parse-packet.c @@ -2948,7 +2948,7 @@ parse_ring_trust (parse_packet_ctx_t ctx, unsigned long pktlen) if (namelen && pktlen) { rt.url = xtrymalloc (namelen + 1); - if (rt.url) + if (!rt.url) { err = gpg_error_from_syserror (); goto leave; ----------------------------------------------------------------------- Summary of changes: g10/parse-packet.c | 2 +- tests/openpgp/fake-pinentry.c | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 17 09:45:07 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Mon, 17 Apr 2017 09:45:07 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-78-g45c52cc Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 45c52cca1401b930878a8f901b63cfbb22e9e327 (commit) from b9440aa3693a4bb91e1ba8ff09e2d93ff22dd70a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 45c52cca1401b930878a8f901b63cfbb22e9e327 Author: NIIBE Yutaka Date: Mon Apr 17 16:43:36 2017 +0900 agent: Minor cleanup. * agent/command-ssh.c (ssh_key_to_protected_buffer): Not touch ERR. * agent/command.c (cmd_genkey, cmd_import_key): Clean up. Signed-off-by: NIIBE Yutaka diff --git a/agent/command-ssh.c b/agent/command-ssh.c index 5c7cf1f..fdde0fb 100644 --- a/agent/command-ssh.c +++ b/agent/command-ssh.c @@ -2975,7 +2975,6 @@ ssh_key_to_protected_buffer (gcry_sexp_t key, const char *passphrase, unsigned int buffer_new_n; gpg_error_t err; - err = 0; buffer_new_n = gcry_sexp_sprint (key, GCRYSEXP_FMT_CANON, NULL, 0); buffer_new = xtrymalloc_secure (buffer_new_n); if (! buffer_new) diff --git a/agent/command.c b/agent/command.c index ab6d7eb..bd184ac 100644 --- a/agent/command.c +++ b/agent/command.c @@ -927,7 +927,6 @@ cmd_genkey (assuan_context_t ctx, char *line) } line = skip_options (line); - p = line; for (p=line; *p && *p != ' ' && *p != '\t'; p++) ; *p = '\0'; @@ -2105,7 +2104,6 @@ cmd_import_key (assuan_context_t ctx, char *line) force = has_option (line, "--force"); line = skip_options (line); - p = line; for (p=line; *p && *p != ' ' && *p != '\t'; p++) ; *p = '\0'; ----------------------------------------------------------------------- Summary of changes: agent/command-ssh.c | 1 - agent/command.c | 2 -- 2 files changed, 3 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 17 13:04:26 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Mon, 17 Apr 2017 13:04:26 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-79-g9296aed Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 9296aed4bd2ad09d23339e658264e557c5312585 (commit) from 45c52cca1401b930878a8f901b63cfbb22e9e327 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 9296aed4bd2ad09d23339e658264e557c5312585 Author: NIIBE Yutaka Date: Mon Apr 17 20:03:36 2017 +0900 agent: More minor change. * agent/command.c (cmd_pksign): Remove redundant assignment. Signed-off-by: NIIBE Yutaka diff --git a/agent/command.c b/agent/command.c index bd184ac..df788ef 100644 --- a/agent/command.c +++ b/agent/command.c @@ -791,7 +791,6 @@ cmd_pksign (assuan_context_t ctx, char *line) line = skip_options (line); - p = line; for (p=line; *p && *p != ' ' && *p != '\t'; p++) ; *p = '\0'; ----------------------------------------------------------------------- Summary of changes: agent/command.c | 1 - 1 file changed, 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 17 17:02:36 2017 From: cvs at cvs.gnupg.org (by Daniel Kahn Gillmor) Date: Mon, 17 Apr 2017 17:02:36 +0200 Subject: [git] GnuPG - branch, dkg/no-skel-files, created. gnupg-2.1.20-80-g55b00bc Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, dkg/no-skel-files has been created at 55b00bcc305e2e4ef928b2c9aa1eb6ce261ad78a (commit) - Log ----------------------------------------------------------------- commit 55b00bcc305e2e4ef928b2c9aa1eb6ce261ad78a Author: Daniel Kahn Gillmor Date: Mon Apr 17 10:51:55 2017 -0400 g10: remove skeleton options files * build-aux/speed/w32/inst.nsi: stop installing skeleton files. * doc/gpg.texi: stop documenting skeleton files. * g10/Makefile.am: stop installing skeleton files. * g10/openfile.c (copy_options_file): Remove. (try_make_homedir): do not call copy_options_file() The defaults for gpg and dirmngr are good. Both programs should work fine for the simple case without any config file. The skeleton config files were being copied at first use (when the defaults are fine). But when the user needs to fiddle with them (after they've become sophisticated users), they're likely out of date because gpg has been upgraded since then. So they're used for documentation, but they're stale documentation, which is probably worse than a clean empty file. -- GnuPG-bug-id: 3086 Signed-off-by: Daniel Kahn Gillmor diff --git a/build-aux/speedo/w32/inst.nsi b/build-aux/speedo/w32/inst.nsi index b4d6994..7716f7f 100644 --- a/build-aux/speedo/w32/inst.nsi +++ b/build-aux/speedo/w32/inst.nsi @@ -608,8 +608,6 @@ Section "GnuPG" SEC_gnupg Rename /REBOOTOK scdaemon.exe.tmp scdaemon.exe SetOutPath "$INSTDIR\share\gnupg" - File "share/gnupg/gpg-conf.skel" - File "share/gnupg/dirmngr-conf.skel" File "share/gnupg/distsigkey.gpg" File "share/gnupg/sks-keyservers.netCA.pem" diff --git a/doc/gpg.texi b/doc/gpg.texi index c0d7cc4..aa55cb8 100644 --- a/doc/gpg.texi +++ b/doc/gpg.texi @@ -3480,10 +3480,6 @@ files; They all live in the current home directory (@pxref{option You should backup all files in this directory and take care to keep this backup closed away. - @item @value{DATADIR}/options.skel - @efindex options.skel - The skeleton options file. - @end table Operation is further controlled by a few environment variables: diff --git a/g10/Makefile.am b/g10/Makefile.am index f1d2d17..142b2f3 100644 --- a/g10/Makefile.am +++ b/g10/Makefile.am @@ -18,7 +18,7 @@ ## Process this file with automake to produce Makefile.in -EXTRA_DIST = options.skel dirmngr-conf.skel distsigkey.gpg \ +EXTRA_DIST = distsigkey.gpg \ ChangeLog-2011 gpg-w32info.rc \ gpg.w32-manifest.in test.c t-keydb-keyring.kbx \ t-keydb-get-keyblock.gpg t-stutter-data.asc @@ -238,18 +238,12 @@ install-exec-hook: install-data-local: $(mkinstalldirs) $(DESTDIR)$(pkgdatadir) - $(INSTALL_DATA) $(srcdir)/options.skel \ - $(DESTDIR)$(pkgdatadir)/gpg-conf.skel - $(INSTALL_DATA) $(srcdir)/dirmngr-conf.skel \ - $(DESTDIR)$(pkgdatadir)/dirmngr-conf.skel $(INSTALL_DATA) $(srcdir)/distsigkey.gpg \ $(DESTDIR)$(pkgdatadir)/distsigkey.gpg # NB: For uninstalling gpg and gpgv we use -local because there is # no need for a specific order the targets need to be run. uninstall-local: - - at rm $(DESTDIR)$(pkgdatadir)/gpg-conf.skel - - at rm $(DESTDIR)$(pkgdatadir)/dirmngr-conf.skel - at rm $(DESTDIR)$(pkgdatadir)/distsigkey.gpg - at files=`for p in $(gpg2_hack_uninst); do echo "$$p"; done | \ sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ diff --git a/g10/dirmngr-conf.skel b/g10/dirmngr-conf.skel deleted file mode 100644 index e2885e6..0000000 --- a/g10/dirmngr-conf.skel +++ /dev/null @@ -1,73 +0,0 @@ -# dirmngr-conf.skel - Skeleton to create dirmngr.conf. -# (Note that the first three lines are not copied.) -# -# dirmngr.conf - Options for Dirmngr -# Written in 2015 by The GnuPG Project -# -# To the extent possible under law, the authors have dedicated all -# copyright and related and neighboring rights to this file to the -# public domain worldwide. This file is distributed without any -# warranty. You should have received a copy of the CC0 Public Domain -# Dedication along with this file. If not, see -# . -# -# -# Unless you specify which option file to use (with the command line -# option "--options filename"), the file ~/.gnupg/dirmngr.conf is used -# by dirmngr. The file can contain any long options which are valid -# for Dirmngr. If the first non white space character of a line is a -# '#', the line is ignored. Empty lines are also ignored. See the -# dirmngr man page or the manual for a list of options. -# - -# --keyserver URI -# -# GPG can send and receive keys to and from a keyserver. These -# servers can be HKP, Email, or LDAP (if GnuPG is built with LDAP -# support). -# -# Example HKP keyservers: -# hkp://keys.gnupg.net -# -# Example HKP keyserver using a Tor OnionBalance service -# hkp://jirk5u4osbsr34t5.onion -# -# Example HKPS keyservers (see --hkp-cacert below): -# hkps://hkps.pool.sks-keyservers.net -# -# Example LDAP keyservers: -# ldap://pgp.surfnet.nl:11370 -# -# Regular URL syntax applies, and you can set an alternate port -# through the usual method: -# hkp://keyserver.example.net:22742 -# -# Note that most servers (with the notable exception of -# ldap://keyserver.pgp.com) synchronize changes with each other. Note -# also that a single server name may actually point to multiple -# servers via DNS round-robin or service records. -# -# If exactly two keyservers are configured and only one is a Tor hidden -# service, Dirmngr selects the keyserver to use depending on whether -# Tor is locally running or not (on a per session base). Example: -# -# keyserver hkp://jirk5u4osbsr34t5.onion -# keyserver hkps://hkps.pool.sks-keyservers.net -# -# If no keyserver is specified GnuPG uses -# hkps://hkps.pool.sks-keyservers.net - - -# --hkp-cacert FILENAME -# -# For the "hkps" scheme (keyserver access over TLS), Dirmngr needs to -# know the root certificates for verification of the TLS certificates -# used for the connection. Enter the full name of a file with the -# root certificates here. If that file is in PEM format a ".pem" -# suffix is expected. This option may be given multiple times to add -# more root certificates. Tilde expansion is supported. -# This is not required when the default server -# hkps://hkps.pool.sks-keyservers.net -# is used. - -#hkp-cacert /path/to/CA/sks-keyservers.netCA.pem diff --git a/g10/openfile.c b/g10/openfile.c index 2257107..a557a98 100644 --- a/g10/openfile.c +++ b/g10/openfile.c @@ -36,12 +36,6 @@ #include "../common/status.h" #include "../common/i18n.h" -#ifdef USE_ONLY_8DOT3 -#define SKELEXT ".skl" -#else -#define SKELEXT EXTSEP_S "skel" -#endif - #ifdef HAVE_W32_SYSTEM #define NAME_OF_DEV_NULL "nul" #else @@ -373,93 +367,6 @@ open_sigfile (const char *sigfilename, progress_filter_context_t *pfx) } -/**************** - * Copy the option file skeleton for NAME to the given directory. - * Returns true if the new option file has any option. - */ -static int -copy_options_file (const char *destdir, const char *name) -{ - const char *datadir = gnupg_datadir (); - char *fname; - FILE *src, *dst; - int linefeeds=0; - int c; - mode_t oldmask; - int esc = 0; - int any_option = 0; - - if (opt.dry_run) - return 0; - - fname = xstrconcat (datadir, DIRSEP_S, name, "-conf", SKELEXT, NULL); - src = fopen (fname, "r"); - if (src && is_secured_file (fileno (src))) - { - fclose (src); - src = NULL; - gpg_err_set_errno (EPERM); - } - if (!src) - { - log_info (_("can't open '%s': %s\n"), fname, strerror(errno)); - xfree(fname); - return 0; - } - xfree (fname); - fname = xstrconcat (destdir, DIRSEP_S, name, EXTSEP_S, "conf", NULL); - - oldmask = umask (077); - if (is_secured_filename (fname)) - { - dst = NULL; - gpg_err_set_errno (EPERM); - } - else - dst = fopen( fname, "w" ); - umask (oldmask); - - if (!dst) - { - log_info (_("can't create '%s': %s\n"), fname, strerror(errno) ); - fclose (src); - xfree (fname); - return 0; - } - - while ((c = getc (src)) != EOF) - { - if (linefeeds < 3) - { - if (c == '\n') - linefeeds++; - } - else - { - putc (c, dst); - if (c== '\n') - esc = 1; - else if (esc == 1) - { - if (c == ' ' || c == '\t') - ; - else if (c == '#') - esc = 2; - else - any_option = 1; - } - } - } - - fclose (dst); - fclose (src); - - log_info (_("new configuration file '%s' created\n"), fname); - xfree (fname); - return any_option; -} - - void try_make_homedir (const char *fname) { @@ -489,15 +396,6 @@ try_make_homedir (const char *fname) fname, strerror(errno) ); else if (!opt.quiet ) log_info ( _("directory '%s' created\n"), fname ); - - /* Note that we also copy a dirmngr.conf file here. This is - because gpg is likely the first invoked tool and thus creates - the directory. */ - copy_options_file (fname, DIRMNGR_NAME); - if (copy_options_file (fname, GPG_NAME)) - log_info (_("WARNING: options in '%s'" - " are not yet active during this run\n"), - fname); } } diff --git a/g10/options.skel b/g10/options.skel deleted file mode 100644 index 87fc627..0000000 --- a/g10/options.skel +++ /dev/null @@ -1,139 +0,0 @@ -# These first three lines are not copied to the gpg.conf file in -# the users home directory. -# $Id$ -# Options for GnuPG -# Copyright 1998-2003, 2010 Free Software Foundation, Inc. -# Copyright 1998-2003, 2010 Werner Koch -# -# This file is free software; as a special exception the author gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. -# -# This file is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the -# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# -# Unless you specify which option file to use (with the command line -# option "--options filename"), GnuPG uses the file ~/.gnupg/gpg.conf -# by default. -# -# An options file can contain any long options which are available in -# GnuPG. If the first non white space character of a line is a '#', -# this line is ignored. Empty lines are also ignored. -# -# See the gpg man page for a list of options. - - -# If you have more than 1 secret key in your keyring, you may want to -# uncomment the following option and set your preferred keyid. - -#default-key 621CC013 - - -# If you do not pass a recipient to gpg, it will ask for one. Using -# this option you can encrypt to a default key. Key validation will -# not be done in this case. The second form uses the default key as -# default recipient. - -#default-recipient some-user-id -#default-recipient-self - - -# Group names may be defined like this: -# group mynames = paige 0x12345678 joe patti -# -# Any time "mynames" is a recipient (-r or --recipient), it will be -# expanded to the names "paige", "joe", and "patti", and the key ID -# "0x12345678". Note there is only one level of expansion - you -# cannot make an group that points to another group. Note also that -# if there are spaces in the recipient name, this will appear as two -# recipients. In these cases it is better to use the key ID. - -#group mynames = paige 0x12345678 joe patti - - -# GnuPG can automatically locate and retrieve keys as needed using -# this option. This happens when encrypting to an email address (in -# the "user@@example.com" form) and there are no keys matching -# "user at example.com" in the local keyring. This option takes any -# number mechanisms which are tried in the given order. The default -# is "--auto-key-locate local" to search for keys only in the local -# key database. Uncomment the next line to locate a missing key using -# two DNS based mechanisms. - -#auto-key-locate local,pka,dane - - -# Common options for keyserver functions: -# (Note that the --keyserver option has been moved to dirmngr.conf) -# -# include-disabled = when searching, include keys marked as "disabled" -# on the keyserver (not all keyservers support this). -# -# no-include-revoked = when searching, do not include keys marked as -# "revoked" on the keyserver. -# -# verbose = show more information as the keys are fetched. -# Can be used more than once to increase the amount -# of information shown. -# -# auto-key-retrieve = automatically fetch keys as needed from the keyserver -# when verifying signatures or when importing keys that -# have been revoked by a revocation key that is not -# present on the keyring. -# -# no-include-attributes = do not include attribute IDs (aka "photo IDs") -# when sending keys to the keyserver. - -#keyserver-options auto-key-retrieve - - -# Uncomment this line to display photo user IDs in key listings and -# when a signature from a key with a photo is verified. - -#show-photos - - -# Use this program to display photo user IDs -# -# %i is expanded to a temporary file that contains the photo. -# %I is the same as %i, but the file isn't deleted afterwards by GnuPG. -# %k is expanded to the key ID of the key. -# %K is expanded to the long OpenPGP key ID of the key. -# %t is expanded to the extension of the image (e.g. "jpg"). -# %T is expanded to the MIME type of the image (e.g. "image/jpeg"). -# %f is expanded to the fingerprint of the key. -# %% is %, of course. -# -# If %i or %I are not present, then the photo is supplied to the -# viewer on standard input. If your platform supports it, standard -# input is the best way to do this as it avoids the time and effort in -# generating and then cleaning up a secure temp file. -# -# The default program is "xloadimage -fork -quiet -title 'KeyID 0x%k' stdin" -# On Mac OS X and Windows, the default is to use your regular JPEG image -# viewer. -# -# Some other viewers: -# photo-viewer "qiv %i" -# photo-viewer "ee %i" -# photo-viewer "display -title 'KeyID 0x%k'" -# -# This one saves a copy of the photo ID in your home directory: -# photo-viewer "cat > ~/photoid-for-key-%k.%t" -# -# Use your MIME handler to view photos: -# photo-viewer "metamail -q -d -b -c %T -s 'KeyID 0x%k' -f GnuPG" - - -# Because some mailers change lines starting with "From " to ">From " -# it is good to handle such lines in a special way when creating -# cleartext signatures; all other PGP versions do it this way too. -# To enable full OpenPGP compliance you may want to use this option. - -#no-escape-from-lines - - -# Uncomment the following option to get rid of the copyright notice - -#no-greeting ----------------------------------------------------------------------- hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 18 02:04:30 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Tue, 18 Apr 2017 02:04:30 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-81-g4b2581d Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 4b2581dc0ea1d03e70023bb0748aa0c21c0a2173 (commit) via 0d0a7efa8fa0accc1da851917376e2328ef33c96 (commit) from 9296aed4bd2ad09d23339e658264e557c5312585 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 4b2581dc0ea1d03e70023bb0748aa0c21c0a2173 Author: NIIBE Yutaka Date: Tue Apr 18 09:04:11 2017 +0900 dirmngr: Fix final close of LISTEN_FD. * dirmngr/dirmngr.c (handle_connections): Close LISTEN_FD. Signed-off-by: NIIBE Yutaka diff --git a/dirmngr/dirmngr.c b/dirmngr/dirmngr.c index 36716c6..8393e0b 100644 --- a/dirmngr/dirmngr.c +++ b/dirmngr/dirmngr.c @@ -2046,7 +2046,6 @@ handle_connections (assuan_fd_t listen_fd) #endif struct sockaddr_un paddr; socklen_t plen = sizeof( paddr ); - gnupg_fd_t fd; int nfd, ret; fd_set fdset, read_fdset; struct timespec abstime; @@ -2190,6 +2189,8 @@ handle_connections (assuan_fd_t listen_fd) if (FD_ISSET (FD2INT (listen_fd), &read_fdset)) { + gnupg_fd_t fd; + plen = sizeof paddr; fd = INT2FD (npth_accept (FD2INT(listen_fd), (struct sockaddr *)&paddr, &plen)); @@ -2218,7 +2219,6 @@ handle_connections (assuan_fd_t listen_fd) } npth_setname_np (thread, threadname); } - fd = GNUPG_INVALID_FD; } } @@ -2228,7 +2228,7 @@ handle_connections (assuan_fd_t listen_fd) #endif /*HAVE_INOTIFY_INIT*/ npth_attr_destroy (&tattr); if (listen_fd != GNUPG_INVALID_FD) - assuan_sock_close (fd); + assuan_sock_close (listen_fd); cleanup (); log_info ("%s %s stopped\n", strusage(11), strusage(13)); } commit 0d0a7efa8fa0accc1da851917376e2328ef33c96 Author: NIIBE Yutaka Date: Tue Apr 18 09:03:14 2017 +0900 dirmngr: Fix API difference for Windows. * dirmngr/http.c (read_server, write_server): Use assuan_fd_t. (http_wait_response): Use FD2INT to get unsigned integer fd. (read_server, write_server): Likewise. (simple_cookie_read, simple_cookie_write): Use assuan_fd_t. Signed-off-by: NIIBE Yutaka diff --git a/dirmngr/http.c b/dirmngr/http.c index 9b70599..e74d051 100644 --- a/dirmngr/http.c +++ b/dirmngr/http.c @@ -98,6 +98,7 @@ #include "../common/util.h" #include "../common/i18n.h" +#include "../common/sysutils.h" /* (gnupg_fd_t) */ #include "dns-stuff.h" #include "http.h" #include "http-common.h" @@ -159,8 +160,8 @@ static gpg_error_t parse_response (http_t hd); static gpg_error_t connect_server (const char *server, unsigned short port, unsigned int flags, const char *srvtag, assuan_fd_t *r_sock); -static gpgrt_ssize_t read_server (int sock, void *buffer, size_t size); -static gpg_error_t write_server (int sock, const char *data, size_t length); +static gpgrt_ssize_t read_server (assuan_fd_t sock, void *buffer, size_t size); +static gpg_error_t write_server (assuan_fd_t sock, const char *data, size_t length); static gpgrt_ssize_t cookie_read (void *cookie, void *buffer, size_t size); static gpgrt_ssize_t cookie_write (void *cookie, @@ -1065,7 +1066,7 @@ http_wait_response (http_t hd) is not required but some very old servers (e.g. the original pksd keyserver didn't worked without it. */ if ((hd->flags & HTTP_FLAG_SHUTDOWN)) - shutdown (hd->sock->fd, 1); + shutdown (FD2INT (hd->sock->fd), 1); hd->in_data = 0; /* Create a new cookie and a stream for reading. */ @@ -2694,7 +2695,7 @@ connect_server (const char *server, unsigned short port, /* Helper to read from a socket. This handles npth things and * EINTR. */ static gpgrt_ssize_t -read_server (int sock, void *buffer, size_t size) +read_server (assuan_fd_t sock, void *buffer, size_t size) { int nread; @@ -2705,7 +2706,7 @@ read_server (int sock, void *buffer, size_t size) # if defined(USE_NPTH) npth_unprotect (); # endif - nread = recv (sock, buffer, size, 0); + nread = recv (FD2INT (sock), buffer, size, 0); # if defined(USE_NPTH) npth_protect (); # endif @@ -2727,7 +2728,7 @@ read_server (int sock, void *buffer, size_t size) static gpg_error_t -write_server (int sock, const char *data, size_t length) +write_server (assuan_fd_t sock, const char *data, size_t length) { int nleft; int nwritten; @@ -2739,7 +2740,7 @@ write_server (int sock, const char *data, size_t length) # if defined(USE_NPTH) npth_unprotect (); # endif - nwritten = send (sock, data, nleft, 0); + nwritten = send (FD2INT (sock), data, nleft, 0); # if defined(USE_NPTH) npth_protect (); # endif @@ -2927,14 +2928,14 @@ cookie_write (void *cookie, const void *buffer_arg, size_t size) static gpgrt_ssize_t simple_cookie_read (void *cookie, void *buffer, size_t size) { - int sock = (int)(uintptr_t)cookie; + assuan_fd_t sock = (assuan_fd_t)cookie; return read_server (sock, buffer, size); } static gpgrt_ssize_t simple_cookie_write (void *cookie, const void *buffer_arg, size_t size) { - int sock = (int)(uintptr_t)cookie; + assuan_fd_t sock = (assuan_fd_t)cookie; const char *buffer = buffer_arg; int nwritten; ----------------------------------------------------------------------- Summary of changes: dirmngr/dirmngr.c | 6 +++--- dirmngr/http.c | 19 ++++++++++--------- 2 files changed, 13 insertions(+), 12 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed Apr 19 06:34:51 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Wed, 19 Apr 2017 06:34:51 +0200 Subject: [git] GPG-ERROR - branch, master, updated. libgpg-error-1.27-5-ga8d267a Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Error codes used by GnuPG et al.". The branch, master has been updated via a8d267a7220399f7acf69723fe1d31efd2160319 (commit) from 5e51b642f747547c737a7abbc37e65b0f630d188 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit a8d267a7220399f7acf69723fe1d31efd2160319 Author: NIIBE Yutaka Date: Wed Apr 19 13:32:36 2017 +0900 Minor clean up. * src/b64dec.c (_gpgrt_b64dec_proc): Add a comment. * src/estream.c (_gpgrt_fread, _gpgrt_fwrite): Use &&. * src/mkheader.c (xstrdup): Use memcpy as we know length. Signed-off-by: NIIBE Yutaka diff --git a/src/b64dec.c b/src/b64dec.c index d846a6a..a8a8351 100644 --- a/src/b64dec.c +++ b/src/b64dec.c @@ -140,6 +140,7 @@ _gpgrt_b64dec_proc (gpgrt_b64state_t state, void *buffer, size_t length, break; case s_init: ds = s_lfseen; + /* Fall through */ case s_lfseen: if (*s != "-----BEGIN "[pos]) { diff --git a/src/estream.c b/src/estream.c index 9f227a6..066fe02 100644 --- a/src/estream.c +++ b/src/estream.c @@ -4179,7 +4179,7 @@ _gpgrt_fread (void *_GPGRT__RESTRICT ptr, size_t size, size_t nitems, { size_t ret, bytes; - if (size * nitems) + if (size && nitems) { lock_stream (stream); es_readn (stream, ptr, size * nitems, &bytes); @@ -4200,7 +4200,7 @@ _gpgrt_fwrite (const void *_GPGRT__RESTRICT ptr, size_t size, size_t nitems, { size_t ret, bytes; - if (size * nitems) + if (size && nitems) { lock_stream (stream); es_writen (stream, ptr, size * nitems, &bytes); diff --git a/src/mkheader.c b/src/mkheader.c index 5aeb1e7..997cab5 100644 --- a/src/mkheader.c +++ b/src/mkheader.c @@ -52,14 +52,15 @@ static char * xstrdup (const char *string) { char *p; + size_t len = strlen (string) + 1; - p = malloc (strlen (string)+1); + p = malloc (len); if (!p) { fputs (PGM ": out of core\n", stderr); exit (1); } - strcpy (p, string); + memcpy (p, string, len); return p; } ----------------------------------------------------------------------- Summary of changes: src/b64dec.c | 1 + src/estream.c | 4 ++-- src/mkheader.c | 5 +++-- 3 files changed, 6 insertions(+), 4 deletions(-) hooks/post-receive -- Error codes used by GnuPG et al. http://git.gnupg.org From cvs at cvs.gnupg.org Thu Apr 20 13:46:12 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Thu, 20 Apr 2017 13:46:12 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-82-g1051927 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 10519270d36586c536bfb6c4cda8ac17c01f4976 (commit) from 4b2581dc0ea1d03e70023bb0748aa0c21c0a2173 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 10519270d36586c536bfb6c4cda8ac17c01f4976 Author: NIIBE Yutaka Date: Thu Apr 20 20:43:29 2017 +0900 g13: Fix for Solaris. * configure.ac: Check sys/mkdev.h. * g13/sh-dmcrypt.c: Include sys/mkdev.h. -- GnuPG-bug-id: 3098 Signed-off-by: NIIBE Yutaka diff --git a/configure.ac b/configure.ac index 4c90d6c..494e444 100644 --- a/configure.ac +++ b/configure.ac @@ -1278,7 +1278,7 @@ AC_HEADER_STDC AC_CHECK_HEADERS([string.h unistd.h langinfo.h termio.h locale.h getopt.h \ pty.h utmp.h pwd.h inttypes.h signal.h sys/select.h \ stdint.h signal.h util.h libutil.h termios.h \ - ucred.h sys/sysmacros.h]) + ucred.h sys/sysmacros.h sys/mkdev.h]) AC_HEADER_TIME diff --git a/g13/sh-dmcrypt.c b/g13/sh-dmcrypt.c index c5489c9..09c4d96 100644 --- a/g13/sh-dmcrypt.c +++ b/g13/sh-dmcrypt.c @@ -25,6 +25,9 @@ #include #include #include +#ifdef HAVE_SYS_MKDEV_H +#include +#endif #ifdef HAVE_SYS_SYSMACROS_H # include #endif ----------------------------------------------------------------------- Summary of changes: configure.ac | 2 +- g13/sh-dmcrypt.c | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Thu Apr 20 13:55:26 2017 From: cvs at cvs.gnupg.org (by Andre Heinecke) Date: Thu, 20 Apr 2017 13:55:26 +0200 Subject: [git] KSBA - branch, master, updated. libksba-1.3.5-4-g3bb0c54 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "KSBA is a library to access X.509 certificates and CMS data.". The branch, master has been updated via 3bb0c54fe47eb72e1e7be93de8775b37045de34d (commit) from 561d03a008150c201ece22b29c97b24a1f6bf590 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 3bb0c54fe47eb72e1e7be93de8775b37045de34d Author: Andre Heinecke Date: Thu Apr 20 13:47:33 2017 +0200 tests: Open testfile in binary mode * tests/t-crl-parser.c (one_file): Read file in binary mode. -- The tests are currently not even compiled for windows but this fixes t-crl-parser at least if run manually on windows. diff --git a/tests/t-crl-parser.c b/tests/t-crl-parser.c index 9fee61f..4b9e980 100644 --- a/tests/t-crl-parser.c +++ b/tests/t-crl-parser.c @@ -113,7 +113,7 @@ one_file (const char *fname) #endif printf ("*** checking `%s' ***\n", fname); - fp = fopen (fname, "r"); + fp = fopen (fname, "rb"); if (!fp) { fprintf (stderr, "%s:%d: can't open `%s': %s\n", ----------------------------------------------------------------------- Summary of changes: tests/t-crl-parser.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- KSBA is a library to access X.509 certificates and CMS data. http://git.gnupg.org From cvs at cvs.gnupg.org Sat Apr 22 22:09:06 2017 From: cvs at cvs.gnupg.org (by Neal H. Walfield) Date: Sat, 22 Apr 2017 22:09:06 +0200 Subject: [git] gnupg-doc - branch, master, updated. 8630a81c45b2890fd5a398565c9e5e875ba1a7a0 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via 8630a81c45b2890fd5a398565c9e5e875ba1a7a0 (commit) from 1106e2a424afd7bf68850fe0e3560b615a6dd694 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 8630a81c45b2890fd5a398565c9e5e875ba1a7a0 Author: Neal H. Walfield Date: Sat Apr 22 22:08:17 2017 +0200 web: Add picture of neal. diff --git a/web/people/neal.png b/web/people/neal.png index f75a213..f085e88 100644 Binary files a/web/people/neal.png and b/web/people/neal.png differ ----------------------------------------------------------------------- Summary of changes: web/people/neal.png | Bin 183 -> 38681 bytes 1 file changed, 0 insertions(+), 0 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 24 14:39:23 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Mon, 24 Apr 2017 14:39:23 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-88-gee71520 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via ee715201ae784e840b6136393289e6dbd6f4c540 (commit) via 679920781a25ae5c0e49d4bd78e6926fd661778f (commit) via a71f4142e13e2cc26ef0cd62f56a1ccb7ce678ee (commit) via ed4d23d75e8ba89e998b88a4f862661c81f665a3 (commit) via f03d6897be904da58cad76b4bd07729922b47616 (commit) via 245860ecaf8b9e82ca577385abd453ac92ffcd26 (commit) from 10519270d36586c536bfb6c4cda8ac17c01f4976 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit ee715201ae784e840b6136393289e6dbd6f4c540 Author: Justus Winter Date: Tue Apr 18 18:51:06 2017 +0200 gpgscm: Emit JUnit-style XML reports. * tests/gpgscm/Makefile.am (EXTRA_DIST): Add new file. * tests/gpgscm/lib.scm (string-translate): New function. * tests/gpgscm/main.c (main): Load new file. * tests/gpgscm/tests.scm (dirname): New function. (test-pool): Record execution times, emit XML report. (test): Record execution times, record log file name, emit XML report. (run-tests-parallel): Write XML report. (run-tests-sequential): Likewise. * tests/gpgscm/xml.scm: New file. * tests/gpgme/Makefile.am (CLEANFILES): Add 'report.xml'. * tests/gpgsm/Makefile.am: Likewise. * tests/migrations/Makefile.am: Likewise. * tests/openpgp/Makefile.am: Likewise. Signed-off-by: Justus Winter diff --git a/tests/gpgme/Makefile.am b/tests/gpgme/Makefile.am index daf7572..37485e7 100644 --- a/tests/gpgme/Makefile.am +++ b/tests/gpgme/Makefile.am @@ -50,7 +50,7 @@ xcheck: EXTRA_DIST = gpgme-defs.scm run-tests.scm setup.scm wrap.scm -CLEANFILES = *.log +CLEANFILES = *.log report.xml # We need to depend on a couple of programs so that the tests don't # start before all programs are built. diff --git a/tests/gpgscm/Makefile.am b/tests/gpgscm/Makefile.am index dc999fb..1bdd373 100644 --- a/tests/gpgscm/Makefile.am +++ b/tests/gpgscm/Makefile.am @@ -25,6 +25,7 @@ EXTRA_DIST = \ lib.scm \ repl.scm \ t-child.scm \ + xml.scm \ tests.scm \ gnupg.scm \ time.scm diff --git a/tests/gpgscm/lib.scm b/tests/gpgscm/lib.scm index cafca8d..258f692 100644 --- a/tests/gpgscm/lib.scm +++ b/tests/gpgscm/lib.scm @@ -199,6 +199,13 @@ (assert (string-contains? "Hallo" "llo")) (assert (not (string-contains? "Hallo" "olla"))) +;; Translate characters. +(define (string-translate s from to) + (list->string (map (lambda (c) + (let ((i (string-index from c))) + (if i (string-ref to i) c))) (string->list s)))) +(assert (equal? (string-translate "foo/bar" "/" ".") "foo.bar")) + ;; Read a word from port P. (define (read-word . p) (list->string diff --git a/tests/gpgscm/main.c b/tests/gpgscm/main.c index 5e04d97..e4b535e 100644 --- a/tests/gpgscm/main.c +++ b/tests/gpgscm/main.c @@ -313,6 +313,8 @@ main (int argc, char **argv) if (! err) err = load (sc, "repl.scm", 0, 1); if (! err) + err = load (sc, "xml.scm", 0, 1); + if (! err) err = load (sc, "tests.scm", 0, 1); if (! err) err = load (sc, "gnupg.scm", 0, 1); diff --git a/tests/gpgscm/tests.scm b/tests/gpgscm/tests.scm index b2dcc54..3118977 100644 --- a/tests/gpgscm/tests.scm +++ b/tests/gpgscm/tests.scm @@ -223,6 +223,10 @@ (substring path 0 (- (string-length path) (string-length suffix))) path))) +(define (dirname path) + (let ((i (string-rindex path #\/))) + (if i (substring path 0 i) "."))) + ;; Helper for (pipe). (define :read-end car) (define :write-end cadr) @@ -511,7 +515,9 @@ (let ((names (map (lambda (t) t::name) unfinished)) (pids (map (lambda (t) t::pid) unfinished))) (for-each - (lambda (test retcode) (test:::set! 'retcode retcode)) + (lambda (test retcode) + (test::set-end-time!) + (test:::set! 'retcode retcode)) (map pid->test pids) (wait-processes (map stringify names) pids #t))))) (current-environment)) @@ -539,7 +545,15 @@ (length skipped') "skipped.") (print-tests failed' "Failed tests:") (print-tests skipped' "Skipped tests:") - (length failed'))))))) + (length failed'))) + + (define (xml) + (xx::document + (xx::tag 'testsuites + `((xmlns:xsi "http://www.w3.org/2001/XMLSchema-instance") + ("xsi:noNamespaceSchemaLocation" + "https://windyroad.com.au/dl/Open%20Source/JUnit.xsd")) + (map (lambda (t) (t::xml)) procs)))))))) (define (verbosity n) (if (= 0 n) '() (cons '--verbose (verbosity (- n 1))))) @@ -549,6 +563,23 @@ ;; A single test. (define test + (begin + + ;; Private definitions. + + (define (isotime->junit t) + "[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}" + "20170418T145809" + (string-append (substring t 0 4) + "-" + (substring t 4 6) + "-" + (substring t 6 11) + ":" + (substring t 11 13) + ":" + (substring t 13 15))) + (package (define (scm setup name path . args) ;; Start the process. @@ -568,14 +599,34 @@ (define (new name directory spawn pid retcode logfd) (package + + ;; XXX: OO glue. + (define self (current-environment)) (define (:set! key value) (eval `(set! ,key ,value) (current-environment)) (current-environment)) + + ;; The log is written here. + (define log-file-name "not set") + + ;; Record time stamps. + (define timestamp #f) + (define start-time 0) + (define end-time 0) + + (define (set-start-time!) + (set! timestamp (isotime->junit (get-isotime))) + (set! start-time (get-time))) + (define (set-end-time!) + (set! end-time (get-time))) + (define (open-log-file) - (let ((filename (string-append (basename name) ".log"))) - (catch '() (unlink filename)) - (open filename (logior O_RDWR O_BINARY O_CREAT) #o600))) + (set! log-file-name (string-append (basename name) ".log")) + (catch '() (unlink log-file-name)) + (open log-file-name (logior O_RDWR O_BINARY O_CREAT) #o600)) + (define (run-sync . args) + (set-start-time!) (letfd ((log (open-log-file))) (with-working-directory directory (let* ((p (inbound-pipe)) @@ -588,25 +639,62 @@ (report) (current-environment)) (define (run-sync-quiet . args) + (set-start-time!) (with-working-directory directory - (set! pid (spawn args CLOSED_FD CLOSED_FD CLOSED_FD)) - (set! retcode (wait-process name pid #t))) + (set! pid (spawn args CLOSED_FD CLOSED_FD CLOSED_FD))) + (set! retcode (wait-process name pid #t)) + (set-end-time!) (current-environment)) (define (run-async . args) + (set-start-time!) (let ((log (open-log-file))) (with-working-directory directory (set! pid (spawn args CLOSED_FD log log))) (set! logfd log)) (current-environment)) (define (status) - (let ((t (assoc retcode '((0 "PASS") (77 "SKIP") (99 "ERROR"))))) - (if (not t) "FAIL" (cadr t)))) + (let ((t (assoc retcode '((0 PASS) (77 SKIP) (99 ERROR))))) + (if (not t) 'FAIL (cadr t)))) + (define (status-string) + (cadr (assoc (status) '((PASS "PASS") + (SKIP "SKIP") + (ERROR "ERROR") + (FAIL "FAIL"))))) (define (report) (unless (= logfd CLOSED_FD) (seek logfd 0 SEEK_SET) (splice logfd STDERR_FILENO) (close logfd)) - (echo (string-append (status) ":") name)))))) + (echo (string-append (status-string) ":") name)) + + (define (xml) + (xx::tag + 'testsuite + `((name ,name) + (time ,(- end-time start-time)) + (package ,(dirname name)) + (id 0) + (timestamp ,timestamp) + (hostname "unknown") + (tests 1) + (failures ,(if (eq? FAIL (status)) 1 0)) + (errors ,(if (eq? ERROR (status)) 1 0))) + (list + (xx::tag 'properties) + (xx::tag 'testcase + `((name ,(basename name)) + (classname ,(string-translate (dirname name) "/" ".")) + (time ,(- end-time start-time))) + `(,@(case (status) + ((PASS) '()) + ((SKIP) (list (xx::tag 'skipped))) + ((ERROR) (list + (xx::tag 'error '((message "Unknown error."))))) + (else + (list (xx::tag 'failure '((message "Unknown error.")))))))) + (xx::tag 'system-out '() + (list (xx::textnode (read-all (open-input-file log-file-name))))) + (xx::tag 'system-err '() (list (xx::textnode ""))))))))))) ;; Run the setup target to create an environment, then run all given ;; tests in parallel. @@ -615,6 +703,7 @@ (if (null? tests') (let ((results (pool::wait))) (for-each (lambda (t) (t::report)) (reverse results::procs)) + ((results::xml) (open-output-file "report.xml")) (exit (results::report))) (let ((wd (mkdtemp-autoremove)) (test (car tests'))) @@ -628,6 +717,7 @@ (let loop ((pool (test-pool::new '())) (tests' tests)) (if (null? tests') (let ((results (pool::wait))) + ((results::xml) (open-output-file "report.xml")) (exit (results::report))) (let ((wd (mkdtemp-autoremove)) (test (car tests'))) diff --git a/tests/gpgscm/xml.scm b/tests/gpgscm/xml.scm new file mode 100644 index 0000000..771ec36 --- /dev/null +++ b/tests/gpgscm/xml.scm @@ -0,0 +1,142 @@ +;; A tiny XML library. +;; +;; Copyright (C) 2017 g10 Code GmbH +;; +;; This file is part of GnuPG. +;; +;; GnuPG is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 3 of the License, or +;; (at your option) any later version. +;; +;; GnuPG is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. +;; +;; You should have received a copy of the GNU General Public License +;; along with this program; if not, see . + +(define xx + (begin + + ;; Private declarations. + (define quote-text + '((#\< "<") + (#\> ">") + (#\& "&"))) + + (define quote-attribute-' + '((#\< "<") + (#\> ">") + (#\& "&") + (#\' "'"))) + + (define quote-attribute-'' + '((#\< "<") + (#\> ">") + (#\& "&") + (#\" """))) + + (define (escape-string quotation string sink) + ;; This implementation is a bit awkward because iteration is so + ;; slow in TinySCHEME. We rely on string-index to skip to the + ;; next character we need to escape. We also avoid allocations + ;; wherever possible. + + ;; Given a list of integers or #f, return the sublist that + ;; starts with the lowest integer. + (define (min* x) + (let loop ((lowest x) (rest x)) + (if (null? rest) + lowest + (loop (if (or (null? lowest) (not (car lowest)) + (and (car rest) (> (car lowest) (car rest)))) rest lowest) + (cdr rest))))) + + (let ((i 0) (start 0) (len (string-length string)) + (indices (map (lambda (x) (string-index string (car x))) quotation)) + (next #f) (c #f)) + + ;; Set 'i' to the index of the next character that needs + ;; escaping, 'c' to the character that needs to be escaped, + ;; and update 'indices'. + (define (skip!) + (set! next (min* indices)) + (set! i (if (null? next) #f (car next))) + (if i + (begin + (set! c (string-ref string i)) + (set-car! next (string-index string c (+ 1 i)))) + (set! i (string-length string)))) + + (let loop () + (skip!) + (if (< i len) + (begin + (display (substring string start i) sink) + (display (cadr (assv c quotation)) sink) + (set! i (+ 1 i)) + (set! start i) + (loop)) + (display (substring string start len) sink))))) + + (let ((escape-string-s (lambda (quotation string) + (let ((sink (open-output-string))) + (escape-string quotation string sink) + (get-output-string sink))))) + (assert (equal? (escape-string-s quote-text "foo") "foo")) + (assert (equal? (escape-string-s quote-text "foo&") "foo&")) + (assert (equal? (escape-string-s quote-text "&foo") "&foo")) + (assert (equal? (escape-string-s quote-text "foo&bar") "foo&bar")) + (assert (equal? (escape-string-s quote-text "foobar") "foo>bar"))) + + (define (escape quotation datum sink) + (cond + ((string? datum) (escape-string quotation datum sink)) + ((symbol? datum) (escape-string quotation (symbol->string datum) sink)) + ((number? datum) (display (number->string datum) sink)) + (else + (throw "Do not know how to encode" datum)))) + + (define (name->string name) + (cond + ((symbol? name) (symbol->string name)) + (else name))) + + (package + + (define (textnode string) + (lambda (sink) + (escape quote-text string sink))) + + (define (tag name . rest) + (let ((attributes (if (null? rest) '() (car rest))) + (children (if (> (length rest) 1) (cadr rest) '()))) + (lambda (sink) + (display "<" sink) + (display (name->string name) sink) + (unless (null? attributes) + (display " " sink) + (for-each (lambda (a) + (display (car a) sink) + (display "=\"" sink) + (escape quote-attribute-'' (cadr a) sink) + (display "\" " sink)) attributes)) + (if (null? children) + (display "/>\n" sink) + (begin + (display ">\n" sink) + (for-each (lambda (c) (c sink)) children) + (display "string name) sink) + (display ">\n" sink)))))) + + (define (document root . rest) + (let ((attributes (if (null? rest) '() (car rest)))) + (lambda (sink) + ;; xxx ignores attributes + (display "\n" sink) + (root sink) + (newline sink))))))) diff --git a/tests/gpgsm/Makefile.am b/tests/gpgsm/Makefile.am index 214c3b2..892d3bc 100644 --- a/tests/gpgsm/Makefile.am +++ b/tests/gpgsm/Makefile.am @@ -68,7 +68,7 @@ TEST_FILES = plain-1.cms.asc \ EXTRA_DIST = $(XTESTS) $(KEYS) $(CERTS) $(TEST_FILES) \ gpgsm-defs.scm run-tests.scm setup.scm -CLEANFILES = *.log +CLEANFILES = *.log report.xml # We need to depend on a couple of programs so that the tests don't # start before all programs are built. diff --git a/tests/migrations/Makefile.am b/tests/migrations/Makefile.am index e548723..398b15c 100644 --- a/tests/migrations/Makefile.am +++ b/tests/migrations/Makefile.am @@ -58,7 +58,7 @@ xcheck: EXTRA_DIST = common.scm run-tests.scm setup.scm $(XTESTS) $(TEST_FILES) -CLEANFILES = *.log +CLEANFILES = *.log report.xml # We need to depend on a couple of programs so that the tests don't # start before all programs are built. diff --git a/tests/openpgp/Makefile.am b/tests/openpgp/Makefile.am index 354dff9..a7281a5 100644 --- a/tests/openpgp/Makefile.am +++ b/tests/openpgp/Makefile.am @@ -259,7 +259,7 @@ CLEANFILES = prepared.stamp x y yy z out err $(data_files) \ pubring.gpg pubring.gpg~ pubring.kbx pubring.kbx~ \ secring.gpg pubring.pkr secring.skr \ gnupg-test.stop random_seed gpg-agent.log tofu.db \ - passphrases sshcontrol S.gpg-agent.ssh + passphrases sshcontrol S.gpg-agent.ssh report.xml clean-local: -rm -rf private-keys-v1.d openpgp-revocs.d tofu.d gpgtar.d commit 679920781a25ae5c0e49d4bd78e6926fd661778f Author: Justus Winter Date: Thu Apr 20 11:49:17 2017 +0200 gpgscm: Make logging less verbose and more useful. * tests/gpgscm/tests.scm (call-with-io): When being verbose, include the pid in the output, and avoid duplicating the command arguments. Signed-off-by: Justus Winter diff --git a/tests/gpgscm/tests.scm b/tests/gpgscm/tests.scm index c098218..b2dcc54 100644 --- a/tests/gpgscm/tests.scm +++ b/tests/gpgscm/tests.scm @@ -104,10 +104,11 @@ (es-fclose (:stdout h)) (es-fclose (:stderr h)) (if (> (*verbose*) 2) - (begin - (echo (stringify what) "returned:" result) - (echo (stringify what) "wrote to stdout:" out) - (echo (stringify what) "wrote to stderr:" err))) + (info "Child" (:pid h) "returned:" + `((command ,(stringify what)) + (status ,result) + (stdout ,out) + (stderr ,err)))) (list result out err)))) ;; Accessor function for the results of 'call-with-io'. ':stdout' and commit a71f4142e13e2cc26ef0cd62f56a1ccb7ce678ee Author: Justus Winter Date: Tue Apr 18 12:27:49 2017 +0200 gpgscm: Make test framework less functional. * tests/gpgscm/tests.scm (test-pool, tests): Previously, these methods updated objects by creating new updated copies of the object being manipulated. This made the code awkward without any benefit, therefore I change it to just update the object. Signed-off-by: Justus Winter diff --git a/tests/gpgscm/tests.scm b/tests/gpgscm/tests.scm index e8cea85..c098218 100644 --- a/tests/gpgscm/tests.scm +++ b/tests/gpgscm/tests.scm @@ -498,23 +498,22 @@ (define (new procs) (package (define (add test) - (new (cons test procs))) + (set! procs (cons test procs)) + (current-environment)) + (define (pid->test pid) + (let ((t (filter (lambda (x) (= pid x::pid)) procs))) + (if (null? t) #f (car t)))) (define (wait) (let ((unfinished (filter (lambda (t) (not t::retcode)) procs))) (if (null? unfinished) - (package) - (let* ((names (map (lambda (t) t::name) unfinished)) - (pids (map (lambda (t) t::pid) unfinished)) - (results - (map (lambda (pid retcode) (list pid retcode)) - pids - (wait-processes (map stringify names) pids #t)))) - (new - (map (lambda (t) - (if t::retcode - t - (t::set-retcode (cadr (assoc t::pid results))))) - procs)))))) + (current-environment) + (let ((names (map (lambda (t) t::name) unfinished)) + (pids (map (lambda (t) t::pid) unfinished))) + (for-each + (lambda (test retcode) (test:::set! 'retcode retcode)) + (map pid->test pids) + (wait-processes (map stringify names) pids #t))))) + (current-environment)) (define (passed) (filter (lambda (p) (= 0 p::retcode)) procs)) (define (skipped) @@ -568,14 +567,9 @@ (define (new name directory spawn pid retcode logfd) (package - (define (set-directory x) - (new name x spawn pid retcode logfd)) - (define (set-retcode x) - (new name directory spawn pid x logfd)) - (define (set-pid x) - (new name directory spawn x retcode logfd)) - (define (set-logfd x) - (new name directory spawn pid retcode x)) + (define (:set! key value) + (eval `(set! ,key ,value) (current-environment)) + (current-environment)) (define (open-log-file) (let ((filename (string-append (basename name) ".log"))) (catch '() (unlink filename)) @@ -584,24 +578,25 @@ (letfd ((log (open-log-file))) (with-working-directory directory (let* ((p (inbound-pipe)) - (pid (spawn args 0 (:write-end p) (:write-end p)))) + (pid' (spawn args 0 (:write-end p) (:write-end p)))) (close (:write-end p)) (splice (:read-end p) STDERR_FILENO log) (close (:read-end p)) - (let ((t' (set-retcode (wait-process name pid #t)))) - (t'::report) - t'))))) + (set! pid pid') + (set! retcode (wait-process name pid' #t))))) + (report) + (current-environment)) (define (run-sync-quiet . args) (with-working-directory directory - (set-retcode - (wait-process - name (spawn args CLOSED_FD CLOSED_FD CLOSED_FD) #t)))) + (set! pid (spawn args CLOSED_FD CLOSED_FD CLOSED_FD)) + (set! retcode (wait-process name pid #t))) + (current-environment)) (define (run-async . args) (let ((log (open-log-file))) (with-working-directory directory - (new name directory spawn - (spawn args CLOSED_FD log log) - retcode log)))) + (set! pid (spawn args CLOSED_FD log log))) + (set! logfd log)) + (current-environment)) (define (status) (let ((t (assoc retcode '((0 "PASS") (77 "SKIP") (99 "ERROR"))))) (if (not t) "FAIL" (cadr t)))) @@ -620,10 +615,10 @@ (let ((results (pool::wait))) (for-each (lambda (t) (t::report)) (reverse results::procs)) (exit (results::report))) - (let* ((wd (mkdtemp-autoremove)) - (test (car tests')) - (test' (test::set-directory wd))) - (loop (pool::add (test'::run-async)) + (let ((wd (mkdtemp-autoremove)) + (test (car tests'))) + (test:::set! 'directory wd) + (loop (pool::add (test::run-async)) (cdr tests')))))) ;; Run the setup target to create an environment, then run all given @@ -633,10 +628,10 @@ (if (null? tests') (let ((results (pool::wait))) (exit (results::report))) - (let* ((wd (mkdtemp-autoremove)) - (test (car tests')) - (test' (test::set-directory wd))) - (loop (pool::add (test'::run-sync)) + (let ((wd (mkdtemp-autoremove)) + (test (car tests'))) + (test:::set! 'directory wd) + (loop (pool::add (test::run-sync)) (cdr tests')))))) ;; Helper to create environment caches from test functions. SETUP commit ed4d23d75e8ba89e998b88a4f862661c81f665a3 Author: Justus Winter Date: Wed Mar 22 12:40:42 2017 +0100 tests: Locate resources and scripts relative to top source dir. -- Locate every resource and every script used in the tests using a path relative to the top of the source tree. This is a purely mechanical change, mostly done using regular expressions, with a few manual fixups here and there. Signed-off-by: Justus Winter diff --git a/g10/Makefile.am b/g10/Makefile.am index f1d2d17..4b806ec 100644 --- a/g10/Makefile.am +++ b/g10/Makefile.am @@ -54,6 +54,8 @@ noinst_PROGRAMS += gpgcompose endif noinst_PROGRAMS += $(module_tests) TESTS = $(module_tests) +TESTS_ENVIRONMENT = \ + abs_top_srcdir=$(abs_top_srcdir) if ENABLE_BZIP2_SUPPORT bzip2_source = compress-bz2.c diff --git a/g10/t-stutter.c b/g10/t-stutter.c index f4a9a59..8fe242d 100644 --- a/g10/t-stutter.c +++ b/g10/t-stutter.c @@ -58,6 +58,8 @@ #include "dek.h" #include "../common/logging.h" +#include "test.c" + static void log_hexdump (byte *buffer, int length) { @@ -368,8 +370,8 @@ oracle_test (unsigned int d, int b, int debug) return oracle (debug, probe, blocksize + 2, NULL, NULL) == 0; } -int -main (int argc, char *argv[]) +static void +do_test (int argc, char *argv[]) { int i; int debug = 0; @@ -379,8 +381,6 @@ main (int argc, char *argv[]) byte *raw_data; int raw_data_len; - int failed = 0; - for (i = 1; i < argc; i ++) { if (strcmp (argv[i], "--debug") == 0) @@ -396,11 +396,10 @@ main (int argc, char *argv[]) } } - if (! blocksize && ! filename && (filename = getenv ("srcdir"))) + if (! blocksize && ! filename && (filename = prepend_srcdir ("t-stutter-data.asc"))) /* Try defaults. */ { parse_session_key ("9:9274A8EC128E850C6DDDF9EAC68BFA84FC7BC05F340DA41D78C93D0640C7C503"); - filename = xasprintf ("%s/t-stutter-data.asc", filename); } if (help || ! blocksize || ! filename) @@ -601,7 +600,7 @@ main (int argc, char *argv[]) isprint (pt[0]) ? pt[0] : '?', isprint (pt[1]) ? pt[1] : '?', hexstr (m)); - failed = 1; + tests_failed++; } } @@ -610,5 +609,4 @@ main (int argc, char *argv[]) } xfree (filename); - return failed; } diff --git a/g10/test.c b/g10/test.c index 734458a..375f361 100644 --- a/g10/test.c +++ b/g10/test.c @@ -154,12 +154,12 @@ prepend_srcdir (const char *fname) static const char *srcdir; char *result; - if (!srcdir && !(srcdir = getenv ("srcdir"))) + if (!srcdir && !(srcdir = getenv ("abs_top_srcdir"))) srcdir = "."; - result = malloc (strlen (srcdir) + 1 + strlen (fname) + 1); + result = malloc (strlen (srcdir) + strlen ("/g10/") + strlen (fname) + 1); strcpy (result, srcdir); - strcat (result, "/"); + strcat (result, "/g10/"); strcat (result, fname); return result; } diff --git a/tests/gpgme/Makefile.am b/tests/gpgme/Makefile.am index 0d0edc0..daf7572 100644 --- a/tests/gpgme/Makefile.am +++ b/tests/gpgme/Makefile.am @@ -31,9 +31,9 @@ AM_CFLAGS = TESTS_ENVIRONMENT = LC_ALL=C \ EXEEXT=$(EXEEXT) \ PATH=../gpgscm:$(PATH) \ - srcdir=$(abs_srcdir) \ + abs_top_srcdir=$(abs_top_srcdir) \ objdir=$(abs_top_builddir) \ - GPGSCM_PATH=$(abs_top_srcdir)/tests/gpgscm:$(abs_top_srcdir)/tests/openpgp:$(abs_top_srcdir)/tests/gpgme + GPGSCM_PATH=$(abs_top_srcdir)/tests/gpgscm # XXX: Currently, one cannot override automake's 'check' target. As a # workaround, we avoid defining 'TESTS', thus automake will not emit diff --git a/tests/gpgme/gpgme-defs.scm b/tests/gpgme/gpgme-defs.scm index 486d1a1..1e215b1 100644 --- a/tests/gpgme/gpgme-defs.scm +++ b/tests/gpgme/gpgme-defs.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (define gpgme-srcdir (getenv "XTEST_GPGME_SRCDIR")) (when (string=? "" gpgme-srcdir) diff --git a/tests/gpgme/run-tests.scm b/tests/gpgme/run-tests.scm index be70f17..df5f548 100644 --- a/tests/gpgme/run-tests.scm +++ b/tests/gpgme/run-tests.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "gpgme-defs.scm")) +(load (in-srcdir "tests" "gpgme" "gpgme-defs.scm")) (info "Running GPGME's test suite...") @@ -40,11 +40,17 @@ run-tests-parallel run-tests-sequential)) (setup-c (make-environment-cache - (test::scm #f "setup.scm (tests/gpg)" (in-srcdir "setup.scm") - "--" "tests" "gpg"))) + (test::scm + #f + (path-join "tests" "gpgme" "setup.scm" "tests" "gpg") + (in-srcdir "tests" "gpgme" "setup.scm") + "--" "tests" "gpg"))) (setup-py (make-environment-cache - (test::scm #f "setup.scm (lang/python/tests)" (in-srcdir "setup.scm") - "--" "lang" "python" "tests"))) + (test::scm + #f + (path-join "tests" "gpgme" "setup.scm" "lang" "python" "tests") + (in-srcdir "tests" "gpgme" "setup.scm") + "--" "lang" "python" "tests"))) (tests (filter (lambda (arg) (not (string-prefix? arg "--"))) *args*))) (runner (apply @@ -66,7 +72,10 @@ (map (lambda (name) (apply test::scm `(,(:setup cmpnts) - ,name ,(in-srcdir "wrap.scm") --executable + ,(apply path-join + `("tests" "gpgme" ,@(:path cmpnts) ,name)) + ,(in-srcdir "tests" "gpgme" "wrap.scm") + --executable ,(find-test name) -- ,@(:path cmpnts)))) (if (null? tests) (all-tests makefile (:key cmpnts)) tests)))) diff --git a/tests/gpgme/setup.scm b/tests/gpgme/setup.scm index 0116a74..d1173d8 100644 --- a/tests/gpgme/setup.scm +++ b/tests/gpgme/setup.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "gpgme-defs.scm")) +(load (in-srcdir "tests" "gpgme" "gpgme-defs.scm")) (define tarball (flag "--create-tarball" *args*)) (unless (and tarball (not (null? tarball))) diff --git a/tests/gpgme/wrap.scm b/tests/gpgme/wrap.scm index eb416f4..9a20d50 100644 --- a/tests/gpgme/wrap.scm +++ b/tests/gpgme/wrap.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "gpgme-defs.scm")) +(load (in-srcdir "tests" "gpgme" "gpgme-defs.scm")) (define executable (flag "--executable" *args*)) (unless (and executable (not (null? executable))) @@ -28,6 +28,7 @@ (setenv "abs_builddir" (getcwd) #t) (setenv "top_srcdir" gpgme-srcdir #t) (setenv "srcdir" (path-join gpgme-srcdir "tests" "gpg") #t) +(setenv "abs_top_srcdir" (path-join gpgme-srcdir "tests" "gpg") #t) (define (run what) (if (string-suffix? (car what) ".py") diff --git a/tests/gpgscm/tests.scm b/tests/gpgscm/tests.scm index 4107889..e8cea85 100644 --- a/tests/gpgscm/tests.scm +++ b/tests/gpgscm/tests.scm @@ -189,7 +189,7 @@ (if (absolute-path? path) path (path-join (getcwd) path))) (define (in-srcdir . names) - (canonical-path (apply path-join (cons (getenv "srcdir") names)))) + (canonical-path (apply path-join (cons (getenv "abs_top_srcdir") names)))) ;; Try to find NAME in PATHS. Returns the full path name on success, ;; or raises an error. diff --git a/tests/gpgsm/Makefile.am b/tests/gpgsm/Makefile.am index 28db501..214c3b2 100644 --- a/tests/gpgsm/Makefile.am +++ b/tests/gpgsm/Makefile.am @@ -31,9 +31,9 @@ AM_CFLAGS = TESTS_ENVIRONMENT = LC_ALL=C \ EXEEXT=$(EXEEXT) \ PATH=../gpgscm:$(PATH) \ - srcdir=$(abs_srcdir) \ + abs_top_srcdir=$(abs_top_srcdir) \ objdir=$(abs_top_builddir) \ - GPGSCM_PATH=$(abs_top_srcdir)/tests/gpgscm:$(abs_top_srcdir)/tests/openpgp:$(abs_top_srcdir)/tests/gpgsm + GPGSCM_PATH=$(abs_top_srcdir)/tests/gpgscm XTESTS = \ import.scm \ diff --git a/tests/gpgsm/decrypt.scm b/tests/gpgsm/decrypt.scm index e7f3baa..c328ba8 100644 --- a/tests/gpgsm/decrypt.scm +++ b/tests/gpgsm/decrypt.scm @@ -17,14 +17,14 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "gpgsm-defs.scm")) +(load (in-srcdir "tests" "gpgsm" "gpgsm-defs.scm")) (setup-gpgsm-environment) (for-each-p "Checking decryption of supplied files." (lambda (name) (tr:do - (tr:open (in-srcdir (string-append name ".cms.asc"))) + (tr:open (in-srcdir "tests" "gpgsm" (string-append name ".cms.asc"))) (tr:gpgsm "" '(--decrypt)) (tr:assert-identity name))) plain-files) diff --git a/tests/gpgsm/encrypt.scm b/tests/gpgsm/encrypt.scm index fd23ac5..bb90c8e 100644 --- a/tests/gpgsm/encrypt.scm +++ b/tests/gpgsm/encrypt.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "gpgsm-defs.scm")) +(load (in-srcdir "tests" "gpgsm" "gpgsm-defs.scm")) (setup-gpgsm-environment) (for-each-p diff --git a/tests/gpgsm/export.scm b/tests/gpgsm/export.scm index 47fb06e..d29b6cc 100644 --- a/tests/gpgsm/export.scm +++ b/tests/gpgsm/export.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "gpgsm-defs.scm")) +(load (in-srcdir "tests" "gpgsm" "gpgsm-defs.scm")) (setup-gpgsm-environment) (for-each-p' diff --git a/tests/gpgsm/gpgsm-defs.scm b/tests/gpgsm/gpgsm-defs.scm index 5f9be7f..c978c32 100644 --- a/tests/gpgsm/gpgsm-defs.scm +++ b/tests/gpgsm/gpgsm-defs.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) ;; This is the list of certificates that we install in the test ;; environment. @@ -83,13 +83,13 @@ (log "Storing private keys") (for-each (lambda (name) - (file-copy (in-srcdir name) + (file-copy (in-srcdir "tests" "gpgsm" name) (path-join "private-keys-v1.d" (string-append name ".key")))) '("32100C27173EF6E9C4E9A25D3D69F86D37A4F939")) (log "Importing public demo and test keys") - (call-check `(, at gpgsm --import ,(in-srcdir "cert_g10code_test1.der"))) + (call-check `(, at gpgsm --import ,(in-srcdir "tests" "gpgsm" "cert_g10code_test1.der"))) (create-sample-files) (stop-agent)) diff --git a/tests/gpgsm/import.scm b/tests/gpgsm/import.scm index 85e5107..be555da 100644 --- a/tests/gpgsm/import.scm +++ b/tests/gpgsm/import.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "gpgsm-defs.scm")) +(load (in-srcdir "tests" "gpgsm" "gpgsm-defs.scm")) (setup-gpgsm-environment) (define certs-for-import @@ -47,7 +47,7 @@ "Checking certificate import." (lambda (test) (assert (not (sm-have-public-key? (:cert test)))) - (call-check `(, at gpgsm --import ,(in-srcdir (:name test)))) + (call-check `(, at gpgsm --import ,(in-srcdir "tests" "gpgsm" (:name test)))) (assert (sm-have-public-key? (:cert test)))) (lambda (test) (:name test)) certs-for-import) diff --git a/tests/gpgsm/run-tests.scm b/tests/gpgsm/run-tests.scm index e444245..bf129a1 100644 --- a/tests/gpgsm/run-tests.scm +++ b/tests/gpgsm/run-tests.scm @@ -17,16 +17,22 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(if (string=? "" (getenv "srcdir")) +(if (string=? "" (getenv "abs_top_srcdir")) (begin - (echo "Environment variable 'srcdir' not set. Please point it to" + (echo "Environment variable 'abs_top_srcdir' not set. Please point it to" "tests/gpgsm.") (exit 2))) (let* ((tests (filter (lambda (arg) (not (string-prefix? arg "--"))) *args*)) - (setup (make-environment-cache (test::scm #f "setup.scm" "setup.scm"))) + (setup (make-environment-cache (test::scm + #f + (path-join "tests" "gpgsm" "setup.scm") + (in-srcdir "tests" "gpgsm" "setup.scm")))) (runner (if (and (member "--parallel" *args*) (> (length tests) 1)) run-tests-parallel run-tests-sequential))) - (runner (map (lambda (t) (test::scm setup t t)) tests))) + (runner (map (lambda (name) + (test::scm setup + (path-join "tests" "gpgsm" name) + (in-srcdir "tests" "gpgsm" name))) tests))) diff --git a/tests/gpgsm/setup.scm b/tests/gpgsm/setup.scm index aa1ab41..c241b38 100644 --- a/tests/gpgsm/setup.scm +++ b/tests/gpgsm/setup.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "gpgsm-defs.scm")) +(load (in-srcdir "tests" "gpgsm" "gpgsm-defs.scm")) (define tarball (flag "--create-tarball" *args*)) (unless (and tarball (not (null? tarball))) diff --git a/tests/gpgsm/shell.scm b/tests/gpgsm/shell.scm index fe39fec..606e388 100644 --- a/tests/gpgsm/shell.scm +++ b/tests/gpgsm/shell.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "gpgsm-defs.scm")) +(load (in-srcdir "tests" "gpgsm" "gpgsm-defs.scm")) (setup-gpgsm-environment) ;; This is not a test, but can be used to inspect the test diff --git a/tests/gpgsm/sign.scm b/tests/gpgsm/sign.scm index 9b4f7fe..48b7b06 100644 --- a/tests/gpgsm/sign.scm +++ b/tests/gpgsm/sign.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "gpgsm-defs.scm")) +(load (in-srcdir "tests" "gpgsm" "gpgsm-defs.scm")) (setup-gpgsm-environment) (for-each-p diff --git a/tests/gpgsm/verify.scm b/tests/gpgsm/verify.scm index 28210a9..40dbd48 100644 --- a/tests/gpgsm/verify.scm +++ b/tests/gpgsm/verify.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "gpgsm-defs.scm")) +(load (in-srcdir "tests" "gpgsm" "gpgsm-defs.scm")) (setup-gpgsm-environment) ;; diff --git a/tests/migrations/Makefile.am b/tests/migrations/Makefile.am index 0895aff..e548723 100644 --- a/tests/migrations/Makefile.am +++ b/tests/migrations/Makefile.am @@ -31,9 +31,9 @@ AM_CFLAGS = TESTS_ENVIRONMENT = GPG_AGENT_INFO= LC_ALL=C \ EXEEXT=$(EXEEXT) \ PATH=../gpgscm:$(PATH) \ - srcdir=$(abs_srcdir) \ + abs_top_srcdir=$(abs_top_srcdir) \ objdir=$(abs_top_builddir) \ - GPGSCM_PATH=$(abs_top_srcdir)/tests/gpgscm:$(abs_top_srcdir)/tests/migrations + GPGSCM_PATH=$(abs_top_srcdir)/tests/gpgscm XTESTS = from-classic.scm \ extended-pkf.scm \ @@ -54,7 +54,7 @@ check: xcheck .PHONY: xcheck xcheck: $(TESTS_ENVIRONMENT) $(abs_top_builddir)/tests/gpgscm/gpgscm \ - run-tests.scm $(TESTFLAGS) $(XTESTS) + $(abs_srcdir)/run-tests.scm $(TESTFLAGS) $(XTESTS) EXTRA_DIST = common.scm run-tests.scm setup.scm $(XTESTS) $(TEST_FILES) diff --git a/tests/migrations/common.scm b/tests/migrations/common.scm index cba6590..54d33b9 100644 --- a/tests/migrations/common.scm +++ b/tests/migrations/common.scm @@ -15,7 +15,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(if (string=? "" (getenv "srcdir")) +(if (string=? "" (getenv "abs_top_srcdir")) (error "not called from make")) (let ((verbose (string->number (getenv "verbose")))) diff --git a/tests/migrations/extended-pkf.scm b/tests/migrations/extended-pkf.scm index 1317cd4..cc1a074 100755 --- a/tests/migrations/extended-pkf.scm +++ b/tests/migrations/extended-pkf.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "common.scm")) +(load (in-srcdir "tests" "migrations" "common.scm")) (catch (skip "gpgtar not built") (call-check `(,GPGTAR --help))) @@ -31,7 +31,7 @@ (run-test "Testing the extended private key format ..." - (in-srcdir "extended-pkf.tar.asc") + (in-srcdir "tests" "migrations" "extended-pkf.tar.asc") (lambda (gpghome) (assert-keys-usable))) diff --git a/tests/migrations/from-classic.scm b/tests/migrations/from-classic.scm index ace458e..b473d70 100755 --- a/tests/migrations/from-classic.scm +++ b/tests/migrations/from-classic.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "common.scm")) +(load (in-srcdir "tests" "migrations" "common.scm")) (catch (skip "gpgtar not built") (call-check `(,GPGTAR --help))) @@ -37,14 +37,14 @@ (run-test "Testing a clean migration ..." - (in-srcdir "from-classic.tar.asc") + (in-srcdir "tests" "migrations" "from-classic.tar.asc") (lambda (gpghome) (trigger-migration) (assert-migrated))) (run-test "Testing a migration with existing private-keys-v1.d ..." - (in-srcdir "from-classic.tar.asc") + (in-srcdir "tests" "migrations" "from-classic.tar.asc") (lambda (gpghome) (mkdir "private-keys-v1.d" "-rwx") (trigger-migration) @@ -52,7 +52,7 @@ (run-test "Testing a migration with existing but weird private-keys-v1.d ..." - (in-srcdir "from-classic.tar.asc") + (in-srcdir "tests" "migrations" "from-classic.tar.asc") (lambda (gpghome) (mkdir "private-keys-v1.d" "") (trigger-migration) diff --git a/tests/migrations/issue2276.scm b/tests/migrations/issue2276.scm index 9a0c160..8ea3f43 100755 --- a/tests/migrations/issue2276.scm +++ b/tests/migrations/issue2276.scm @@ -17,12 +17,12 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "common.scm")) +(load (in-srcdir "tests" "migrations" "common.scm")) (run-test "Checking migration with legacy key (issue2276)..." ;; This tarball contains a keyring with a legacy key. - (in-srcdir "issue2276.tar.asc") + (in-srcdir "tests" "migrations" "issue2276.tar.asc") (lambda (gpghome) ;; GnuPG up to 2.1.14 failed to skip the legacy key when updating ;; the trust database and thereby rebuilding the keyring cache. diff --git a/tests/migrations/run-tests.scm b/tests/migrations/run-tests.scm index b4ad260..1e4bb70 100644 --- a/tests/migrations/run-tests.scm +++ b/tests/migrations/run-tests.scm @@ -22,4 +22,7 @@ (> (length tests) 1)) run-tests-parallel run-tests-sequential))) - (runner (map (lambda (t) (test::scm #f t t)) tests))) + (runner (map (lambda (name) + (test::scm #f + (path-join "tests" "migrations" name) + (in-srcdir "tests" "migrations" name))) tests))) diff --git a/tests/openpgp/4gb-packet.scm b/tests/openpgp/4gb-packet.scm index 109e61d..e1c5ba5 100755 --- a/tests/openpgp/4gb-packet.scm +++ b/tests/openpgp/4gb-packet.scm @@ -20,10 +20,10 @@ ;; GnuPG through 2.1.7 would incorrect mark packets whose size is ;; 2^32-1 as invalid and exit with status code 2. -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-environment) (unless (have-compression-algo? "BZIP2") (skip "BZIP2 support not compiled in.")) -(call-check `(, at GPG --list-packets ,(in-srcdir "4gb-packet.asc"))) +(call-check `(, at GPG --list-packets ,(in-srcdir "tests" "openpgp" "4gb-packet.asc"))) diff --git a/tests/openpgp/Makefile.am b/tests/openpgp/Makefile.am index 40f947b..354dff9 100644 --- a/tests/openpgp/Makefile.am +++ b/tests/openpgp/Makefile.am @@ -36,9 +36,9 @@ fake_pinentry_SOURCES = fake-pinentry.c TESTS_ENVIRONMENT = LC_ALL=C \ EXEEXT=$(EXEEXT) \ PATH=../gpgscm:$(PATH) \ - srcdir=$(abs_srcdir) \ + abs_top_srcdir=$(abs_top_srcdir) \ objdir=$(abs_top_builddir) \ - GPGSCM_PATH=$(abs_top_srcdir)/tests/gpgscm:$(abs_top_srcdir)/tests/openpgp + GPGSCM_PATH=$(abs_top_srcdir)/tests/gpgscm XTESTS = \ version.scm \ @@ -109,7 +109,7 @@ check: xcheck .PHONY: xcheck xcheck: $(TESTS_ENVIRONMENT) $(abs_top_builddir)/tests/gpgscm/gpgscm \ - run-tests.scm $(TESTFLAGS) $(XTESTS) + $(abs_srcdir)/run-tests.scm $(TESTFLAGS) $(XTESTS) TEST_FILES = pubring.asc secring.asc plain-1o.asc plain-2o.asc plain-3o.asc \ plain-1.asc plain-2.asc plain-3.asc plain-1-pgp.asc \ diff --git a/tests/openpgp/armdetach.scm b/tests/openpgp/armdetach.scm index 3bae28b..105f52d 100755 --- a/tests/openpgp/armdetach.scm +++ b/tests/openpgp/armdetach.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (for-each-p diff --git a/tests/openpgp/armdetachm.scm b/tests/openpgp/armdetachm.scm index 6812263..27038a0 100755 --- a/tests/openpgp/armdetachm.scm +++ b/tests/openpgp/armdetachm.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (define files (append plain-files data-files)) diff --git a/tests/openpgp/armencrypt.scm b/tests/openpgp/armencrypt.scm index 21131ea..6d6ec4d 100755 --- a/tests/openpgp/armencrypt.scm +++ b/tests/openpgp/armencrypt.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (for-each-p diff --git a/tests/openpgp/armencryptp.scm b/tests/openpgp/armencryptp.scm index 4a00166..4bcc058 100755 --- a/tests/openpgp/armencryptp.scm +++ b/tests/openpgp/armencryptp.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (for-each-p diff --git a/tests/openpgp/armor.scm b/tests/openpgp/armor.scm index 6f57c78..3c117dd 100755 --- a/tests/openpgp/armor.scm +++ b/tests/openpgp/armor.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (define armored_key_8192 "-----BEGIN PGP PUBLIC KEY BLOCK----- diff --git a/tests/openpgp/armsignencrypt.scm b/tests/openpgp/armsignencrypt.scm index 49eea07..97595f0 100755 --- a/tests/openpgp/armsignencrypt.scm +++ b/tests/openpgp/armsignencrypt.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (for-each-p diff --git a/tests/openpgp/armsigs.scm b/tests/openpgp/armsigs.scm index 2fab729..ccab816 100755 --- a/tests/openpgp/armsigs.scm +++ b/tests/openpgp/armsigs.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (for-each-p diff --git a/tests/openpgp/clearsig.scm b/tests/openpgp/clearsig.scm index a9f20f2..b1c72c2 100755 --- a/tests/openpgp/clearsig.scm +++ b/tests/openpgp/clearsig.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (define (check-signing args input) diff --git a/tests/openpgp/compression.scm b/tests/openpgp/compression.scm index bab7572..d2e46cc 100755 --- a/tests/openpgp/compression.scm +++ b/tests/openpgp/compression.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (for-each-p diff --git a/tests/openpgp/conventional-mdc.scm b/tests/openpgp/conventional-mdc.scm index af27fad..bb8327a 100755 --- a/tests/openpgp/conventional-mdc.scm +++ b/tests/openpgp/conventional-mdc.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (define s2k '--s2k-count=65536) diff --git a/tests/openpgp/conventional.scm b/tests/openpgp/conventional.scm index 4bca3c9..c480400 100755 --- a/tests/openpgp/conventional.scm +++ b/tests/openpgp/conventional.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (define s2k '--s2k-count=65536) diff --git a/tests/openpgp/decrypt-dsa.scm b/tests/openpgp/decrypt-dsa.scm index 640dfd2..9f39732 100755 --- a/tests/openpgp/decrypt-dsa.scm +++ b/tests/openpgp/decrypt-dsa.scm @@ -17,14 +17,14 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (for-each-p "Checking decryption of supplied DSA encrypted file" (lambda (name) (tr:do - (tr:open (in-srcdir (string-append name "-pgp.asc"))) + (tr:open (in-srcdir "tests" "openpgp" (string-append name "-pgp.asc"))) (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity name))) (list (car plain-files))) diff --git a/tests/openpgp/decrypt-multifile.scm b/tests/openpgp/decrypt-multifile.scm index a7695b1..304ca49 100755 --- a/tests/openpgp/decrypt-multifile.scm +++ b/tests/openpgp/decrypt-multifile.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (info "Checking decryption of supplied files using --multifile.") @@ -31,7 +31,7 @@ ;; First, copy the files so that GnuPG writes the decrypted files here ;; and not into the source directory. (for-each (lambda (name) - (file-copy (in-srcdir name) name)) + (file-copy (in-srcdir "tests" "openpgp" name) name)) encrypted-files) ;; Now decrypt all files. diff --git a/tests/openpgp/decrypt-session-key.scm b/tests/openpgp/decrypt-session-key.scm index 989ce30..35aa7f3 100755 --- a/tests/openpgp/decrypt-session-key.scm +++ b/tests/openpgp/decrypt-session-key.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (define (get-session-key filename) @@ -35,7 +35,7 @@ (for-each-p "Checking decryption of supplied files using the session key." (lambda (name) - (let* ((source (in-srcdir (string-append name ".asc"))) + (let* ((source (in-srcdir "tests" "openpgp" (string-append name ".asc"))) (key (get-session-key source))) (with-ephemeral-home-directory setup-environment (tr:do diff --git a/tests/openpgp/decrypt-unwrap-verify.scm b/tests/openpgp/decrypt-unwrap-verify.scm index ef9a99a..bf7d14d 100755 --- a/tests/openpgp/decrypt-unwrap-verify.scm +++ b/tests/openpgp/decrypt-unwrap-verify.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (lettmp (steve's-key) @@ -29,7 +29,7 @@ ;; First, unwrap the encrypted message using Steve's secret key. (lettmp (unwrapped) (tr:do - (tr:open (in-srcdir "samplemsgs" (string-append name ".asc"))) + (tr:open (in-srcdir "tests" "openpgp" "samplemsgs" (string-append name ".asc"))) (tr:gpg "" `(--yes --decrypt --unwrap)) (tr:write-to unwrapped)) diff --git a/tests/openpgp/decrypt.scm b/tests/openpgp/decrypt.scm index 8dac38a..aae4c96 100755 --- a/tests/openpgp/decrypt.scm +++ b/tests/openpgp/decrypt.scm @@ -17,14 +17,14 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (for-each-p "Checking decryption of supplied files" (lambda (name) (tr:do - (tr:open (in-srcdir (string-append name ".asc"))) + (tr:open (in-srcdir "tests" "openpgp" (string-append name ".asc"))) (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity name))) plain-files) diff --git a/tests/openpgp/default-key.scm b/tests/openpgp/default-key.scm index a90cca8..3580cad 100755 --- a/tests/openpgp/default-key.scm +++ b/tests/openpgp/default-key.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) ;; Import the sample key @@ -33,7 +33,7 @@ (info "Importing public key.") (call-check `(,(tool 'gpg) --import - ,(in-srcdir "samplekeys/E657FB607BB4F21C90BB6651BC067AF28BC90111.asc"))) + ,(in-srcdir "tests" "openpgp" "samplekeys/E657FB607BB4F21C90BB6651BC067AF28BC90111.asc"))) ;; By default, the most recent, valid signing subkey (1EA97479). (for-each-p diff --git a/tests/openpgp/defs.scm b/tests/openpgp/defs.scm index c4b321c..38d25d8 100644 --- a/tests/openpgp/defs.scm +++ b/tests/openpgp/defs.scm @@ -318,7 +318,7 @@ (log "Creating configuration files") (for-each (lambda (name) - (file-copy (in-srcdir (string-append name ".tmpl")) name) + (file-copy (in-srcdir "tests" "openpgp" (string-append name ".tmpl")) name) (let ((p (open-input-output-file name))) (cond ((string=? "gpg.conf" name) @@ -349,7 +349,7 @@ (log "Unpacking samples") (for-each (lambda (name) - (dearmor (in-srcdir ".." "openpgp" (string-append name "o.asc")) name)) + (dearmor (in-srcdir "tests" "openpgp" (string-append name "o.asc")) name)) plain-files)) (define (create-legacy-gpghome) @@ -358,7 +358,7 @@ (log "Storing private keys") (for-each (lambda (name) - (dearmor (in-srcdir (string-append "/privkeys/" name ".asc")) + (dearmor (in-srcdir "tests" "openpgp" "privkeys" (string-append name ".asc")) (string-append "private-keys-v1.d/" name ".key"))) '("50B2D4FA4122C212611048BC5FC31BD44393626E" "7E201E28B6FEB2927B321F443205F4724EBE637E" @@ -382,11 +382,11 @@ (log "Importing public demo and test keys") (for-each (lambda (file) - (call-check `(, at GPG --yes --import ,(in-srcdir file)))) + (call-check `(, at GPG --yes --import ,(in-srcdir "tests" "openpgp" file)))) (list "pubdemo.asc" "pubring.asc" key-file1)) (pipe:do - (pipe:open (in-srcdir "pubring.pkr.asc") (logior O_RDONLY O_BINARY)) + (pipe:open (in-srcdir "tests" "openpgp" "pubring.pkr.asc") (logior O_RDONLY O_BINARY)) (pipe:spawn `(, at GPG --dearmor)) (pipe:spawn `(, at GPG --yes --import)))) diff --git a/tests/openpgp/delete-keys.scm b/tests/openpgp/delete-keys.scm index 9a187a2..76cd424 100755 --- a/tests/openpgp/delete-keys.scm +++ b/tests/openpgp/delete-keys.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (let* ((key keys::alfa) diff --git a/tests/openpgp/detach.scm b/tests/openpgp/detach.scm index ac2bc36..12ed167 100755 --- a/tests/openpgp/detach.scm +++ b/tests/openpgp/detach.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (for-each-p diff --git a/tests/openpgp/detachm.scm b/tests/openpgp/detachm.scm index 0b64458..75faab7 100755 --- a/tests/openpgp/detachm.scm +++ b/tests/openpgp/detachm.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (define files (append plain-files data-files)) diff --git a/tests/openpgp/ecc.scm b/tests/openpgp/ecc.scm index 2ea8c39..d7c02a5 100755 --- a/tests/openpgp/ecc.scm +++ b/tests/openpgp/ecc.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (define keygrips '("8E06A180EFFE4C65B812150CAF19BF30C0689A4C" @@ -48,7 +48,7 @@ (for-each (lambda (n) (call-check `(,(tool 'gpg) --import - ,(in-srcdir (string-append + ,(in-srcdir "tests" "openpgp" (string-append "samplekeys/ecc-sample-" (number->string n) "-pub.asc"))))) @@ -117,7 +117,7 @@ Ic1RdzgeCfosMF+l/zVRchcLKzenEQA= (lambda (n) (call-check `(,(tool 'gpg) --import ,@(if (> n 1) '(--allow-non-selfsigned-uid) '()) - ,(in-srcdir (string-append + ,(in-srcdir "tests" "openpgp" (string-append "samplekeys/ecc-sample-" (number->string n) "-sec.asc"))))) @@ -242,7 +242,7 @@ Rg== (lambda (n) (call-check `(,(tool 'gpg) --import ,@(if (> n 1) '(--allow-non-selfsigned-uid) '()) - ,(in-srcdir (string-append + ,(in-srcdir "tests" "openpgp" (string-append "samplekeys/ecc-sample-" (number->string n) "-sec.asc"))))) diff --git a/tests/openpgp/enarmor.scm b/tests/openpgp/enarmor.scm index a301ccd..1fe3256 100755 --- a/tests/openpgp/enarmor.scm +++ b/tests/openpgp/enarmor.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (for-each-p diff --git a/tests/openpgp/encrypt-dsa.scm b/tests/openpgp/encrypt-dsa.scm index 0c5a2fd..1658973 100755 --- a/tests/openpgp/encrypt-dsa.scm +++ b/tests/openpgp/encrypt-dsa.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (for-each-p diff --git a/tests/openpgp/encrypt-multifile.scm b/tests/openpgp/encrypt-multifile.scm index d55971c..1b69ff5 100755 --- a/tests/openpgp/encrypt-multifile.scm +++ b/tests/openpgp/encrypt-multifile.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (define files (append plain-files data-files)) diff --git a/tests/openpgp/encrypt.scm b/tests/openpgp/encrypt.scm index 1888a00..f59a1f0 100755 --- a/tests/openpgp/encrypt.scm +++ b/tests/openpgp/encrypt.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (for-each-p @@ -54,8 +54,8 @@ (tr:do (tr:open source) (tr:gpg "" `(--yes -v --no-keyring --encrypt - --recipient-file ,(in-srcdir key-file1) - --hidden-recipient-file ,(in-srcdir key-file2))) + --recipient-file ,(in-srcdir "tests" "openpgp" key-file1) + --hidden-recipient-file ,(in-srcdir "tests" "openpgp" key-file2))) (tr:gpg "" '(--yes --decrypt)) (tr:assert-identity source))) plain-files) diff --git a/tests/openpgp/encryptp.scm b/tests/openpgp/encryptp.scm index ccd5c7b..0f09a1e 100755 --- a/tests/openpgp/encryptp.scm +++ b/tests/openpgp/encryptp.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (for-each-p diff --git a/tests/openpgp/export.scm b/tests/openpgp/export.scm index c10fc81..aa6fa78 100755 --- a/tests/openpgp/export.scm +++ b/tests/openpgp/export.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (define (check-for predicate lines message) diff --git a/tests/openpgp/genkey1024.scm b/tests/openpgp/genkey1024.scm index 60eba0b..4edf490 100755 --- a/tests/openpgp/genkey1024.scm +++ b/tests/openpgp/genkey1024.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-environment) (define (genkey config) diff --git a/tests/openpgp/gpgconf.scm b/tests/openpgp/gpgconf.scm index 33d04d8..a940b45 100644 --- a/tests/openpgp/gpgconf.scm +++ b/tests/openpgp/gpgconf.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-environment) (for-each-p' diff --git a/tests/openpgp/gpgtar.scm b/tests/openpgp/gpgtar.scm index c88589f..906707f 100755 --- a/tests/openpgp/gpgtar.scm +++ b/tests/openpgp/gpgtar.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (catch (skip "gpgtar not built") diff --git a/tests/openpgp/gpgv-forged-keyring.scm b/tests/openpgp/gpgv-forged-keyring.scm index 6885cd9..886d265 100755 --- a/tests/openpgp/gpgv-forged-keyring.scm +++ b/tests/openpgp/gpgv-forged-keyring.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (define msg_signed_asc " @@ -63,6 +63,6 @@ N1Glbw1OJfP1q+QFPMPKoCsTYmZpuugq2b5gV/eH0Abvk2pG4Fo/YTDPHhec7Jk= (catch '() (pipe:do (pipe:echo (eval armored-file (current-environment))) - (pipe:spawn `(, at GPGV --keyring ,(in-srcdir "forged-keyring.gpg")))) + (pipe:spawn `(, at GPGV --keyring ,(in-srcdir "tests" "openpgp" "forged-keyring.gpg")))) (fail "verification succeeded but should not"))) '(msg_signed_asc)) diff --git a/tests/openpgp/import-revocation-certificate.scm b/tests/openpgp/import-revocation-certificate.scm index 9231afc..c685dc5 100644 --- a/tests/openpgp/import-revocation-certificate.scm +++ b/tests/openpgp/import-revocation-certificate.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) ;; XXX because of --always-trust, the trustdb is not created. @@ -25,7 +25,7 @@ (define gpg `(,(tool 'gpg) --no-permission-warning)) (info "Checking key revocation.") -(call-check `(, at gpg --import ,(in-srcdir "samplemsgs" +(call-check `(, at gpg --import ,(in-srcdir "tests" "openpgp" "samplemsgs" "revoke-2D727CC768697734.asc"))) (let loop ((output (gpg-with-colons '(--list-secret-keys "2D727CC768697734")))) (unless (null? output) diff --git a/tests/openpgp/import.scm b/tests/openpgp/import.scm index 3b41746..1f4cb2e 100755 --- a/tests/openpgp/import.scm +++ b/tests/openpgp/import.scm @@ -17,17 +17,17 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-environment) (info "Checking bug 894: segv importing certain keys.") -(call-check `(,(tool 'gpg) --import ,(in-srcdir "bug894-test.asc"))) +(call-check `(,(tool 'gpg) --import ,(in-srcdir "tests" "openpgp" "bug894-test.asc"))) (define keyid "0xC108E83A") (info "Checking bug 1223: designated revoker sigs are not properly merged.") (call `(,(tool 'gpg) --delete-key --batch --yes ,keyid)) -(call `(,(tool 'gpg) --import ,(in-srcdir "bug1223-bogus.asc"))) -(call `(,(tool 'gpg) --import ,(in-srcdir "bug1223-good.asc"))) +(call `(,(tool 'gpg) --import ,(in-srcdir "tests" "openpgp" "bug1223-bogus.asc"))) +(call `(,(tool 'gpg) --import ,(in-srcdir "tests" "openpgp" "bug1223-good.asc"))) (tr:do (tr:pipe-do (pipe:gpg `(--list-keys --with-colons ,keyid))) @@ -44,8 +44,8 @@ (define fpr2 "A55120427374F3F7AA5F1166DDA252EBB8EBE1AF") (info "Checking import of two keys with colliding long key ids.") (call `(,(tool 'gpg) --delete-key --batch --yes ,fpr1 ,fpr2)) -(call `(,(tool 'gpg) --import ,(in-srcdir "samplekeys/dda252ebb8ebe1af-1.asc"))) -(call `(,(tool 'gpg) --import ,(in-srcdir "samplekeys/dda252ebb8ebe1af-2.asc"))) +(call `(,(tool 'gpg) --import ,(in-srcdir "tests" "openpgp" "samplekeys/dda252ebb8ebe1af-1.asc"))) +(call `(,(tool 'gpg) --import ,(in-srcdir "tests" "openpgp" "samplekeys/dda252ebb8ebe1af-2.asc"))) (tr:do (tr:pipe-do (pipe:gpg `(--list-keys --with-colons ,fpr1 ,fpr2))) diff --git a/tests/openpgp/issue2015.scm b/tests/openpgp/issue2015.scm index 39df333..2f0672d 100755 --- a/tests/openpgp/issue2015.scm +++ b/tests/openpgp/issue2015.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-environment) (info "Checking passphrase cache (issue2015)...") diff --git a/tests/openpgp/issue2346.scm b/tests/openpgp/issue2346.scm index 9765453..9c29516 100755 --- a/tests/openpgp/issue2346.scm +++ b/tests/openpgp/issue2346.scm @@ -17,10 +17,10 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-environment) -(define key (in-srcdir "samplekeys/issue2346.gpg")) +(define key (in-srcdir "tests" "openpgp" "samplekeys/issue2346.gpg")) (info "Checking import statistics (issue2346)...") (let ((status (call-popen `(, at GPG --status-fd=1 --import ,key) ""))) diff --git a/tests/openpgp/issue2417.scm b/tests/openpgp/issue2417.scm index f584000..32fe47f 100755 --- a/tests/openpgp/issue2417.scm +++ b/tests/openpgp/issue2417.scm @@ -17,10 +17,10 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-environment) -(define keyfile (in-srcdir "samplekeys" "rsa-rsa-sample-1.asc")) +(define keyfile (in-srcdir "tests" "openpgp" "samplekeys" "rsa-rsa-sample-1.asc")) (define (touch file-name) (close (open file-name (logior O_WRONLY O_BINARY O_CREAT) #o600))) diff --git a/tests/openpgp/issue2419.scm b/tests/openpgp/issue2419.scm index e397a88..641fb32 100755 --- a/tests/openpgp/issue2419.scm +++ b/tests/openpgp/issue2419.scm @@ -17,13 +17,13 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-environment) (info "Checking iobuf_peek corner case (issue2419)...") (lettmp (onebyte) - (dearmor (in-srcdir "samplemsgs/issue2419.asc") onebyte) + (dearmor (in-srcdir "tests" "openpgp" "samplemsgs/issue2419.asc") onebyte) (catch (assert (string-contains? (car *error*) "invalid packet")) (call-popen `(, at GPG --list-packets ,onebyte) "") (fail "Expected an error but got none"))) diff --git a/tests/openpgp/issue2929.scm b/tests/openpgp/issue2929.scm index 121103b..d5c94cf 100644 --- a/tests/openpgp/issue2929.scm +++ b/tests/openpgp/issue2929.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-environment) (catch (skip "Tofu not supported") diff --git a/tests/openpgp/issue2941.scm b/tests/openpgp/issue2941.scm index d7220e0..8f625eb 100755 --- a/tests/openpgp/issue2941.scm +++ b/tests/openpgp/issue2941.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (define (check-failure options) diff --git a/tests/openpgp/key-selection.scm b/tests/openpgp/key-selection.scm index 020c9b4..511c2e2 100644 --- a/tests/openpgp/key-selection.scm +++ b/tests/openpgp/key-selection.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) ;; This test assumes a fixed time of 2004-01-01. @@ -52,7 +52,7 @@ (define :comment cadr) (define :number caddr) (define (:filename key) - (in-srcdir "key-selection" + (in-srcdir "tests" "openpgp" "key-selection" (string-append (number->string (:number key)) ".asc"))) (define (delete-keys which) diff --git a/tests/openpgp/mds.scm b/tests/openpgp/mds.scm index fb468e5..50761d0 100755 --- a/tests/openpgp/mds.scm +++ b/tests/openpgp/mds.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-environment) (define empty-string-hashes diff --git a/tests/openpgp/multisig.scm b/tests/openpgp/multisig.scm index c643ac8..75682eb 100755 --- a/tests/openpgp/multisig.scm +++ b/tests/openpgp/multisig.scm @@ -23,7 +23,7 @@ ;; Note: We do not support multiple signatures anymore thus this test is ;; not really needed because verify could do the same. We keep it anyway. -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (define sig-1ls1ls-valid " diff --git a/tests/openpgp/quick-key-manipulation.scm b/tests/openpgp/quick-key-manipulation.scm index 85e56ca..8d14ae1 100755 --- a/tests/openpgp/quick-key-manipulation.scm +++ b/tests/openpgp/quick-key-manipulation.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (load (with-path "time.scm")) (setup-environment) diff --git a/tests/openpgp/run-tests.scm b/tests/openpgp/run-tests.scm index 139f618..d443d1f 100644 --- a/tests/openpgp/run-tests.scm +++ b/tests/openpgp/run-tests.scm @@ -17,9 +17,9 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(if (string=? "" (getenv "srcdir")) +(if (string=? "" (getenv "abs_top_srcdir")) (begin - (echo "Environment variable 'srcdir' not set. Please point it to" + (echo "Environment variable 'abs_top_srcdir' not set. Please point it to" "tests/openpgp.") (exit 2))) @@ -27,9 +27,15 @@ (setenv "objdir" (getcwd) #f) (let* ((tests (filter (lambda (arg) (not (string-prefix? arg "--"))) *args*)) - (setup (make-environment-cache (test::scm #f "setup.scm" "setup.scm"))) + (setup (make-environment-cache (test::scm + #f + (path-join "tests" "openpgp" "setup.scm") + (in-srcdir "tests" "openpgp" "setup.scm")))) (runner (if (and (member "--parallel" *args*) (> (length tests) 1)) run-tests-parallel run-tests-sequential))) - (runner (map (lambda (t) (test::scm setup t t)) tests)))) + (runner (map (lambda (name) + (test::scm setup + (path-join "tests" "openpgp" name) + (in-srcdir "tests" "openpgp" name))) tests))) diff --git a/tests/openpgp/seat.scm b/tests/openpgp/seat.scm index 31bd71a..5cbfbe1 100755 --- a/tests/openpgp/seat.scm +++ b/tests/openpgp/seat.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (for-each-p diff --git a/tests/openpgp/setup.scm b/tests/openpgp/setup.scm index a7d14e7..00eed53 100755 --- a/tests/openpgp/setup.scm +++ b/tests/openpgp/setup.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (unless (member "--create-tarball" *args*) (fail "Usage: setup.scm --create-tarball ")) diff --git a/tests/openpgp/shell.scm b/tests/openpgp/shell.scm index ea4b540..bd6059a 100644 --- a/tests/openpgp/shell.scm +++ b/tests/openpgp/shell.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-environment) ;; This is not a test, but can be used to inspect the test diff --git a/tests/openpgp/signencrypt-dsa.scm b/tests/openpgp/signencrypt-dsa.scm index 00ce625..1a8f9df 100755 --- a/tests/openpgp/signencrypt-dsa.scm +++ b/tests/openpgp/signencrypt-dsa.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (for-each-p diff --git a/tests/openpgp/signencrypt.scm b/tests/openpgp/signencrypt.scm index 3021eb4..c00e370 100755 --- a/tests/openpgp/signencrypt.scm +++ b/tests/openpgp/signencrypt.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (for-each-p @@ -33,7 +33,8 @@ (info "Checking bug 537: MDC problem with old style compressed packets.") (lettmp (tmp) (call-popen `(, at GPG --yes --passphrase-fd "0" - --output ,tmp --decrypt ,(in-srcdir "bug537-test.data.asc")) + --output ,tmp --decrypt ,(in-srcdir "tests" "openpgp" + "bug537-test.data.asc")) usrpass1) (if (not (string=? "4336AE2A528FAE091E73E59E325B588FEE795F9B" (cadar (gpg-hash-string `(--print-md SHA1 ,tmp) "")))) diff --git a/tests/openpgp/sigs-dsa.scm b/tests/openpgp/sigs-dsa.scm index d8494d5..82dc624 100755 --- a/tests/openpgp/sigs-dsa.scm +++ b/tests/openpgp/sigs-dsa.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (for-each-p diff --git a/tests/openpgp/sigs.scm b/tests/openpgp/sigs.scm index c2298f9..2b1cf3c 100755 --- a/tests/openpgp/sigs.scm +++ b/tests/openpgp/sigs.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (for-each-p diff --git a/tests/openpgp/ssh-export.scm b/tests/openpgp/ssh-export.scm index 322620e..7f51447 100755 --- a/tests/openpgp/ssh-export.scm +++ b/tests/openpgp/ssh-export.scm @@ -17,11 +17,11 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-environment) (define key - `(,(in-srcdir "samplekeys" "authenticate-only.sec.asc") + `(,(in-srcdir "tests" "openpgp" "samplekeys" "authenticate-only.sec.asc") "927EF377FD1A1B6F795E40C02A87917D8FFBA49F" "72360FDB6380212D5DAF2FA9E51185A9253C496D" "ssh-rsa")) diff --git a/tests/openpgp/ssh-import.scm b/tests/openpgp/ssh-import.scm index d210056..555f198 100755 --- a/tests/openpgp/ssh-import.scm +++ b/tests/openpgp/ssh-import.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-environment) (setenv "SSH_AUTH_SOCK" @@ -76,7 +76,7 @@ (for-each-p' "Importing ssh keys..." (lambda (key) - (let ((file (path-join (in-srcdir "samplekeys") + (let ((file (path-join (in-srcdir "tests" "openpgp" "samplekeys") (string-append "ssh-" (car key) ".key"))) (hash (cadr key))) ;; We pipe the key to ssh-add so that it won't complain about @@ -91,7 +91,7 @@ (info "Checking for issue2316...") (unlink (path-join GNUPGHOME "sshcontrol")) (pipe:do - (pipe:open (path-join (in-srcdir "samplekeys") + (pipe:open (path-join (in-srcdir "tests" "openpgp" "samplekeys") (string-append "ssh-rsa.key")) (logior O_RDONLY O_BINARY)) (pipe:spawn `(,SSH-ADD -))) diff --git a/tests/openpgp/tofu.scm b/tests/openpgp/tofu.scm index aeeef07..58b2a03 100755 --- a/tests/openpgp/tofu.scm +++ b/tests/openpgp/tofu.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (load (with-path "time.scm")) (setup-environment) @@ -41,7 +41,7 @@ ;; Import the test keys. (for-each (lambda (keyid) (call-check `(, at GPG --import - ,(in-srcdir "tofu/conflicting/" + ,(in-srcdir "tests" "openpgp" "tofu" "conflicting" (string-append keyid ".gpg")))) (catch (fail "Missing key" keyid) (call-check `(, at GPG --list-keys ,keyid)))) @@ -108,7 +108,7 @@ ;; Verify a message. There should be no conflict and the trust ;; policy should be set to auto. -(call-check `(, at GPG --verify ,(in-srcdir "tofu/conflicting/1C005AF3-1.txt"))) +(call-check `(, at GPG --verify ,(in-srcdir "tests" "openpgp" "tofu" "conflicting" "1C005AF3-1.txt"))) (checkpolicy "1C005AF3" "auto") ;; Check default trust. @@ -163,7 +163,7 @@ ;; auto), but not affect 1C005AF3's policy. (setpolicy "BE04EB2B" "auto") (checkpolicy "BE04EB2B" "ask") -(call-check `(, at GPG --verify ,(in-srcdir "tofu/conflicting/B662E42F-1.txt"))) +(call-check `(, at GPG --verify ,(in-srcdir "tests" "openpgp" "tofu" "conflicting" "B662E42F-1.txt"))) (checkpolicy "BE04EB2B" "ask") (checkpolicy "1C005AF3" "bad") (checkpolicy "B662E42F" "ask") @@ -208,26 +208,26 @@ (check-counts "B662E42F" 0 0 0 0) ;; Verify a message. The signature count should increase by 1. -(call-check `(, at GPG --verify ,(in-srcdir "tofu/conflicting/1C005AF3-1.txt"))) +(call-check `(, at GPG --verify ,(in-srcdir "tests" "openpgp" "tofu" "conflicting" "1C005AF3-1.txt"))) (check-counts "1C005AF3" 1 1 0 0) ;; Verify the same message. The signature count should remain the ;; same. -(call-check `(, at GPG --verify ,(in-srcdir "tofu/conflicting/1C005AF3-1.txt"))) +(call-check `(, at GPG --verify ,(in-srcdir "tests" "openpgp" "tofu" "conflicting" "1C005AF3-1.txt"))) (check-counts "1C005AF3" 1 1 0 0) ;; Verify another message. -(call-check `(, at GPG --verify ,(in-srcdir "tofu/conflicting/1C005AF3-2.txt"))) +(call-check `(, at GPG --verify ,(in-srcdir "tests" "openpgp" "tofu" "conflicting" "1C005AF3-2.txt"))) (check-counts "1C005AF3" 2 1 0 0) ;; Verify another message. -(call-check `(, at GPG --verify ,(in-srcdir "tofu/conflicting/1C005AF3-3.txt"))) +(call-check `(, at GPG --verify ,(in-srcdir "tests" "openpgp" "tofu" "conflicting" "1C005AF3-3.txt"))) (check-counts "1C005AF3" 3 1 0 0) ;; Verify a message from a different sender. The signature count ;; should increase by 1 for that key. -(call-check `(, at GPG --verify ,(in-srcdir "tofu/conflicting/BE04EB2B-1.txt"))) +(call-check `(, at GPG --verify ,(in-srcdir "tests" "openpgp" "tofu" "conflicting" "BE04EB2B-1.txt"))) (check-counts "1C005AF3" 3 1 0 0) (check-counts "BE04EB2B" 1 1 0 0) (check-counts "B662E42F" 0 0 0 0) @@ -236,34 +236,34 @@ ;; when the message was first verified, not when the signer claimed ;; that it was signed.) (call-check `(, at GPG ,(faketime (days->seconds 2)) - --verify ,(in-srcdir "tofu/conflicting/1C005AF3-4.txt"))) + --verify ,(in-srcdir "tests" "openpgp" "tofu" "conflicting" "1C005AF3-4.txt"))) (check-counts "1C005AF3" 4 2 0 0) (check-counts "BE04EB2B" 1 1 0 0) (check-counts "B662E42F" 0 0 0 0) ;; And another. (call-check `(, at GPG ,(faketime (days->seconds 2)) - --verify ,(in-srcdir "tofu/conflicting/1C005AF3-5.txt"))) + --verify ,(in-srcdir "tests" "openpgp" "tofu" "conflicting" "1C005AF3-5.txt"))) (check-counts "1C005AF3" 5 2 0 0) (check-counts "BE04EB2B" 1 1 0 0) (check-counts "B662E42F" 0 0 0 0) ;; Another, but for a different key. (call-check `(, at GPG ,(faketime (days->seconds 2)) - --verify ,(in-srcdir "tofu/conflicting/BE04EB2B-2.txt"))) + --verify ,(in-srcdir "tests" "openpgp" "tofu" "conflicting" "BE04EB2B-2.txt"))) (check-counts "1C005AF3" 5 2 0 0) (check-counts "BE04EB2B" 2 2 0 0) (check-counts "B662E42F" 0 0 0 0) ;; And add a third day. (call-check `(, at GPG ,(faketime (days->seconds 4)) - --verify ,(in-srcdir "tofu/conflicting/BE04EB2B-3.txt"))) + --verify ,(in-srcdir "tests" "openpgp" "tofu" "conflicting" "BE04EB2B-3.txt"))) (check-counts "1C005AF3" 5 2 0 0) (check-counts "BE04EB2B" 3 3 0 0) (check-counts "B662E42F" 0 0 0 0) (call-check `(, at GPG ,(faketime (days->seconds 4)) - --verify ,(in-srcdir "tofu/conflicting/BE04EB2B-4.txt"))) + --verify ,(in-srcdir "tests" "openpgp" "tofu" "conflicting" "BE04EB2B-4.txt"))) (check-counts "1C005AF3" 5 2 0 0) (check-counts "BE04EB2B" 4 3 0 0) (check-counts "B662E42F" 0 0 0 0) @@ -293,15 +293,15 @@ (lambda (key) (for-each (lambda (i) - (let ((fn (in-srcdir DIR (string-append key "-" i ".txt")))) + (let ((fn (in-srcdir "tests" "openpgp" DIR (string-append key "-" i ".txt")))) (call-check `(, at GPG --verify ,fn)))) (list "1" "2"))) (list KEYIDA KEYIDB))) ;; Import the public keys. (display " > Two keys. ") -(call-check `(, at GPG --import ,(in-srcdir DIR (string-append KEYIDA "-1.gpg")))) -(call-check `(, at GPG --import ,(in-srcdir DIR (string-append KEYIDB "-1.gpg")))) +(call-check `(, at GPG --import ,(in-srcdir "tests" "openpgp" DIR (string-append KEYIDA "-1.gpg")))) +(call-check `(, at GPG --import ,(in-srcdir "tests" "openpgp" DIR (string-append KEYIDB "-1.gpg")))) ;; Make sure the tofu engine registers the keys. (verify-messages) (display "<\n") @@ -312,8 +312,8 @@ ;; Import the cross sigs. (display " > Adding cross signatures. ") -(call-check `(, at GPG --import ,(in-srcdir DIR (string-append KEYIDA "-2.gpg")))) -(call-check `(, at GPG --import ,(in-srcdir DIR (string-append KEYIDB "-2.gpg")))) +(call-check `(, at GPG --import ,(in-srcdir "tests" "openpgp" DIR (string-append KEYIDA "-2.gpg")))) +(call-check `(, at GPG --import ,(in-srcdir "tests" "openpgp" DIR (string-append KEYIDB "-2.gpg")))) (verify-messages) (display "<\n") @@ -323,7 +323,7 @@ ;; Import the conflicting user id. (display " > Adding conflicting user id. ") -(call-check `(, at GPG --import ,(in-srcdir DIR (string-append KEYIDB "-3.gpg")))) +(call-check `(, at GPG --import ,(in-srcdir "tests" "openpgp" DIR (string-append KEYIDB "-3.gpg")))) (verify-messages) (display "<\n") @@ -333,7 +333,7 @@ ;; Import Alice's signature on the conflicting user id. Since there ;; is now a cross signature, we should revert to the default policy. (display " > Adding cross signature on user id. ") -(call-check `(, at GPG --import ,(in-srcdir DIR (string-append KEYIDB "-4.gpg")))) +(call-check `(, at GPG --import ,(in-srcdir "tests" "openpgp" DIR (string-append KEYIDB "-4.gpg")))) (verify-messages) (display "<\n") @@ -385,15 +385,15 @@ (lambda (key) (for-each (lambda (i) - (let ((fn (in-srcdir DIR (string-append key "-" i ".txt")))) + (let ((fn (in-srcdir "tests" "openpgp" DIR (string-append key "-" i ".txt")))) (call-check `(, at GPG --verify ,fn)))) (list "1" "2"))) (list KEYIDA KEYIDB))) ;; Import the public keys. (display " > Two keys. ") -(call-check `(, at GPG --import ,(in-srcdir DIR (string-append KEYIDA "-1.gpg")))) -(call-check `(, at GPG --import ,(in-srcdir DIR (string-append KEYIDB "-1.gpg")))) +(call-check `(, at GPG --import ,(in-srcdir "tests" "openpgp" DIR (string-append KEYIDA "-1.gpg")))) +(call-check `(, at GPG --import ,(in-srcdir "tests" "openpgp" DIR (string-append KEYIDB "-1.gpg")))) (display "<\n") (checkpolicy KEYA "auto") @@ -401,8 +401,8 @@ ;; Import the cross sigs. (display " > Adding cross signatures. ") -(call-check `(, at GPG --import ,(in-srcdir DIR (string-append KEYIDA "-2.gpg")))) -(call-check `(, at GPG --import ,(in-srcdir DIR (string-append KEYIDB "-2.gpg")))) +(call-check `(, at GPG --import ,(in-srcdir "tests" "openpgp" DIR (string-append KEYIDA "-2.gpg")))) +(call-check `(, at GPG --import ,(in-srcdir "tests" "openpgp" DIR (string-append KEYIDB "-2.gpg")))) (display "<\n") (checkpolicy KEYA "auto") @@ -423,7 +423,7 @@ ;; Import the conflicting user id. (display " > Adding conflicting user id. ") -(call-check `(, at GPG --import ,(in-srcdir DIR (string-append KEYIDB "-3.gpg")))) +(call-check `(, at GPG --import ,(in-srcdir "tests" "openpgp" DIR (string-append KEYIDB "-3.gpg")))) (verify-messages) (display "<\n") @@ -432,7 +432,7 @@ ;; Import Alice's signature on the conflicting user id. (display " > Adding cross signature on user id. ") -(call-check `(, at GPG --import ,(in-srcdir DIR (string-append KEYIDB "-4.gpg")))) +(call-check `(, at GPG --import ,(in-srcdir "tests" "openpgp" DIR (string-append KEYIDB "-4.gpg")))) (verify-messages) (display "<\n") diff --git a/tests/openpgp/use-exact-key.scm b/tests/openpgp/use-exact-key.scm index 18851da..8bff9af 100755 --- a/tests/openpgp/use-exact-key.scm +++ b/tests/openpgp/use-exact-key.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) ;; Import the sample key @@ -33,7 +33,7 @@ (info "Importing public key.") (call-check `(,(tool 'gpg) --import - ,(in-srcdir "samplekeys/E657FB607BB4F21C90BB6651BC067AF28BC90111.asc"))) + ,(in-srcdir "tests" "openpgp" "samplekeys/E657FB607BB4F21C90BB6651BC067AF28BC90111.asc"))) ;; By default, the most recent, valid signing subkey (1EA97479). (for-each-p diff --git a/tests/openpgp/verify-multifile.scm b/tests/openpgp/verify-multifile.scm index f1cbe99..9ebb672 100755 --- a/tests/openpgp/verify-multifile.scm +++ b/tests/openpgp/verify-multifile.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) (define files '("clearsig-1-key-1.asc" "signed-1-key-1.asc")) @@ -27,7 +27,7 @@ (let* ((status (call-popen `(, at gpg --verify --multifile --status-fd=1 - ,@(map (lambda (name) (in-srcdir "samplemsgs" name)) files)) + ,@(map (lambda (name) (in-srcdir "tests" "openpgp" "samplemsgs" name)) files)) "")) (lines (map (lambda (l) (assert (string-prefix? l "[GNUPG:] ")) diff --git a/tests/openpgp/verify.scm b/tests/openpgp/verify.scm index d3bd763..cb6eb59 100755 --- a/tests/openpgp/verify.scm +++ b/tests/openpgp/verify.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-legacy-environment) ;; @@ -343,7 +343,7 @@ GisM ;;; Need to import the ed25519 sample key used for ;;; the next two tests. -(call-check `(, at GPG --quiet --yes --import ,(in-srcdir key-file2))) +(call-check `(, at GPG --quiet --yes --import ,(in-srcdir "tests" "openpgp" key-file2))) (for-each-p "Checking that a valid Ed25519 signature is verified as such" (lambda (armored-file) diff --git a/tests/openpgp/version.scm b/tests/openpgp/version.scm index 2b211d8..c2252c5 100755 --- a/tests/openpgp/version.scm +++ b/tests/openpgp/version.scm @@ -17,7 +17,7 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -(load (with-path "defs.scm")) +(load (in-srcdir "tests" "openpgp" "defs.scm")) (setup-environment) (info "Printing the GPG version") commit f03d6897be904da58cad76b4bd07729922b47616 Author: Justus Winter Date: Wed Apr 19 16:09:44 2017 +0200 gpgscm: Move 'trace' and 'stringify'. * tests/gpgscm/tests.scm (trace, stringify): Move... * tests/gpgscm/lib.scm: ... here. Signed-off-by: Justus Winter diff --git a/tests/gpgscm/lib.scm b/tests/gpgscm/lib.scm index ed3d572..cafca8d 100644 --- a/tests/gpgscm/lib.scm +++ b/tests/gpgscm/lib.scm @@ -29,6 +29,18 @@ (assert #t) (assert (not #f)) +;; Trace displays and returns the given value. A debugging aid. +(define (trace x) + (display x) + (newline) + x) + +;; Stringification. +(define (stringify expression) + (let ((p (open-output-string))) + (write expression p) + (get-output-string p))) + (define (filter pred lst) (cond ((null? lst) '()) ((pred (car lst)) diff --git a/tests/gpgscm/tests.scm b/tests/gpgscm/tests.scm index 592b36f..4107889 100644 --- a/tests/gpgscm/tests.scm +++ b/tests/gpgscm/tests.scm @@ -17,18 +17,6 @@ ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . -;; Trace displays and returns the given value. A debugging aid. -(define (trace x) - (display x) - (newline) - x) - -;; Stringification. -(define (stringify expression) - (let ((p (open-output-string))) - (write expression p) - (get-output-string p))) - ;; Reporting. (define (echo . msg) (for-each (lambda (x) (display x) (display " ")) msg) commit 245860ecaf8b9e82ca577385abd453ac92ffcd26 Author: Justus Winter Date: Thu Apr 20 15:04:52 2017 +0200 gpgscm: Avoid fruitless garbage collection cycles. * tests/gpgscm/scheme-private.h (CELL_MINRECOVER): New macro. * tests/gpgscm/scheme.c (_get_cell): Move the heuristic to get more cells... (gc): ... here where every caller benefits from the optimization. Signed-off-by: Justus Winter diff --git a/tests/gpgscm/scheme-private.h b/tests/gpgscm/scheme-private.h index 075dc70..bc0269a 100644 --- a/tests/gpgscm/scheme-private.h +++ b/tests/gpgscm/scheme-private.h @@ -108,6 +108,13 @@ int tracing; #ifndef CELL_SEGSIZE #define CELL_SEGSIZE 5000 /* # of cells in one segment */ #endif + +/* If less than # of cells are recovered in a garbage collector run, + * allocate a new cell segment to avoid fruitless collection cycles in + * the near future. */ +#ifndef CELL_MINRECOVER +#define CELL_MINRECOVER (CELL_SEGSIZE >> 2) +#endif struct cell_segment *cell_segments; /* We use 4 registers. */ diff --git a/tests/gpgscm/scheme.c b/tests/gpgscm/scheme.c index 933dc45..11f6fcb 100644 --- a/tests/gpgscm/scheme.c +++ b/tests/gpgscm/scheme.c @@ -949,15 +949,10 @@ static pointer _get_cell(scheme *sc, pointer a, pointer b) { assert (gc_enabled (sc)); if (sc->free_cell == sc->NIL) { - const int min_to_be_recovered = CELL_SEGSIZE / 4; gc(sc,a, b); - if (sc->fcells < min_to_be_recovered - || sc->free_cell == sc->NIL) { - /* if only a few recovered, get more to avoid fruitless gc's */ - if (!alloc_cellseg(sc,1) && sc->free_cell == sc->NIL) { - sc->no_memory=1; - return sc->sink; - } + if (sc->free_cell == sc->NIL) { + sc->no_memory=1; + return sc->sink; } } x = sc->free_cell; @@ -1746,6 +1741,11 @@ static void gc(scheme *sc, pointer a, pointer b) { snprintf(msg,80,"done: %ld cells were recovered.\n", sc->fcells); putstr(sc,msg); } + + /* if only a few recovered, get more to avoid fruitless gc's */ + if (sc->fcells < CELL_MINRECOVER + && alloc_cellseg(sc, 1) == 0) + sc->no_memory = 1; } static void finalize_cell(scheme *sc, pointer a) { ----------------------------------------------------------------------- Summary of changes: g10/Makefile.am | 2 + g10/t-stutter.c | 14 +- g10/test.c | 6 +- tests/gpgme/Makefile.am | 6 +- tests/gpgme/gpgme-defs.scm | 2 +- tests/gpgme/run-tests.scm | 21 ++- tests/gpgme/setup.scm | 2 +- tests/gpgme/wrap.scm | 3 +- tests/gpgscm/Makefile.am | 1 + tests/gpgscm/lib.scm | 19 +++ tests/gpgscm/main.c | 2 + tests/gpgscm/scheme-private.h | 7 + tests/gpgscm/scheme.c | 16 +- tests/gpgscm/tests.scm | 202 ++++++++++++++++-------- tests/gpgscm/xml.scm | 142 +++++++++++++++++ tests/gpgsm/Makefile.am | 6 +- tests/gpgsm/decrypt.scm | 4 +- tests/gpgsm/encrypt.scm | 2 +- tests/gpgsm/export.scm | 2 +- tests/gpgsm/gpgsm-defs.scm | 6 +- tests/gpgsm/import.scm | 4 +- tests/gpgsm/run-tests.scm | 14 +- tests/gpgsm/setup.scm | 2 +- tests/gpgsm/shell.scm | 2 +- tests/gpgsm/sign.scm | 2 +- tests/gpgsm/verify.scm | 2 +- tests/migrations/Makefile.am | 8 +- tests/migrations/common.scm | 2 +- tests/migrations/extended-pkf.scm | 4 +- tests/migrations/from-classic.scm | 8 +- tests/migrations/issue2276.scm | 4 +- tests/migrations/run-tests.scm | 5 +- tests/openpgp/4gb-packet.scm | 4 +- tests/openpgp/Makefile.am | 8 +- tests/openpgp/armdetach.scm | 2 +- tests/openpgp/armdetachm.scm | 2 +- tests/openpgp/armencrypt.scm | 2 +- tests/openpgp/armencryptp.scm | 2 +- tests/openpgp/armor.scm | 2 +- tests/openpgp/armsignencrypt.scm | 2 +- tests/openpgp/armsigs.scm | 2 +- tests/openpgp/clearsig.scm | 2 +- tests/openpgp/compression.scm | 2 +- tests/openpgp/conventional-mdc.scm | 2 +- tests/openpgp/conventional.scm | 2 +- tests/openpgp/decrypt-dsa.scm | 4 +- tests/openpgp/decrypt-multifile.scm | 4 +- tests/openpgp/decrypt-session-key.scm | 4 +- tests/openpgp/decrypt-unwrap-verify.scm | 4 +- tests/openpgp/decrypt.scm | 4 +- tests/openpgp/default-key.scm | 4 +- tests/openpgp/defs.scm | 10 +- tests/openpgp/delete-keys.scm | 2 +- tests/openpgp/detach.scm | 2 +- tests/openpgp/detachm.scm | 2 +- tests/openpgp/ecc.scm | 8 +- tests/openpgp/enarmor.scm | 2 +- tests/openpgp/encrypt-dsa.scm | 2 +- tests/openpgp/encrypt-multifile.scm | 2 +- tests/openpgp/encrypt.scm | 6 +- tests/openpgp/encryptp.scm | 2 +- tests/openpgp/export.scm | 2 +- tests/openpgp/genkey1024.scm | 2 +- tests/openpgp/gpgconf.scm | 2 +- tests/openpgp/gpgtar.scm | 2 +- tests/openpgp/gpgv-forged-keyring.scm | 4 +- tests/openpgp/import-revocation-certificate.scm | 4 +- tests/openpgp/import.scm | 12 +- tests/openpgp/issue2015.scm | 2 +- tests/openpgp/issue2346.scm | 4 +- tests/openpgp/issue2417.scm | 4 +- tests/openpgp/issue2419.scm | 4 +- tests/openpgp/issue2929.scm | 2 +- tests/openpgp/issue2941.scm | 2 +- tests/openpgp/key-selection.scm | 4 +- tests/openpgp/mds.scm | 2 +- tests/openpgp/multisig.scm | 2 +- tests/openpgp/quick-key-manipulation.scm | 2 +- tests/openpgp/run-tests.scm | 14 +- tests/openpgp/seat.scm | 2 +- tests/openpgp/setup.scm | 2 +- tests/openpgp/shell.scm | 2 +- tests/openpgp/signencrypt-dsa.scm | 2 +- tests/openpgp/signencrypt.scm | 5 +- tests/openpgp/sigs-dsa.scm | 2 +- tests/openpgp/sigs.scm | 2 +- tests/openpgp/ssh-export.scm | 4 +- tests/openpgp/ssh-import.scm | 6 +- tests/openpgp/tofu.scm | 56 +++---- tests/openpgp/use-exact-key.scm | 4 +- tests/openpgp/verify-multifile.scm | 4 +- tests/openpgp/verify.scm | 4 +- tests/openpgp/version.scm | 2 +- 93 files changed, 528 insertions(+), 257 deletions(-) create mode 100644 tests/gpgscm/xml.scm hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 24 15:22:05 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Mon, 24 Apr 2017 15:22:05 +0200 Subject: [git] gnupg-doc - branch, preview, created. df62925eb36ad7d2908a9d1f991703d33a530816 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, preview has been created at df62925eb36ad7d2908a9d1f991703d33a530816 (commit) - Log ----------------------------------------------------------------- ----------------------------------------------------------------------- hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 24 15:33:11 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Mon, 24 Apr 2017 15:33:11 +0200 Subject: [git] GPGME - branch, master, updated. gpgme-1.9.0-27-gac28e66 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG Made Easy". The branch, master has been updated via ac28e66f46132ae4a854d04b2f17acd4d55e4296 (commit) from 979d48e823357af9999a2adb34d75adaade8dec2 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit ac28e66f46132ae4a854d04b2f17acd4d55e4296 Author: Justus Winter Date: Mon Apr 24 15:29:07 2017 +0200 tests: Update encrypted sample files. * tests/gpg/cipher-1.asc: Update file. * tests/gpg/cipher-2.asc: Likewise. -- Convert the plaintext to UTF-8 and re-create the encrypted file. Fixes-commit: a11450eb048df79a3f2b00ebef6d7cab07ad5054 Signed-off-by: Justus Winter diff --git a/tests/gpg/cipher-1.asc b/tests/gpg/cipher-1.asc index f0a8ca4..fbb6d58 100644 --- a/tests/gpg/cipher-1.asc +++ b/tests/gpg/cipher-1.asc @@ -1,15 +1,13 @@ -----BEGIN PGP MESSAGE----- -Version: GnuPG v1.0.4-2 (GNU/Linux) -Comment: For info see http://www.gnupg.org -hQEOA2rm1+5GqHH4EAP/Tcqiuhvrjj+RFBKnWn2A7f1ztV17U2EngYFy8TbZYGNp -JoMNdpA7GNZs7iqc/x1epaZDKfaQwWEtARZmK/4nlhB48N+oZeKTm7PXIkRPqrCZ -3fxJjCJaU0yrNGuO345DOr0QwDImVhubVEkfgs8yXK2Szx2G8X3LmiaILHAqA2oD -/1ZqjY8k+ovrLL/qe8un/NTwzSjKIPVGR6mhLFXmj8fnp2kSsbo+Bhh4MczTRR6l -SA32z25vcakKu2qn5Wa4yDcx9NcMt8RHXzmfMDLj6UFq99QqKeLK2ywcIpY9p/GL -fQyaf7r3HTVugBSaoOzegLJ+L7MfWohrStkMeLnJQnro0nYBjADVcUQuSS4N3lst -Df3XrxxA/iJvxt4F9K27u4tp5U1HDg1CIxVrkMs92LBri3S6ZtfjdoqQ7QghFwGP -Kw1lKiWayM6NH9rcCKSgk4kl4P/2l3f78XeFgiywN7UGeSoH3BLMSv9gSxl5KrAz -d2imhTMrfEvZ -=y4ng +hQEOA2rm1+5GqHH4EAP/XKz8pdonnZg2dqJhjdas4vQHPxspxLhgf7OuYigodBpI +l7srTvqtuRsDFNorgURW6DjPqfGqpZsn2uf8enUskunHVMQFBILX38d+G5SkisqF +uOZUlmh0ZfVocCBGYt8ZPfa9ObmitPmZvhCReCHFlTj588ZjofKuNjmfw+QfmNcD +/j4z4ijv6dKHQCm7EAjnOsCw9SbrAVpRXjibN7KT+w6QT6m+5w9k4RfhkTOlqrHq +5d3ZyxLctdTkXlk0hXz1Mey4AEKTtlZGvrQVIhaX4hcB4NFJB0fZJ/pnKypi1H6q +0bSBq2p6kCzJuNvrEr4wk4B1NsOTBacUSffXLrfsEH2F0ngBzN7d/KHBImu81F8w +x96f6dELyYetV0UwhyFrPrA3lBQf9q5cNDqPiCHooUFOudQ5t0h7VtSU3fyaYoit +cJGPFkIxhv+VAbEW/h5muEg3KO1iEqLP4RK3y0Jjy4pyEauAgviM68Vjf4OVvgta +/IblIrp1FHxoCpA= +=sEuD -----END PGP MESSAGE----- diff --git a/tests/gpg/cipher-2.asc b/tests/gpg/cipher-2.asc index 210f3e9..f7c85f3 100644 --- a/tests/gpg/cipher-2.asc +++ b/tests/gpg/cipher-2.asc @@ -1,16 +1,15 @@ -----BEGIN PGP MESSAGE----- -Version: GnuPG v1.0.6 (GNU/Linux) -Comment: Weitere Infos: siehe http://www.gnupg.org -hQEOA++dwnahcsiBEAP9HgkC1ElQwZRX1X/MBF54Q28dpXKr84IviO4QcbnnhmYk -2IlaNe6mr8R7kNM1aqJFK3fnobqnSWwM/VBObMqqYnzZSfclCNsy66sojQJxwXcz -DKQKi69BLaC6aTMnX048tOl8pJpR72fkffUOUa5ywDHVVVUClDG3XkIrfM1du3YD -/A6vFSrRylupKhQBxdtSUx5IDmpDYwG2vqqbYKoMaQ4pPSKLYV2zskU+pQWRlk6y -nwPGY5h9eGz0xYHMPxhe9VnwljeTEDwz5U4CHF3wQ8h5WBxOVx5QN/H/UyjpmoJT -ddrIu+8GgajhBVKVYAOqr577exkiSDA60/JrYbKZBvzL0sAJAUu+HoeMPJ+5/RYF -pLSdz/3MbVDRJJqzV2TJnEBvFtPa6urzx99P0u4xr+RJMFmR9/99YXhYz7+Y6d/B -44F6B3YouYxiK39IoOUcYPZTwb5kaudD5a3mU3XxEhSDUpnyvowPiKQO1T8CPd2u -2HsD3KeaOc2VFE0gnvqECvUTQfSCZCk/kil8XVAMHZrEA0bWAYiaHfHEOB8SRCy8 -rW0wsON4uDXmZpUkfOjFoYZdpJI7fDKkb5uYUzFZDasharEaXb1X/5xSAclx -=+eYk +hQEOA++dwnahcsiBEAQAqaF1yuTJ26FmJHndyaHUjazx7j8/Z/Ht3O+jSAOaoJFR +84rK4Tte0JQYTCl3XxwSEwr48OAtyeTstLjabGAvBoHrXVP3xC0U7kBalZm2lwcq +A8dDDoa3uMkWi1OJ3e2o79/z6SdTHEgRIRomAku1JaXFGTd8OsFhW782RpKUBOID +/jMs9o2sa/gDhWVaeC3SaQovl2xb45ev0nMibED916BQvv3NkH5/EzeM6v788h63 +4yUkWWNr0/bnJ21chlxIbvICjHfuGAEDw+i4HhK/nLBL3Ep4ADtLP7OPZJHlcQgI +g8mAztasBxTGGUuFYvRT0X7sbaSPxLR26vbTCYAo/P/80sA4AYGhBuYPsRN4JzX9 +QaSrToKjPbaZqq+nHQYCvi6m5xAjMT0HVdXejMtZMKwv4TRm7IVCimtIZqrlvw7c +Kj+ZcDGq9qb7urnzC5mdAZkXyNtZxmMKYFI0ci7zMnflvIM87JrVEjZbjjiXlcVy +mSxhufOOweLJARkJ4mKVq1tr8REu8/ots4fDzUIAITM3z8pKA7doWAH2VTo0Idmc +wYOoTLkiq1Z8fxeryB6U66C831PDiWe7W0usRSVo5rZ7laLZeOGl33fAAZCNLTgv +tOPWWg5rCpRTVXgQ6Edl7DtzKI1z4EJbuEUs6shW+OT3bNISiDz2am8remU= +=9AEU -----END PGP MESSAGE----- ----------------------------------------------------------------------- Summary of changes: tests/gpg/cipher-1.asc | 22 ++++++++++------------ tests/gpg/cipher-2.asc | 25 ++++++++++++------------- 2 files changed, 22 insertions(+), 25 deletions(-) hooks/post-receive -- GnuPG Made Easy http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 24 15:59:51 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Mon, 24 Apr 2017 15:59:51 +0200 Subject: [git] gnupg-doc - branch, master, updated. 9c504b531be386a895496fec02385a2a54aeb4d2 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via 9c504b531be386a895496fec02385a2a54aeb4d2 (commit) from 8630a81c45b2890fd5a398565c9e5e875ba1a7a0 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 9c504b531be386a895496fec02385a2a54aeb4d2 Author: Werner Koch Date: Mon Apr 24 15:56:12 2017 +0200 tools: Allow building a preview page. diff --git a/tools/build-website.sh b/tools/build-website.sh index 3a8b945..b477c19 100755 --- a/tools/build-website.sh +++ b/tools/build-website.sh @@ -5,6 +5,7 @@ # # webbuilder - the user to run this script # webbuild-x - the user used by this script to run emacs +# webbuild-y - the user used by this script to run emacs (for preview) # # A certain directory layout is required with permissions setup # so that the webbuild-x has only write access to the stage area @@ -17,6 +18,7 @@ # --8<---------------cut here---------------start------------->8--- # # Pull the master branch of the web pages # */20 * * * * cd /home/webbuilder/gnupg-doc && git pull -q origin master +# */18 * * * * cd /home/webbuilder/gnupg-doc-preview && git pull -q origin preview # # # In case of race conditions we try to build every few ours again. # 35 */7 * * * /home/webbuilder/bin/build-website.sh --cron @@ -25,7 +27,7 @@ # /etc/sudoers needs this: # --8<---------------cut here---------------start------------->8--- # # Let webbuilder run any command as user webbuild-x -# webbuilder ALL = (webbuild-x) NOPASSWD: ALL +# webbuilder ALL = (webbuild-x,webbuild-y) NOPASSWD: ALL # --8<---------------cut here---------------end--------------->8--- # @@ -34,6 +36,7 @@ set -e pgm=build-website.sh mainuser=webbuilder workuser=webbuild-x +workuser_pv=webbuild-y # We use a fixed HOME so that this script can be run here from other # accounts. @@ -45,12 +48,16 @@ fi reponame=gnupg-doc htdocs_web="/var/www/www/www.gnupg.org/htdocs" +htdocs_preview="/var/www/www/preview.gnupg.org/htdocs" htdocs_blog="/var/www/www/www.gnupg.org/misc/blog" workuser_dir=$HOME/${workuser} +workuser_pv_dir=$HOME/${workuser_pv} log_dir="$HOME/log" root_dir="$HOME/${reponame}" +root_dir_pv="$HOME/${reponame}-preview" stage_dir="$HOME/${reponame}-stage" +stage_dir_pv="$HOME/${reponame}-preview-stage" LOCKFILE="${log_dir}/${reponame}.lock" if [ x"$1" = x"--git" ]; then @@ -68,8 +75,14 @@ if ! id $workuser >/dev/null 2>&1 ; then exit 1 fi +if ! id $workuser_pv >/dev/null 2>&1 ; then + echo "$pgm: sudo user '${workuser_pv}' not available" >&2; + exit 1 +fi + # Check directories -for f in "${workuser_dir}" "${root_dir}" "${stage_dir}"; do +for f in "${workuser_dir}" "${root_dir}" "${stage_dir}" \ + "${workuser_pv_dir}" "${root_dir_pv}" "${stage_dir_pv}"; do if [ ! -d "$f" ]; then echo "$pgm: directory '$f' missing" >&2; exit 1 @@ -85,11 +98,21 @@ for f in "${workuser_dir}" "${stage_dir}"; do exit 1 fi done +want="2775:${workuser_pv}:${mainuser}" +for f in "${workuser_pv_dir}" "${stage_dir_pv}"; do + x=$(stat -c '%a:%U:%G' "$f") + if [ x"$x" != x"$want" ]; then + echo "$pgm: directory '$f' has wrong permissions" >&2 + echo "$pgm: want: $want" >&2 + echo "$pgm: have: $x" >&2 + exit 1 + fi +done cd "${root_dir}" # -# Take a lock so that only one instacne of this script runs. +# Take a lock so that only one instance of this script runs. # if ! lockfile -l 7200 -r 2 $LOCKFILE; then echo "$pgm: another instance is still running" >&2 @@ -101,6 +124,8 @@ trap "rm -f $LOCKFILE" 0 # These flags are set to the stage directory if a sync is required sync_web= sync_blog= +sync_preview= + # # Build main part @@ -204,6 +229,54 @@ fi # +# Build the preview site (w/o blogs) +# +branch=preview +subdir=web + +cd "${root_dir_pv}" + +revlastfile="${log_dir}/${reponame}.$branch.$(echo $subdir | tr / _).revlast" +buildlog="${log_dir}/${reponame}.$branch.$(echo $subdir | tr / _).log" +rev="$(git rev-parse --verify $branch:$subdir)" +if [ -z "$rev" ]; then + echo "$pgm: No git revision found" >&2; + exit 1 +fi +revlast="$(head -1 ${revlastfile} 2>/dev/null || true)" +if [ x"$rev" = x"$revlast" ]; then + echo "$pgm: No need to build $subdir" >&2; +else + + echo "$(date -u -Iseconds) build started for $branch:$subdir" | tee ${buildlog} + + if [ ! -d ${stage_dir_pv}/${subdir} ]; then + sudo -u webbuild-y mkdir ${stage_dir_pv}/${subdir} + fi + + sudo 2>>${buildlog} -u webbuild-y emacs24 -q --batch \ + --eval "(require 'assoc)" \ + --eval "(require 'org)" \ + --eval "(setq make-backup-files nil)" \ + --eval "(setq gpgweb-root-dir \"${root_dir_pv}/${subdir}/\")" \ + --eval "(setq gpgweb-stage-dir \"${stage_dir_pv}/${subdir}/\")" \ + --eval "(require 'gpgweb (concat gpgweb-root-dir \"share/gpgweb.el\"))" \ + --eval "(setq org-publish-use-timestamps-flag nil)" \ + --eval "(setq org-export-html-toplevel-hlevel 1)" \ + --eval "(setq org-export-html-coding-system 'utf-8)" \ + --eval "(gpgweb-setup-project)" \ + --eval "(org-publish-initialize-cache \"gpgweb\")" \ + --eval "(message \"root=(%s)\" gpgweb-root-dir)" \ + --eval "(org-publish \"gpgweb\" t nil)" + + echo "$rev" > ${revlastfile} + sync_preview=${stage_dir_pv}/${subdir} + echo "$(date -u -Iseconds) build finished for $branch:$subdir" | tee -a ${buildlog} +fi +cd "${root_dir}" + + +# # Sync to the webspace # cd "${root_dir}" @@ -229,6 +302,13 @@ if [ -n "$sync_blog" ]; then any_sync=yes fi +if [ -n "$sync_preview" ]; then + cd "$sync_preview" + rsync -rlt --exclude '*~' --exclude '*.tmp' \ + . ${htdocs_preview}/ +fi + + cd "${root_dir}" if [ "$any_sync" = yes ]; then diff --git a/web/verein/index.org b/web/verein/index.org index b54dcdf..ac42655 100644 --- a/web/verein/index.org +++ b/web/verein/index.org @@ -1,6 +1,6 @@ #+TITLE: GnuPG e.V. #+STARTUP: showall indent -#+SETUPFILE: "share/setup.inc" +#+SETUPFILE: "../share/setup.inc" #+macro: atgit [[https://git.gnupg.org/cgi-bin/gitweb.cgi?p=gnupg-verein.git;a=blob_plain;f=$1][$2]] * The GnuPG e.V. ----------------------------------------------------------------------- Summary of changes: tools/build-website.sh | 86 ++++++++++++++++++++++++++++++++++++++++++++++++-- web/verein/index.org | 2 +- 2 files changed, 84 insertions(+), 4 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 24 16:37:52 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Mon, 24 Apr 2017 16:37:52 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-93-gd2f6798 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via d2f6798621d751cd6ae6f091c4a2af4569c5b8aa (commit) via 78547bfe8a885579438a17abadca02b62cce2844 (commit) via 06a177ceea529269a7404740c60416bd6a4567b1 (commit) via 9ae63b9caefdf3e925c5928667fcd9227132d27f (commit) via 4aab0e6ac7f2887a6f38f0cb95365dd7c30b4b18 (commit) from ee715201ae784e840b6136393289e6dbd6f4c540 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit d2f6798621d751cd6ae6f091c4a2af4569c5b8aa Author: Justus Winter Date: Thu Apr 20 17:39:41 2017 +0200 gpgscm: Refactor cell finalization. * tests/gpgscm/scheme.c (finalize_cell): Use switch, return whether the cell may be freed. (gc): Update callsite. Signed-off-by: Justus Winter diff --git a/tests/gpgscm/scheme.c b/tests/gpgscm/scheme.c index 38f2870..811c51f 100644 --- a/tests/gpgscm/scheme.c +++ b/tests/gpgscm/scheme.c @@ -402,7 +402,7 @@ static pointer _get_cell(scheme *sc, pointer a, pointer b); static pointer reserve_cells(scheme *sc, int n); static pointer get_consecutive_cells(scheme *sc, int n); static pointer find_consecutive_cells(scheme *sc, int n); -static void finalize_cell(scheme *sc, pointer a); +static int finalize_cell(scheme *sc, pointer a); static int count_consecutive_cells(pointer x, int needed); static pointer find_slot_in_env(scheme *sc, pointer env, pointer sym, int all); static pointer mk_number(scheme *sc, num n); @@ -1723,15 +1723,16 @@ static void gc(scheme *sc, pointer a, pointer b) { if (is_mark(p)) { clrmark(p); } else { - /* reclaim cell */ - if (typeflag(p) & T_FINALIZE) { - finalize_cell(sc, p); - } - ++sc->fcells; - typeflag(p) = 0; - car(p) = sc->NIL; - cdr(p) = sc->free_cell; - sc->free_cell = p; + /* reclaim cell */ + if ((typeflag(p) & T_FINALIZE) == 0 + || finalize_cell(sc, p)) { + /* Reclaim cell. */ + ++sc->fcells; + typeflag(p) = 0; + car(p) = sc->NIL; + cdr(p) = sc->free_cell; + sc->free_cell = p; + } } } } @@ -1748,10 +1749,17 @@ static void gc(scheme *sc, pointer a, pointer b) { sc->no_memory = 1; } -static void finalize_cell(scheme *sc, pointer a) { - if(is_string(a)) { +/* Finalize A. Returns true if a can be added to the list of free + * cells. */ +static int +finalize_cell(scheme *sc, pointer a) +{ + switch (type(a)) { + case T_STRING: sc->free(strvalue(a)); - } else if(is_port(a)) { + break; + + case T_PORT: if(a->_object._port->kind&port_file && a->_object._port->rep.stdio.closeit) { port_close(sc,a,port_input|port_output); @@ -1759,19 +1767,28 @@ static void finalize_cell(scheme *sc, pointer a) { sc->free(a->_object._port->rep.string.start); } sc->free(a->_object._port); - } else if(is_foreign_object(a)) { + break; + + case T_FOREIGN_OBJECT: a->_object._foreign_object._vtable->finalize(sc, a->_object._foreign_object._data); - } else if (is_vector(a)) { - int i; - for (i = vector_size(vector_length(a)) - 1; i > 0; i--) { - pointer p = a + i; - typeflag(p) = 0; - car(p) = sc->NIL; - cdr(p) = sc->free_cell; - sc->free_cell = p; - sc->fcells += 1; - } + break; + + case T_VECTOR: + do { + int i; + for (i = vector_size(vector_length(a)) - 1; i > 0; i--) { + pointer p = a + i; + typeflag(p) = 0; + car(p) = sc->NIL; + cdr(p) = sc->free_cell; + sc->free_cell = p; + sc->fcells += 1; + } + break; + } while (0); } + + return 1; /* Free cell. */ } #if SHOW_ERROR_LINE commit 78547bfe8a885579438a17abadca02b62cce2844 Author: Justus Winter Date: Thu Apr 20 17:38:43 2017 +0200 gpgscm: Tweak error message display. * tests/gpgscm/init.scm (throw'): If the first argument to the error is a string, display it as such. Signed-off-by: Justus Winter diff --git a/tests/gpgscm/init.scm b/tests/gpgscm/init.scm index 87d3c88..af38620 100644 --- a/tests/gpgscm/init.scm +++ b/tests/gpgscm/init.scm @@ -613,8 +613,13 @@ (quit (cadr args))) (else (display message) - (if args (begin - (display ": ") + (when (and args (not (null? args))) + (display ": ") + (if (string? (car args)) + (begin (display (car args)) + (unless (null? (cdr args)) + (newline) + (write (cdr args)))) (write args))) (newline) (vm-history-print history) commit 06a177ceea529269a7404740c60416bd6a4567b1 Author: Justus Winter Date: Thu Apr 20 17:35:15 2017 +0200 tests: Deduplicate and simplify code. * tests/gpgme/gpgme-defs.scm (create-file): Move... * tests/gpgsm/gpgsm-defs.scm (create-file): ... likewise... * tests/openpgp/defs.scm (create-file): Here. (create-gpghome): Use 'create-file'. * tests/openpgp/gpg-agent.conf.tmpl: Delete file. * tests/openpgp/gpg.conf.tmpl: Likewise. Signed-off-by: Justus Winter diff --git a/tests/gpgme/gpgme-defs.scm b/tests/gpgme/gpgme-defs.scm index 1e215b1..690d097 100644 --- a/tests/gpgme/gpgme-defs.scm +++ b/tests/gpgme/gpgme-defs.scm @@ -45,11 +45,6 @@ ;; The tests expect the pinentry to return the passphrase "abc". (setenv "PINENTRY_USER_DATA" "abc" #t) -(define (create-file name . lines) - (letfd ((fd (open name (logior O_WRONLY O_CREAT O_BINARY) #o600))) - (let ((port (fdopen fd "wb"))) - (for-each (lambda (line) (display line port) (newline port)) lines)))) - (define (create-gpgmehome . path) ;; Support for various environments. (define mode diff --git a/tests/gpgsm/gpgsm-defs.scm b/tests/gpgsm/gpgsm-defs.scm index c978c32..711922a 100644 --- a/tests/gpgsm/gpgsm-defs.scm +++ b/tests/gpgsm/gpgsm-defs.scm @@ -61,12 +61,6 @@ (equal? key::fpr (:fpr l)))) (gpgsm-with-colons `(--list-secret-keys ,key::fpr)))))) -(define (create-file name . lines) - (letfd ((fd (open name (logior O_WRONLY O_CREAT O_BINARY) #o600))) - (let ((port (fdopen fd "wb"))) - (for-each (lambda (line) (display line port) (newline port)) - lines)))) - (define (create-gpgsmhome) (create-file "gpgsm.conf" "disable-crl-checks" diff --git a/tests/openpgp/defs.scm b/tests/openpgp/defs.scm index 38d25d8..9e681bf 100644 --- a/tests/openpgp/defs.scm +++ b/tests/openpgp/defs.scm @@ -309,6 +309,12 @@ (lambda (port) (display (make-random-string size) port)))) +(define (create-file name . lines) + (letfd ((fd (open name (logior O_WRONLY O_CREAT O_BINARY) #o600))) + (let ((port (fdopen fd "wb"))) + (for-each (lambda (line) (display line port) (newline port)) + lines)))) + (define (create-gpghome) (log "Creating test environment...") @@ -316,21 +322,24 @@ (make-test-data "random_seed" 600) (log "Creating configuration files") - (for-each - (lambda (name) - (file-copy (in-srcdir "tests" "openpgp" (string-append name ".tmpl")) name) - (let ((p (open-input-output-file name))) - (cond - ((string=? "gpg.conf" name) - (if have-opt-always-trust - (display "no-auto-check-trustdb\n" p)) - (display (string-append "agent-program " - (tool 'gpg-agent) - "|--debug-quick-random\n") p) - (display "allow-weak-digest-algos\n" p)) - ((string=? "gpg-agent.conf" name) - (display (string-append "pinentry-program " PINENTRY "\n") p))))) - '("gpg.conf" "gpg-agent.conf"))) + (create-file "gpg.conf" + "no-greeting" + "no-secmem-warning" + "no-permission-warning" + "batch" + "allow-weak-digest-algos" + (if have-opt-always-trust + "no-auto-check-trustdb" "#no-auto-check-trustdb") + (string-append "agent-program " + (tool 'gpg-agent) + "|--debug-quick-random\n") + ) + (create-file "gpg-agent.conf" + "allow-preset-passphrase" + "no-grab" + "enable-ssh-support" + (string-append "pinentry-program " (tool 'pinentry)) + )) ;; Initialize the test environment, install appropriate configuration ;; and start the agent, without any keys. diff --git a/tests/openpgp/gpg-agent.conf.tmpl b/tests/openpgp/gpg-agent.conf.tmpl deleted file mode 100644 index 3559150..0000000 --- a/tests/openpgp/gpg-agent.conf.tmpl +++ /dev/null @@ -1,3 +0,0 @@ -allow-preset-passphrase -no-grab -enable-ssh-support diff --git a/tests/openpgp/gpg.conf.tmpl b/tests/openpgp/gpg.conf.tmpl deleted file mode 100644 index 19f3180..0000000 --- a/tests/openpgp/gpg.conf.tmpl +++ /dev/null @@ -1,4 +0,0 @@ -no-greeting -no-secmem-warning -no-permission-warning -batch commit 9ae63b9caefdf3e925c5928667fcd9227132d27f Author: Justus Winter Date: Thu Apr 20 17:32:25 2017 +0200 gpgscm: Fix test. * tests/gpgscm/t-child.scm: Use 'string-length' on the string. Signed-off-by: Justus Winter diff --git a/tests/gpgscm/t-child.scm b/tests/gpgscm/t-child.scm index 93208f4..fd1dcc3 100644 --- a/tests/gpgscm/t-child.scm +++ b/tests/gpgscm/t-child.scm @@ -107,12 +107,12 @@ (pipe:spawn `(,child stdout4096)) (pipe:spawn `(,child cat))) (tr:call-with-content (lambda (c) - (assert (= 4096 (length c)))))) + (assert (= 4096 (string-length c)))))) (tr:do (tr:pipe-do (pipe:spawn `(,child stdout8192)) (pipe:spawn `(,child cat))) (tr:call-with-content (lambda (c) - (assert (= 8192 (length c)))))) + (assert (= 8192 (string-length c)))))) (echo "All good.") commit 4aab0e6ac7f2887a6f38f0cb95365dd7c30b4b18 Author: Justus Winter Date: Thu Apr 20 15:09:13 2017 +0200 gpgscm: Improve syntax checking. * tests/gpgscm/scheme.c (opexe_0): Make sure closure arguments are symbols. Signed-off-by: Justus Winter diff --git a/tests/gpgscm/scheme.c b/tests/gpgscm/scheme.c index 11f6fcb..38f2870 100644 --- a/tests/gpgscm/scheme.c +++ b/tests/gpgscm/scheme.c @@ -3559,10 +3559,13 @@ static pointer opexe_0(scheme *sc, enum scheme_opcodes op) { is_pair(x); x = cdr(x), y = cdr(y)) { if (y == sc->NIL) { Error_1(sc, "not enough arguments, missing:", x); - } else { + } else if (is_symbol(car(x))) { new_slot_in_env(sc, car(x), car(y)); - } + } else { + Error_1(sc, "syntax error in closure: not a symbol", car(x)); + } } + if (x == sc->NIL) { if (y != sc->NIL) { Error_0(sc, "too many arguments"); ----------------------------------------------------------------------- Summary of changes: tests/gpgme/gpgme-defs.scm | 5 --- tests/gpgscm/init.scm | 9 +++-- tests/gpgscm/scheme.c | 72 +++++++++++++++++++++++++-------------- tests/gpgscm/t-child.scm | 4 +-- tests/gpgsm/gpgsm-defs.scm | 6 ---- tests/openpgp/defs.scm | 39 +++++++++++++-------- tests/openpgp/gpg-agent.conf.tmpl | 3 -- tests/openpgp/gpg.conf.tmpl | 4 --- 8 files changed, 79 insertions(+), 63 deletions(-) delete mode 100644 tests/openpgp/gpg-agent.conf.tmpl delete mode 100644 tests/openpgp/gpg.conf.tmpl hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 24 16:47:58 2017 From: cvs at cvs.gnupg.org (by Andre Heinecke) Date: Mon, 24 Apr 2017 16:47:58 +0200 Subject: [git] GPGME - branch, master, updated. gpgme-1.9.0-28-g8d61aba Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG Made Easy". The branch, master has been updated via 8d61aba1fe0379ba14494f8ae2011ba531554ef4 (commit) from ac28e66f46132ae4a854d04b2f17acd4d55e4296 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 8d61aba1fe0379ba14494f8ae2011ba531554ef4 Author: Andre Heinecke Date: Mon Apr 24 16:46:09 2017 +0200 doc: Improve doc on passphrase_cb / pinentry mode * doc/gpgme.texi (Passphrase Callback): Mention pinentry_mode and restrictions. (Pinentry Mode): Fix wording and clarify versions that need loopback mode for passphrase_cb to work. diff --git a/doc/gpgme.texi b/doc/gpgme.texi index 40423cf..bc40430 100644 --- a/doc/gpgme.texi +++ b/doc/gpgme.texi @@ -2597,11 +2597,11 @@ Return a Pinentry error @code{No Pinentry}. @item GPGME_PINENTRY_MODE_LOOPBACK Redirect Pinentry queries to the caller. -This enables the use of @code{gpgme_set_passphrase_cb} whis pinentry -queries redirected to gpgme. +This enables the use of @code{gpgme_set_passphrase_cb} because pinentry +queries are redirected to gpgme. -Note: This mode requires @code{allow-loopback-pinentry} to be enabled -in the @file{gpg-agent.conf} or an agent started with that option. +Note: For 2.1.0 - 2.1.12 this mode requires @code{allow-loopback-pinentry} +to be enabled in the @file{gpg-agent.conf} or an agent started with that option. @end table @end deftp @@ -2763,6 +2763,10 @@ character before returning from the callback. If an error occurs, return the corresponding @code{gpgme_error_t} value. You can use the error code @code{GPG_ERR_CANCELED} to abort the operation. Otherwise, return @code{0}. + +Note: The passphrase_cb only works with GnuPG 1.x and 2.1.x and not +with the 2.0.x series. See @code{gpgme_set_pinentry_mode} for more +details on 2.1.x usage. @end deftp @deftypefun void gpgme_set_passphrase_cb (@w{gpgme_ctx_t @var{ctx}}, @w{gpgme_passphrase_cb_t @var{passfunc}}, @w{void *@var{hook_value}}) ----------------------------------------------------------------------- Summary of changes: doc/gpgme.texi | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) hooks/post-receive -- GnuPG Made Easy http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 24 17:37:05 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Mon, 24 Apr 2017 17:37:05 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-94-gef1922b Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via ef1922b3b19df0aa7f8c15d503c603f76fc13f82 (commit) from d2f6798621d751cd6ae6f091c4a2af4569c5b8aa (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit ef1922b3b19df0aa7f8c15d503c603f76fc13f82 Author: Justus Winter Date: Mon Apr 24 17:32:41 2017 +0200 tests: Fix Python detection. * tests/gpgme/gpgme-defs.scm (python): Fix Python detection. -- In 25e6444b3f4601c7821beab06bc4520deacb007b we changed the way GPGME creates the build directory for the Python bindings. We now use the basename of the interpreter as an identifier, that means we have to get the base name right, a link to the same binary is not sufficient. Signed-off-by: Justus Winter diff --git a/tests/gpgme/gpgme-defs.scm b/tests/gpgme/gpgme-defs.scm index 690d097..a74a174 100644 --- a/tests/gpgme/gpgme-defs.scm +++ b/tests/gpgme/gpgme-defs.scm @@ -167,13 +167,15 @@ (expand-one (append acc (list (car v))) (cdr v)))))) values))) -(define python (catch #f - (path-expand "python" (string-split (getenv "PATH") *pathsep*)))) +(define python + (let loop ((pythons (list "python" "python2" "python3"))) + (if (null? pythons) + #f + (catch (loop (cdr pythons)) + (unless (file-exists? (path-join gpgme-builddir "lang" "python" + (string-append (car pythons) "-gpg"))) + (throw "next please")) + (path-expand (car pythons) (string-split (getenv "PATH") *pathsep*)))))) + (define (run-python-tests?) - (and python - (let* ((python-version - (string-trim char-whitespace? - (call-popen `(,python -c "import sys; print('{0}.{1}'.format(sys.version_info[0], sys.version_info[1]))") ""))) - (build-path (path-join gpgme-builddir "lang" "python" - (string-append "python" python-version "-gpg")))) - (file-exists? build-path)))) + (not (not python))) ----------------------------------------------------------------------- Summary of changes: tests/gpgme/gpgme-defs.scm | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Apr 24 18:11:18 2017 From: cvs at cvs.gnupg.org (by Andre Heinecke) Date: Mon, 24 Apr 2017 18:11:18 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-95-g2e71bf3 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 2e71bf30f038ca0e142acbb6f650ce029105f8a2 (commit) from ef1922b3b19df0aa7f8c15d503c603f76fc13f82 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 2e71bf30f038ca0e142acbb6f650ce029105f8a2 Author: Andre Heinecke Date: Tue Aug 12 21:22:23 2014 +0200 w32: Enable wildcard expansion with mingw-w64 * g10/gpg.c: Define _dowildcard = -1; -- If this value is defined wildcard support in the c runtime is enabled again. This fixes a regression caused by switching to mingw 3.0 Signed-off-by: Andre Heinecke diff --git a/g10/gpg.c b/g10/gpg.c index e228427..d193cb2 100644 --- a/g10/gpg.c +++ b/g10/gpg.c @@ -73,6 +73,9 @@ #define MY_O_BINARY 0 #endif +#ifdef __MINGW32__ +int _dowildcard = -1; +#endif enum cmd_and_opt_values { ----------------------------------------------------------------------- Summary of changes: g10/gpg.c | 3 +++ 1 file changed, 3 insertions(+) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 25 00:52:58 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Tue, 25 Apr 2017 00:52:58 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-96-g116cfd6 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 116cfd60779fbb3540da629db54dc2e148f4a3a2 (commit) from 2e71bf30f038ca0e142acbb6f650ce029105f8a2 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 116cfd60779fbb3540da629db54dc2e148f4a3a2 Author: NIIBE Yutaka Date: Tue Apr 25 07:48:51 2017 +0900 g10: invalidate the fd cache for keyring. * g10/keyring.c (keyring_search_reset): Don't keep the FD cache. -- GnuPG-bug-id: 3096 Fixes-commit: 5556eca5acd46983bff0b38a1ffbc2f07fbaba9f Signed-off-by: NIIBE Yutaka diff --git a/g10/keyring.c b/g10/keyring.c index 51b7687..e223f0f 100644 --- a/g10/keyring.c +++ b/g10/keyring.c @@ -663,7 +663,6 @@ keyring_search_reset (KEYRING_HANDLE hd) { log_assert (hd); - hd->current.kr = NULL; iobuf_close (hd->current.iobuf); hd->current.iobuf = NULL; hd->current.eof = 0; @@ -671,6 +670,12 @@ keyring_search_reset (KEYRING_HANDLE hd) hd->found.kr = NULL; hd->found.offset = 0; + + if (hd->current.kr) + iobuf_ioctl (NULL, IOBUF_IOCTL_INVALIDATE_CACHE, 0, + (char*)hd->current.kr->fname); + hd->current.kr = NULL; + return 0; } ----------------------------------------------------------------------- Summary of changes: g10/keyring.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 25 04:41:37 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Tue, 25 Apr 2017 04:41:37 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-97-g7851d73 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 7851d73fd7f424f9a649690e1cb3055feb792c51 (commit) from 116cfd60779fbb3540da629db54dc2e148f4a3a2 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 7851d73fd7f424f9a649690e1cb3055feb792c51 Author: NIIBE Yutaka Date: Tue Apr 25 11:39:59 2017 +0900 tests: Remove *.conf.tmpl from Makefile. * tests/openpgp/Makefile.am (TEST_FILES): Remove gpg.conf.tmpl and gpg-agent.conf.tmpl. -- Fixes-commit: 06a177ceea529269a7404740c60416bd6a4567b1 Signed-off-by: NIIBE Yutaka diff --git a/tests/openpgp/Makefile.am b/tests/openpgp/Makefile.am index a7281a5..d99c3d9 100644 --- a/tests/openpgp/Makefile.am +++ b/tests/openpgp/Makefile.am @@ -115,7 +115,6 @@ TEST_FILES = pubring.asc secring.asc plain-1o.asc plain-2o.asc plain-3o.asc \ plain-1.asc plain-2.asc plain-3.asc plain-1-pgp.asc \ plain-largeo.asc plain-large.asc \ pubring.pkr.asc secring.skr.asc secdemo.asc pubdemo.asc \ - gpg.conf.tmpl gpg-agent.conf.tmpl \ bug537-test.data.asc bug894-test.asc \ bug1223-good.asc bug1223-bogus.asc 4gb-packet.asc \ tofu/conflicting/1C005AF3.gpg \ ----------------------------------------------------------------------- Summary of changes: tests/openpgp/Makefile.am | 1 - 1 file changed, 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 25 10:27:50 2017 From: cvs at cvs.gnupg.org (by Andre Heinecke) Date: Tue, 25 Apr 2017 10:27:50 +0200 Subject: [git] GPGME - branch, master, updated. gpgme-1.9.0-29-g7003583 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG Made Easy". The branch, master has been updated via 70035834326d0d04a5904ae01bc3757e577facf4 (commit) from 8d61aba1fe0379ba14494f8ae2011ba531554ef4 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 70035834326d0d04a5904ae01bc3757e577facf4 Author: Andre Heinecke Date: Tue Apr 25 10:24:11 2017 +0200 Change copyright from Intevation to BSI * lang/cpp/src/gpggencardkeyinteractor.cpp, lang/cpp/src/gpggencardkeyinteractor.h, lang/cpp/src/gpgmepp_export.h, lang/cpp/src/swdbresult.cpp, lang/cpp/src/swdbresult.h, lang/cpp/src/tofuinfo.cpp, lang/cpp/src/tofuinfo.h, lang/qt/src/abstractimportjob.h, lang/qt/src/adduseridjob.h, lang/qt/src/changeexpiryjob.h, lang/qt/src/changeownertrustjob.h, lang/qt/src/changepasswdjob.h, lang/qt/src/cryptoconfig.cpp, lang/qt/src/cryptoconfig.h, lang/qt/src/dataprovider.cpp, lang/qt/src/dataprovider.h, lang/qt/src/decryptjob.h, lang/qt/src/decryptverifyjob.h, lang/qt/src/deletejob.h, lang/qt/src/dn.cpp, lang/qt/src/dn.h, lang/qt/src/downloadjob.h, lang/qt/src/encryptjob.h, lang/qt/src/exportjob.h, lang/qt/src/hierarchicalkeylistjob.h, lang/qt/src/importfromkeyserverjob.h, lang/qt/src/importjob.h, lang/qt/src/job.cpp, lang/qt/src/job.h, lang/qt/src/keyformailboxjob.h, lang/qt/src/keygenerationjob.h, lang/qt/src/keylistjob.h, lang/qt/src/listallkeysjob.h, lang/qt/src/multideletejob.h, lang/qt/src/protocol.h, lang/qt/src/protocol_p.h, lang/qt/src/qgpgme_export.h, lang/qt/src/qgpgmeadduseridjob.cpp, lang/qt/src/qgpgmeadduseridjob.h, lang/qt/src/qgpgmebackend.cpp, lang/qt/src/qgpgmebackend.h, lang/qt/src/qgpgmechangeexpiryjob.cpp, lang/qt/src/qgpgmechangeexpiryjob.h, lang/qt/src/qgpgmechangeownertrustjob.cpp, lang/qt/src/qgpgmechangeownertrustjob.h, lang/qt/src/qgpgmechangepasswdjob.cpp, lang/qt/src/qgpgmechangepasswdjob.h, lang/qt/src/qgpgmedecryptjob.cpp, lang/qt/src/qgpgmedecryptjob.h, lang/qt/src/qgpgmedecryptverifyjob.cpp, lang/qt/src/qgpgmedecryptverifyjob.h, lang/qt/src/qgpgmedeletejob.cpp, lang/qt/src/qgpgmedeletejob.h, lang/qt/src/qgpgmedownloadjob.cpp, lang/qt/src/qgpgmedownloadjob.h, lang/qt/src/qgpgmeencryptjob.cpp, lang/qt/src/qgpgmeencryptjob.h, lang/qt/src/qgpgmeexportjob.cpp, lang/qt/src/qgpgmeexportjob.h, lang/qt/src/qgpgmeimportfromkeyserverjob.cpp, lang/qt/src/qgpgmeimportfromkeyserverjob.h, lang/qt/src/qgpgmeimportjob.cpp, lang/qt/src/qgpgmeimportjob.h, lang/qt/src/qgpgmekeyformailboxjob.cpp, lang/qt/src/qgpgmekeyformailboxjob.h, lang/qt/src/qgpgmekeygenerationjob.cpp, lang/qt/src/qgpgmekeygenerationjob.h, lang/qt/src/qgpgmekeylistjob.cpp, lang/qt/src/qgpgmekeylistjob.h, lang/qt/src/qgpgmelistallkeysjob.cpp, lang/qt/src/qgpgmelistallkeysjob.h, lang/qt/src/qgpgmenewcryptoconfig.cpp, lang/qt/src/qgpgmenewcryptoconfig.h, lang/qt/src/qgpgmerefreshkeysjob.cpp, lang/qt/src/qgpgmerefreshkeysjob.h, lang/qt/src/qgpgmesecretkeyexportjob.cpp, lang/qt/src/qgpgmesecretkeyexportjob.h, lang/qt/src/qgpgmesignencryptjob.cpp, lang/qt/src/qgpgmesignencryptjob.h, lang/qt/src/qgpgmesignjob.cpp, lang/qt/src/qgpgmesignjob.h, lang/qt/src/qgpgmesignkeyjob.cpp, lang/qt/src/qgpgmesignkeyjob.h, lang/qt/src/qgpgmetofupolicyjob.cpp, lang/qt/src/qgpgmetofupolicyjob.h, lang/qt/src/qgpgmeverifydetachedjob.cpp, lang/qt/src/qgpgmeverifydetachedjob.h, lang/qt/src/qgpgmeverifyopaquejob.cpp, lang/qt/src/qgpgmeverifyopaquejob.h, lang/qt/src/qgpgmewkspublishjob.cpp, lang/qt/src/qgpgmewkspublishjob.h, lang/qt/src/refreshkeysjob.h, lang/qt/src/signencryptjob.h, lang/qt/src/signjob.h, lang/qt/src/signkeyjob.h, lang/qt/src/specialjob.h, lang/qt/src/threadedjobmixin.cpp, lang/qt/src/threadedjobmixin.h, lang/qt/src/tofupolicyjob.h, lang/qt/src/verifydetachedjob.h, lang/qt/src/verifyopaquejob.h, lang/qt/src/wkspublishjob.h, lang/qt/tests/run-keyformailboxjob.cpp, lang/qt/tests/t-config.cpp, lang/qt/tests/t-encrypt.cpp, lang/qt/tests/t-keylist.cpp, lang/qt/tests/t-keylocate.cpp, lang/qt/tests/t-ownertrust.cpp, lang/qt/tests/t-support.cpp, lang/qt/tests/t-support.h, lang/qt/tests/t-tofuinfo.cpp, lang/qt/tests/t-various.cpp, lang/qt/tests/t-verify.cpp, lang/qt/tests/t-wkspublish.cpp, tests/gpg/t-encrypt-mixed.c, tests/gpg/t-thread-keylist-verify.c, tests/gpg/t-thread-keylist.c, tests/run-decrypt.c: Change Intevation GmbH copyright to BSI. -- This should make it more transparent where the BSI is the actual copyright holder as the code was mostly developed as part of a development contract. diff --git a/lang/cpp/src/gpggencardkeyinteractor.cpp b/lang/cpp/src/gpggencardkeyinteractor.cpp index 90329e2..6f42e47 100644 --- a/lang/cpp/src/gpggencardkeyinteractor.cpp +++ b/lang/cpp/src/gpggencardkeyinteractor.cpp @@ -1,6 +1,7 @@ /* gpggencardkeyinteractor.cpp - Edit Interactor to generate a key on a card - Copyright (C) 2017 Intevation GmbH + Copyright (C) 2017 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/gpggencardkeyinteractor.h b/lang/cpp/src/gpggencardkeyinteractor.h index c6b17d1..7cc2216 100644 --- a/lang/cpp/src/gpggencardkeyinteractor.h +++ b/lang/cpp/src/gpggencardkeyinteractor.h @@ -1,6 +1,7 @@ /* gpggencardkeyinteractor.h - Edit Interactor to generate a key on a card - Copyright (C) 2017 Intevation GmbH + Copyright (C) 2017 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/gpgmepp_export.h b/lang/cpp/src/gpgmepp_export.h index d660310..0e5302f 100644 --- a/lang/cpp/src/gpgmepp_export.h +++ b/lang/cpp/src/gpgmepp_export.h @@ -1,5 +1,6 @@ /*gpgmepp_export.h - Export macros for gpgmepp - Copyright (C) 2016, Intevation GmbH + Copyright (C) 2016, by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/swdbresult.cpp b/lang/cpp/src/swdbresult.cpp index 3afa8b5..202a107 100644 --- a/lang/cpp/src/swdbresult.cpp +++ b/lang/cpp/src/swdbresult.cpp @@ -1,5 +1,6 @@ /* swdbresult.cpp - wraps gpgme swdb result / query - Copyright (C) 2016 Intevation GmbH + Copyright (C) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/swdbresult.h b/lang/cpp/src/swdbresult.h index e15954d..2e0bf2d 100644 --- a/lang/cpp/src/swdbresult.h +++ b/lang/cpp/src/swdbresult.h @@ -1,6 +1,7 @@ /* swdbresult.h - wraps a gpgme swdb query / rsult - Copyright (C) 2016 Intevation GmbH + Copyright (C) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/tofuinfo.cpp b/lang/cpp/src/tofuinfo.cpp index a10a3cb..f0132f7 100644 --- a/lang/cpp/src/tofuinfo.cpp +++ b/lang/cpp/src/tofuinfo.cpp @@ -1,5 +1,6 @@ /* tofuinfo.cpp - wraps gpgme tofu info - Copyright (C) 2016 Intevation GmbH + Copyright (C) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/tofuinfo.h b/lang/cpp/src/tofuinfo.h index 7165d05..5bb024f 100644 --- a/lang/cpp/src/tofuinfo.h +++ b/lang/cpp/src/tofuinfo.h @@ -1,6 +1,7 @@ /* tofuinfo.h - wraps gpgme tofu info - Copyright (C) 2016 Intevation GmbH + Copyright (C) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/qt/src/abstractimportjob.h b/lang/qt/src/abstractimportjob.h index 572f203..ab6b530 100644 --- a/lang/qt/src/abstractimportjob.h +++ b/lang/qt/src/abstractimportjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2009 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/adduseridjob.h b/lang/qt/src/adduseridjob.h index 1b5676f..cc3963c 100644 --- a/lang/qt/src/adduseridjob.h +++ b/lang/qt/src/adduseridjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/changeexpiryjob.h b/lang/qt/src/changeexpiryjob.h index 7902cb8..9083479 100644 --- a/lang/qt/src/changeexpiryjob.h +++ b/lang/qt/src/changeexpiryjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/changeownertrustjob.h b/lang/qt/src/changeownertrustjob.h index 75c1163..42a806a 100644 --- a/lang/qt/src/changeownertrustjob.h +++ b/lang/qt/src/changeownertrustjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/changepasswdjob.h b/lang/qt/src/changepasswdjob.h index 7290898..44de77c 100644 --- a/lang/qt/src/changepasswdjob.h +++ b/lang/qt/src/changepasswdjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2010 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/cryptoconfig.cpp b/lang/qt/src/cryptoconfig.cpp index be265d8..7121220 100644 --- a/lang/qt/src/cryptoconfig.cpp +++ b/lang/qt/src/cryptoconfig.cpp @@ -2,7 +2,8 @@ cryptoconfig.cpp This file is part of qgpgme, the Qt API binding for gpgme - Copyright (c) 2017 Intevation GmbH + Copyright (c) 2017 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/cryptoconfig.h b/lang/qt/src/cryptoconfig.h index c4de22d..d545e59 100644 --- a/lang/qt/src/cryptoconfig.h +++ b/lang/qt/src/cryptoconfig.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/dataprovider.cpp b/lang/qt/src/dataprovider.cpp index 8385686..0d527a0 100644 --- a/lang/qt/src/dataprovider.cpp +++ b/lang/qt/src/dataprovider.cpp @@ -1,6 +1,7 @@ /* dataprovider.cpp Copyright (C) 2004 Klar?vdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of QGPGME. diff --git a/lang/qt/src/dataprovider.h b/lang/qt/src/dataprovider.h index 337f264..980a6a9 100644 --- a/lang/qt/src/dataprovider.h +++ b/lang/qt/src/dataprovider.h @@ -1,6 +1,7 @@ /* dataprovider.h Copyright (C) 2004 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of QGPGME. diff --git a/lang/qt/src/decryptjob.h b/lang/qt/src/decryptjob.h index c4fc86f..11584db 100644 --- a/lang/qt/src/decryptjob.h +++ b/lang/qt/src/decryptjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004, 2007 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/decryptverifyjob.h b/lang/qt/src/decryptverifyjob.h index 97af008..c3fcf02 100644 --- a/lang/qt/src/decryptverifyjob.h +++ b/lang/qt/src/decryptverifyjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004, 2007 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/deletejob.h b/lang/qt/src/deletejob.h index f8479b1..7ab0dd0 100644 --- a/lang/qt/src/deletejob.h +++ b/lang/qt/src/deletejob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/dn.cpp b/lang/qt/src/dn.cpp index 4310ad6..d122333 100644 --- a/lang/qt/src/dn.cpp +++ b/lang/qt/src/dn.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/dn.h b/lang/qt/src/dn.h index 17b1c30..ef6fea0 100644 --- a/lang/qt/src/dn.h +++ b/lang/qt/src/dn.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/downloadjob.h b/lang/qt/src/downloadjob.h index 09eecf6..7c8bb72 100644 --- a/lang/qt/src/downloadjob.h +++ b/lang/qt/src/downloadjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/encryptjob.h b/lang/qt/src/encryptjob.h index 4ff9c82..161a769 100644 --- a/lang/qt/src/encryptjob.h +++ b/lang/qt/src/encryptjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004, 2007 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/exportjob.h b/lang/qt/src/exportjob.h index 583d4c0..fc1f7ae 100644 --- a/lang/qt/src/exportjob.h +++ b/lang/qt/src/exportjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/hierarchicalkeylistjob.h b/lang/qt/src/hierarchicalkeylistjob.h index 2ec187d..0ebed3c 100644 --- a/lang/qt/src/hierarchicalkeylistjob.h +++ b/lang/qt/src/hierarchicalkeylistjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/importfromkeyserverjob.h b/lang/qt/src/importfromkeyserverjob.h index f548ea7..cc4a22d 100644 --- a/lang/qt/src/importfromkeyserverjob.h +++ b/lang/qt/src/importfromkeyserverjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/importjob.h b/lang/qt/src/importjob.h index 5c7b24d..7437fbd 100644 --- a/lang/qt/src/importjob.h +++ b/lang/qt/src/importjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/job.cpp b/lang/qt/src/job.cpp index 9ae3f31..83c5044 100644 --- a/lang/qt/src/job.cpp +++ b/lang/qt/src/job.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2005 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/job.h b/lang/qt/src/job.h index a0c0285..dc38360 100644 --- a/lang/qt/src/job.h +++ b/lang/qt/src/job.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/keyformailboxjob.h b/lang/qt/src/keyformailboxjob.h index d8b6c6b..42d1729 100644 --- a/lang/qt/src/keyformailboxjob.h +++ b/lang/qt/src/keyformailboxjob.h @@ -2,7 +2,8 @@ keyformailboxjob.h This file is part of qgpgme, the Qt API binding for gpgme - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/keygenerationjob.h b/lang/qt/src/keygenerationjob.h index a0beeac..04b97d9 100644 --- a/lang/qt/src/keygenerationjob.h +++ b/lang/qt/src/keygenerationjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/keylistjob.h b/lang/qt/src/keylistjob.h index 8dc736e..88eac87 100644 --- a/lang/qt/src/keylistjob.h +++ b/lang/qt/src/keylistjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/listallkeysjob.h b/lang/qt/src/listallkeysjob.h index 4fbb469..ebbdc16 100644 --- a/lang/qt/src/listallkeysjob.h +++ b/lang/qt/src/listallkeysjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/multideletejob.h b/lang/qt/src/multideletejob.h index 8e9eb14..a6eec1f 100644 --- a/lang/qt/src/multideletejob.h +++ b/lang/qt/src/multideletejob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/protocol.h b/lang/qt/src/protocol.h index 15d83e0..6794bc2 100644 --- a/lang/qt/src/protocol.h +++ b/lang/qt/src/protocol.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2005 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/protocol_p.h b/lang/qt/src/protocol_p.h index 7f66fa4..58a0fa6 100644 --- a/lang/qt/src/protocol_p.h +++ b/lang/qt/src/protocol_p.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2005 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgme_export.h b/lang/qt/src/qgpgme_export.h index 48296f7..72927fe 100644 --- a/lang/qt/src/qgpgme_export.h +++ b/lang/qt/src/qgpgme_export.h @@ -1,7 +1,8 @@ /* qgpgme_export.h - Export macros for qgpgme This file is part of qgpgme, the Qt API binding for gpgme - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmeadduseridjob.cpp b/lang/qt/src/qgpgmeadduseridjob.cpp index 4fc80d1..94894fc 100644 --- a/lang/qt/src/qgpgmeadduseridjob.cpp +++ b/lang/qt/src/qgpgmeadduseridjob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmeadduseridjob.h b/lang/qt/src/qgpgmeadduseridjob.h index 294eb6c..71fa473 100644 --- a/lang/qt/src/qgpgmeadduseridjob.h +++ b/lang/qt/src/qgpgmeadduseridjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmebackend.cpp b/lang/qt/src/qgpgmebackend.cpp index f06244b..89f7b55 100644 --- a/lang/qt/src/qgpgmebackend.cpp +++ b/lang/qt/src/qgpgmebackend.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2005 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmebackend.h b/lang/qt/src/qgpgmebackend.h index cca8b71..a69b09a 100644 --- a/lang/qt/src/qgpgmebackend.h +++ b/lang/qt/src/qgpgmebackend.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2005 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmechangeexpiryjob.cpp b/lang/qt/src/qgpgmechangeexpiryjob.cpp index cf417ab..faa4e79 100644 --- a/lang/qt/src/qgpgmechangeexpiryjob.cpp +++ b/lang/qt/src/qgpgmechangeexpiryjob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmechangeexpiryjob.h b/lang/qt/src/qgpgmechangeexpiryjob.h index 4abdf78..8356568 100644 --- a/lang/qt/src/qgpgmechangeexpiryjob.h +++ b/lang/qt/src/qgpgmechangeexpiryjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmechangeownertrustjob.cpp b/lang/qt/src/qgpgmechangeownertrustjob.cpp index d9a613f..0c67e98 100644 --- a/lang/qt/src/qgpgmechangeownertrustjob.cpp +++ b/lang/qt/src/qgpgmechangeownertrustjob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmechangeownertrustjob.h b/lang/qt/src/qgpgmechangeownertrustjob.h index 7740616..80dc0e4 100644 --- a/lang/qt/src/qgpgmechangeownertrustjob.h +++ b/lang/qt/src/qgpgmechangeownertrustjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmechangepasswdjob.cpp b/lang/qt/src/qgpgmechangepasswdjob.cpp index b04273c..3465c6f 100644 --- a/lang/qt/src/qgpgmechangepasswdjob.cpp +++ b/lang/qt/src/qgpgmechangepasswdjob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2010 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmechangepasswdjob.h b/lang/qt/src/qgpgmechangepasswdjob.h index e37789e..8910a46 100644 --- a/lang/qt/src/qgpgmechangepasswdjob.h +++ b/lang/qt/src/qgpgmechangepasswdjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2010 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmedecryptjob.cpp b/lang/qt/src/qgpgmedecryptjob.cpp index 449e9aa..598e22f 100644 --- a/lang/qt/src/qgpgmedecryptjob.cpp +++ b/lang/qt/src/qgpgmedecryptjob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmedecryptjob.h b/lang/qt/src/qgpgmedecryptjob.h index 5335e84..2924378 100644 --- a/lang/qt/src/qgpgmedecryptjob.h +++ b/lang/qt/src/qgpgmedecryptjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmedecryptverifyjob.cpp b/lang/qt/src/qgpgmedecryptverifyjob.cpp index e6d3ff2..01cf247 100644 --- a/lang/qt/src/qgpgmedecryptverifyjob.cpp +++ b/lang/qt/src/qgpgmedecryptverifyjob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmedecryptverifyjob.h b/lang/qt/src/qgpgmedecryptverifyjob.h index de2bce7..eaeec09 100644 --- a/lang/qt/src/qgpgmedecryptverifyjob.h +++ b/lang/qt/src/qgpgmedecryptverifyjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmedeletejob.cpp b/lang/qt/src/qgpgmedeletejob.cpp index 9145298..dffcb0c 100644 --- a/lang/qt/src/qgpgmedeletejob.cpp +++ b/lang/qt/src/qgpgmedeletejob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmedeletejob.h b/lang/qt/src/qgpgmedeletejob.h index 992442f..f5d586b 100644 --- a/lang/qt/src/qgpgmedeletejob.h +++ b/lang/qt/src/qgpgmedeletejob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmedownloadjob.cpp b/lang/qt/src/qgpgmedownloadjob.cpp index b0dca56..b5786a1 100644 --- a/lang/qt/src/qgpgmedownloadjob.cpp +++ b/lang/qt/src/qgpgmedownloadjob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmedownloadjob.h b/lang/qt/src/qgpgmedownloadjob.h index 4091190..248c28f 100644 --- a/lang/qt/src/qgpgmedownloadjob.h +++ b/lang/qt/src/qgpgmedownloadjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmeencryptjob.cpp b/lang/qt/src/qgpgmeencryptjob.cpp index d13acab..aacec29 100644 --- a/lang/qt/src/qgpgmeencryptjob.cpp +++ b/lang/qt/src/qgpgmeencryptjob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2007,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmeencryptjob.h b/lang/qt/src/qgpgmeencryptjob.h index 42c1c78..cba5ec9 100644 --- a/lang/qt/src/qgpgmeencryptjob.h +++ b/lang/qt/src/qgpgmeencryptjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2007,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmeexportjob.cpp b/lang/qt/src/qgpgmeexportjob.cpp index e6073f0..e2ce1f9 100644 --- a/lang/qt/src/qgpgmeexportjob.cpp +++ b/lang/qt/src/qgpgmeexportjob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmeexportjob.h b/lang/qt/src/qgpgmeexportjob.h index 7561054..d529fee 100644 --- a/lang/qt/src/qgpgmeexportjob.h +++ b/lang/qt/src/qgpgmeexportjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmeimportfromkeyserverjob.cpp b/lang/qt/src/qgpgmeimportfromkeyserverjob.cpp index acefbb2..8f3b326 100644 --- a/lang/qt/src/qgpgmeimportfromkeyserverjob.cpp +++ b/lang/qt/src/qgpgmeimportfromkeyserverjob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmeimportfromkeyserverjob.h b/lang/qt/src/qgpgmeimportfromkeyserverjob.h index 8c9f944..6ecce81 100644 --- a/lang/qt/src/qgpgmeimportfromkeyserverjob.h +++ b/lang/qt/src/qgpgmeimportfromkeyserverjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmeimportjob.cpp b/lang/qt/src/qgpgmeimportjob.cpp index dcabad3..a62d05f 100644 --- a/lang/qt/src/qgpgmeimportjob.cpp +++ b/lang/qt/src/qgpgmeimportjob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmeimportjob.h b/lang/qt/src/qgpgmeimportjob.h index 424cb50..860db22 100644 --- a/lang/qt/src/qgpgmeimportjob.h +++ b/lang/qt/src/qgpgmeimportjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmekeyformailboxjob.cpp b/lang/qt/src/qgpgmekeyformailboxjob.cpp index 7054c78..534e9a3 100644 --- a/lang/qt/src/qgpgmekeyformailboxjob.cpp +++ b/lang/qt/src/qgpgmekeyformailboxjob.cpp @@ -2,7 +2,8 @@ qgpgmekeyformailboxjob.cpp This file is part of qgpgme, the Qt API binding for gpgme - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmekeyformailboxjob.h b/lang/qt/src/qgpgmekeyformailboxjob.h index 8ac2c1f..a14e470 100644 --- a/lang/qt/src/qgpgmekeyformailboxjob.h +++ b/lang/qt/src/qgpgmekeyformailboxjob.h @@ -4,7 +4,8 @@ This file is part of libkleopatra, the KDE keymanagement library Copyright (c) 2004,2008 Klar?lvdalens Datakonsult AB This file is part of qgpgme, the Qt API binding for gpgme - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmekeygenerationjob.cpp b/lang/qt/src/qgpgmekeygenerationjob.cpp index 31f3342..7cf4c8c 100644 --- a/lang/qt/src/qgpgmekeygenerationjob.cpp +++ b/lang/qt/src/qgpgmekeygenerationjob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmekeygenerationjob.h b/lang/qt/src/qgpgmekeygenerationjob.h index 808b714..1fa28d5 100644 --- a/lang/qt/src/qgpgmekeygenerationjob.h +++ b/lang/qt/src/qgpgmekeygenerationjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmekeylistjob.cpp b/lang/qt/src/qgpgmekeylistjob.cpp index 887a902..891b0bd 100644 --- a/lang/qt/src/qgpgmekeylistjob.cpp +++ b/lang/qt/src/qgpgmekeylistjob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmekeylistjob.h b/lang/qt/src/qgpgmekeylistjob.h index 2d5406a..9e505a1 100644 --- a/lang/qt/src/qgpgmekeylistjob.h +++ b/lang/qt/src/qgpgmekeylistjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmelistallkeysjob.cpp b/lang/qt/src/qgpgmelistallkeysjob.cpp index 7ba8bc9..0ed32ce 100644 --- a/lang/qt/src/qgpgmelistallkeysjob.cpp +++ b/lang/qt/src/qgpgmelistallkeysjob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmelistallkeysjob.h b/lang/qt/src/qgpgmelistallkeysjob.h index 1fc69d4..091f9f1 100644 --- a/lang/qt/src/qgpgmelistallkeysjob.h +++ b/lang/qt/src/qgpgmelistallkeysjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmenewcryptoconfig.cpp b/lang/qt/src/qgpgmenewcryptoconfig.cpp index 6901eef..d413126 100644 --- a/lang/qt/src/qgpgmenewcryptoconfig.cpp +++ b/lang/qt/src/qgpgmenewcryptoconfig.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2010 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmenewcryptoconfig.h b/lang/qt/src/qgpgmenewcryptoconfig.h index 7100e70..eade8eb 100644 --- a/lang/qt/src/qgpgmenewcryptoconfig.h +++ b/lang/qt/src/qgpgmenewcryptoconfig.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2010 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmerefreshkeysjob.cpp b/lang/qt/src/qgpgmerefreshkeysjob.cpp index 493a010..1ff26ec 100644 --- a/lang/qt/src/qgpgmerefreshkeysjob.cpp +++ b/lang/qt/src/qgpgmerefreshkeysjob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?vdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmerefreshkeysjob.h b/lang/qt/src/qgpgmerefreshkeysjob.h index 2a54e38..4dfd942 100644 --- a/lang/qt/src/qgpgmerefreshkeysjob.h +++ b/lang/qt/src/qgpgmerefreshkeysjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmesecretkeyexportjob.cpp b/lang/qt/src/qgpgmesecretkeyexportjob.cpp index 75cd83a..0a41017 100644 --- a/lang/qt/src/qgpgmesecretkeyexportjob.cpp +++ b/lang/qt/src/qgpgmesecretkeyexportjob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?vdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmesecretkeyexportjob.h b/lang/qt/src/qgpgmesecretkeyexportjob.h index ad53f99..78e4d77 100644 --- a/lang/qt/src/qgpgmesecretkeyexportjob.h +++ b/lang/qt/src/qgpgmesecretkeyexportjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmesignencryptjob.cpp b/lang/qt/src/qgpgmesignencryptjob.cpp index 9dcc619..bfaf58c 100644 --- a/lang/qt/src/qgpgmesignencryptjob.cpp +++ b/lang/qt/src/qgpgmesignencryptjob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004, 2007 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmesignencryptjob.h b/lang/qt/src/qgpgmesignencryptjob.h index e76c245..789e69c 100644 --- a/lang/qt/src/qgpgmesignencryptjob.h +++ b/lang/qt/src/qgpgmesignencryptjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2007,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmesignjob.cpp b/lang/qt/src/qgpgmesignjob.cpp index e165f52..7e710f3 100644 --- a/lang/qt/src/qgpgmesignjob.cpp +++ b/lang/qt/src/qgpgmesignjob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2007,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmesignjob.h b/lang/qt/src/qgpgmesignjob.h index 1d4a174..c6203a1 100644 --- a/lang/qt/src/qgpgmesignjob.h +++ b/lang/qt/src/qgpgmesignjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2007,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmesignkeyjob.cpp b/lang/qt/src/qgpgmesignkeyjob.cpp index 27aff5e..2befe53 100644 --- a/lang/qt/src/qgpgmesignkeyjob.cpp +++ b/lang/qt/src/qgpgmesignkeyjob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmesignkeyjob.h b/lang/qt/src/qgpgmesignkeyjob.h index 6cdb7db..3b31191 100644 --- a/lang/qt/src/qgpgmesignkeyjob.h +++ b/lang/qt/src/qgpgmesignkeyjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmetofupolicyjob.cpp b/lang/qt/src/qgpgmetofupolicyjob.cpp index 34630a1..91283a8 100644 --- a/lang/qt/src/qgpgmetofupolicyjob.cpp +++ b/lang/qt/src/qgpgmetofupolicyjob.cpp @@ -1,6 +1,7 @@ /* qgpgmetofupolicyjob.cpp - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmetofupolicyjob.h b/lang/qt/src/qgpgmetofupolicyjob.h index e7272e7..482a8fd 100644 --- a/lang/qt/src/qgpgmetofupolicyjob.h +++ b/lang/qt/src/qgpgmetofupolicyjob.h @@ -1,6 +1,7 @@ /* qgpgmetofupolicyjob.h - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmeverifydetachedjob.cpp b/lang/qt/src/qgpgmeverifydetachedjob.cpp index ee74861..067366a 100644 --- a/lang/qt/src/qgpgmeverifydetachedjob.cpp +++ b/lang/qt/src/qgpgmeverifydetachedjob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2007,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmeverifydetachedjob.h b/lang/qt/src/qgpgmeverifydetachedjob.h index 051caf0..81c49f3 100644 --- a/lang/qt/src/qgpgmeverifydetachedjob.h +++ b/lang/qt/src/qgpgmeverifydetachedjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2007,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmeverifyopaquejob.cpp b/lang/qt/src/qgpgmeverifyopaquejob.cpp index aea406a..bd7636d 100644 --- a/lang/qt/src/qgpgmeverifyopaquejob.cpp +++ b/lang/qt/src/qgpgmeverifyopaquejob.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2007,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmeverifyopaquejob.h b/lang/qt/src/qgpgmeverifyopaquejob.h index 87c94a3..3ba0509 100644 --- a/lang/qt/src/qgpgmeverifyopaquejob.h +++ b/lang/qt/src/qgpgmeverifyopaquejob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004,2007,2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmewkspublishjob.cpp b/lang/qt/src/qgpgmewkspublishjob.cpp index 9773893..3d00631 100644 --- a/lang/qt/src/qgpgmewkspublishjob.cpp +++ b/lang/qt/src/qgpgmewkspublishjob.cpp @@ -1,6 +1,7 @@ /* wkspublishjob.cpp - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/qgpgmewkspublishjob.h b/lang/qt/src/qgpgmewkspublishjob.h index 5fd3c03..211cefb 100644 --- a/lang/qt/src/qgpgmewkspublishjob.h +++ b/lang/qt/src/qgpgmewkspublishjob.h @@ -1,6 +1,7 @@ /* qgpgmewkspublishjob.h - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/refreshkeysjob.h b/lang/qt/src/refreshkeysjob.h index a97de80..c4ba74a 100644 --- a/lang/qt/src/refreshkeysjob.h +++ b/lang/qt/src/refreshkeysjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/signencryptjob.h b/lang/qt/src/signencryptjob.h index 4e07744..86e0a9d 100644 --- a/lang/qt/src/signencryptjob.h +++ b/lang/qt/src/signencryptjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004, 2007 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/signjob.h b/lang/qt/src/signjob.h index cf5c628..b5b5af6 100644 --- a/lang/qt/src/signjob.h +++ b/lang/qt/src/signjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004, 2007 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/signkeyjob.h b/lang/qt/src/signkeyjob.h index b5efc01..7a7800d 100644 --- a/lang/qt/src/signkeyjob.h +++ b/lang/qt/src/signkeyjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/specialjob.h b/lang/qt/src/specialjob.h index 2c80f20..5690d2e 100644 --- a/lang/qt/src/specialjob.h +++ b/lang/qt/src/specialjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/threadedjobmixin.cpp b/lang/qt/src/threadedjobmixin.cpp index 66d21fb..74755c5 100644 --- a/lang/qt/src/threadedjobmixin.cpp +++ b/lang/qt/src/threadedjobmixin.cpp @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/threadedjobmixin.h b/lang/qt/src/threadedjobmixin.h index 5ad2737..32cdb8e 100644 --- a/lang/qt/src/threadedjobmixin.h +++ b/lang/qt/src/threadedjobmixin.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2008 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/tofupolicyjob.h b/lang/qt/src/tofupolicyjob.h index 3079f91..b3a79c5 100644 --- a/lang/qt/src/tofupolicyjob.h +++ b/lang/qt/src/tofupolicyjob.h @@ -1,6 +1,7 @@ /* tofupolicyjob.h - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/verifydetachedjob.h b/lang/qt/src/verifydetachedjob.h index b339a8c..a9b7cf4 100644 --- a/lang/qt/src/verifydetachedjob.h +++ b/lang/qt/src/verifydetachedjob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004, 2007 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/verifyopaquejob.h b/lang/qt/src/verifyopaquejob.h index f064049..0ff8582 100644 --- a/lang/qt/src/verifyopaquejob.h +++ b/lang/qt/src/verifyopaquejob.h @@ -3,7 +3,8 @@ This file is part of qgpgme, the Qt API binding for gpgme Copyright (c) 2004, 2007 Klar?lvdalens Datakonsult AB - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/src/wkspublishjob.h b/lang/qt/src/wkspublishjob.h index b17cba4..8d17e52 100644 --- a/lang/qt/src/wkspublishjob.h +++ b/lang/qt/src/wkspublishjob.h @@ -1,6 +1,7 @@ /* wkspublishjob.h - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/tests/run-keyformailboxjob.cpp b/lang/qt/tests/run-keyformailboxjob.cpp index 73bedbd..dc3f967 100644 --- a/lang/qt/tests/run-keyformailboxjob.cpp +++ b/lang/qt/tests/run-keyformailboxjob.cpp @@ -2,7 +2,8 @@ run-keyformailbox.cpp This file is part of QGpgME's test suite. - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License, diff --git a/lang/qt/tests/t-config.cpp b/lang/qt/tests/t-config.cpp index 0a7df22..e04a6bb 100644 --- a/lang/qt/tests/t-config.cpp +++ b/lang/qt/tests/t-config.cpp @@ -1,7 +1,8 @@ /* t-config.cpp This file is part of qgpgme, the Qt API binding for gpgme - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/tests/t-encrypt.cpp b/lang/qt/tests/t-encrypt.cpp index 199517f..65fe735 100644 --- a/lang/qt/tests/t-encrypt.cpp +++ b/lang/qt/tests/t-encrypt.cpp @@ -1,7 +1,8 @@ /* t-encrypt.cpp This file is part of qgpgme, the Qt API binding for gpgme - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/tests/t-keylist.cpp b/lang/qt/tests/t-keylist.cpp index a140236..bf57ba7 100644 --- a/lang/qt/tests/t-keylist.cpp +++ b/lang/qt/tests/t-keylist.cpp @@ -1,7 +1,8 @@ /* t-keylist.cpp This file is part of qgpgme, the Qt API binding for gpgme - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/tests/t-keylocate.cpp b/lang/qt/tests/t-keylocate.cpp index 8c99c8b..6d00da3 100644 --- a/lang/qt/tests/t-keylocate.cpp +++ b/lang/qt/tests/t-keylocate.cpp @@ -1,7 +1,8 @@ /* t-keylocate.cpp This file is part of qgpgme, the Qt API binding for gpgme - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/tests/t-ownertrust.cpp b/lang/qt/tests/t-ownertrust.cpp index e9a4378..093c21e 100644 --- a/lang/qt/tests/t-ownertrust.cpp +++ b/lang/qt/tests/t-ownertrust.cpp @@ -1,7 +1,8 @@ /* t-ownertrust.cpp This file is part of qgpgme, the Qt API binding for gpgme - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/tests/t-support.cpp b/lang/qt/tests/t-support.cpp index b3a7a70..2444c70 100644 --- a/lang/qt/tests/t-support.cpp +++ b/lang/qt/tests/t-support.cpp @@ -1,7 +1,8 @@ /* t-support.cpp This file is part of qgpgme, the Qt API binding for gpgme - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/tests/t-support.h b/lang/qt/tests/t-support.h index b03b05d..81775ca 100644 --- a/lang/qt/tests/t-support.h +++ b/lang/qt/tests/t-support.h @@ -1,7 +1,8 @@ /* t-support.h This file is part of qgpgme, the Qt API binding for gpgme - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/tests/t-tofuinfo.cpp b/lang/qt/tests/t-tofuinfo.cpp index 8d040bc..926728d 100644 --- a/lang/qt/tests/t-tofuinfo.cpp +++ b/lang/qt/tests/t-tofuinfo.cpp @@ -1,7 +1,8 @@ /* t-tofuinfo.cpp This file is part of qgpgme, the Qt API binding for gpgme - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/tests/t-various.cpp b/lang/qt/tests/t-various.cpp index 35d8da9..fe121fd 100644 --- a/lang/qt/tests/t-various.cpp +++ b/lang/qt/tests/t-various.cpp @@ -1,7 +1,8 @@ /* t-various.cpp This file is part of qgpgme, the Qt API binding for gpgme - Copyright (c) 2017 Intevation GmbH + Copyright (c) 2017 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/tests/t-verify.cpp b/lang/qt/tests/t-verify.cpp index 7caed28..e6b0c8a 100644 --- a/lang/qt/tests/t-verify.cpp +++ b/lang/qt/tests/t-verify.cpp @@ -1,7 +1,8 @@ /* t-verifiy.cpp This file is part of qgpgme, the Qt API binding for gpgme - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/tests/t-wkspublish.cpp b/lang/qt/tests/t-wkspublish.cpp index c51e8f9..b389194 100644 --- a/lang/qt/tests/t-wkspublish.cpp +++ b/lang/qt/tests/t-wkspublish.cpp @@ -1,7 +1,8 @@ /* t-wkspublish.cpp This file is part of qgpgme, the Qt API binding for gpgme - Copyright (c) 2016 Intevation GmbH + Copyright (c) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/tests/gpg/t-encrypt-mixed.c b/tests/gpg/t-encrypt-mixed.c index afe5ba2..cc9ce89 100644 --- a/tests/gpg/t-encrypt-mixed.c +++ b/tests/gpg/t-encrypt-mixed.c @@ -1,5 +1,6 @@ /* t-encrypt-mixed.c - Regression test. - Copyright (C) 2016 Intevation GmbH + Copyright (C) 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME. diff --git a/tests/gpg/t-thread-keylist-verify.c b/tests/gpg/t-thread-keylist-verify.c index b327a1f..c011fbc 100644 --- a/tests/gpg/t-thread-keylist-verify.c +++ b/tests/gpg/t-thread-keylist-verify.c @@ -1,5 +1,6 @@ /* t-thread-verify.c - Regression test. - Copyright (C) 2015 Intevation GmbH + Copyright (C) 2015 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME. diff --git a/tests/gpg/t-thread-keylist.c b/tests/gpg/t-thread-keylist.c index b9feeda..d64a6d0 100644 --- a/tests/gpg/t-thread-keylist.c +++ b/tests/gpg/t-thread-keylist.c @@ -1,5 +1,6 @@ /* t-thread-verify.c - Regression test. - Copyright (C) 2015 Intevation GmbH + Copyright (C) 2015 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME. diff --git a/tests/run-decrypt.c b/tests/run-decrypt.c index 0fcacf8..e961293 100644 --- a/tests/run-decrypt.c +++ b/tests/run-decrypt.c @@ -1,6 +1,7 @@ /* run-decrypt.c - Helper to perform a verify operation Copyright (C) 2009 g10 Code GmbH - 2016 Intevation GmbH + 2016 by Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME. ----------------------------------------------------------------------- Summary of changes: lang/cpp/src/gpggencardkeyinteractor.cpp | 3 ++- lang/cpp/src/gpggencardkeyinteractor.h | 3 ++- lang/cpp/src/gpgmepp_export.h | 3 ++- lang/cpp/src/swdbresult.cpp | 3 ++- lang/cpp/src/swdbresult.h | 3 ++- lang/cpp/src/tofuinfo.cpp | 3 ++- lang/cpp/src/tofuinfo.h | 3 ++- lang/qt/src/abstractimportjob.h | 3 ++- lang/qt/src/adduseridjob.h | 3 ++- lang/qt/src/changeexpiryjob.h | 3 ++- lang/qt/src/changeownertrustjob.h | 3 ++- lang/qt/src/changepasswdjob.h | 3 ++- lang/qt/src/cryptoconfig.cpp | 3 ++- lang/qt/src/cryptoconfig.h | 3 ++- lang/qt/src/dataprovider.cpp | 3 ++- lang/qt/src/dataprovider.h | 3 ++- lang/qt/src/decryptjob.h | 3 ++- lang/qt/src/decryptverifyjob.h | 3 ++- lang/qt/src/deletejob.h | 3 ++- lang/qt/src/dn.cpp | 3 ++- lang/qt/src/dn.h | 3 ++- lang/qt/src/downloadjob.h | 3 ++- lang/qt/src/encryptjob.h | 3 ++- lang/qt/src/exportjob.h | 3 ++- lang/qt/src/hierarchicalkeylistjob.h | 3 ++- lang/qt/src/importfromkeyserverjob.h | 3 ++- lang/qt/src/importjob.h | 3 ++- lang/qt/src/job.cpp | 3 ++- lang/qt/src/job.h | 3 ++- lang/qt/src/keyformailboxjob.h | 3 ++- lang/qt/src/keygenerationjob.h | 3 ++- lang/qt/src/keylistjob.h | 3 ++- lang/qt/src/listallkeysjob.h | 3 ++- lang/qt/src/multideletejob.h | 3 ++- lang/qt/src/protocol.h | 3 ++- lang/qt/src/protocol_p.h | 3 ++- lang/qt/src/qgpgme_export.h | 3 ++- lang/qt/src/qgpgmeadduseridjob.cpp | 3 ++- lang/qt/src/qgpgmeadduseridjob.h | 3 ++- lang/qt/src/qgpgmebackend.cpp | 3 ++- lang/qt/src/qgpgmebackend.h | 3 ++- lang/qt/src/qgpgmechangeexpiryjob.cpp | 3 ++- lang/qt/src/qgpgmechangeexpiryjob.h | 3 ++- lang/qt/src/qgpgmechangeownertrustjob.cpp | 3 ++- lang/qt/src/qgpgmechangeownertrustjob.h | 3 ++- lang/qt/src/qgpgmechangepasswdjob.cpp | 3 ++- lang/qt/src/qgpgmechangepasswdjob.h | 3 ++- lang/qt/src/qgpgmedecryptjob.cpp | 3 ++- lang/qt/src/qgpgmedecryptjob.h | 3 ++- lang/qt/src/qgpgmedecryptverifyjob.cpp | 3 ++- lang/qt/src/qgpgmedecryptverifyjob.h | 3 ++- lang/qt/src/qgpgmedeletejob.cpp | 3 ++- lang/qt/src/qgpgmedeletejob.h | 3 ++- lang/qt/src/qgpgmedownloadjob.cpp | 3 ++- lang/qt/src/qgpgmedownloadjob.h | 3 ++- lang/qt/src/qgpgmeencryptjob.cpp | 3 ++- lang/qt/src/qgpgmeencryptjob.h | 3 ++- lang/qt/src/qgpgmeexportjob.cpp | 3 ++- lang/qt/src/qgpgmeexportjob.h | 3 ++- lang/qt/src/qgpgmeimportfromkeyserverjob.cpp | 3 ++- lang/qt/src/qgpgmeimportfromkeyserverjob.h | 3 ++- lang/qt/src/qgpgmeimportjob.cpp | 3 ++- lang/qt/src/qgpgmeimportjob.h | 3 ++- lang/qt/src/qgpgmekeyformailboxjob.cpp | 3 ++- lang/qt/src/qgpgmekeyformailboxjob.h | 3 ++- lang/qt/src/qgpgmekeygenerationjob.cpp | 3 ++- lang/qt/src/qgpgmekeygenerationjob.h | 3 ++- lang/qt/src/qgpgmekeylistjob.cpp | 3 ++- lang/qt/src/qgpgmekeylistjob.h | 3 ++- lang/qt/src/qgpgmelistallkeysjob.cpp | 3 ++- lang/qt/src/qgpgmelistallkeysjob.h | 3 ++- lang/qt/src/qgpgmenewcryptoconfig.cpp | 3 ++- lang/qt/src/qgpgmenewcryptoconfig.h | 3 ++- lang/qt/src/qgpgmerefreshkeysjob.cpp | 3 ++- lang/qt/src/qgpgmerefreshkeysjob.h | 3 ++- lang/qt/src/qgpgmesecretkeyexportjob.cpp | 3 ++- lang/qt/src/qgpgmesecretkeyexportjob.h | 3 ++- lang/qt/src/qgpgmesignencryptjob.cpp | 3 ++- lang/qt/src/qgpgmesignencryptjob.h | 3 ++- lang/qt/src/qgpgmesignjob.cpp | 3 ++- lang/qt/src/qgpgmesignjob.h | 3 ++- lang/qt/src/qgpgmesignkeyjob.cpp | 3 ++- lang/qt/src/qgpgmesignkeyjob.h | 3 ++- lang/qt/src/qgpgmetofupolicyjob.cpp | 3 ++- lang/qt/src/qgpgmetofupolicyjob.h | 3 ++- lang/qt/src/qgpgmeverifydetachedjob.cpp | 3 ++- lang/qt/src/qgpgmeverifydetachedjob.h | 3 ++- lang/qt/src/qgpgmeverifyopaquejob.cpp | 3 ++- lang/qt/src/qgpgmeverifyopaquejob.h | 3 ++- lang/qt/src/qgpgmewkspublishjob.cpp | 3 ++- lang/qt/src/qgpgmewkspublishjob.h | 3 ++- lang/qt/src/refreshkeysjob.h | 3 ++- lang/qt/src/signencryptjob.h | 3 ++- lang/qt/src/signjob.h | 3 ++- lang/qt/src/signkeyjob.h | 3 ++- lang/qt/src/specialjob.h | 3 ++- lang/qt/src/threadedjobmixin.cpp | 3 ++- lang/qt/src/threadedjobmixin.h | 3 ++- lang/qt/src/tofupolicyjob.h | 3 ++- lang/qt/src/verifydetachedjob.h | 3 ++- lang/qt/src/verifyopaquejob.h | 3 ++- lang/qt/src/wkspublishjob.h | 3 ++- lang/qt/tests/run-keyformailboxjob.cpp | 3 ++- lang/qt/tests/t-config.cpp | 3 ++- lang/qt/tests/t-encrypt.cpp | 3 ++- lang/qt/tests/t-keylist.cpp | 3 ++- lang/qt/tests/t-keylocate.cpp | 3 ++- lang/qt/tests/t-ownertrust.cpp | 3 ++- lang/qt/tests/t-support.cpp | 3 ++- lang/qt/tests/t-support.h | 3 ++- lang/qt/tests/t-tofuinfo.cpp | 3 ++- lang/qt/tests/t-various.cpp | 3 ++- lang/qt/tests/t-verify.cpp | 3 ++- lang/qt/tests/t-wkspublish.cpp | 3 ++- tests/gpg/t-encrypt-mixed.c | 3 ++- tests/gpg/t-thread-keylist-verify.c | 3 ++- tests/gpg/t-thread-keylist.c | 3 ++- tests/run-decrypt.c | 3 ++- 118 files changed, 236 insertions(+), 118 deletions(-) hooks/post-receive -- GnuPG Made Easy http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 25 13:57:04 2017 From: cvs at cvs.gnupg.org (by Andre Heinecke) Date: Tue, 25 Apr 2017 13:57:04 +0200 Subject: [git] GpgOL - branch, master, updated. gpgol-1.4.0-263-g001abff Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG extension for MS Outlook". The branch, master has been updated via 001abffeed64d8627e896b2e18321991de46041e (commit) via 09e5aa09de3fa3b8615a2a8397255e7156c02a51 (commit) via 6a6b82348beb0eec3463e6375776ad6fc178565b (commit) from c196eb96af3eaa4be611b706739ae66ddcab1831 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 001abffeed64d8627e896b2e18321991de46041e Author: Andre Heinecke Date: Tue Apr 25 13:25:16 2017 +0200 Add missing copyright statements * src/common.c, src/common.h, src/mimemaker.h, src/revert.cpp: Add copyright. -- I've modified more then 30% of theese files in 2015 and 2016 so the copyright statement should reflect that. diff --git a/src/common.c b/src/common.c index 06d0941..47cd772 100644 --- a/src/common.c +++ b/src/common.c @@ -1,5 +1,7 @@ /* common.c - Common routines used by GpgOL * Copyright (C) 2005, 2007, 2008 g10 Code GmbH + * Copyright (C) 2015, 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/common.h b/src/common.h index bed4c19..b703596 100644 --- a/src/common.h +++ b/src/common.h @@ -1,6 +1,8 @@ /* common.h - Common declarations for GpgOL * Copyright (C) 2004 Timo Schulz * Copyright (C) 2005, 2006, 2007, 2008 g10 Code GmbH + * Copyright (C) 2015, 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/mimemaker.h b/src/mimemaker.h index 6c8f819..101f750 100644 --- a/src/mimemaker.h +++ b/src/mimemaker.h @@ -1,5 +1,7 @@ /* mimemaker.h - Construct MIME from MAPI * Copyright (C) 2007, 2008 g10 Code GmbH + * Copyright (C) 2015, 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/revert.cpp b/src/revert.cpp index cdc316b..07fee07 100644 --- a/src/revert.cpp +++ b/src/revert.cpp @@ -1,5 +1,7 @@ /* revert.cpp - Convert messages back to the orignal format * Copyright (C) 2008 g10 Code GmbH + * Copyright (C) 2015, 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * commit 09e5aa09de3fa3b8615a2a8397255e7156c02a51 Author: Andre Heinecke Date: Tue Apr 25 13:23:20 2017 +0200 Unify Copyright header indentation -- This should help avoiding too long lines for the BSI header. diff --git a/src/addin-options.cpp b/src/addin-options.cpp index 11c4d0a..0d8d673 100644 --- a/src/addin-options.cpp +++ b/src/addin-options.cpp @@ -1,6 +1,6 @@ /* addin-options.cpp - Options for the Ol >= 2010 Addin - * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/addin-options.h b/src/addin-options.h index 13cb6d8..bdd46dc 100644 --- a/src/addin-options.h +++ b/src/addin-options.h @@ -1,8 +1,8 @@ #ifndef ADDIN_OPTIONS_H #define ADDIN_OPTIONS_H /* addin-options.cpp - Options for the Ol >= 2010 Addin - * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/application-events.cpp b/src/application-events.cpp index 65e0ecd..c000a86 100644 --- a/src/application-events.cpp +++ b/src/application-events.cpp @@ -1,6 +1,6 @@ /* application-events.cpp - Event handling for the application. - * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/attached-file-events.cpp b/src/attached-file-events.cpp index 94b99a3..657505f 100644 --- a/src/attached-file-events.cpp +++ b/src/attached-file-events.cpp @@ -1,5 +1,5 @@ /* attached-file-events.cpp - GpgolAttachedFileEvents implementation - * Copyright (C) 2005, 2007 g10 Code GmbH + * Copyright (C) 2005, 2007 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/attached-file-events.h b/src/attached-file-events.h index 310e7f2..04f2ff7 100644 --- a/src/attached-file-events.h +++ b/src/attached-file-events.h @@ -1,5 +1,5 @@ /* attached-file-events.h - GpgolAttachedFileEvents definitions. - * Copyright (C) 2005, 2007 g10 Code GmbH + * Copyright (C) 2005, 2007 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/attachment.cpp b/src/attachment.cpp index 844acca..783272c 100644 --- a/src/attachment.cpp +++ b/src/attachment.cpp @@ -1,7 +1,7 @@ /* attachment.cpp - Functions for attachment handling - * Copyright (C) 2005, 2007 g10 Code GmbH - * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2005, 2007 g10 Code GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/attachment.h b/src/attachment.h index 793bdc0..92bcd78 100644 --- a/src/attachment.h +++ b/src/attachment.h @@ -1,7 +1,7 @@ /* attachment.h - Wrapper class for attachments - * Copyright (C) 2005, 2007 g10 Code GmbH - * Copyright (C) 2015, 2016 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2005, 2007 g10 Code GmbH + * Copyright (C) 2015, 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/cmdbarcontrols.cpp b/src/cmdbarcontrols.cpp index b6afa91..759d5dd 100644 --- a/src/cmdbarcontrols.cpp +++ b/src/cmdbarcontrols.cpp @@ -1,5 +1,5 @@ /* cmdbarcontrols.cpp - Code to handle the CommandBarControls - * Copyright (C) 2009 g10 Code GmbH + * Copyright (C) 2009 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/cmdbarcontrols.h b/src/cmdbarcontrols.h index 5d49edb..c0686af 100644 --- a/src/cmdbarcontrols.h +++ b/src/cmdbarcontrols.h @@ -1,5 +1,5 @@ /* cmdbarcontrols.h - Defs to handle the CommandBarControls - * Copyright (C) 2009 g10 Code GmbH + * Copyright (C) 2009 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/common.c b/src/common.c index 777f085..06d0941 100644 --- a/src/common.c +++ b/src/common.c @@ -1,5 +1,5 @@ /* common.c - Common routines used by GpgOL - * Copyright (C) 2005, 2007, 2008 g10 Code GmbH + * Copyright (C) 2005, 2007, 2008 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/common.h b/src/common.h index 796a8f8..bed4c19 100644 --- a/src/common.h +++ b/src/common.h @@ -1,6 +1,6 @@ /* common.h - Common declarations for GpgOL - * Copyright (C) 2004 Timo Schulz - * Copyright (C) 2005, 2006, 2007, 2008 g10 Code GmbH + * Copyright (C) 2004 Timo Schulz + * Copyright (C) 2005, 2006, 2007, 2008 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/common_indep.c b/src/common_indep.c index 8e49320..a3009c7 100644 --- a/src/common_indep.c +++ b/src/common_indep.c @@ -1,7 +1,7 @@ /* common_indep.c - Common, platform indepentent routines used by GpgOL - * Copyright (C) 2005, 2007, 2008 g10 Code GmbH - * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2005, 2007, 2008 g10 Code GmbH + * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/common_indep.h b/src/common_indep.h index 1556db4..1934eac 100644 --- a/src/common_indep.h +++ b/src/common_indep.h @@ -1,9 +1,9 @@ #ifndef COMMON_INDEP_H #define COMMON_INDEP_H /* common_indep.h - Common, platform indepentent routines used by GpgOL - * Copyright (C) 2005, 2007, 2008 g10 Code GmbH - * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2005, 2007, 2008 g10 Code GmbH + * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/config-dialog.c b/src/config-dialog.c index 2f46a8f..14573d2 100644 --- a/src/config-dialog.c +++ b/src/config-dialog.c @@ -1,6 +1,6 @@ /* config-dialog.c - * Copyright (C) 2005, 2008 g10 Code GmbH - * Copyright (C) 2003 Timo Schulz + * Copyright (C) 2005, 2008 g10 Code GmbH + * Copyright (C) 2003 Timo Schulz * * This file is part of GpgOL. * diff --git a/src/display.cpp b/src/display.cpp index ecba56a..be03920 100644 --- a/src/display.cpp +++ b/src/display.cpp @@ -1,5 +1,5 @@ /* display.cpp - Helper functions to display messages. - * Copyright (C) 2005, 2007 g10 Code GmbH + * Copyright (C) 2005, 2007 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/display.h b/src/display.h index 4b77a87..6908690 100644 --- a/src/display.h +++ b/src/display.h @@ -1,5 +1,5 @@ /* display.h - Helper functions for displaying messages. - * Copyright (C) 2005 g10 Code GmbH + * Copyright (C) 2005 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/engine-assuan.c b/src/engine-assuan.c index ac56d53..87036d6 100644 --- a/src/engine-assuan.c +++ b/src/engine-assuan.c @@ -1,5 +1,5 @@ /* engine-assuan.c - Crypto engine using an Assuan server - * Copyright (C) 2007, 2008, 2009, 2010 g10 Code GmbH + * Copyright (C) 2007, 2008, 2009, 2010 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/engine-assuan.h b/src/engine-assuan.h index 237bd85..6785385 100644 --- a/src/engine-assuan.h +++ b/src/engine-assuan.h @@ -1,5 +1,5 @@ /* engine-assuan.h - Assuan server based crypto engine - * Copyright (C) 2007, 2008 g10 Code GmbH + * Copyright (C) 2007, 2008 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/engine.c b/src/engine.c index c96cb62..0a111fd 100644 --- a/src/engine.c +++ b/src/engine.c @@ -1,5 +1,5 @@ /* engine.c - Crypto engine dispatcher - * Copyright (C) 2007, 2008 g10 Code GmbH + * Copyright (C) 2007, 2008 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/engine.h b/src/engine.h index bba50c3..49ab9a8 100644 --- a/src/engine.h +++ b/src/engine.h @@ -1,5 +1,5 @@ /* engine.h - Crypto engine dispatcher - * Copyright (C) 2007 g10 Code GmbH + * Copyright (C) 2007 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/eventsink.h b/src/eventsink.h index a1c6d84..4d81dfe 100644 --- a/src/eventsink.h +++ b/src/eventsink.h @@ -1,7 +1,7 @@ /* eventsink.h - Macros to implement an OLE event sink - * Copyright (C) 2009 g10 Code GmbH - * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2009 g10 Code GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/eventsinks.h b/src/eventsinks.h index 8dab34e..96b067f 100644 --- a/src/eventsinks.h +++ b/src/eventsinks.h @@ -1,6 +1,6 @@ /* eventsinks.h - Declaraion of eventsink installation functions. - * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/exechelp.c b/src/exechelp.c index 0c865a8..acae01d 100644 --- a/src/exechelp.c +++ b/src/exechelp.c @@ -1,7 +1,7 @@ /* exechelp.c - fork and exec helpers * Copyright (C) 2004, 2007, 2014 g10 Code GmbH * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/exechelp.h b/src/exechelp.h index 040dd26..6b62407 100644 --- a/src/exechelp.h +++ b/src/exechelp.h @@ -1,7 +1,7 @@ /* exechelp.h - fork and exec helpers * Copyright (C) 2004, 2007 g10 Code GmbH * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/explorer-events.cpp b/src/explorer-events.cpp index 46105d9..ed599ef 100644 --- a/src/explorer-events.cpp +++ b/src/explorer-events.cpp @@ -1,6 +1,6 @@ /* explorer-events.cpp - Event handling for the application. - * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/explorers-events.cpp b/src/explorers-events.cpp index 07180d0..d56b9a8 100644 --- a/src/explorers-events.cpp +++ b/src/explorers-events.cpp @@ -1,6 +1,6 @@ /* explorer-events.cpp - Event handling for the application. - * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/explorers.cpp b/src/explorers.cpp index 68193bb..77a84cd 100644 --- a/src/explorers.cpp +++ b/src/explorers.cpp @@ -1,5 +1,5 @@ /* explorers.cpp - Code to handle the OOM Explorers - * Copyright (C) 2009 g10 Code GmbH + * Copyright (C) 2009 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/explorers.h b/src/explorers.h index 6e82882..47226e3 100644 --- a/src/explorers.h +++ b/src/explorers.h @@ -1,5 +1,5 @@ /* explorers.h - Defs to handle the OOM Explorers - * Copyright (C) 2009 g10 Code GmbH + * Copyright (C) 2009 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/ext-commands.cpp b/src/ext-commands.cpp index 82f978f..d0bf8f9 100644 --- a/src/ext-commands.cpp +++ b/src/ext-commands.cpp @@ -1,5 +1,5 @@ /* ext-commands.cpp - Subclass impl of IExchExtCommands - * Copyright (C) 2004, 2005, 2007, 2008 g10 Code GmbH + * Copyright (C) 2004, 2005, 2007, 2008 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/ext-commands.h b/src/ext-commands.h index cbc13ee..b828faf 100644 --- a/src/ext-commands.h +++ b/src/ext-commands.h @@ -1,5 +1,5 @@ /* ext-commands.h - Definitions for our subclass of IExchExtCommands - * Copyright (C) 2005, 2007 g10 Code GmbH + * Copyright (C) 2005, 2007 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/gmime-table-private.h b/src/gmime-table-private.h index 75af9f9..6722e95 100644 --- a/src/gmime-table-private.h +++ b/src/gmime-table-private.h @@ -3,7 +3,7 @@ * * This file was copied from GMime rev. 496313fb * - * Copyright (C) 2000-2014 Jeffrey Stedfast + * Copyright (C) 2000-2014 Jeffrey Stedfast * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public License diff --git a/src/gpgoladdin.cpp b/src/gpgoladdin.cpp index bd090e1..0f3d0d9 100644 --- a/src/gpgoladdin.cpp +++ b/src/gpgoladdin.cpp @@ -1,7 +1,7 @@ /* gpgoladdin.cpp - Connect GpgOL to Outlook as an addin - * Copyright (C) 2013 Intevation GmbH + * Copyright (C) 2013 Intevation GmbH * 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/gpgoladdin.h b/src/gpgoladdin.h index 58d71ea..ae7ab22 100644 --- a/src/gpgoladdin.h +++ b/src/gpgoladdin.h @@ -1,7 +1,7 @@ /* gpgoladdin.h - Connect GpgOL to Outlook as an addin - * Copyright (C) 2013 Intevation GmbH + * Copyright (C) 2013 Intevation GmbH * 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/gpgolstr.cpp b/src/gpgolstr.cpp index c962b05..ff00259 100644 --- a/src/gpgolstr.cpp +++ b/src/gpgolstr.cpp @@ -1,6 +1,6 @@ /* gpgolstr.cpp - String helper class for Outlook API. - * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/gpgolstr.h b/src/gpgolstr.h index 53caf5a..197e435 100644 --- a/src/gpgolstr.h +++ b/src/gpgolstr.h @@ -1,6 +1,6 @@ /* gpgolstr.h - String helper class for Outlook API. - * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/guidgen.c b/src/guidgen.c index 9a9cda4..5f3b99d 100644 --- a/src/guidgen.c +++ b/src/guidgen.c @@ -1,5 +1,5 @@ /* guidgen.c - Tool to create GUIDs - * Copyright (C) 2001 g10 Code GmbH + * Copyright (C) 2001 g10 Code GmbH * * This file is part of GPGME. * diff --git a/src/inspectors.cpp b/src/inspectors.cpp index 631839b..1536e94 100644 --- a/src/inspectors.cpp +++ b/src/inspectors.cpp @@ -1,5 +1,5 @@ /* inspectors.cpp - Code to handle OOM Inspectors - * Copyright (C) 2009 g10 Code GmbH + * Copyright (C) 2009 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/inspectors.h b/src/inspectors.h index 95148d8..d033ae2 100644 --- a/src/inspectors.h +++ b/src/inspectors.h @@ -1,5 +1,5 @@ /* inspectors.h - Defs to handle the OOM Inspectors - * Copyright (C) 2009 g10 Code GmbH + * Copyright (C) 2009 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/item-events.cpp b/src/item-events.cpp index 7e1aa39..feaa633 100644 --- a/src/item-events.cpp +++ b/src/item-events.cpp @@ -1,5 +1,5 @@ /* item-events.cpp - GpgolItemEvents implementation - * Copyright (C) 2007 g10 Code GmbH + * Copyright (C) 2007 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/item-events.h b/src/item-events.h index 160895b..a7da42b 100644 --- a/src/item-events.h +++ b/src/item-events.h @@ -1,5 +1,5 @@ /* item-events.h - GpgolItemEvents definitions. - * Copyright (C) 2007 g10 Code GmbH + * Copyright (C) 2007 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/mail.cpp b/src/mail.cpp index a378332..6d694b4 100644 --- a/src/mail.cpp +++ b/src/mail.cpp @@ -1,8 +1,8 @@ /* @file mail.h * @brief High level class to work with Outlook Mailitems. * - * Copyright (C) 2015, 2016 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2015, 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/mail.h b/src/mail.h index fe6a62d..1b94184 100644 --- a/src/mail.h +++ b/src/mail.h @@ -1,8 +1,8 @@ /* @file mail.h * @brief High level class to work with Outlook Mailitems. * - * Copyright (C) 2015, 2016 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2015, 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/mailitem-events.cpp b/src/mailitem-events.cpp index 7c918c8..f9f827b 100644 --- a/src/mailitem-events.cpp +++ b/src/mailitem-events.cpp @@ -1,6 +1,6 @@ /* mailitem-events.h - Event handling for mails. - * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/mailitem.cpp b/src/mailitem.cpp index 817d238..e30535c 100644 --- a/src/mailitem.cpp +++ b/src/mailitem.cpp @@ -1,5 +1,5 @@ /* mailitem.cpp - Code to handle the Outlook MailItem - * Copyright (C) 2009 g10 Code GmbH + * Copyright (C) 2009 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/mailitem.h b/src/mailitem.h index 01063c3..c5af5ab 100644 --- a/src/mailitem.h +++ b/src/mailitem.h @@ -1,5 +1,5 @@ /* mailitem.h - Defs to handle the MailItem - * Copyright (C) 2009 g10 Code GmbH + * Copyright (C) 2009 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/main.c b/src/main.c index 52833f0..008b432 100644 --- a/src/main.c +++ b/src/main.c @@ -1,5 +1,5 @@ /* main.c - DLL entry point - * Copyright (C) 2005, 2007, 2008 g10 Code GmbH + * Copyright (C) 2005, 2007, 2008 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/mapihelp.cpp b/src/mapihelp.cpp index eb23503..908c9c6 100644 --- a/src/mapihelp.cpp +++ b/src/mapihelp.cpp @@ -1,5 +1,5 @@ /* mapihelp.cpp - Helper functions for MAPI - * Copyright (C) 2005, 2007, 2008 g10 Code GmbH + * Copyright (C) 2005, 2007, 2008 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/mapihelp.h b/src/mapihelp.h index 4985d58..93cd63c 100644 --- a/src/mapihelp.h +++ b/src/mapihelp.h @@ -1,5 +1,5 @@ /* mapihelp.h - Helper functions for MAPI - * Copyright (C) 2005, 2007, 2008 g10 Code GmbH + * Copyright (C) 2005, 2007, 2008 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/message-events.cpp b/src/message-events.cpp index 41af63a..61b8c92 100644 --- a/src/message-events.cpp +++ b/src/message-events.cpp @@ -1,5 +1,5 @@ /* message-events.cpp - Subclass impl of IExchExtMessageEvents - * Copyright (C) 2004, 2005, 2007, 2008 g10 Code GmbH + * Copyright (C) 2004, 2005, 2007, 2008 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/message-events.h b/src/message-events.h index 665eb38..7cc2c18 100644 --- a/src/message-events.h +++ b/src/message-events.h @@ -1,5 +1,5 @@ /* message-events.h - Definitions for out subclass of IExchExtMessageEvents - * Copyright (C) 2005, 2007 g10 Code GmbH + * Copyright (C) 2005, 2007 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/message.cpp b/src/message.cpp index aca415e..e794a44 100644 --- a/src/message.cpp +++ b/src/message.cpp @@ -1,5 +1,5 @@ /* message.cpp - Functions for message handling - * Copyright (C) 2006, 2007, 2008 g10 Code GmbH + * Copyright (C) 2006, 2007, 2008 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/message.h b/src/message.h index 5b5b616..979fd5d 100644 --- a/src/message.h +++ b/src/message.h @@ -1,5 +1,5 @@ /* message.h - Declarations for message.c - * Copyright (C) 2007 g10 Code GmbH + * Copyright (C) 2007 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/mimedataprovider.cpp b/src/mimedataprovider.cpp index ca07f45..7e4d712 100644 --- a/src/mimedataprovider.cpp +++ b/src/mimedataprovider.cpp @@ -1,6 +1,6 @@ /* mimedataprover.cpp - GpgME dataprovider for mime data - * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/mimedataprovider.h b/src/mimedataprovider.h index 04dc057..4841d73 100644 --- a/src/mimedataprovider.h +++ b/src/mimedataprovider.h @@ -1,6 +1,6 @@ /* mimedataprover.h - GpgME dataprovider for mime data - * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/mimemaker.cpp b/src/mimemaker.cpp index 91a4729..000d075 100644 --- a/src/mimemaker.cpp +++ b/src/mimemaker.cpp @@ -1,7 +1,7 @@ /* mimemaker.c - Construct MIME message out of a MAPI - * Copyright (C) 2007, 2008 g10 Code GmbH - * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2007, 2008 g10 Code GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/mimemaker.h b/src/mimemaker.h index ee2d83b..6c8f819 100644 --- a/src/mimemaker.h +++ b/src/mimemaker.h @@ -1,5 +1,5 @@ /* mimemaker.h - Construct MIME from MAPI - * Copyright (C) 2007, 2008 g10 Code GmbH + * Copyright (C) 2007, 2008 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/mimeparser.c b/src/mimeparser.c index be5f4a1..db52895 100644 --- a/src/mimeparser.c +++ b/src/mimeparser.c @@ -1,5 +1,5 @@ /* mimeparser.c - Parse multipart MIME message - * Copyright (C) 2005, 2007, 2008, 2009 g10 Code GmbH + * Copyright (C) 2005, 2007, 2008, 2009 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/mimeparser.h b/src/mimeparser.h index 4c00342..3ca4a21 100644 --- a/src/mimeparser.h +++ b/src/mimeparser.h @@ -1,5 +1,5 @@ /* mimeparser.h - MIME parser. - * Copyright (C) 2007, 2008 g10 Code GmbH + * Copyright (C) 2007, 2008 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/mlang-charset.cpp b/src/mlang-charset.cpp index e96a48f..d800893 100644 --- a/src/mlang-charset.cpp +++ b/src/mlang-charset.cpp @@ -1,8 +1,8 @@ /* @file mlang-charset.cpp * @brief Convert between charsets using Mlang * - * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/mlang-charset.h b/src/mlang-charset.h index 466e241..06b0e68 100644 --- a/src/mlang-charset.h +++ b/src/mlang-charset.h @@ -1,8 +1,8 @@ /* @file mlang-charset.h * @brief Convert between charsets using Mlang * - * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/msgcache.c b/src/msgcache.c index bb132b0..fbf77bd 100644 --- a/src/msgcache.c +++ b/src/msgcache.c @@ -1,5 +1,5 @@ /* msgcache.c - Implementation of a message cache. - * Copyright (C) 2005 g10 Code GmbH + * Copyright (C) 2005 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/msgcache.h b/src/msgcache.h index 35e4439..a635f95 100644 --- a/src/msgcache.h +++ b/src/msgcache.h @@ -1,5 +1,5 @@ /* msgcache.h - Interface to the message cache. - * Copyright (C) 2005 g10 Code GmbH + * Copyright (C) 2005 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/mymapi.h b/src/mymapi.h index b176401..a3c7c11 100644 --- a/src/mymapi.h +++ b/src/mymapi.h @@ -3,7 +3,7 @@ * Copyright (C) 2000 Fran?ois Gouget * Copyright (C) 2005, 2007 g10 Code GmbH * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Software engineering by Intevation GmbH * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/src/olflange-def.h b/src/olflange-def.h index 2e05aeb..988c549 100644 --- a/src/olflange-def.h +++ b/src/olflange-def.h @@ -1,5 +1,5 @@ /* olflange-def.h - * Copyright (C) 2005 g10 Code GmbH + * Copyright (C) 2005 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/olflange-dlgs.cpp b/src/olflange-dlgs.cpp index dbd0505..e3f8920 100644 --- a/src/olflange-dlgs.cpp +++ b/src/olflange-dlgs.cpp @@ -1,5 +1,5 @@ /* olflange-dlgs.cpp - New dialogs for Outlook. - * Copyright (C) 2004, 2005, 2006, 2007, 2008 g10 Code GmbH + * Copyright (C) 2004, 2005, 2006, 2007, 2008 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/olflange.cpp b/src/olflange.cpp index 9f51182..0483337 100644 --- a/src/olflange.cpp +++ b/src/olflange.cpp @@ -1,6 +1,6 @@ /* olflange.cpp - Connect GpgOL to Outlook - * Copyright (C) 2001 G Data Software AG, http://www.gdata.de - * Copyright (C) 2004, 2005, 2007, 2008 g10 Code GmbH + * Copyright (C) 2001 G Data Software AG, http://www.gdata.de + * Copyright (C) 2004, 2005, 2007, 2008 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/olflange.h b/src/olflange.h index b4ab534..7601eb6 100644 --- a/src/olflange.h +++ b/src/olflange.h @@ -1,5 +1,5 @@ /* olflange.h - Flange between Outlook and the MapiGPGME class - * Copyright (C) 2005, 2007 g10 Code GmbH + * Copyright (C) 2005, 2007 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/oomhelp.cpp b/src/oomhelp.cpp index 2224eca..8d6f231 100644 --- a/src/oomhelp.cpp +++ b/src/oomhelp.cpp @@ -1,7 +1,7 @@ /* oomhelp.cpp - Helper functions for the Outlook Object Model - * Copyright (C) 2009 g10 Code GmbH - * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2009 g10 Code GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/oomhelp.h b/src/oomhelp.h index e296283..e719b79 100644 --- a/src/oomhelp.h +++ b/src/oomhelp.h @@ -1,7 +1,7 @@ /* oomhelp.h - Defs for helper functions for the Outlook Object Model - * Copyright (C) 2009 g10 Code GmbH - * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2009 g10 Code GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/parsecontroller.cpp b/src/parsecontroller.cpp index 1112365..4fcedb7 100644 --- a/src/parsecontroller.cpp +++ b/src/parsecontroller.cpp @@ -1,8 +1,8 @@ /* @file parsecontroller.cpp * @brief Parse a mail and decrypt / verify accordingly * - * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/parsecontroller.h b/src/parsecontroller.h index 57406d4..d3c67c8 100644 --- a/src/parsecontroller.h +++ b/src/parsecontroller.h @@ -1,8 +1,8 @@ /* @file parsecontroller.h * @brief Controll the parsing and decrypt / verify of a mail * - * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/pgpmime.c b/src/pgpmime.c index 00e58ee..7e48f5f 100644 --- a/src/pgpmime.c +++ b/src/pgpmime.c @@ -1,5 +1,5 @@ /* pgpmime.c - Try to handle PGP/MIME for Outlook - * Copyright (C) 2005 g10 Code GmbH + * Copyright (C) 2005 g10 Code GmbH * * This file is part of Gpgol. * diff --git a/src/pgpmime.h b/src/pgpmime.h index cfea442..5270368 100644 --- a/src/pgpmime.h +++ b/src/pgpmime.h @@ -1,5 +1,5 @@ /* pgpmime.h - PGP/MIME routines for Outlook - * Copyright (C) 2005 g10 Code GmbH + * Copyright (C) 2005 g10 Code GmbH * * This file is part of GPGol. * diff --git a/src/property-sheets.cpp b/src/property-sheets.cpp index 693e952..1b057b6 100644 --- a/src/property-sheets.cpp +++ b/src/property-sheets.cpp @@ -1,5 +1,5 @@ /* property-sheets.cpp - Subclass impl of IExchExtPropertySheets - * Copyright (C) 2004, 2005, 2007 g10 Code GmbH + * Copyright (C) 2004, 2005, 2007 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/property-sheets.h b/src/property-sheets.h index 591227c..423c6da 100644 --- a/src/property-sheets.h +++ b/src/property-sheets.h @@ -1,5 +1,5 @@ /* property-sheets.h - Definitions for our subclass of IExchExtPropertySheets - * Copyright (C) 2005, 2007 g10 Code GmbH + * Copyright (C) 2005, 2007 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/revert.cpp b/src/revert.cpp index d33642b..cdc316b 100644 --- a/src/revert.cpp +++ b/src/revert.cpp @@ -1,5 +1,5 @@ /* revert.cpp - Convert messages back to the orignal format - * Copyright (C) 2008 g10 Code GmbH + * Copyright (C) 2008 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/revert.h b/src/revert.h index 6aa18e0..5ebc921 100644 --- a/src/revert.h +++ b/src/revert.h @@ -1,5 +1,5 @@ /* revert.h - Declarations for revert.cpp. - * Copyright (C) 2008 g10 Code GmbH + * Copyright (C) 2008 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/rfc2047parse.c b/src/rfc2047parse.c index 1012964..17c7f73 100644 --- a/src/rfc2047parse.c +++ b/src/rfc2047parse.c @@ -1,8 +1,8 @@ /* @file rfc2047parse.c * @brief Parsercode for rfc2047 * - * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/rfc2047parse.h b/src/rfc2047parse.h index 2164267..16bd974 100644 --- a/src/rfc2047parse.h +++ b/src/rfc2047parse.h @@ -3,8 +3,8 @@ /* @file rfc2047parse.h * @brief Parser for filenames encoded according to rfc2047 * - * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/rfc822parse.c b/src/rfc822parse.c index d1e3bf2..6df803b 100644 --- a/src/rfc822parse.c +++ b/src/rfc822parse.c @@ -1,6 +1,6 @@ /* rfc822parse.c - Simple mail and MIME parser - * Copyright (C) 1999, 2000 Werner Koch, Duesseldorf - * Copyright (C) 2003, 2004 g10 Code GmbH + * Copyright (C) 1999, 2000 Werner Koch, Duesseldorf + * Copyright (C) 2003, 2004 g10 Code GmbH * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public License diff --git a/src/rfc822parse.h b/src/rfc822parse.h index 9daf525..db8ad37 100644 --- a/src/rfc822parse.h +++ b/src/rfc822parse.h @@ -1,6 +1,6 @@ /* rfc822parse.h - Simple mail and MIME parser - * Copyright (C) 1999 Werner Koch, Duesseldorf - * Copyright (C) 2003, g10 Code GmbH + * Copyright (C) 1999 Werner Koch, Duesseldorf + * Copyright (C) 2003, g10 Code GmbH * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public License diff --git a/src/ribbon-callbacks.cpp b/src/ribbon-callbacks.cpp index 43442c6..68b5134 100644 --- a/src/ribbon-callbacks.cpp +++ b/src/ribbon-callbacks.cpp @@ -1,6 +1,6 @@ /* ribbon-callbacks.h - Callbacks for the ribbon extension interface - * Copyright (C) 2013 Intevation GmbH - * Software engineering by Intevation GmbH + * Copyright (C) 2013 Intevation GmbH + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/ribbon-callbacks.h b/src/ribbon-callbacks.h index c850d77..c6afcc0 100644 --- a/src/ribbon-callbacks.h +++ b/src/ribbon-callbacks.h @@ -1,6 +1,6 @@ /* ribbon-callbacks.h - Callbacks for the ribbon extension interface - * Copyright (C) 2013 Intevation GmbH - * Software engineering by Intevation GmbH + * Copyright (C) 2013 Intevation GmbH + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/serpent.c b/src/serpent.c index 6ebc09e..f4fd0e8 100644 --- a/src/serpent.c +++ b/src/serpent.c @@ -1,5 +1,5 @@ /* serpent.c - Implementation of the Serpent encryption algorithm. - * Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. + * Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. * * This file is part of Libgcrypt. * diff --git a/src/serpent.h b/src/serpent.h index 9f74d56..82ace27 100644 --- a/src/serpent.h +++ b/src/serpent.h @@ -1,5 +1,5 @@ /* serpent.h - Definitions of the Serpent encryption algorithm. - * Copyright (C) 2007 g10 Code GmbH + * Copyright (C) 2007 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/session-events.cpp b/src/session-events.cpp index 1ee67b1..ab24b40 100644 --- a/src/session-events.cpp +++ b/src/session-events.cpp @@ -1,5 +1,5 @@ /* session-events.cpp - Subclass impl of IExchExtSessionEvents - * Copyright (C) 2007 g10 Code GmbH + * Copyright (C) 2007 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/session-events.h b/src/session-events.h index fcc2d72..bd68ab3 100644 --- a/src/session-events.h +++ b/src/session-events.h @@ -1,5 +1,5 @@ /* session-events.h - Definitions for out subclass of IExchExtSessionEvents - * Copyright (C) 2007 g10 Code GmbH + * Copyright (C) 2007 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/user-events.cpp b/src/user-events.cpp index 66b8611..8b122f1 100644 --- a/src/user-events.cpp +++ b/src/user-events.cpp @@ -1,5 +1,5 @@ /* user-events.cpp - Subclass impl of IExchExtUserEvents - * Copyright (C) 2007, 2008 g10 Code GmbH + * Copyright (C) 2007, 2008 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/user-events.h b/src/user-events.h index 1bff7c4..cf791f8 100644 --- a/src/user-events.h +++ b/src/user-events.h @@ -1,5 +1,5 @@ /* user-events.h - Definitions for our subclass of IExchExtUserEvents - * Copyright (C) 2007 g10 Code GmbH + * Copyright (C) 2007 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/watcher.cpp b/src/watcher.cpp index 1a501aa..cb95b67 100644 --- a/src/watcher.cpp +++ b/src/watcher.cpp @@ -1,5 +1,5 @@ /* watcher.cpp - * Copyright (C) 2005 g10 Code GmbH + * Copyright (C) 2005 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/src/windowmessages.cpp b/src/windowmessages.cpp index e9d330e..1741a33 100644 --- a/src/windowmessages.cpp +++ b/src/windowmessages.cpp @@ -1,8 +1,8 @@ /* @file windowmessages.h * @brief Helper class to work with the windowmessage handler thread. * - * Copyright (C) 2015, 2016 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2015, 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/windowmessages.h b/src/windowmessages.h index 2b538e5..281a3b8 100644 --- a/src/windowmessages.h +++ b/src/windowmessages.h @@ -1,6 +1,6 @@ /* windowmessages.h - Helper functions for Window message exchange. - * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/xmalloc.h b/src/xmalloc.h index fb3e26b..d29eb31 100644 --- a/src/xmalloc.h +++ b/src/xmalloc.h @@ -1,5 +1,5 @@ /* xmalloc.h - xmalloc prototypes - * Copyright (C) 2006 g10 Code GmbH + * Copyright (C) 2006 g10 Code GmbH * * This file is part of GpgOL. * diff --git a/tests/run-parser.cpp b/tests/run-parser.cpp index 13d629b..746742b 100644 --- a/tests/run-parser.cpp +++ b/tests/run-parser.cpp @@ -1,6 +1,6 @@ /* run-parser.cpp - Test for gpgOL's parser. - * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/tests/t-parser.cpp b/tests/t-parser.cpp index 8ae6733..4a22979 100644 --- a/tests/t-parser.cpp +++ b/tests/t-parser.cpp @@ -1,6 +1,6 @@ /* t-parser.cpp - Test for gpgOL's parser. - * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik - * Software engineering by Intevation GmbH + * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * commit 6a6b82348beb0eec3463e6375776ad6fc178565b Author: Andre Heinecke Date: Tue Apr 25 13:10:17 2017 +0200 Change copyright from Intevation to BSI * src/Makefile.am, src/addin-options.cpp, src/addin-options.h, src/application-events.cpp, src/attachment.cpp, src/attachment.h, src/common_indep.c, src/common_indep.h, src/eventsink.h, src/eventsinks.h, src/exechelp.c, src/exechelp.h, src/explorer-events.cpp, src/explorers-events.cpp, src/gpgoladdin.cpp, src/gpgoladdin.h, src/gpgolstr.cpp, src/gpgolstr.h, src/icons/Makefile.am, src/mail.cpp, src/mail.h, src/mailitem-events.cpp, src/mimedataprovider.cpp, src/mimedataprovider.h, src/mimemaker.cpp, src/mlang-charset.cpp, src/mlang-charset.h, src/mymapi.h, src/oomhelp.cpp, src/oomhelp.h, src/parsecontroller.cpp, src/parsecontroller.h, src/rfc2047parse.c, src/rfc2047parse.h, src/ribbon-callbacks.cpp, src/ribbon-callbacks.h, src/windowmessages.cpp, src/windowmessages.h, tests/Makefile.am, tests/run-parser.cpp, tests/t-parser.cpp: Change copyright to BSI. -- This should make it more transparent who the copyright holder actually is as most work since 2015 was done under development contracts. diff --git a/src/Makefile.am b/src/Makefile.am index a05f079..961b2a5 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1,6 +1,7 @@ # Makefile.am - makefile for GPGol # Copyright (C) 2005 g10 Code GmbH -# Copyright (C) 2016 Intevation GmbH +# Copyright (C) 2016 Bundesamt f??r Sicherheit in der Informationstechnik +# Software engineering by Intevation GmbH # # This file is free software; as a special exception the author gives # unlimited permission to copy and/or distribute it, with or without diff --git a/src/addin-options.cpp b/src/addin-options.cpp index 0fccd6f..11c4d0a 100644 --- a/src/addin-options.cpp +++ b/src/addin-options.cpp @@ -1,5 +1,6 @@ /* addin-options.cpp - Options for the Ol >= 2010 Addin - * Copyright (C) 2015 Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/addin-options.h b/src/addin-options.h index 27d72fa..13cb6d8 100644 --- a/src/addin-options.h +++ b/src/addin-options.h @@ -1,7 +1,8 @@ #ifndef ADDIN_OPTIONS_H #define ADDIN_OPTIONS_H /* addin-options.cpp - Options for the Ol >= 2010 Addin - * Copyright (C) 2015 Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/application-events.cpp b/src/application-events.cpp index 7835733..65e0ecd 100644 --- a/src/application-events.cpp +++ b/src/application-events.cpp @@ -1,5 +1,6 @@ /* application-events.cpp - Event handling for the application. - * Copyright (C) 2015 Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/attachment.cpp b/src/attachment.cpp index d5961cf..844acca 100644 --- a/src/attachment.cpp +++ b/src/attachment.cpp @@ -1,6 +1,7 @@ /* attachment.cpp - Functions for attachment handling * Copyright (C) 2005, 2007 g10 Code GmbH - * Copyright (C) 2015 Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/attachment.h b/src/attachment.h index de75935..793bdc0 100644 --- a/src/attachment.h +++ b/src/attachment.h @@ -1,6 +1,7 @@ /* attachment.h - Wrapper class for attachments * Copyright (C) 2005, 2007 g10 Code GmbH - * Copyright (C) 2015, 2016 Intevation GmbH + * Copyright (C) 2015, 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/common_indep.c b/src/common_indep.c index ba7b0ed..8e49320 100644 --- a/src/common_indep.c +++ b/src/common_indep.c @@ -1,6 +1,7 @@ /* common_indep.c - Common, platform indepentent routines used by GpgOL * Copyright (C) 2005, 2007, 2008 g10 Code GmbH - * Copyright (C) 2016 Intevation GmbH + * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/common_indep.h b/src/common_indep.h index 7eca780..1556db4 100644 --- a/src/common_indep.h +++ b/src/common_indep.h @@ -2,7 +2,8 @@ #define COMMON_INDEP_H /* common_indep.h - Common, platform indepentent routines used by GpgOL * Copyright (C) 2005, 2007, 2008 g10 Code GmbH - * Copyright (C) 2016 Intevation GmbH + * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/eventsink.h b/src/eventsink.h index 3eb900c..a1c6d84 100644 --- a/src/eventsink.h +++ b/src/eventsink.h @@ -1,6 +1,7 @@ /* eventsink.h - Macros to implement an OLE event sink * Copyright (C) 2009 g10 Code GmbH - * Copyright (C) 2015 Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/eventsinks.h b/src/eventsinks.h index 82f618d..8dab34e 100644 --- a/src/eventsinks.h +++ b/src/eventsinks.h @@ -1,5 +1,6 @@ /* eventsinks.h - Declaraion of eventsink installation functions. - * Copyright (C) 2015 Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/exechelp.c b/src/exechelp.c index dc01c0a..0c865a8 100644 --- a/src/exechelp.c +++ b/src/exechelp.c @@ -1,6 +1,7 @@ /* exechelp.c - fork and exec helpers * Copyright (C) 2004, 2007, 2014 g10 Code GmbH - * Copyright (C) 2015 Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/exechelp.h b/src/exechelp.h index 5f4c9f4..040dd26 100644 --- a/src/exechelp.h +++ b/src/exechelp.h @@ -1,6 +1,7 @@ /* exechelp.h - fork and exec helpers * Copyright (C) 2004, 2007 g10 Code GmbH - * Copyright (C) 2015 Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/explorer-events.cpp b/src/explorer-events.cpp index 4f14ef4..46105d9 100644 --- a/src/explorer-events.cpp +++ b/src/explorer-events.cpp @@ -1,5 +1,6 @@ /* explorer-events.cpp - Event handling for the application. - * Copyright (C) 2016 Intevation GmbH + * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/explorers-events.cpp b/src/explorers-events.cpp index 663a5a9..07180d0 100644 --- a/src/explorers-events.cpp +++ b/src/explorers-events.cpp @@ -1,5 +1,6 @@ /* explorer-events.cpp - Event handling for the application. - * Copyright (C) 2016 Intevation GmbH + * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/gpgoladdin.cpp b/src/gpgoladdin.cpp index 3968487..bd090e1 100644 --- a/src/gpgoladdin.cpp +++ b/src/gpgoladdin.cpp @@ -1,5 +1,7 @@ /* gpgoladdin.cpp - Connect GpgOL to Outlook as an addin - * Copyright (C) 2013, 2015 Intevation GmbH + * Copyright (C) 2013 Intevation GmbH + * 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/gpgoladdin.h b/src/gpgoladdin.h index 316bbaf..58d71ea 100644 --- a/src/gpgoladdin.h +++ b/src/gpgoladdin.h @@ -1,5 +1,7 @@ /* gpgoladdin.h - Connect GpgOL to Outlook as an addin - * Copyright (C) 2013, 2015 Intevation GmbH + * Copyright (C) 2013 Intevation GmbH + * 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/gpgolstr.cpp b/src/gpgolstr.cpp index 9c5ec28..c962b05 100644 --- a/src/gpgolstr.cpp +++ b/src/gpgolstr.cpp @@ -1,5 +1,6 @@ /* gpgolstr.cpp - String helper class for Outlook API. - * Copyright (C) 2015 Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/gpgolstr.h b/src/gpgolstr.h index 5bd6d26..53caf5a 100644 --- a/src/gpgolstr.h +++ b/src/gpgolstr.h @@ -1,5 +1,6 @@ /* gpgolstr.h - String helper class for Outlook API. - * Copyright (C) 2015 Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/icons/Makefile.am b/src/icons/Makefile.am index 8b7908f..71cf74c 100644 --- a/src/icons/Makefile.am +++ b/src/icons/Makefile.am @@ -1,5 +1,6 @@ # Makefile.am - makefile for GPGol icons -# Copyright (C) 2016 Intevation GmbH +# Copyright (C) 2016 Bundesamt f??r Sicherheit in der Informationstechnik +# Software engineering by Intevation GmbH # # This file is free software; as a special exception the author gives # unlimited permission to copy and/or distribute it, with or without diff --git a/src/mail.cpp b/src/mail.cpp index 5e0a167..a378332 100644 --- a/src/mail.cpp +++ b/src/mail.cpp @@ -1,7 +1,8 @@ /* @file mail.h * @brief High level class to work with Outlook Mailitems. * - * Copyright (C) 2015, 2016 Intevation GmbH + * Copyright (C) 2015, 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/mail.h b/src/mail.h index b61569c..fe6a62d 100644 --- a/src/mail.h +++ b/src/mail.h @@ -1,7 +1,8 @@ /* @file mail.h * @brief High level class to work with Outlook Mailitems. * - * Copyright (C) 2015, 2016 Intevation GmbH + * Copyright (C) 2015, 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/mailitem-events.cpp b/src/mailitem-events.cpp index e23242a..7c918c8 100644 --- a/src/mailitem-events.cpp +++ b/src/mailitem-events.cpp @@ -1,5 +1,6 @@ /* mailitem-events.h - Event handling for mails. - * Copyright (C) 2015 Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/mimedataprovider.cpp b/src/mimedataprovider.cpp index 9ae3e2d..ca07f45 100644 --- a/src/mimedataprovider.cpp +++ b/src/mimedataprovider.cpp @@ -1,5 +1,6 @@ /* mimedataprover.cpp - GpgME dataprovider for mime data - * Copyright (C) 2016 Intevation GmbH + * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/mimedataprovider.h b/src/mimedataprovider.h index 83961ff..04dc057 100644 --- a/src/mimedataprovider.h +++ b/src/mimedataprovider.h @@ -1,5 +1,6 @@ /* mimedataprover.h - GpgME dataprovider for mime data - * Copyright (C) 2016 Intevation GmbH + * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/mimemaker.cpp b/src/mimemaker.cpp index 58bb0d4..91a4729 100644 --- a/src/mimemaker.cpp +++ b/src/mimemaker.cpp @@ -1,6 +1,7 @@ /* mimemaker.c - Construct MIME message out of a MAPI * Copyright (C) 2007, 2008 g10 Code GmbH - * Copyright (C) 2015 Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/mlang-charset.cpp b/src/mlang-charset.cpp index 016fb61..e96a48f 100644 --- a/src/mlang-charset.cpp +++ b/src/mlang-charset.cpp @@ -1,7 +1,8 @@ /* @file mlang-charset.cpp * @brief Convert between charsets using Mlang * - * Copyright (C) 2015 Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/mlang-charset.h b/src/mlang-charset.h index d912c55..466e241 100644 --- a/src/mlang-charset.h +++ b/src/mlang-charset.h @@ -1,7 +1,8 @@ /* @file mlang-charset.h * @brief Convert between charsets using Mlang * - * Copyright (C) 2015 Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/mymapi.h b/src/mymapi.h index 7b84d6c..b176401 100644 --- a/src/mymapi.h +++ b/src/mymapi.h @@ -2,7 +2,8 @@ * Copyright (C) 1998 Justin Bradford * Copyright (C) 2000 Fran?ois Gouget * Copyright (C) 2005, 2007 g10 Code GmbH - * Copyright (C) 2015 Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/src/oomhelp.cpp b/src/oomhelp.cpp index 85d1c46..2224eca 100644 --- a/src/oomhelp.cpp +++ b/src/oomhelp.cpp @@ -1,6 +1,7 @@ /* oomhelp.cpp - Helper functions for the Outlook Object Model * Copyright (C) 2009 g10 Code GmbH - * Copyright (C) 2015 Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/oomhelp.h b/src/oomhelp.h index 3c94c3b..e296283 100644 --- a/src/oomhelp.h +++ b/src/oomhelp.h @@ -1,6 +1,7 @@ /* oomhelp.h - Defs for helper functions for the Outlook Object Model * Copyright (C) 2009 g10 Code GmbH - * Copyright (C) 2015 Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/parsecontroller.cpp b/src/parsecontroller.cpp index f15e741..1112365 100644 --- a/src/parsecontroller.cpp +++ b/src/parsecontroller.cpp @@ -1,7 +1,8 @@ /* @file parsecontroller.cpp * @brief Parse a mail and decrypt / verify accordingly * - * Copyright (C) 2016 Intevation GmbH + * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/parsecontroller.h b/src/parsecontroller.h index 14a4878..57406d4 100644 --- a/src/parsecontroller.h +++ b/src/parsecontroller.h @@ -1,7 +1,8 @@ /* @file parsecontroller.h * @brief Controll the parsing and decrypt / verify of a mail * - * Copyright (C) 2016 Intevation GmbH + * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/rfc2047parse.c b/src/rfc2047parse.c index afa0c53..1012964 100644 --- a/src/rfc2047parse.c +++ b/src/rfc2047parse.c @@ -1,7 +1,8 @@ /* @file rfc2047parse.c * @brief Parsercode for rfc2047 * - * Copyright (C) 2015 Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/rfc2047parse.h b/src/rfc2047parse.h index f5c9af5..2164267 100644 --- a/src/rfc2047parse.h +++ b/src/rfc2047parse.h @@ -3,7 +3,8 @@ /* @file rfc2047parse.h * @brief Parser for filenames encoded according to rfc2047 * - * Copyright (C) 2015 Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/ribbon-callbacks.cpp b/src/ribbon-callbacks.cpp index 0a5ab5a..43442c6 100644 --- a/src/ribbon-callbacks.cpp +++ b/src/ribbon-callbacks.cpp @@ -1,5 +1,6 @@ /* ribbon-callbacks.h - Callbacks for the ribbon extension interface * Copyright (C) 2013 Intevation GmbH + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/ribbon-callbacks.h b/src/ribbon-callbacks.h index b131481..c850d77 100644 --- a/src/ribbon-callbacks.h +++ b/src/ribbon-callbacks.h @@ -1,5 +1,6 @@ /* ribbon-callbacks.h - Callbacks for the ribbon extension interface * Copyright (C) 2013 Intevation GmbH + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/windowmessages.cpp b/src/windowmessages.cpp index a4bf62c..e9d330e 100644 --- a/src/windowmessages.cpp +++ b/src/windowmessages.cpp @@ -1,7 +1,8 @@ /* @file windowmessages.h * @brief Helper class to work with the windowmessage handler thread. * - * Copyright (C) 2015, 2016 Intevation GmbH + * Copyright (C) 2015, 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/src/windowmessages.h b/src/windowmessages.h index 4dbd711..2b538e5 100644 --- a/src/windowmessages.h +++ b/src/windowmessages.h @@ -1,5 +1,6 @@ /* windowmessages.h - Helper functions for Window message exchange. - * Copyright (C) 2015 Intevation GmbH + * Copyright (C) 2015 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/tests/Makefile.am b/tests/Makefile.am index 8df8d27..bb4a5a6 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -1,5 +1,6 @@ # Makefile.am - Makefile for GpgOL tests. -# Copyright (C) 2016 Intevation GmbH +# Copyright (C) 2016 Bundesamt f??r Sicherheit in der Informationstechnik +# Software engineering by Intevation GmbH # # This file is part of GPGOL. # diff --git a/tests/run-parser.cpp b/tests/run-parser.cpp index 49c9226..13d629b 100644 --- a/tests/run-parser.cpp +++ b/tests/run-parser.cpp @@ -1,5 +1,6 @@ /* run-parser.cpp - Test for gpgOL's parser. - * Copyright (C) 2016 Intevation GmbH + * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * diff --git a/tests/t-parser.cpp b/tests/t-parser.cpp index 0c06636..8ae6733 100644 --- a/tests/t-parser.cpp +++ b/tests/t-parser.cpp @@ -1,5 +1,6 @@ /* t-parser.cpp - Test for gpgOL's parser. - * Copyright (C) 2016 Intevation GmbH + * Copyright (C) 2016 by Bundesamt f??r Sicherheit in der Informationstechnik + * Software engineering by Intevation GmbH * * This file is part of GpgOL. * ----------------------------------------------------------------------- Summary of changes: src/Makefile.am | 3 ++- src/addin-options.cpp | 3 ++- src/addin-options.h | 3 ++- src/application-events.cpp | 3 ++- src/attached-file-events.cpp | 2 +- src/attached-file-events.h | 2 +- src/attachment.cpp | 5 +++-- src/attachment.h | 5 +++-- src/cmdbarcontrols.cpp | 2 +- src/cmdbarcontrols.h | 2 +- src/common.c | 4 +++- src/common.h | 6 ++++-- src/common_indep.c | 5 +++-- src/common_indep.h | 5 +++-- src/config-dialog.c | 4 ++-- src/display.cpp | 2 +- src/display.h | 2 +- src/engine-assuan.c | 2 +- src/engine-assuan.h | 2 +- src/engine.c | 2 +- src/engine.h | 2 +- src/eventsink.h | 5 +++-- src/eventsinks.h | 3 ++- src/exechelp.c | 3 ++- src/exechelp.h | 3 ++- src/explorer-events.cpp | 3 ++- src/explorers-events.cpp | 3 ++- src/explorers.cpp | 2 +- src/explorers.h | 2 +- src/ext-commands.cpp | 2 +- src/ext-commands.h | 2 +- src/gmime-table-private.h | 2 +- src/gpgoladdin.cpp | 4 +++- src/gpgoladdin.h | 4 +++- src/gpgolstr.cpp | 3 ++- src/gpgolstr.h | 3 ++- src/guidgen.c | 2 +- src/icons/Makefile.am | 3 ++- src/inspectors.cpp | 2 +- src/inspectors.h | 2 +- src/item-events.cpp | 2 +- src/item-events.h | 2 +- src/mail.cpp | 3 ++- src/mail.h | 3 ++- src/mailitem-events.cpp | 3 ++- src/mailitem.cpp | 2 +- src/mailitem.h | 2 +- src/main.c | 2 +- src/mapihelp.cpp | 2 +- src/mapihelp.h | 2 +- src/message-events.cpp | 2 +- src/message-events.h | 2 +- src/message.cpp | 2 +- src/message.h | 2 +- src/mimedataprovider.cpp | 3 ++- src/mimedataprovider.h | 3 ++- src/mimemaker.cpp | 5 +++-- src/mimemaker.h | 4 +++- src/mimeparser.c | 2 +- src/mimeparser.h | 2 +- src/mlang-charset.cpp | 3 ++- src/mlang-charset.h | 3 ++- src/msgcache.c | 2 +- src/msgcache.h | 2 +- src/mymapi.h | 3 ++- src/olflange-def.h | 2 +- src/olflange-dlgs.cpp | 2 +- src/olflange.cpp | 4 ++-- src/olflange.h | 2 +- src/oomhelp.cpp | 5 +++-- src/oomhelp.h | 5 +++-- src/parsecontroller.cpp | 3 ++- src/parsecontroller.h | 3 ++- src/pgpmime.c | 2 +- src/pgpmime.h | 2 +- src/property-sheets.cpp | 2 +- src/property-sheets.h | 2 +- src/revert.cpp | 4 +++- src/revert.h | 2 +- src/rfc2047parse.c | 3 ++- src/rfc2047parse.h | 3 ++- src/rfc822parse.c | 4 ++-- src/rfc822parse.h | 4 ++-- src/ribbon-callbacks.cpp | 3 ++- src/ribbon-callbacks.h | 3 ++- src/serpent.c | 2 +- src/serpent.h | 2 +- src/session-events.cpp | 2 +- src/session-events.h | 2 +- src/user-events.cpp | 2 +- src/user-events.h | 2 +- src/watcher.cpp | 2 +- src/windowmessages.cpp | 3 ++- src/windowmessages.h | 3 ++- src/xmalloc.h | 2 +- tests/Makefile.am | 3 ++- tests/run-parser.cpp | 3 ++- tests/t-parser.cpp | 3 ++- 98 files changed, 162 insertions(+), 111 deletions(-) hooks/post-receive -- GnuPG extension for MS Outlook http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 25 13:58:02 2017 From: cvs at cvs.gnupg.org (by Andre Heinecke) Date: Tue, 25 Apr 2017 13:58:02 +0200 Subject: [git] GPGME - branch, master, updated. gpgme-1.9.0-30-g2873424 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG Made Easy". The branch, master has been updated via 28734240e2a2ce67b64df55364f35e1648376311 (commit) from 70035834326d0d04a5904ae01bc3757e577facf4 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 28734240e2a2ce67b64df55364f35e1648376311 Author: Andre Heinecke Date: Tue Apr 25 13:03:49 2017 +0200 qt, cpp: Add additional copyright BSI notes * lang/cpp/Makefile.am, lang/cpp/src/Makefile.am, lang/cpp/src/callbacks.cpp, lang/cpp/src/callbacks.h, lang/cpp/src/configuration.cpp, lang/cpp/src/configuration.h, lang/cpp/src/context_glib.cpp, lang/cpp/src/context_p.h, lang/cpp/src/context_qt.cpp, lang/cpp/src/context_vanilla.cpp, lang/cpp/src/data_p.h, lang/cpp/src/decryptionresult.cpp, lang/cpp/src/decryptionresult.h, lang/cpp/src/defaultassuantransaction.cpp, lang/cpp/src/defaultassuantransaction.h, lang/cpp/src/editinteractor.cpp, lang/cpp/src/editinteractor.h, lang/cpp/src/encryptionresult.cpp, lang/cpp/src/encryptionresult.h, lang/cpp/src/engineinfo.cpp, lang/cpp/src/engineinfo.h, lang/cpp/src/error.h, lang/cpp/src/eventloopinteractor.cpp, lang/cpp/src/eventloopinteractor.h, lang/cpp/src/exception.cpp, lang/cpp/src/exception.h, lang/cpp/src/global.h, lang/cpp/src/gpgadduserideditinteractor.cpp, lang/cpp/src/gpgadduserideditinteractor.h, lang/cpp/src/gpgagentgetinfoassuantransaction.cpp, lang/cpp/src/gpgagentgetinfoassuantransaction.h, lang/cpp/src/gpgmefw.h, lang/cpp/src/gpgsetexpirytimeeditinteractor.cpp, lang/cpp/src/gpgsetexpirytimeeditinteractor.h, lang/cpp/src/gpgsetownertrusteditinteractor.cpp, lang/cpp/src/gpgsetownertrusteditinteractor.h, lang/cpp/src/gpgsignkeyeditinteractor.cpp, lang/cpp/src/gpgsignkeyeditinteractor.h, lang/cpp/src/importresult.cpp, lang/cpp/src/importresult.h, lang/cpp/src/interfaces/assuantransaction.h, lang/cpp/src/interfaces/dataprovider.h, lang/cpp/src/interfaces/passphraseprovider.h, lang/cpp/src/interfaces/progressprovider.h, lang/cpp/src/keygenerationresult.cpp, lang/cpp/src/keygenerationresult.h, lang/cpp/src/keylistresult.cpp, lang/cpp/src/keylistresult.h, lang/cpp/src/notation.h, lang/cpp/src/result.h, lang/cpp/src/result_p.h, lang/cpp/src/scdgetinfoassuantransaction.cpp, lang/cpp/src/scdgetinfoassuantransaction.h, lang/cpp/src/signingresult.cpp, lang/cpp/src/signingresult.h, lang/cpp/src/trustitem.cpp, lang/cpp/src/trustitem.h, lang/cpp/src/util.h, lang/cpp/src/verificationresult.cpp, lang/cpp/src/verificationresult.h, lang/cpp/src/vfsmountresult.cpp, lang/qt/Makefile.am, lang/qt/doc/Makefile.am, lang/qt/src/Makefile.am, lang/qt/src/defaultkeygenerationjob.h, lang/qt/tests/Makefile.am: Add missing copyright. -- Moving the qt / cpp bindings into GPGME contained global changes that modified nearly every source file. To reflect that the copyright year / note should also be updated. diff --git a/lang/cpp/Makefile.am b/lang/cpp/Makefile.am index 7fbaca8..026ca00 100644 --- a/lang/cpp/Makefile.am +++ b/lang/cpp/Makefile.am @@ -1,5 +1,6 @@ # Makefile.am for GPGMEPP. -# Copyright (C) 2016 Intevation GmbH +# Copyright (C) 2016 Bundesamt f?r Sicherheit in der Informationstechnik +# Software engineering by Intevation GmbH # # This file is part of GPGMEPP. # diff --git a/lang/cpp/src/Makefile.am b/lang/cpp/src/Makefile.am index 4028b3d..1e6bdc2 100644 --- a/lang/cpp/src/Makefile.am +++ b/lang/cpp/src/Makefile.am @@ -1,5 +1,6 @@ # Makefile.am for GPGMEPP. -# Copyright (C) 2016 Intevation GmbH +# Copyright (C) 2016 Bundesamt f?r Sicherheit in der Informationstechnik +# Software engineering by Intevation GmbH # # This file is part of GPGMEPP. # diff --git a/lang/cpp/src/callbacks.cpp b/lang/cpp/src/callbacks.cpp index 3631c53..f7692a0 100644 --- a/lang/cpp/src/callbacks.cpp +++ b/lang/cpp/src/callbacks.cpp @@ -1,6 +1,8 @@ /* callbacks.cpp - callback targets for internal use: Copyright (C) 2003,2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/callbacks.h b/lang/cpp/src/callbacks.h index 4206637..a2c6e1b 100644 --- a/lang/cpp/src/callbacks.h +++ b/lang/cpp/src/callbacks.h @@ -1,6 +1,8 @@ /* callbacks.h - callback targets for internal use: Copyright (C) 2003 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/configuration.cpp b/lang/cpp/src/configuration.cpp index 293746a..8ccc05e 100644 --- a/lang/cpp/src/configuration.cpp +++ b/lang/cpp/src/configuration.cpp @@ -1,6 +1,8 @@ /* configuration.cpp - wraps gpgme configuration components Copyright (C) 2010 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/configuration.h b/lang/cpp/src/configuration.h index 288a410..6717ea3 100644 --- a/lang/cpp/src/configuration.h +++ b/lang/cpp/src/configuration.h @@ -1,6 +1,8 @@ /* configuration.h - wraps gpgme configuration components Copyright (C) 2010 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/context_glib.cpp b/lang/cpp/src/context_glib.cpp index 14093bf..db607aa 100644 --- a/lang/cpp/src/context_glib.cpp +++ b/lang/cpp/src/context_glib.cpp @@ -1,6 +1,8 @@ /* context_glib.cpp - wraps a gpgme key context, gpgme-glib-specific functions Copyright (C) 2007 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/context_p.h b/lang/cpp/src/context_p.h index d53da0a..6b0a080 100644 --- a/lang/cpp/src/context_p.h +++ b/lang/cpp/src/context_p.h @@ -1,6 +1,8 @@ /* context_p.h - wraps a gpgme context (private part) Copyright (C) 2003, 2007 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/context_qt.cpp b/lang/cpp/src/context_qt.cpp index 5d716c5..e6d1f02 100644 --- a/lang/cpp/src/context_qt.cpp +++ b/lang/cpp/src/context_qt.cpp @@ -1,6 +1,8 @@ /* context_qt.cpp - wraps a gpgme key context, gpgme-qt-specific functions Copyright (C) 2007 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/context_vanilla.cpp b/lang/cpp/src/context_vanilla.cpp index 77a488a..60ddea2 100644 --- a/lang/cpp/src/context_vanilla.cpp +++ b/lang/cpp/src/context_vanilla.cpp @@ -1,6 +1,8 @@ /* context_vanilla.cpp - wraps a gpgme key context, gpgme (vanilla)-specific functions Copyright (C) 2007 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/data_p.h b/lang/cpp/src/data_p.h index 38ba55a..493b754 100644 --- a/lang/cpp/src/data_p.h +++ b/lang/cpp/src/data_p.h @@ -1,6 +1,8 @@ /* data_p.h - wraps a gpgme data object, private part -*- c++ -*- Copyright (C) 2003,2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/decryptionresult.cpp b/lang/cpp/src/decryptionresult.cpp index f59d24c..05f7e75 100644 --- a/lang/cpp/src/decryptionresult.cpp +++ b/lang/cpp/src/decryptionresult.cpp @@ -1,6 +1,8 @@ /* decryptionresult.cpp - wraps a gpgme keygen result Copyright (C) 2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/decryptionresult.h b/lang/cpp/src/decryptionresult.h index 60b78d9..cd3ab7c 100644 --- a/lang/cpp/src/decryptionresult.h +++ b/lang/cpp/src/decryptionresult.h @@ -1,6 +1,8 @@ /* decryptionresult.h - wraps a gpgme keygen result Copyright (C) 2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/defaultassuantransaction.cpp b/lang/cpp/src/defaultassuantransaction.cpp index 549092d..2184f04 100644 --- a/lang/cpp/src/defaultassuantransaction.cpp +++ b/lang/cpp/src/defaultassuantransaction.cpp @@ -1,6 +1,8 @@ /* defaultassuantransaction.cpp - default Assuan Transaction that just stores data and status lines Copyright (C) 2009 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/defaultassuantransaction.h b/lang/cpp/src/defaultassuantransaction.h index bf4b839..f294ffe 100644 --- a/lang/cpp/src/defaultassuantransaction.h +++ b/lang/cpp/src/defaultassuantransaction.h @@ -1,6 +1,8 @@ /* defaultassuantransaction.h - default Assuan Transaction that just stores data and status lines Copyright (C) 2009 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/editinteractor.cpp b/lang/cpp/src/editinteractor.cpp index b652bda..3e29488 100644 --- a/lang/cpp/src/editinteractor.cpp +++ b/lang/cpp/src/editinteractor.cpp @@ -1,6 +1,8 @@ /* editinteractor.cpp - Interface for edit interactors Copyright (C) 2007 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/editinteractor.h b/lang/cpp/src/editinteractor.h index 2122052..247bf8c 100644 --- a/lang/cpp/src/editinteractor.h +++ b/lang/cpp/src/editinteractor.h @@ -1,6 +1,8 @@ /* editinteractor.h - Interface for edit interactors Copyright (C) 2007 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/encryptionresult.cpp b/lang/cpp/src/encryptionresult.cpp index b4298d7..33365cd 100644 --- a/lang/cpp/src/encryptionresult.cpp +++ b/lang/cpp/src/encryptionresult.cpp @@ -1,6 +1,8 @@ /* encryptionresult.cpp - wraps a gpgme verify result Copyright (C) 2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/encryptionresult.h b/lang/cpp/src/encryptionresult.h index edc400f..312dfec 100644 --- a/lang/cpp/src/encryptionresult.h +++ b/lang/cpp/src/encryptionresult.h @@ -1,6 +1,8 @@ /* encryptionresult.h - wraps a gpgme sign result Copyright (C) 2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/engineinfo.cpp b/lang/cpp/src/engineinfo.cpp index 763aab9..1a66ced 100644 --- a/lang/cpp/src/engineinfo.cpp +++ b/lang/cpp/src/engineinfo.cpp @@ -1,6 +1,8 @@ /* engineinfo.h Copyright (C) 2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/engineinfo.h b/lang/cpp/src/engineinfo.h index aa6fcca..b216de8 100644 --- a/lang/cpp/src/engineinfo.h +++ b/lang/cpp/src/engineinfo.h @@ -1,6 +1,8 @@ /* engineinfo.h Copyright (C) 2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/error.h b/lang/cpp/src/error.h index 009fe20..d136704 100644 --- a/lang/cpp/src/error.h +++ b/lang/cpp/src/error.h @@ -1,6 +1,8 @@ /* error.h - wraps a gpgme error Copyright (C) 2003, 2007 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/eventloopinteractor.cpp b/lang/cpp/src/eventloopinteractor.cpp index 7faa50c..a30b793 100644 --- a/lang/cpp/src/eventloopinteractor.cpp +++ b/lang/cpp/src/eventloopinteractor.cpp @@ -1,6 +1,8 @@ /* eventloopinteractor.cpp Copyright (C) 2003,2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/eventloopinteractor.h b/lang/cpp/src/eventloopinteractor.h index 94821d6..79f6b63 100644 --- a/lang/cpp/src/eventloopinteractor.h +++ b/lang/cpp/src/eventloopinteractor.h @@ -1,6 +1,8 @@ /* eventloopinteractor.h Copyright (C) 2003,2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/exception.cpp b/lang/cpp/src/exception.cpp index cf42f91..7751c3e 100644 --- a/lang/cpp/src/exception.cpp +++ b/lang/cpp/src/exception.cpp @@ -1,6 +1,8 @@ /* exception.cpp - exception wrapping a gpgme error Copyright (C) 2007 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/exception.h b/lang/cpp/src/exception.h index 8f40b0e..85169d8 100644 --- a/lang/cpp/src/exception.h +++ b/lang/cpp/src/exception.h @@ -1,6 +1,8 @@ /* exception.h - exception wrapping a gpgme error Copyright (C) 2007 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/global.h b/lang/cpp/src/global.h index 15cc027..38cfd4c 100644 --- a/lang/cpp/src/global.h +++ b/lang/cpp/src/global.h @@ -1,6 +1,8 @@ /* global.h - global gpgme functions and enums Copyright (C) 2003, 2007 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/gpgadduserideditinteractor.cpp b/lang/cpp/src/gpgadduserideditinteractor.cpp index f7851a5..593ac58 100644 --- a/lang/cpp/src/gpgadduserideditinteractor.cpp +++ b/lang/cpp/src/gpgadduserideditinteractor.cpp @@ -1,6 +1,8 @@ /* gpgadduserideditinteractor.cpp - Edit Interactor to add a new UID to an OpenPGP key Copyright (C) 2008 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/gpgadduserideditinteractor.h b/lang/cpp/src/gpgadduserideditinteractor.h index 12b6e46..10cac08 100644 --- a/lang/cpp/src/gpgadduserideditinteractor.h +++ b/lang/cpp/src/gpgadduserideditinteractor.h @@ -1,6 +1,8 @@ /* gpgadduserideditinteractor.h - Edit Interactor to add a new UID to an OpenPGP key Copyright (C) 2008 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/gpgagentgetinfoassuantransaction.cpp b/lang/cpp/src/gpgagentgetinfoassuantransaction.cpp index 4b30b31..a05ff96 100644 --- a/lang/cpp/src/gpgagentgetinfoassuantransaction.cpp +++ b/lang/cpp/src/gpgagentgetinfoassuantransaction.cpp @@ -1,6 +1,8 @@ /* gpgagentgetinfoassuantransaction.cpp - Assuan Transaction to get information from gpg-agent Copyright (C) 2009 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/gpgagentgetinfoassuantransaction.h b/lang/cpp/src/gpgagentgetinfoassuantransaction.h index 9e3e958..1bc5016 100644 --- a/lang/cpp/src/gpgagentgetinfoassuantransaction.h +++ b/lang/cpp/src/gpgagentgetinfoassuantransaction.h @@ -1,6 +1,8 @@ /* gpgagentgetinfoassuantransaction.h - Assuan Transaction to get information from gpg-agent Copyright (C) 2009 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/gpgmefw.h b/lang/cpp/src/gpgmefw.h index e3c9b18..fdad7bf 100644 --- a/lang/cpp/src/gpgmefw.h +++ b/lang/cpp/src/gpgmefw.h @@ -1,6 +1,8 @@ /* gpgmefw.h - Forwards declarations for gpgme (0.3 and 0.4) Copyright (C) 2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/gpgsetexpirytimeeditinteractor.cpp b/lang/cpp/src/gpgsetexpirytimeeditinteractor.cpp index 5e8ba80..7aebe73 100644 --- a/lang/cpp/src/gpgsetexpirytimeeditinteractor.cpp +++ b/lang/cpp/src/gpgsetexpirytimeeditinteractor.cpp @@ -1,6 +1,8 @@ /* gpgsetexpirytimeeditinteractor.cpp - Edit Interactor to change the expiry time of an OpenPGP key Copyright (C) 2007 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/gpgsetexpirytimeeditinteractor.h b/lang/cpp/src/gpgsetexpirytimeeditinteractor.h index 670b445..6a4c737 100644 --- a/lang/cpp/src/gpgsetexpirytimeeditinteractor.h +++ b/lang/cpp/src/gpgsetexpirytimeeditinteractor.h @@ -1,6 +1,8 @@ /* gpgsetexpirytimeeditinteractor.h - Edit Interactor to change the expiry time of an OpenPGP key Copyright (C) 2007 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/gpgsetownertrusteditinteractor.cpp b/lang/cpp/src/gpgsetownertrusteditinteractor.cpp index 581605f..7525fd8 100644 --- a/lang/cpp/src/gpgsetownertrusteditinteractor.cpp +++ b/lang/cpp/src/gpgsetownertrusteditinteractor.cpp @@ -1,6 +1,8 @@ /* gpgsetownertrusteditinteractor.cpp - Edit Interactor to change the expiry time of an OpenPGP key Copyright (C) 2007 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/gpgsetownertrusteditinteractor.h b/lang/cpp/src/gpgsetownertrusteditinteractor.h index caf29ee..9cec77e 100644 --- a/lang/cpp/src/gpgsetownertrusteditinteractor.h +++ b/lang/cpp/src/gpgsetownertrusteditinteractor.h @@ -1,6 +1,8 @@ /* gpgsetownertrusteditinteractor.h - Edit Interactor to change the owner trust of an OpenPGP key Copyright (C) 2007 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/gpgsignkeyeditinteractor.cpp b/lang/cpp/src/gpgsignkeyeditinteractor.cpp index 7effc64..4c6c87c 100644 --- a/lang/cpp/src/gpgsignkeyeditinteractor.cpp +++ b/lang/cpp/src/gpgsignkeyeditinteractor.cpp @@ -1,6 +1,8 @@ /* gpgsignkeyeditinteractor.cpp - Edit Interactor to change the expiry time of an OpenPGP key Copyright (C) 2007 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/gpgsignkeyeditinteractor.h b/lang/cpp/src/gpgsignkeyeditinteractor.h index 47ff8e5..f6cb473 100644 --- a/lang/cpp/src/gpgsignkeyeditinteractor.h +++ b/lang/cpp/src/gpgsignkeyeditinteractor.h @@ -1,6 +1,8 @@ /* gpgsignkeyeditinteractor.h - Edit Interactor to change the owner trust of an OpenPGP key Copyright (C) 2008 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/importresult.cpp b/lang/cpp/src/importresult.cpp index 4329fc0..8c35f9c 100644 --- a/lang/cpp/src/importresult.cpp +++ b/lang/cpp/src/importresult.cpp @@ -1,6 +1,8 @@ /* importresult.cpp - wraps a gpgme import result Copyright (C) 2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/importresult.h b/lang/cpp/src/importresult.h index adda80a..2f0e7f2 100644 --- a/lang/cpp/src/importresult.h +++ b/lang/cpp/src/importresult.h @@ -1,6 +1,8 @@ /* importresult.h - wraps a gpgme import result Copyright (C) 2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/interfaces/assuantransaction.h b/lang/cpp/src/interfaces/assuantransaction.h index a382b05..0d0dccc 100644 --- a/lang/cpp/src/interfaces/assuantransaction.h +++ b/lang/cpp/src/interfaces/assuantransaction.h @@ -1,6 +1,8 @@ /* assuantransaction.h - Interface for ASSUAN transactions - Copyright (C) 2009 Klar?lvdalens Datakonsult AB + Copyright (C) 2009 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH Author: Marc Mutz This file is part of GPGME++. diff --git a/lang/cpp/src/interfaces/dataprovider.h b/lang/cpp/src/interfaces/dataprovider.h index 166bb4e..c8f387d 100644 --- a/lang/cpp/src/interfaces/dataprovider.h +++ b/lang/cpp/src/interfaces/dataprovider.h @@ -1,6 +1,8 @@ /* interface/dataprovider.h - Interface for data sources Copyright (C) 2003 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/interfaces/passphraseprovider.h b/lang/cpp/src/interfaces/passphraseprovider.h index 5275e44..c97aa54 100644 --- a/lang/cpp/src/interfaces/passphraseprovider.h +++ b/lang/cpp/src/interfaces/passphraseprovider.h @@ -1,6 +1,8 @@ /* interface/passphraseprovider.h - Interface for passphrase callbacks Copyright (C) 2003,2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/interfaces/progressprovider.h b/lang/cpp/src/interfaces/progressprovider.h index 78bbdd7..ef4ca3c 100644 --- a/lang/cpp/src/interfaces/progressprovider.h +++ b/lang/cpp/src/interfaces/progressprovider.h @@ -1,6 +1,8 @@ /* interface/progressprovider.h - Interface for progress reports Copyright (C) 2003 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/keygenerationresult.cpp b/lang/cpp/src/keygenerationresult.cpp index 52d5222..ebbb3b9 100644 --- a/lang/cpp/src/keygenerationresult.cpp +++ b/lang/cpp/src/keygenerationresult.cpp @@ -1,6 +1,8 @@ /* keygenerationresult.cpp - wraps a gpgme keygen result Copyright (C) 2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/keygenerationresult.h b/lang/cpp/src/keygenerationresult.h index c35c504..a92151b 100644 --- a/lang/cpp/src/keygenerationresult.h +++ b/lang/cpp/src/keygenerationresult.h @@ -1,6 +1,8 @@ /* keygenerationresult.h - wraps a gpgme keygen result Copyright (C) 2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/keylistresult.cpp b/lang/cpp/src/keylistresult.cpp index e6fb77f..6e6b001 100644 --- a/lang/cpp/src/keylistresult.cpp +++ b/lang/cpp/src/keylistresult.cpp @@ -1,6 +1,8 @@ /* keylistresult.cpp - wraps a gpgme keylist result Copyright (C) 2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/keylistresult.h b/lang/cpp/src/keylistresult.h index 7dfe2d7..d0a8690 100644 --- a/lang/cpp/src/keylistresult.h +++ b/lang/cpp/src/keylistresult.h @@ -1,6 +1,8 @@ /* keylistresult.h - wraps a gpgme keylist result Copyright (C) 2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/notation.h b/lang/cpp/src/notation.h index 807bdaa..5b89214 100644 --- a/lang/cpp/src/notation.h +++ b/lang/cpp/src/notation.h @@ -1,6 +1,8 @@ /* notation.h - wraps a gpgme verify result Copyright (C) 2004, 2007 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/result.h b/lang/cpp/src/result.h index a86d81f..5ed52a8 100644 --- a/lang/cpp/src/result.h +++ b/lang/cpp/src/result.h @@ -1,6 +1,8 @@ /* result.h - base class for results Copyright (C) 2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/result_p.h b/lang/cpp/src/result_p.h index 0cf73e4..70c45c4 100644 --- a/lang/cpp/src/result_p.h +++ b/lang/cpp/src/result_p.h @@ -1,6 +1,8 @@ /* result.h - base class for results Copyright (C) 2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/scdgetinfoassuantransaction.cpp b/lang/cpp/src/scdgetinfoassuantransaction.cpp index fb59bcc..c2fbeed 100644 --- a/lang/cpp/src/scdgetinfoassuantransaction.cpp +++ b/lang/cpp/src/scdgetinfoassuantransaction.cpp @@ -1,6 +1,8 @@ /* scdgetinfoassuantransaction.cpp - Assuan Transaction to get information from scdaemon Copyright (C) 2009 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/scdgetinfoassuantransaction.h b/lang/cpp/src/scdgetinfoassuantransaction.h index a22a0ff..ef80530 100644 --- a/lang/cpp/src/scdgetinfoassuantransaction.h +++ b/lang/cpp/src/scdgetinfoassuantransaction.h @@ -1,6 +1,8 @@ /* scdgetinfoassuantransaction.h - Assuan Transaction to get information from scdaemon Copyright (C) 2009 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/signingresult.cpp b/lang/cpp/src/signingresult.cpp index 3252c03..6a5231f 100644 --- a/lang/cpp/src/signingresult.cpp +++ b/lang/cpp/src/signingresult.cpp @@ -1,6 +1,8 @@ /* signingresult.cpp - wraps a gpgme verify result Copyright (C) 2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/signingresult.h b/lang/cpp/src/signingresult.h index 2c27454..c6654fc 100644 --- a/lang/cpp/src/signingresult.h +++ b/lang/cpp/src/signingresult.h @@ -1,6 +1,8 @@ /* signingresult.h - wraps a gpgme sign result Copyright (C) 2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/trustitem.cpp b/lang/cpp/src/trustitem.cpp index 0565030..c29c0f4 100644 --- a/lang/cpp/src/trustitem.cpp +++ b/lang/cpp/src/trustitem.cpp @@ -1,6 +1,8 @@ /* trustitem.cpp - wraps a gpgme trust item Copyright (C) 2003 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME. diff --git a/lang/cpp/src/trustitem.h b/lang/cpp/src/trustitem.h index 65f109c..ad2a4a6 100644 --- a/lang/cpp/src/trustitem.h +++ b/lang/cpp/src/trustitem.h @@ -1,6 +1,8 @@ /* trustitem.h - wraps a gpgme trust item Copyright (C) 2003 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME. diff --git a/lang/cpp/src/util.h b/lang/cpp/src/util.h index b0d47e3..4495cc0 100644 --- a/lang/cpp/src/util.h +++ b/lang/cpp/src/util.h @@ -1,6 +1,8 @@ /* util.h - some inline helper functions Copyright (C) 2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/verificationresult.cpp b/lang/cpp/src/verificationresult.cpp index 42e483c..8d90a7d 100644 --- a/lang/cpp/src/verificationresult.cpp +++ b/lang/cpp/src/verificationresult.cpp @@ -1,6 +1,8 @@ /* verificationresult.cpp - wraps a gpgme verify result Copyright (C) 2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/verificationresult.h b/lang/cpp/src/verificationresult.h index b6d1d8c..765fb79 100644 --- a/lang/cpp/src/verificationresult.h +++ b/lang/cpp/src/verificationresult.h @@ -1,6 +1,8 @@ /* verificationresult.h - wraps a gpgme verify result Copyright (C) 2004 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH This file is part of GPGME++. diff --git a/lang/cpp/src/vfsmountresult.cpp b/lang/cpp/src/vfsmountresult.cpp index d3607d1..60faa38 100644 --- a/lang/cpp/src/vfsmountresult.cpp +++ b/lang/cpp/src/vfsmountresult.cpp @@ -1,6 +1,8 @@ /* vfsmountresult.cpp - wraps a gpgme vfs mount result - Copyright (C) 2009 Klar?lvdalens Datakonsult AB + Copyright (C) 2009 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH Author: Marc Mutz , Volker Krause This file is part of GPGME++. diff --git a/lang/qt/Makefile.am b/lang/qt/Makefile.am index 39eb55e..ab85960 100644 --- a/lang/qt/Makefile.am +++ b/lang/qt/Makefile.am @@ -1,5 +1,6 @@ # Makefile.am for GPGMEPP. -# Copyright (C) 2016 Intevation GmbH +# Copyright (C) 2016 Bundesamt f?r Sicherheit in der Informationstechnik +# Software engineering by Intevation GmbH # # This file is part of GPGMEPP. # diff --git a/lang/qt/doc/Makefile.am b/lang/qt/doc/Makefile.am index ddf4935..fd57cc8 100644 --- a/lang/qt/doc/Makefile.am +++ b/lang/qt/doc/Makefile.am @@ -1,5 +1,6 @@ # Makefile.am - Makefile for GPGME Qt docs. -# Copyright (C) 2016 Intevation GmbH +# Copyright (C) 2016 Bundesamt f?r Sicherheit in der Informationstechnik +# Software engineering by Intevation GmbH # # This file is part of GPGME. # diff --git a/lang/qt/src/Makefile.am b/lang/qt/src/Makefile.am index c81461e..3b3cffc 100644 --- a/lang/qt/src/Makefile.am +++ b/lang/qt/src/Makefile.am @@ -1,5 +1,6 @@ # Makefile.am for GPGMEPP. -# Copyright (C) 2016 Intevation GmbH +# Copyright (C) 2016 Bundesamt f?r Sicherheit in der Informationstechnik +# Software engineering by Intevation GmbH # # This file is part of GPGMEPP. # diff --git a/lang/qt/src/defaultkeygenerationjob.h b/lang/qt/src/defaultkeygenerationjob.h index 5b7334c..fcefc4b 100644 --- a/lang/qt/src/defaultkeygenerationjob.h +++ b/lang/qt/src/defaultkeygenerationjob.h @@ -1,6 +1,8 @@ /* defaultkeygenerationjob.h Copyright (c) 2016 Klar?lvdalens Datakonsult AB + 2016 Bundesamt f?r Sicherheit in der Informationstechnik + Software engineering by Intevation GmbH QGpgME is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/lang/qt/tests/Makefile.am b/lang/qt/tests/Makefile.am index fb45eec..ccad8c2 100644 --- a/lang/qt/tests/Makefile.am +++ b/lang/qt/tests/Makefile.am @@ -1,5 +1,6 @@ # Makefile.am - Makefile for GPGME Qt tests. -# Copyright (C) 2016 Intevation GmbH +# Copyright (C) 2016 Bundesamt f?r Sicherheit in der Informationstechnik +# Software engineering by Intevation GmbH # # This file is part of GPGME. # ----------------------------------------------------------------------- Summary of changes: lang/cpp/Makefile.am | 3 ++- lang/cpp/src/Makefile.am | 3 ++- lang/cpp/src/callbacks.cpp | 2 ++ lang/cpp/src/callbacks.h | 2 ++ lang/cpp/src/configuration.cpp | 2 ++ lang/cpp/src/configuration.h | 2 ++ lang/cpp/src/context_glib.cpp | 2 ++ lang/cpp/src/context_p.h | 2 ++ lang/cpp/src/context_qt.cpp | 2 ++ lang/cpp/src/context_vanilla.cpp | 2 ++ lang/cpp/src/data_p.h | 2 ++ lang/cpp/src/decryptionresult.cpp | 2 ++ lang/cpp/src/decryptionresult.h | 2 ++ lang/cpp/src/defaultassuantransaction.cpp | 2 ++ lang/cpp/src/defaultassuantransaction.h | 2 ++ lang/cpp/src/editinteractor.cpp | 2 ++ lang/cpp/src/editinteractor.h | 2 ++ lang/cpp/src/encryptionresult.cpp | 2 ++ lang/cpp/src/encryptionresult.h | 2 ++ lang/cpp/src/engineinfo.cpp | 2 ++ lang/cpp/src/engineinfo.h | 2 ++ lang/cpp/src/error.h | 2 ++ lang/cpp/src/eventloopinteractor.cpp | 2 ++ lang/cpp/src/eventloopinteractor.h | 2 ++ lang/cpp/src/exception.cpp | 2 ++ lang/cpp/src/exception.h | 2 ++ lang/cpp/src/global.h | 2 ++ lang/cpp/src/gpgadduserideditinteractor.cpp | 2 ++ lang/cpp/src/gpgadduserideditinteractor.h | 2 ++ lang/cpp/src/gpgagentgetinfoassuantransaction.cpp | 2 ++ lang/cpp/src/gpgagentgetinfoassuantransaction.h | 2 ++ lang/cpp/src/gpgmefw.h | 2 ++ lang/cpp/src/gpgsetexpirytimeeditinteractor.cpp | 2 ++ lang/cpp/src/gpgsetexpirytimeeditinteractor.h | 2 ++ lang/cpp/src/gpgsetownertrusteditinteractor.cpp | 2 ++ lang/cpp/src/gpgsetownertrusteditinteractor.h | 2 ++ lang/cpp/src/gpgsignkeyeditinteractor.cpp | 2 ++ lang/cpp/src/gpgsignkeyeditinteractor.h | 2 ++ lang/cpp/src/importresult.cpp | 2 ++ lang/cpp/src/importresult.h | 2 ++ lang/cpp/src/interfaces/assuantransaction.h | 4 +++- lang/cpp/src/interfaces/dataprovider.h | 2 ++ lang/cpp/src/interfaces/passphraseprovider.h | 2 ++ lang/cpp/src/interfaces/progressprovider.h | 2 ++ lang/cpp/src/keygenerationresult.cpp | 2 ++ lang/cpp/src/keygenerationresult.h | 2 ++ lang/cpp/src/keylistresult.cpp | 2 ++ lang/cpp/src/keylistresult.h | 2 ++ lang/cpp/src/notation.h | 2 ++ lang/cpp/src/result.h | 2 ++ lang/cpp/src/result_p.h | 2 ++ lang/cpp/src/scdgetinfoassuantransaction.cpp | 2 ++ lang/cpp/src/scdgetinfoassuantransaction.h | 2 ++ lang/cpp/src/signingresult.cpp | 2 ++ lang/cpp/src/signingresult.h | 2 ++ lang/cpp/src/trustitem.cpp | 2 ++ lang/cpp/src/trustitem.h | 2 ++ lang/cpp/src/util.h | 2 ++ lang/cpp/src/verificationresult.cpp | 2 ++ lang/cpp/src/verificationresult.h | 2 ++ lang/cpp/src/vfsmountresult.cpp | 4 +++- lang/qt/Makefile.am | 3 ++- lang/qt/doc/Makefile.am | 3 ++- lang/qt/src/Makefile.am | 3 ++- lang/qt/src/defaultkeygenerationjob.h | 2 ++ lang/qt/tests/Makefile.am | 3 ++- 66 files changed, 134 insertions(+), 8 deletions(-) hooks/post-receive -- GnuPG Made Easy http://git.gnupg.org From cvs at cvs.gnupg.org Tue Apr 25 14:04:26 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Tue, 25 Apr 2017 14:04:26 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-98-g247932f Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 247932f367f856e7ce91528e14f0aaf838150857 (commit) from 7851d73fd7f424f9a649690e1cb3055feb792c51 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 247932f367f856e7ce91528e14f0aaf838150857 Author: NIIBE Yutaka Date: Tue Apr 25 21:00:41 2017 +0900 dirmngr: Fix aliasing problem in dns.c. * dirmngr/dns.c (dns_ai_setent): Care about aliasing. -- Co-authored-by: Tomas Mraz GnuPG-bug-id: 3105 Signed-off-by: NIIBE Yutaka diff --git a/dirmngr/dns.c b/dirmngr/dns.c index 7a6202f..5b8f14f 100644 --- a/dirmngr/dns.c +++ b/dirmngr/dns.c @@ -9456,29 +9456,31 @@ void dns_ai_close(struct dns_addrinfo *ai) { static int dns_ai_setent(struct addrinfo **ent, union dns_any *any, enum dns_type type, struct dns_addrinfo *ai) { - struct sockaddr *saddr; - struct sockaddr_in sin; - struct sockaddr_in6 sin6; + union u { + struct sockaddr_in sin; + struct sockaddr_in6 sin6; + struct sockaddr_storage ss; + } addr; const char *cname; size_t clen; switch (type) { case DNS_T_A: - saddr = memset(&sin, '\0', sizeof sin); + memset(&addr.sin, '\0', sizeof addr.sin); - sin.sin_family = AF_INET; - sin.sin_port = htons(ai->port); + addr.sin.sin_family = AF_INET; + addr.sin.sin_port = htons(ai->port); - memcpy(&sin.sin_addr, any, sizeof sin.sin_addr); + memcpy(&addr.sin.sin_addr, any, sizeof addr.sin.sin_addr); break; case DNS_T_AAAA: - saddr = memset(&sin6, '\0', sizeof sin6); + memset(&addr.sin6, '\0', sizeof addr.sin6); - sin6.sin6_family = AF_INET6; - sin6.sin6_port = htons(ai->port); + addr.sin6.sin6_family = AF_INET6; + addr.sin6.sin6_port = htons(ai->port); - memcpy(&sin6.sin6_addr, any, sizeof sin6.sin6_addr); + memcpy(&addr.sin6.sin6_addr, any, sizeof addr.sin6.sin6_addr); break; default: @@ -9493,20 +9495,20 @@ static int dns_ai_setent(struct addrinfo **ent, union dns_any *any, enum dns_typ clen = 0; } - if (!(*ent = malloc(sizeof **ent + dns_sa_len(saddr) + ((ai->hints.ai_flags & AI_CANONNAME)? clen + 1 : 0)))) + if (!(*ent = malloc(sizeof **ent + dns_sa_len(&addr) + ((ai->hints.ai_flags & AI_CANONNAME)? clen + 1 : 0)))) return dns_syerr(); memset(*ent, '\0', sizeof **ent); - (*ent)->ai_family = saddr->sa_family; + (*ent)->ai_family = addr.ss.ss_family; (*ent)->ai_socktype = ai->hints.ai_socktype; (*ent)->ai_protocol = ai->hints.ai_protocol; - (*ent)->ai_addr = memcpy((unsigned char *)*ent + sizeof **ent, saddr, dns_sa_len(saddr)); - (*ent)->ai_addrlen = dns_sa_len(saddr); + (*ent)->ai_addr = memcpy((unsigned char *)*ent + sizeof **ent, &addr, dns_sa_len(&addr)); + (*ent)->ai_addrlen = dns_sa_len(&addr); if (ai->hints.ai_flags & AI_CANONNAME) - (*ent)->ai_canonname = memcpy((unsigned char *)*ent + sizeof **ent + dns_sa_len(saddr), cname, clen + 1); + (*ent)->ai_canonname = memcpy((unsigned char *)*ent + sizeof **ent + dns_sa_len(&addr), cname, clen + 1); ai->found++; ----------------------------------------------------------------------- Summary of changes: dirmngr/dns.c | 34 ++++++++++++++++++---------------- 1 file changed, 18 insertions(+), 16 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed Apr 26 03:15:01 2017 From: cvs at cvs.gnupg.org (by Ineiev) Date: Wed, 26 Apr 2017 03:15:01 +0200 Subject: [git] GnuPG - branch, dkg/T1371, created. gnupg-1.4.21-6-gde441cb Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, dkg/T1371 has been created at de441cb9cc87089ce7ca72bf45bee82a697bf68e (commit) - Log ----------------------------------------------------------------- commit de441cb9cc87089ce7ca72bf45bee82a697bf68e Author: Ineiev Date: Thu Apr 14 15:42:25 2016 +0000 g10: Fix secmem leak. * g10/keygen.c (proc_parameter_file): Fix secmem leak. -- proc_parameter_file() adds certain parameters to the list in the para argument; however, these new entries are leaked because they are added to head, while the para list is released by the caller of proc_parameter_file. GnuPG-bug-id: 1371 diff --git a/g10/keygen.c b/g10/keygen.c index 268fce5..dc6696a 100644 --- a/g10/keygen.c +++ b/g10/keygen.c @@ -2329,8 +2329,8 @@ proc_parameter_file( struct para_data_s *para, const char *fname, r = xmalloc_clear(sizeof(*r)); r->key = pKEYUSAGE; r->u.usage = openpgp_pk_algo_usage(algo); - r->next = para; - para = r; + r->next = para->next; + para->next = r; } else if (err == -1) return -1; @@ -2363,8 +2363,8 @@ proc_parameter_file( struct para_data_s *para, const char *fname, r = xmalloc_clear (sizeof(*r)); r->key = pSUBKEYUSAGE; r->u.usage = openpgp_pk_algo_usage (algo); - r->next = para; - para = r; + r->next = para->next; + para->next = r; } else if (err == -1) return -1; @@ -2400,8 +2400,8 @@ proc_parameter_file( struct para_data_s *para, const char *fname, p = stpcpy(stpcpy(stpcpy(p," ("), s2 ),")"); if( s3 ) p = stpcpy(stpcpy(stpcpy(p," <"), s3 ),">"); - r->next = para; - para = r; + r->next = para->next; + para->next = r; have_user_id=1; } } @@ -2460,13 +2460,13 @@ proc_parameter_file( struct para_data_s *para, const char *fname, r = xmalloc_clear( sizeof *r ); r->key = pPASSPHRASE_S2K; r->u.s2k = s2k; - r->next = para; - para = r; + r->next = para->next; + para->next = r; r = xmalloc_clear( sizeof *r ); r->key = pPASSPHRASE_DEK; r->u.dek = dek; - r->next = para; - para = r; + r->next = para->next; + para->next = r; } /* Make KEYCREATIONDATE from Creation-Date. */ @@ -2504,8 +2504,8 @@ proc_parameter_file( struct para_data_s *para, const char *fname, r = xmalloc_clear( sizeof *r + 20 ); r->key = pSUBKEYEXPIRE; r->u.expire = seconds; - r->next = para; - para = r; + r->next = para->next; + para->next = r; } if( !!outctrl->pub.newfname ^ !!outctrl->sec.newfname ) { ----------------------------------------------------------------------- hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed Apr 26 03:23:32 2017 From: cvs at cvs.gnupg.org (by Simon Arlott) Date: Wed, 26 Apr 2017 03:23:32 +0200 Subject: [git] GnuPG - branch, dkg/T1967, created. gnupg-2.1.20-99-gd9fd52a Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, dkg/T1967 has been created at d9fd52afacebf98b5571de7269c9a1b37100e1ec (commit) - Log ----------------------------------------------------------------- commit d9fd52afacebf98b5571de7269c9a1b37100e1ec Author: Simon Arlott Date: Sun Feb 5 16:31:35 2017 -0500 g10: Skip signing keys where no secret key is available. * g10/getkey.c (finish_lookup): When requiring PUBKEY_USAGE_SIG, skip over keys where no signing key is available. -- This should only be relevant when gpg is required to choose which key to sign with -- if verifying signatures, we already know which subkey to look at, and indeed gpg doesn't seem to have a problem with this. This patch comes from https://bugs.gnupg.org/gnupg/file793/sign-fix.patch I (dkg) have reviewed and tested it with missing local keys, and it makes sense to me as the default behavior. If the user has the secret key for a signing-capable subkey available and the command is --sign, it should be used. If the user has explicitly specified a subkey that happens to be missing (e.g. with the trailing ! for --default-key 0x${FPR}!) then this does not override that behavior (the signature will still fail). GnuPG-bug-id: 1967 Debian-bug-id: 834922 Signed-off-by: Daniel Kahn Gillmor diff --git a/g10/getkey.c b/g10/getkey.c index 75b8564..6ee9fe5 100644 --- a/g10/getkey.c +++ b/g10/getkey.c @@ -3549,6 +3549,13 @@ finish_lookup (kbnode_t keyblock, unsigned int req_usage, int want_exact, continue; } + if ((req_usage & PUBKEY_USAGE_SIG) && agent_probe_secret_key (NULL, pk)) + { + if (DBG_LOOKUP) + log_debug ("\tno secret key for signing\n"); + continue; + } + if (DBG_LOOKUP) log_debug ("\tsubkey might be fine\n"); /* In case a key has a timestamp of 0 set, we make sure ----------------------------------------------------------------------- hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed Apr 26 04:42:04 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Wed, 26 Apr 2017 04:42:04 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-99-g2262a80 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 2262a80c5f44433a08bc0e21b77d9efe51596f21 (commit) from 247932f367f856e7ce91528e14f0aaf838150857 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 2262a80c5f44433a08bc0e21b77d9efe51596f21 Author: NIIBE Yutaka Date: Wed Apr 26 11:39:28 2017 +0900 g10: Minor clean up. * g10/main.h (complete_sig): Remove declaration. * g10/sign.c (complete_sig): Make it static. Signed-off-by: NIIBE Yutaka diff --git a/g10/main.h b/g10/main.h index 911f4da..129d746 100644 --- a/g10/main.h +++ b/g10/main.h @@ -242,8 +242,6 @@ int write_pubkey_enc (ctrl_t ctrl, PKT_public_key *pk, int throw_keyid, DEK *dek, iobuf_t out); /*-- sign.c --*/ -int complete_sig (ctrl_t ctrl, PKT_signature *sig, PKT_public_key *pksk, - gcry_md_hd_t md, const char *cache_nonce); int sign_file (ctrl_t ctrl, strlist_t filenames, int detached, strlist_t locusr, int do_encrypt, strlist_t remusr, const char *outfile ); int clearsign_file (ctrl_t ctrl, diff --git a/g10/sign.c b/g10/sign.c index aaf2840..af1a7b6 100644 --- a/g10/sign.c +++ b/g10/sign.c @@ -339,7 +339,7 @@ do_sign (ctrl_t ctrl, PKT_public_key *pksk, PKT_signature *sig, } -int +static int complete_sig (ctrl_t ctrl, PKT_signature *sig, PKT_public_key *pksk, gcry_md_hd_t md, const char *cache_nonce) ----------------------------------------------------------------------- Summary of changes: g10/main.h | 2 -- g10/sign.c | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Thu Apr 27 03:37:33 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Thu, 27 Apr 2017 03:37:33 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-100-g97a2394 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 97a2394ecafaa6f58e4a1f70ecfd04408dc15606 (commit) from 2262a80c5f44433a08bc0e21b77d9efe51596f21 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 97a2394ecafaa6f58e4a1f70ecfd04408dc15606 Author: NIIBE Yutaka Date: Thu Apr 27 10:33:58 2017 +0900 g10: For signing, prefer available card key when no -u option. * g10/skclist.c (build_sk_list): Ask gpg-agent if card is available. Then, use the card key if any. -- GnuPG-bug-id: 1983 Signed-off-by: NIIBE Yutaka diff --git a/g10/skclist.c b/g10/skclist.c index a016b62..489277c 100644 --- a/g10/skclist.c +++ b/g10/skclist.c @@ -31,6 +31,7 @@ #include "keydb.h" #include "../common/util.h" #include "../common/i18n.h" +#include "call-agent.h" /* Return true if Libgcrypt's RNG is in faked mode. */ @@ -126,13 +127,38 @@ build_sk_list (ctrl_t ctrl, select the best key. If a key specification is ambiguous and we are in batch mode, die. */ - if (!locusr) /* No user ids given - use the default key. */ + if (!locusr) /* No user ids given - use the card key or the default key. */ { + struct agent_card_info_s info; PKT_public_key *pk; + char *serialno; + memset (&info, 0, sizeof(info)); pk = xmalloc_clear (sizeof *pk); pk->req_usage = use; - if ((err = getkey_byname (ctrl, NULL, pk, NULL, 1, NULL))) + + /* Check if a card is available. If any, use it. */ + err = agent_scd_serialno (&serialno, NULL); + if (!err) + { + xfree (serialno); + err = agent_scd_getattr ("KEY-FPR", &info); + if (err) + log_error ("error retrieving key fingerprint from card: %s\n", + gpg_strerror (err)); + else if (info.fpr1valid) + { + if ((err = get_pubkey_byfprint (ctrl, pk, NULL, info.fpr1, 20))) + { + info.fpr1valid = 0; + log_error ("error on card key to sign: %s, try default\n", + gpg_strerror (err)); + } + } + } + + if (!info.fpr1valid + && (err = getkey_byname (ctrl, NULL, pk, NULL, 1, NULL))) { free_public_key (pk); pk = NULL; ----------------------------------------------------------------------- Summary of changes: g10/skclist.c | 30 ++++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Fri Apr 28 02:37:37 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Fri, 28 Apr 2017 02:37:37 +0200 Subject: [git] GCRYPT - branch, master, updated. libgcrypt-1.7.3-79-g9b651fb Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU crypto library". The branch, master has been updated via 9b651fb632f3697e70685c9ee340ab0cb2274bdf (commit) from 719468e53133d3bdf12156c5bfdea2bf15f9f6f1 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 9b651fb632f3697e70685c9ee340ab0cb2274bdf Author: NIIBE Yutaka Date: Fri Apr 28 09:27:00 2017 +0900 Spelling fixes in docs and comments. -- GnuPG-bug-id: 3120 Reported-by: ka7 (klemens) Signed-off-by: NIIBE Yutaka diff --git a/TODO b/TODO index ffadc06..7aa4de1 100644 --- a/TODO +++ b/TODO @@ -18,7 +18,7 @@ * Add attributes to the MPI functions. -* cipher/pubkey.c and pubkey implementaions. +* cipher/pubkey.c and pubkey implementations. Don't rely on the secure memory based wiping function but add an extra wiping. diff --git a/acinclude.m4 b/acinclude.m4 index dcdadfd..fc208c5 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -29,7 +29,7 @@ define([GCRY_MSG_SHOW], dnl GCRY_MSG_WRAP(PREFIX, ALGOLIST) dnl Print a nicely formatted list of algorithms -dnl with an approriate line wrap. +dnl with an appropriate line wrap. dnl define([GCRY_MSG_WRAP], [ @@ -275,7 +275,7 @@ AC_CHECK_TOOL(AS, as, false) ]) dnl LIST_MEMBER() -dnl Check wether an element ist contained in a list. Set `found' to +dnl Check whether an element ist contained in a list. Set `found' to dnl `1' if the element is found in the list, to `0' otherwise. AC_DEFUN([LIST_MEMBER], [ diff --git a/build-aux/texinfo.tex b/build-aux/texinfo.tex index a181898..5a17f97 100644 --- a/build-aux/texinfo.tex +++ b/build-aux/texinfo.tex @@ -415,7 +415,7 @@ \def\argremovecomment#1\comment#2\ArgTerm{\argremovec #1\c\ArgTerm} \def\argremovec#1\c#2\ArgTerm{\argcheckspaces#1\^^M\ArgTerm} -% Each occurence of `\^^M' or `\^^M' is replaced by a single space. +% Each occurrence of `\^^M' or `\^^M' is replaced by a single space. % % \argremovec might leave us with trailing space, e.g., % @end itemize @c foo @@ -440,7 +440,7 @@ % to get _exactly_ the rest of the line, we had to prevent such situation. % We prepended an \empty token at the very beginning and we expand it now, % just before passing the control to \argtorun. -% (Similarily, we have to think about #3 of \argcheckspacesY above: it is +% (Similarly, we have to think about #3 of \argcheckspacesY above: it is % either the null string, or it ends with \^^M---thus there is no danger % that a pair of braces would be stripped. % @@ -497,7 +497,7 @@ % used to check whether the current environment is the one expected. % % Non-false conditionals (@iftex, @ifset) don't fit into this, so they -% are not treated as enviroments; they don't open a group. (The +% are not treated as environments; they don't open a group. (The % implementation of @end takes care not to call \endgroup in this % special case.) @@ -520,7 +520,7 @@ \fi } -% Evironment mismatch, #1 expected: +% Environment mismatch, #1 expected: \def\badenverr{% \errhelp = \EMsimple \errmessage{This command can appear only \inenvironment\temp, @@ -7034,7 +7034,7 @@ end % In case a @footnote appears in a vbox, save the footnote text and create % the real \insert just after the vbox finished. Otherwise, the insertion % would be lost. -% Similarily, if a @footnote appears inside an alignment, save the footnote +% Similarly, if a @footnote appears inside an alignment, save the footnote % text to a box and make the \insert when a row of the table is finished. % And the same can be done for other insert classes. --kasal, 16nov03. diff --git a/cipher/cipher-internal.h b/cipher/cipher-internal.h index ea9c33d..b748125 100644 --- a/cipher/cipher-internal.h +++ b/cipher/cipher-internal.h @@ -124,7 +124,7 @@ struct gcry_cipher_handle /* A structure with function pointers for bulk operations. Due to limitations of the module system (we don't want to change the API) we need to keep these function pointers here. The cipher - open function intializes them and the actual encryption routines + open function initializes them and the actual encryption routines use them if they are not NULL. */ struct { void (*cfb_enc)(void *context, unsigned char *iv, diff --git a/cipher/cipher.c b/cipher/cipher.c index 124700e..9812738 100644 --- a/cipher/cipher.c +++ b/cipher/cipher.c @@ -1006,7 +1006,7 @@ _gcry_cipher_encrypt (gcry_cipher_hd_t h, void *out, size_t outsize, /**************** * Decrypt INBUF to OUTBUF with the mode selected at open. * inbuf and outbuf may overlap or be the same. - * Depending on the mode some some contraints apply to INBUFLEN. + * Depending on the mode some some constraints apply to INBUFLEN. */ static gcry_err_code_t cipher_decrypt (gcry_cipher_hd_t c, byte *outbuf, size_t outbuflen, diff --git a/cipher/ecc-misc.c b/cipher/ecc-misc.c index 8f7b8c4..41debe4 100644 --- a/cipher/ecc-misc.c +++ b/cipher/ecc-misc.c @@ -333,7 +333,7 @@ _gcry_ecc_mont_decodepoint (gcry_mpi_t pk, mpi_ec_t ctx, mpi_point_t result) * 0x40 for x-only coordinate. * * For data with older implementation (non-released development - * version), it is possibe to have the 0x40 as a part of data. + * version), it is possible to have the 0x40 as a part of data. * Besides, when data was parsed as MPI, we might have 0x00 * prefix. * diff --git a/cipher/primegen.c b/cipher/primegen.c index cccda84..c7977d1 100644 --- a/cipher/primegen.c +++ b/cipher/primegen.c @@ -1301,7 +1301,7 @@ find_x931_prime (const gcry_mpi_t pfirst) mpi_set_bit (prime, 0); /* We use 64 Rabin-Miller rounds which is better and thus - sufficient. We do not have a Lucas test implementaion thus we + sufficient. We do not have a Lucas test implementation thus we can't do it in the X9.31 preferred way of running a few Rabin-Miller followed by one Lucas test. */ while ( !check_prime (prime, val_2, 64, NULL, NULL) ) diff --git a/cipher/rsa-common.c b/cipher/rsa-common.c index 7b56237..29b7bc8 100644 --- a/cipher/rsa-common.c +++ b/cipher/rsa-common.c @@ -233,7 +233,7 @@ _gcry_rsa_pkcs1_decode_for_enc (unsigned char **r_result, size_t *r_resultlen, } -/* Encode {VALUE,VALUELEN} for an NBITS keys and hash algorith ALGO +/* Encode {VALUE,VALUELEN} for an NBITS keys and hash algorithm ALGO using the pkcs#1 block type 1 padding. On success the result is stored as a new MPI at R_RESULT. On error the value at R_RESULT is undefined. diff --git a/cipher/rsa.c b/cipher/rsa.c index b6c7374..895ee04 100644 --- a/cipher/rsa.c +++ b/cipher/rsa.c @@ -710,7 +710,7 @@ generate_x931 (RSA_secret_key *sk, unsigned int nbits, unsigned long e_value, if (e_value < 3) return GPG_ERR_INV_VALUE; - /* Our implementaion requires E to be odd. */ + /* Our implementation requires E to be odd. */ if (!(e_value & 1)) return GPG_ERR_INV_VALUE; diff --git a/compat/clock.c b/compat/clock.c index 7f250f3..2a2c205 100644 --- a/compat/clock.c +++ b/compat/clock.c @@ -23,7 +23,7 @@ clock_t _gcry_clock (void) { assert (CLOCKS_PER_SEC == 1000); -#warning Replace by a correct implementaion. +#warning Replace by a correct implementation. /* It seems that GetProcessTimes is available in the kernel but without a declaration. If that fails we would need to walk over all threads and tally up the GetThreadTimes. */ diff --git a/configure.ac b/configure.ac index 2609b41..7ea0b6a 100644 --- a/configure.ac +++ b/configure.ac @@ -339,7 +339,7 @@ AC_ARG_ENABLE(endian-check, if test x"$endiancheck" = xyes ; then AC_C_BIGENDIAN else - AC_DEFINE(DISABLED_ENDIAN_CHECK,1,[configure did not test for endianess]) + AC_DEFINE(DISABLED_ENDIAN_CHECK,1,[configure did not test for endianness]) fi AC_CHECK_SIZEOF(unsigned short, 2) @@ -1736,7 +1736,7 @@ AC_REPLACE_FUNCS([getpid clock]) # -# Check wether it is necessary to link against libdl. +# Check whether it is necessary to link against libdl. # DL_LIBS="" if test "$use_hmac_binary_check" = yes ; then diff --git a/doc/gcrypt.texi b/doc/gcrypt.texi index 4cdf75d..464c673 100644 --- a/doc/gcrypt.texi +++ b/doc/gcrypt.texi @@ -95,7 +95,7 @@ section entitled ``GNU General Public License''. * Prime numbers:: How to use the Prime number related functions. * Utilities:: Utility functions. * Tools:: Utility tools. -* Configuration:: Configuration files and evironment variables. +* Configuration:: Configuration files and environment variables. * Architecture:: How Libgcrypt works internally. Appendices @@ -5391,7 +5391,7 @@ Print version of the program and exit. @c **************** Environment Variables ***************** @c ********************************************************** @node Configuration - at chapter Configuration files and evironment variables + at chapter Configuration files and environment variables This chapter describes which files and environment variables can be used to change the behaviour of Libgcrypt. @@ -5869,7 +5869,7 @@ to mix in enough data from the gather modules before returning the actual random output. Process fork detection and protection is implemented. - at c FIXME: The design and implementaion needs a more verbose description. + at c FIXME: The design and implementation needs a more verbose description. The implementation of the nonce generator (for @code{gcry_create_nonce}) is a straightforward repeated hash design: A diff --git a/mpi/alpha/README b/mpi/alpha/README index 55c0a29..00addfd 100644 --- a/mpi/alpha/README +++ b/mpi/alpha/README @@ -5,7 +5,7 @@ RELEVANT OPTIMIZATION ISSUES EV4 1. This chip has very limited store bandwidth. The on-chip L1 cache is -write-through, and a cache line is transfered from the store buffer to the +write-through, and a cache line is transferred from the store buffer to the off-chip L2 in as much 15 cycles on most systems. This delay hurts mpn_add_n, mpn_sub_n, mpn_lshift, and mpn_rshift. @@ -20,7 +20,7 @@ EV5 1. The memory bandwidth of this chip seems excellent, both for loads and stores. Even when the working set is larger than the on-chip L1 and L2 -caches, the perfromance remain almost unaffected. +caches, the performance remain almost unaffected. 2. mulq has a measured latency of 13 cycles and an issue rate of 1 each 8th cycle. umulh has a measured latency of 15 cycles and an issue rate of 1 diff --git a/mpi/ec.c b/mpi/ec.c index 26dd947..016af00 100644 --- a/mpi/ec.c +++ b/mpi/ec.c @@ -35,7 +35,7 @@ #define point_free(a) _gcry_mpi_point_free_parts ((a)) -/* Print a point using the log fucntions. If CTX is not NULL affine +/* Print a point using the log functions. If CTX is not NULL affine coordinates will be printed. */ void _gcry_mpi_point_log (const char *name, mpi_point_t point, mpi_ec_t ctx) diff --git a/mpi/mips3/README b/mpi/mips3/README index e94b2c7..4ba4546 100644 --- a/mpi/mips3/README +++ b/mpi/mips3/README @@ -9,7 +9,7 @@ RELEVANT OPTIMIZATION ISSUES On the R4600, branches takes a single cycle - On the R8000, branches often take no noticable cycles, as they are + On the R8000, branches often take no noticeable cycles, as they are executed in a separate function unit.. 2. The R4000 and R4400 have a load latency of 4 cycles. diff --git a/random/random-drbg.c b/random/random-drbg.c index baaa65a..7f66997 100644 --- a/random/random-drbg.c +++ b/random/random-drbg.c @@ -2433,7 +2433,7 @@ drbg_healthcheck_sanity (struct gcry_drbg_test_vector *test) goto outbuf; max_addtllen = drbg_max_addtl (); max_request_bytes = drbg_max_request_bytes (); - /* overflow addtllen with additonal info string */ + /* overflow addtllen with additional info string */ drbg_string_fill (&addtl, test->addtla, (max_addtllen + 1)); len = drbg_generate (drbg, buf, test->expectedlen, &addtl); if (len) diff --git a/random/rndhw.c b/random/rndhw.c index e3a7861..2829382 100644 --- a/random/rndhw.c +++ b/random/rndhw.c @@ -61,7 +61,7 @@ poll_padlock (void (*add)(const void*, size_t, enum random_origins), /* Peter Gutmann's cryptlib tests again whether the RNG is enabled but we don't do so. We would have to do this also for our AES - implementaion and that is definitely too time consuming. There + implementation and that is definitely too time consuming. There would be a race condition anyway. Thus we assume that the OS does not change the Padlock initialization while a user process is running. */ diff --git a/random/rndunix.c b/random/rndunix.c index e7238f4..fcb45b7 100644 --- a/random/rndunix.c +++ b/random/rndunix.c @@ -319,7 +319,7 @@ static struct RI { { "/usr/bin/lpstat", "-t", SC(0.1), NULL, 0, 0, 0, 1 }, { "/usr/ucb/lpstat", "-t", SC(0.1), NULL, 0, 0, 0, 0 }, { "/usr/bin/tcpdump", "-c 5 -efvvx", SC(1), NULL, 0, 0, 0, 0 }, - /* This is very environment-dependant. If network traffic is low, it'll + /* This is very environment-dependent. If network traffic is low, it'll * probably time out before delivering 5 packets, which is OK because * it'll probably be fixed stuff like ARP anyway */ { "/usr/sbin/advfsstat", "-b usr_domain", diff --git a/random/rndw32.c b/random/rndw32.c index 8c507ac..1dec5a7 100644 --- a/random/rndw32.c +++ b/random/rndw32.c @@ -184,7 +184,7 @@ typedef struct double ssHigh; /* Highest readout */ long ssCount; /* Total number of readout */ char sspadding2[4]; /* Padding of 4 bytes */ - long double ssTotal; /* Total amout of all readouts */ + long double ssTotal; /* Total amount of all readouts */ char sspadding3[6]; /* Padding of 6 bytes */ double ssAlarm1; /* Temp & fan: high alarm; voltage: % off */ double ssAlarm2; /* Temp: low alarm */ @@ -221,7 +221,7 @@ typedef struct -/* One time intialized handles and function pointers. We use dynamic +/* One time initialized handles and function pointers. We use dynamic loading of the DLLs to do without them in case libgcrypt does not need any random. */ static HANDLE hNetAPI32; @@ -246,7 +246,7 @@ static int system_rng_available; /* Whether a system RNG is available. */ static HCRYPTPROV hRNGProv; /* Handle to Intel RNG CSP. */ /* The debug flag. Debugging is enabled if the value of the envvar - * GCRY_RNDW32_DBG is a postive number.*/ + * GCRY_RNDW32_DBG is a positive number.*/ static int debug_me; static int system_is_w2000; /* True if running on W2000. */ diff --git a/src/gcrypt.h.in b/src/gcrypt.h.in index 5727abb..8e49967 100644 --- a/src/gcrypt.h.in +++ b/src/gcrypt.h.in @@ -391,7 +391,7 @@ gcry_error_t gcry_sexp_build_array (gcry_sexp_t *retsexp, size_t *erroff, /* Release the S-expression object SEXP */ void gcry_sexp_release (gcry_sexp_t sexp); -/* Calculate the length of an canonized S-expresion in BUFFER and +/* Calculate the length of an canonized S-expression in BUFFER and check for a valid encoding. */ size_t gcry_sexp_canon_len (const unsigned char *buffer, size_t length, size_t *erroff, gcry_error_t *errcode); @@ -1669,7 +1669,7 @@ gcry_error_t gcry_prime_group_generator (gcry_mpi_t *r_g, void gcry_prime_release_factors (gcry_mpi_t *factors); -/* Check wether the number X is prime. */ +/* Check whether the number X is prime. */ gcry_error_t gcry_prime_check (gcry_mpi_t x, unsigned int flags); diff --git a/src/global.c b/src/global.c index 25815dd..0796a94 100644 --- a/src/global.c +++ b/src/global.c @@ -581,7 +581,7 @@ _gcry_vcontrol (enum gcry_ctl_cmds cmd, va_list arg_ptr) _gcry_set_preferred_rng_type (0); if (!any_init_done) { - /* Not yet intialized at all. Set a flag so that we are put + /* Not yet initialized at all. Set a flag so that we are put into fips mode during initialization. */ force_fips_mode = 1; } diff --git a/src/secmem.c b/src/secmem.c index 55424f2..8eb6630 100644 --- a/src/secmem.c +++ b/src/secmem.c @@ -91,7 +91,7 @@ typedef struct pooldesc_s static pooldesc_t mainpool; -/* A couple of flags whith some beeing set early. */ +/* A couple of flags whith some being set early. */ static int disable_secmem; static int show_warning; static int not_locked; diff --git a/tests/basic.c b/tests/basic.c index 342bf73..89b7917 100644 --- a/tests/basic.c +++ b/tests/basic.c @@ -5549,7 +5549,7 @@ check_stream_cipher_large_block (void) -/* Check that our bulk encryption fucntions work properly. */ +/* Check that our bulk encryption functions work properly. */ static void check_bulk_cipher_modes (void) { diff --git a/tests/bench-slope.c b/tests/bench-slope.c index 6d93ad2..75e6e43 100644 --- a/tests/bench-slope.c +++ b/tests/bench-slope.c @@ -1345,7 +1345,7 @@ cipher_bench_one (int algo, struct bench_cipher_mode *pmode) if (mode.mode == GCRY_CIPHER_MODE_XTS && blklen != GCRY_XTS_BLOCK_LEN) return; - /* Our OCB implementaion has restrictions for block-size. */ + /* Our OCB implementation has restrictions for block-size. */ if (mode.mode == GCRY_CIPHER_MODE_OCB && blklen != GCRY_OCB_BLOCK_LEN) return; diff --git a/tests/cavs_driver.pl b/tests/cavs_driver.pl index b95e9b1..bc93feb 100755 --- a/tests/cavs_driver.pl +++ b/tests/cavs_driver.pl @@ -1381,7 +1381,7 @@ sub rsa_siggen($$$) { # RSA SigVer test # $1: Message to be verified in hex form -# $2: Hash algoritm +# $2: Hash algorithm # $3: Signature of message in hex form # $4: n of the RSA key in hex in hex form # $5: e of the RSA key in hex in hex form diff --git a/tests/hashtest.c b/tests/hashtest.c index d79d104..2ecbc1f 100644 --- a/tests/hashtest.c +++ b/tests/hashtest.c @@ -1,4 +1,4 @@ -/* hashtest.c - Check the hash fucntions +/* hashtest.c - Check the hash functions * Copyright (C) 2013 g10 Code GmbH * * This file is part of Libgcrypt. diff --git a/tests/t-lock.c b/tests/t-lock.c index 679a5f1..7e5732e 100644 --- a/tests/t-lock.c +++ b/tests/t-lock.c @@ -213,7 +213,7 @@ check_nonce_lock (void) } -/* Initialze all accounts. */ +/* Initialize all accounts. */ static void init_accounts (void) { ----------------------------------------------------------------------- Summary of changes: TODO | 2 +- acinclude.m4 | 4 ++-- build-aux/texinfo.tex | 10 +++++----- cipher/cipher-internal.h | 2 +- cipher/cipher.c | 2 +- cipher/ecc-misc.c | 2 +- cipher/primegen.c | 2 +- cipher/rsa-common.c | 2 +- cipher/rsa.c | 2 +- compat/clock.c | 2 +- configure.ac | 4 ++-- doc/gcrypt.texi | 6 +++--- mpi/alpha/README | 4 ++-- mpi/ec.c | 2 +- mpi/mips3/README | 2 +- random/random-drbg.c | 2 +- random/rndhw.c | 2 +- random/rndunix.c | 2 +- random/rndw32.c | 6 +++--- src/gcrypt.h.in | 4 ++-- src/global.c | 2 +- src/secmem.c | 2 +- tests/basic.c | 2 +- tests/bench-slope.c | 2 +- tests/cavs_driver.pl | 2 +- tests/hashtest.c | 2 +- tests/t-lock.c | 2 +- 27 files changed, 39 insertions(+), 39 deletions(-) hooks/post-receive -- The GNU crypto library http://git.gnupg.org From cvs at cvs.gnupg.org Fri Apr 28 03:08:18 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Fri, 28 Apr 2017 03:08:18 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-101-g5c8fe54 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 5c8fe5480964c282540c051b538e812851988422 (commit) from 97a2394ecafaa6f58e4a1f70ecfd04408dc15606 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 5c8fe5480964c282540c051b538e812851988422 Author: NIIBE Yutaka Date: Fri Apr 28 10:06:33 2017 +0900 Spelling fixes in docs and comments. -- In addition, fix trailing spaces in tests/inittests. GnuPG-bug-id: 3121 Reported-by: ka7 (klemens) Signed-off-by: NIIBE Yutaka diff --git a/agent/call-pinentry.c b/agent/call-pinentry.c index 6524cb1..1ff4059 100644 --- a/agent/call-pinentry.c +++ b/agent/call-pinentry.c @@ -114,7 +114,7 @@ initialize_module_call_pinentry (void) -/* This function may be called to print infromation pertaining to the +/* This function may be called to print information pertaining to the current state of this module to the log. */ void agent_query_dump_state (void) @@ -318,7 +318,7 @@ start_pinentry (ctrl_t ctrl) log_error ("error flushing pending output: %s\n", strerror (errno)); /* At least Windows XP fails here with EBADF. According to docs and Wine an fflush(NULL) is the same as _flushall. However - the Wine implementaion does not flush stdin,stdout and stderr + the Wine implementation does not flush stdin,stdout and stderr - see above. Let's try to ignore the error. */ #ifndef HAVE_W32_SYSTEM return unlock_pinentry (tmperr); @@ -911,7 +911,7 @@ pinentry_status_cb (void *opaque, const char *line) } -/* Build a SETDESC command line. This is a dedicated funcion so that +/* Build a SETDESC command line. This is a dedicated function so that * it can remove control characters which are not supported by the * current Pinentry. */ static void diff --git a/agent/call-scd.c b/agent/call-scd.c index 09ec4fd..cf61a35 100644 --- a/agent/call-scd.c +++ b/agent/call-scd.c @@ -145,7 +145,7 @@ initialize_module_call_scd (void) } -/* This function may be called to print infromation pertaining to the +/* This function may be called to print information pertaining to the current state of this module to the log. */ void agent_scd_dump_state (void) @@ -306,7 +306,7 @@ start_scd (ctrl_t ctrl) log_error ("error flushing pending output: %s\n", strerror (errno)); /* At least Windows XP fails here with EBADF. According to docs and Wine an fflush(NULL) is the same as _flushall. However - the Wime implementaion does not flush stdin,stdout and stderr + the Wime implementation does not flush stdin,stdout and stderr - see above. Lets try to ignore the error. */ #ifndef HAVE_W32_SYSTEM goto leave; diff --git a/agent/command-ssh.c b/agent/command-ssh.c index fdde0fb..57e2e42 100644 --- a/agent/command-ssh.c +++ b/agent/command-ssh.c @@ -2112,7 +2112,7 @@ ssh_receive_key (estream_t stream, gcry_sexp_t *key_new, int secret, * string private_key * * Note that the private key is the concatenation of the private - * key with the public key. Thus theres are 64 bytes; however + * key with the public key. Thus there's are 64 bytes; however * we only want the real 32 byte private key - Libgcrypt expects * this. */ @@ -3650,7 +3650,7 @@ start_command_handler_ssh (ctrl_t ctrl, gnupg_fd_t sock_client) /* Main processing loop. */ while ( !ssh_request_process (ctrl, stream_sock) ) { - /* Check wether we have reached EOF before trying to read + /* Check whether we have reached EOF before trying to read another request. */ int c; diff --git a/agent/findkey.c b/agent/findkey.c index f3c8ca9..b24d8f1 100644 --- a/agent/findkey.c +++ b/agent/findkey.c @@ -1264,7 +1264,7 @@ agent_public_key_from_file (ctrl_t ctrl, /* FIXME: The following thing is pretty ugly code; we should investigate how to make it cleaner. Probably code to handle canonical S-expressions in a memory buffer is better suited for - such a task. After all that is what we do in protect.c. Neeed + such a task. After all that is what we do in protect.c. Need to find common patterns and write a straightformward API to use them. */ assert (sizeof (size_t) <= sizeof (void*)); diff --git a/agent/pkdecrypt.c b/agent/pkdecrypt.c index f1023b4..46697ba 100644 --- a/agent/pkdecrypt.c +++ b/agent/pkdecrypt.c @@ -1,4 +1,4 @@ -/* pkdecrypt.c - public key decryption (well, acually using a secret key) +/* pkdecrypt.c - public key decryption (well, actually using a secret key) * Copyright (C) 2001, 2003 Free Software Foundation, Inc. * * This file is part of GnuPG. diff --git a/agent/pksign.c b/agent/pksign.c index f0b10e6..8faf4a4 100644 --- a/agent/pksign.c +++ b/agent/pksign.c @@ -190,7 +190,7 @@ do_encode_dsa (const byte *md, size_t mdlen, int pkalgo, gcry_sexp_t pkey, } /* ECDSA 521 is special has it is larger than the largest hash - we have (SHA-512). Thus we chnage the size for further + we have (SHA-512). Thus we change the size for further processing to 512. */ if (pkalgo == GCRY_PK_ECDSA && qbits > 512) qbits = 512; diff --git a/agent/trustlist.c b/agent/trustlist.c index 5554485..af177b2 100644 --- a/agent/trustlist.c +++ b/agent/trustlist.c @@ -612,7 +612,7 @@ agent_marktrusted (ctrl_t ctrl, const char *name, const char *fpr, int flag) /* Check whether we are at all allowed to modify the trustlist. This is useful so that the trustlist may be a symlink to a global - trustlist with only admin priviliges to modify it. Of course + trustlist with only admin privileges to modify it. Of course this is not a secure way of denying access, but it avoids the usual clicking on an Okay button most users are used to. */ fname = make_filename_try (gnupg_homedir (), "trustlist.txt", NULL); diff --git a/build-aux/texinfo.tex b/build-aux/texinfo.tex index a181898..5a17f97 100644 --- a/build-aux/texinfo.tex +++ b/build-aux/texinfo.tex @@ -415,7 +415,7 @@ \def\argremovecomment#1\comment#2\ArgTerm{\argremovec #1\c\ArgTerm} \def\argremovec#1\c#2\ArgTerm{\argcheckspaces#1\^^M\ArgTerm} -% Each occurence of `\^^M' or `\^^M' is replaced by a single space. +% Each occurrence of `\^^M' or `\^^M' is replaced by a single space. % % \argremovec might leave us with trailing space, e.g., % @end itemize @c foo @@ -440,7 +440,7 @@ % to get _exactly_ the rest of the line, we had to prevent such situation. % We prepended an \empty token at the very beginning and we expand it now, % just before passing the control to \argtorun. -% (Similarily, we have to think about #3 of \argcheckspacesY above: it is +% (Similarly, we have to think about #3 of \argcheckspacesY above: it is % either the null string, or it ends with \^^M---thus there is no danger % that a pair of braces would be stripped. % @@ -497,7 +497,7 @@ % used to check whether the current environment is the one expected. % % Non-false conditionals (@iftex, @ifset) don't fit into this, so they -% are not treated as enviroments; they don't open a group. (The +% are not treated as environments; they don't open a group. (The % implementation of @end takes care not to call \endgroup in this % special case.) @@ -520,7 +520,7 @@ \fi } -% Evironment mismatch, #1 expected: +% Environment mismatch, #1 expected: \def\badenverr{% \errhelp = \EMsimple \errmessage{This command can appear only \inenvironment\temp, @@ -7034,7 +7034,7 @@ end % In case a @footnote appears in a vbox, save the footnote text and create % the real \insert just after the vbox finished. Otherwise, the insertion % would be lost. -% Similarily, if a @footnote appears inside an alignment, save the footnote +% Similarly, if a @footnote appears inside an alignment, save the footnote % text to a box and make the \insert when a row of the table is finished. % And the same can be done for other insert classes. --kasal, 16nov03. diff --git a/common/ChangeLog-2011.include b/common/ChangeLog-2011.include index b5a9a5e..b9ca861 100644 --- a/common/ChangeLog-2011.include +++ b/common/ChangeLog-2011.include @@ -250,7 +250,7 @@ 2001-12-19 Werner Koch * util.h [CYGWIN32]: Allow this as an alias for MINGW32. Include - stdarg.h becuase we use the va_list type. By Disastry. + stdarg.h because we use the va_list type. By Disastry. 2001-09-28 Werner Koch diff --git a/common/audit.c b/common/audit.c index 7d545a3..179bf72 100644 --- a/common/audit.c +++ b/common/audit.c @@ -716,7 +716,7 @@ list_cert (audit_ctx_t ctx, ksba_cert_t cert, int with_subj) /* List the chain of certificates from STARTITEM up to STOPEVENT. The - certifcates are written out as comments. */ + certificates are written out as comments. */ static void list_certchain (audit_ctx_t ctx, log_item_t startitem, audit_event_t stopevent) { diff --git a/common/call-gpg.c b/common/call-gpg.c index d42325a..c1472e9 100644 --- a/common/call-gpg.c +++ b/common/call-gpg.c @@ -75,7 +75,7 @@ start_gpg (ctrl_t ctrl, const char *gpg_program, strlist_t gpg_arguments, return err; } - /* The first time we are used, intialize the gpg_program variable. */ + /* The first time we are used, initialize the gpg_program variable. */ if ( !gpg_program || !*gpg_program ) gpg_program = gnupg_module_name (GNUPG_MODULE_NAME_GPG); diff --git a/common/dotlock.c b/common/dotlock.c index cbbd0f3..5227bb6 100644 --- a/common/dotlock.c +++ b/common/dotlock.c @@ -332,7 +332,7 @@ # endif #endif -/* In GnuPG we use wrappers around the malloc fucntions. If they are +/* In GnuPG we use wrappers around the malloc functions. If they are not defined we assume that this code is used outside of GnuPG and fall back to the regular malloc functions. */ #ifndef xtrymalloc diff --git a/common/exechelp.h b/common/exechelp.h index 6f2653b..2b40ba0 100644 --- a/common/exechelp.h +++ b/common/exechelp.h @@ -115,7 +115,7 @@ gpg_error_t gnupg_create_pipe (int filedes[2]); GNUPG_SPAWN_RUN_ASFW On W32 (but not on W32CE) run AllowSetForegroundWindow for the child. Note that due to unknown problems this actually - allows SetForegroundWindow for all childs of this process. + allows SetForegroundWindow for all children of this process. */ gpg_error_t @@ -162,7 +162,7 @@ gpg_error_t gnupg_spawn_process_fd (const char *pgmname, Other error codes may be returned as well. Unless otherwise noted, -1 will be stored at R_EXITCODE. R_EXITCODE may be passed as NULL - if the exit code is not required (in that case an error messge will + if the exit code is not required (in that case an error message will be printed). Note that under Windows PID is not the process id but the handle of the process. */ gpg_error_t gnupg_wait_process (const char *pgmname, pid_t pid, int hang, diff --git a/common/exectool.c b/common/exectool.c index c9e0020..3458de4 100644 --- a/common/exectool.c +++ b/common/exectool.c @@ -430,7 +430,7 @@ gnupg_exec_tool_stream (const char *pgmname, const char *argv[], /* Now read as long as we have something to poll. We continue reading even after EOF or error on stdout so that we get the - other error messages or remaining outut. */ + other error messages or remaining output. */ while (! (fds[1].ignore && fds[2].ignore)) { count = es_poll (fds, DIM(fds), -1); diff --git a/common/init.h b/common/init.h index 28462a7..3a5beca 100644 --- a/common/init.h +++ b/common/init.h @@ -1,4 +1,4 @@ -/* init.h - Definitions for init fucntions. +/* init.h - Definitions for init functions. * Copyright (C) 2007, 2012 Free Software Foundation, Inc. * * This file is part of GnuPG. diff --git a/common/openpgp-oid.c b/common/openpgp-oid.c index e7c68f2..d800e7d 100644 --- a/common/openpgp-oid.c +++ b/common/openpgp-oid.c @@ -141,7 +141,7 @@ openpgp_oid_from_str (const char *string, gcry_mpi_t *r_mpi) if (arcno == 1) { if (val > 2) - break; /* Not allowed, error catched below. */ + break; /* Not allowed, error caught below. */ val1 = val; } else if (arcno == 2) diff --git a/common/recsel.c b/common/recsel.c index 66c1c5e..b2b302b 100644 --- a/common/recsel.c +++ b/common/recsel.c @@ -602,7 +602,7 @@ recsel_select (recsel_expr_t selector, if (result) { - /* This expression evaluated to true. See wether there are + /* This expression evaluated to true. See whether there are remaining expressions in this conjunction. */ if (!se->next || se->next->disjun) break; /* All expressions are true. Return True. */ diff --git a/common/sexputil.c b/common/sexputil.c index a8dc1a5..f30790a 100644 --- a/common/sexputil.c +++ b/common/sexputil.c @@ -29,7 +29,7 @@ */ /* This file implements a few utility functions useful when working - with canonical encrypted S-expresions (i.e. not the S-exprssion + with canonical encrypted S-expressions (i.e. not the S-exprssion objects from libgcrypt). */ #include @@ -266,7 +266,7 @@ cmp_simple_canon_sexp (const unsigned char *a_orig, /* Create a simple S-expression from the hex string at LINE. Returns a newly allocated buffer with that canonical encoded S-expression or NULL in case of an error. On return the number of characters - scanned in LINE will be stored at NSCANNED. This fucntions stops + scanned in LINE will be stored at NSCANNED. This functions stops converting at the first character not representing a hexdigit. Odd numbers of hex digits are allowed; a leading zero is then assumed. If no characters have been found, NULL is returned.*/ diff --git a/common/simple-pwquery.h b/common/simple-pwquery.h index 772aa39..9bbc53f 100644 --- a/common/simple-pwquery.h +++ b/common/simple-pwquery.h @@ -1,4 +1,4 @@ -/* simple-pwquery.c - A simple password query cleint for gpg-agent +/* simple-pwquery.c - A simple password query client for gpg-agent * Copyright (C) 2002 Free Software Foundation, Inc. * * This file is part of GnuPG. diff --git a/common/sysutils.c b/common/sysutils.c index a796677..ea0acdb 100644 --- a/common/sysutils.c +++ b/common/sysutils.c @@ -416,7 +416,7 @@ translate_sys2libc_fd_int (int fd, int for_write) /* Check whether FNAME has the form "-&nnnn", where N is a non-zero * number. Returns this number or -1 if it is not the case. If the * caller wants to use the file descriptor for writing FOR_WRITE shall - * be set to 1. If NOTRANSLATE is set the Windows spefic mapping is + * be set to 1. If NOTRANSLATE is set the Windows specific mapping is * not done. */ int check_special_filename (const char *fname, int for_write, int notranslate) diff --git a/common/t-session-env.c b/common/t-session-env.c index aa9d596..e2b942c 100644 --- a/common/t-session-env.c +++ b/common/t-session-env.c @@ -103,7 +103,7 @@ test_all (void) if (gpg_err_code (err) != GPG_ERR_INV_VALUE) fail (err); - /* Delete some nonexistant variables. */ + /* Delete some nonexistent variables. */ err = session_env_putenv (se, "A"); if (err) fail (err); diff --git a/configure.ac b/configure.ac index 494e444..9395fb8 100644 --- a/configure.ac +++ b/configure.ac @@ -857,7 +857,7 @@ AC_SUBST(LIBUSB_LIBS) AC_SUBST(LIBUSB_CPPFLAGS) # -# Check wether it is necessary to link against libdl. +# Check whether it is necessary to link against libdl. # (For example to load libpcsclite) # gnupg_dlopen_save_libs="$LIBS" @@ -1393,7 +1393,7 @@ AC_CHECK_TYPES([struct sigaction, sigset_t],,,[#include ]) # Dirmngr requires mmap on Unix systems. if test $ac_cv_func_mmap != yes -a $mmap_needed = yes; then - AC_MSG_ERROR([[Sorry, the current implemenation requires mmap.]]) + AC_MSG_ERROR([[Sorry, the current implementation requires mmap.]]) fi @@ -1570,7 +1570,7 @@ if test "$GCC" = yes; then mycflags= mycflags_save=$CFLAGS - # Check whether gcc does not emit a diagnositc for unknow -Wno-* + # Check whether gcc does not emit a diagnositc for unknown -Wno-* # options. This is the case for gcc >= 4.6 AC_MSG_CHECKING([if gcc ignores unknown -Wno-* options]) AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ diff --git a/dirmngr/certcache.c b/dirmngr/certcache.c index c3f3427..b4e5381 100644 --- a/dirmngr/certcache.c +++ b/dirmngr/certcache.c @@ -97,7 +97,7 @@ static unsigned int total_nonperm_certificates; #ifdef HAVE_W32_SYSTEM /* We load some functions dynamically. Provide typedefs for tehse - * fucntions. */ + * functions. */ typedef HCERTSTORE (WINAPI *CERTOPENSYSTEMSTORE) (HCRYPTPROV hProv, LPCSTR szSubsystemProtocol); typedef PCCERT_CONTEXT (WINAPI *CERTENUMCERTIFICATESINSTORE) diff --git a/dirmngr/dns-stuff.c b/dirmngr/dns-stuff.c index 0635115..a6c14cd 100644 --- a/dirmngr/dns-stuff.c +++ b/dirmngr/dns-stuff.c @@ -526,7 +526,7 @@ libdns_init (void) /* No DNS resolution type found in the list. This might be * due to systemd based systems which allow for custom * keywords which are not known to us and thus we do not - * know whether DNS is wanted or not. Becuase DNS is + * know whether DNS is wanted or not. Because DNS is * important for our infrastructure, we forcefully append * DNS to the end of the list. */ if (strlen (ld.resolv_conf->lookup)+2 < sizeof ld.resolv_conf->lookup) diff --git a/dirmngr/dns-stuff.h b/dirmngr/dns-stuff.h index adb0b80..612b2e5 100644 --- a/dirmngr/dns-stuff.h +++ b/dirmngr/dns-stuff.h @@ -154,7 +154,7 @@ int is_onion_address (const char *name); /* Get the canonical name for NAME. */ gpg_error_t get_dns_cname (const char *name, char **r_cname); -/* Return a CERT record or an arbitray RR. */ +/* Return a CERT record or an arbitrary RR. */ gpg_error_t get_dns_cert (const char *name, int want_certtype, void **r_key, size_t *r_keylen, unsigned char **r_fpr, size_t *r_fprlen, diff --git a/dirmngr/dns.c b/dirmngr/dns.c index 5b8f14f..c660cf5 100644 --- a/dirmngr/dns.c +++ b/dirmngr/dns.c @@ -4263,7 +4263,7 @@ size_t dns_txt_print(void *_dst, size_t lim, struct dns_txt *txt) { /* Some of the function pointers of DNS_RRTYPES are initialized with - * slighlly different fucntions, thus we can't use prototypes. */ + * slighlly different functions, thus we can't use prototypes. */ DNS_PRAGMA_PUSH #if __clang__ #pragma clang diagnostic ignored "-Wstrict-prototypes" diff --git a/dirmngr/http.c b/dirmngr/http.c index e74d051..f461e5d 100644 --- a/dirmngr/http.c +++ b/dirmngr/http.c @@ -31,7 +31,7 @@ */ /* Simple HTTP client implementation. We try to keep the code as - self-contained as possible. There are some contraints however: + self-contained as possible. There are some constraints however: - estream is required. We now require estream because it provides a very useful and portable asprintf implementation and the fopencookie @@ -1347,7 +1347,7 @@ do_parse_uri (parsed_uri_t uri, int only_local_part, if ((n = remove_escapes (uri->host)) < 0) return GPG_ERR_BAD_URI; if (n != strlen (uri->host)) - return GPG_ERR_BAD_URI; /* Hostname incudes a Nul. */ + return GPG_ERR_BAD_URI; /* Hostname includes a Nul. */ p = p2 ? p2 : NULL; } else if (uri->is_http) @@ -2185,7 +2185,7 @@ store_header (http_t hd, char *line) if (*line == ' ' || *line == '\t') { /* Continuation. This won't happen too often as it is not - recommended. We use a straightforward implementaion. */ + recommended. We use a straightforward implementation. */ if (!hd->headers) return GPG_ERR_PROTOCOL_VIOLATION; n += strlen (hd->headers->value); @@ -2468,7 +2468,7 @@ start_server () /* Return true if SOCKS shall be used. This is the case if tor_mode * is enabled and the desired address is not the loopback address. - * This function is basically a copy of the same internal fucntion in + * This function is basically a copy of the same internal function in * Libassuan. */ static int use_socks (struct sockaddr_storage *addr) diff --git a/dirmngr/ldap-wrapper.c b/dirmngr/ldap-wrapper.c index ac4964a..8b53bd6 100644 --- a/dirmngr/ldap-wrapper.c +++ b/dirmngr/ldap-wrapper.c @@ -107,7 +107,7 @@ struct wrapper_context_s -/* We keep a global list of spawed wrapper process. A separate thread +/* We keep a global list of spawned wrapper process. A separate thread makes use of this list to log error messages and to watch out for finished processes. */ static struct wrapper_context_s *wrapper_list; diff --git a/dirmngr/loadswdb.c b/dirmngr/loadswdb.c index 5a7778d..7791f68 100644 --- a/dirmngr/loadswdb.c +++ b/dirmngr/loadswdb.c @@ -32,7 +32,7 @@ /* Get the time from the current swdb file and store it at R_FILEDATE * and R_VERIFIED. If the file does not exist 0 is stored at there. - * The function returns 0 on sucess or an error code. */ + * The function returns 0 on success or an error code. */ static gpg_error_t time_of_saved_swdb (const char *fname, time_t *r_filedate, time_t *r_verified) { @@ -59,7 +59,7 @@ time_of_saved_swdb (const char *fname, time_t *r_filedate, time_t *r_verified) goto leave; } - /* Note that the parser uses the first occurance of a matching + /* Note that the parser uses the first occurrence of a matching * values and ignores possible duplicated values. */ maxlen = 2048; /* Set limit. */ while ((len = es_read_line (fp, &line, &length_of_line, &maxlen)) > 0) diff --git a/dirmngr/server.c b/dirmngr/server.c index f4aeadb..237cb52 100644 --- a/dirmngr/server.c +++ b/dirmngr/server.c @@ -1413,7 +1413,7 @@ lookup_cert_by_pattern (assuan_context_t ctx, char *line, } } - /* First look through the internal cache. The certifcates returned + /* First look through the internal cache. The certificates returned here are not counted towards the truncation limit. */ if (single && !cache_only) ; /* Do not read from the local cache in this case. */ @@ -1940,7 +1940,7 @@ ensure_keyserver (ctrl_t ctrl) } } - /* Decide which to use. Note that the sesssion has no keyservers + /* Decide which to use. Note that the session has no keyservers yet set. */ if (onion_items && !onion_items->next && plain_items && !plain_items->next) { @@ -2328,7 +2328,7 @@ cmd_ks_put (assuan_context_t ctx, char *line) } /* Ask for the key meta data. Not actually needed for HKP servers - but we do it anyway to test the client implementaion. */ + but we do it anyway to test the client implementation. */ err = assuan_inquire (ctx, "KEYBLOCK_INFO", &info, &infolen, MAX_KEYBLOCK_LENGTH); if (err) diff --git a/dirmngr/validate.c b/dirmngr/validate.c index 3671a8b..371852b 100644 --- a/dirmngr/validate.c +++ b/dirmngr/validate.c @@ -147,7 +147,7 @@ unknown_criticals (ksba_cert_t cert) } } if (err && gpg_err_code (err) != GPG_ERR_EOF) - rc = err; /* Such an error takes precendence. */ + rc = err; /* Such an error takes precedence. */ return rc; } @@ -344,7 +344,7 @@ is_root_cert (ksba_cert_t cert, const char *issuerdn, const char *subjectdn) { if (gpg_err_code (err) == GPG_ERR_NO_DATA) return 1; /* Yes. Without a authorityKeyIdentifier this needs - to be the Root certifcate (our trust anchor). */ + to be the Root certificate (our trust anchor). */ log_error ("error getting authorityKeyIdentifier: %s\n", gpg_strerror (err)); return 0; /* Well, it is broken anyway. Return No. */ @@ -619,7 +619,7 @@ validate_cert_chain (ctrl_t ctrl, ksba_cert_t cert, ksba_isotime_t r_exptime, log_info ("root certificate is good and trusted\n"); } - break; /* Okay: a self-signed certicate is an end-point. */ + break; /* Okay: a self-signed certificate is an end-point. */ } /* To avoid loops, we use an arbitrary limit on the length of diff --git a/doc/HACKING b/doc/HACKING index fc0c3f4..62a6f95 100644 --- a/doc/HACKING +++ b/doc/HACKING @@ -348,7 +348,7 @@ Note that such a comment will be removed if the git commit option - g10/mdfilter.c :: Filter to calculate hashs - g10/textfilter.c :: Filter to handle CR/LF and trailing white space - g10/cipher.c :: En-/Decryption filter - - g10/misc.c :: Utlity functions + - g10/misc.c :: Utility functions - g10/options.h :: Structure with all the command line options and related constants - g10/openfile.c :: Create/Open Files @@ -358,7 +358,7 @@ Note that such a comment will be removed if the git commit option - g10/pubkey-enc.c :: Process a public key encoded packet. - g10/seckey-cert.c :: Not anymore used - - g10/seskey.c :: Make sesssion keys etc. + - g10/seskey.c :: Make session keys etc. - g10/import.c :: Import keys into our key storage. - g10/export.c :: Export keys to the OpenPGP format. - g10/sign.c :: Create signature and optionally encrypt. diff --git a/doc/dirmngr.texi b/doc/dirmngr.texi index 027bb94..22a7943 100644 --- a/doc/dirmngr.texi +++ b/doc/dirmngr.texi @@ -1141,7 +1141,7 @@ as a binary blob. @c recursive process because a CRL has to be checked for each certificate @c in the chain except for the root certificate, of which we already know @c that it is trusted and we avoid checking a CRL here due to common - at c setup problems and the assumption that a revoked root certifcate has + at c setup problems and the assumption that a revoked root certificate has @c been removed from the list of trusted certificates. @c @c diff --git a/doc/gpg-agent.texi b/doc/gpg-agent.texi index 6aab646..edcdf1a 100644 --- a/doc/gpg-agent.texi +++ b/doc/gpg-agent.texi @@ -1323,7 +1323,7 @@ This command adds a passphrase to the cache for the specified @var{keygrip}. PRESET_PASSPHRASE [--inquire] [] @end example -The passphrase is a hexidecimal string when specified. When not specified, the +The passphrase is a hexadecimal string when specified. When not specified, the passphrase will be retrieved from the pinentry module unless the @option{--inquire} option was specified in which case the passphrase will be retrieved from the client. diff --git a/doc/gpgsm.texi b/doc/gpgsm.texi index 1d00839..c3f5aac 100644 --- a/doc/gpgsm.texi +++ b/doc/gpgsm.texi @@ -1564,8 +1564,8 @@ to @var{value}. This option overrides the command line option @option{--include-certs}. A @var{value} of -2 includes all certificates except for the root certificate, -1 includes all -certicates, 0 does not include any certicates, 1 includes only the -signers certicate and all other positive values include up to +certificates, 0 does not include any certificates, 1 includes only the +signers certificate and all other positive values include up to @var{value} certificates starting with the signer cert. @item list-mode diff --git a/g10/call-agent.c b/g10/call-agent.c index 0ba9787..be8c33d 100644 --- a/g10/call-agent.c +++ b/g10/call-agent.c @@ -758,7 +758,7 @@ agent_keytocard (const char *hexgrip, int keyno, int force, /* Call the agent to retrieve a data object. This function returns the data in the same structure as used by the learn command. It is - allowed to update such a structure using this commmand. */ + allowed to update such a structure using this command. */ int agent_scd_getattr (const char *name, struct agent_card_info_s *info) { diff --git a/g10/getkey.c b/g10/getkey.c index 75b8564..d8c81c9 100644 --- a/g10/getkey.c +++ b/g10/getkey.c @@ -368,7 +368,7 @@ cache_user_id (KBNODE keyblock) /* Disable and drop the public key cache (which is filled by cache_public_key and get_pubkey). Note: there is currently no way - to reenable this cache. */ + to re-enable this cache. */ void getkey_disable_caches () { @@ -413,7 +413,7 @@ pubkeys_free (pubkey_t keys) } } -/* Returns all keys that match the search specfication SEARCH_TERMS. +/* Returns all keys that match the search specification SEARCH_TERMS. This function also checks for and warns about duplicate entries in the keydb, which can occur if the user has configured multiple diff --git a/g10/gpg.c b/g10/gpg.c index d193cb2..ecddb20 100644 --- a/g10/gpg.c +++ b/g10/gpg.c @@ -2110,7 +2110,7 @@ parse_compliance_option (const char *string) -/* Helper to set compliance related options. This is a separte +/* Helper to set compliance related options. This is a separate * function so that it can also be used by the --compliance option * parser. */ static void diff --git a/g10/import.c b/g10/import.c index ba1c44a..a942c2e 100644 --- a/g10/import.c +++ b/g10/import.c @@ -755,7 +755,7 @@ valid_keyblock_packet (int pkttype) /**************** * Read the next keyblock from stream A. * Meta data (ring trust packets) are only considered of WITH_META is set. - * PENDING_PKT should be initialzed to NULL and not changed by the caller. + * PENDING_PKT should be initialized to NULL and not changed by the caller. * Return: 0 = okay, -1 no more blocks or another errorcode. * The int at at R_V3KEY counts the number of unsupported v3 * keyblocks. @@ -2681,7 +2681,7 @@ chk_self_sigs (ctrl_t ctrl, kbnode_t keyblock, u32 *keyid, int *non_self) /* Delete all parts which are invalid and those signatures whose - * public key algorithm is not available in this implemenation; but + * public key algorithm is not available in this implementation; but * consider RSA as valid, because parse/build_packets knows about it. * * Returns: True if at least one valid user-id is left over. diff --git a/g10/keydb.h b/g10/keydb.h index 7f42738..1da93a7 100644 --- a/g10/keydb.h +++ b/g10/keydb.h @@ -109,7 +109,7 @@ struct pubkey_find_info { }; -/* Helper type for preference fucntions. */ +/* Helper type for preference functions. */ union pref_hint { int digest_length; @@ -301,7 +301,7 @@ void pubkey_free (pubkey_t key); /* Free a list of public keys. */ void pubkeys_free (pubkey_t keys); -/* Returns all keys that match the search specfication SEARCH_TERMS. +/* Returns all keys that match the search specification SEARCH_TERMS. The returned keys should be freed using pubkeys_free. */ gpg_error_t get_pubkeys (ctrl_t ctrl, diff --git a/g10/keyedit.c b/g10/keyedit.c index a7a5f72..ba08d88 100644 --- a/g10/keyedit.c +++ b/g10/keyedit.c @@ -1593,7 +1593,7 @@ sign_uids (ctrl_t ctrl, estream_t fp, continue; /* Now we can sign the user ids. */ - reloop: /* (Must use this, because we are modifing the list.) */ + reloop: /* (Must use this, because we are modifying the list.) */ primary_pk = NULL; for (node = keyblock; node; node = node->next) { @@ -4104,7 +4104,7 @@ show_key_with_all_names (ctrl_t ctrl, estream_t fp, && pk->seckey_info->is_protected && pk->seckey_info->s2k.mode == 1002) { - /* FIXME: Check wether this code path is still used. */ + /* FIXME: Check whether this code path is still used. */ tty_fprintf (fp, "%*s%s", opt.legacy_list_mode? 21:5, "", _("card-no: ")); if (pk->seckey_info->ivlen == 16 @@ -6361,7 +6361,7 @@ menu_revsig (ctrl_t ctrl, kbnode_t keyblock) } /* now we can sign the user ids */ -reloop: /* (must use this, because we are modifing the list) */ +reloop: /* (must use this, because we are modifying the list) */ primary_pk = keyblock->pkt->pkt.public_key; for (node = keyblock; node; node = node->next) { @@ -6641,7 +6641,7 @@ menu_revsubkey (ctrl_t ctrl, kbnode_t pub_keyblock) if (!reason) return 0; /* User decided to cancel. */ - reloop: /* (better this way because we are modifing the keyring) */ + reloop: /* (better this way because we are modifying the keyring) */ mainpk = pub_keyblock->pkt->pkt.public_key; for (node = pub_keyblock; node; node = node->next) { diff --git a/g10/keylist.c b/g10/keylist.c index c75856f..e2b8fef 100644 --- a/g10/keylist.c +++ b/g10/keylist.c @@ -596,7 +596,7 @@ list_one (ctrl_t ctrl, strlist_t names, int secret, int mark_secret) listctx.check_sigs = 1; /* fixme: using the bynames function has the disadvantage that we - * don't know wether one of the names given was not found. OTOH, + * don't know whether one of the names given was not found. OTOH, * this function has the advantage to list the names in the * sequence as defined by the keyDB and does not duplicate * outputs. A solution could be do test whether all given have diff --git a/g10/openfile.c b/g10/openfile.c index 2257107..80d86cf 100644 --- a/g10/openfile.c +++ b/g10/openfile.c @@ -127,7 +127,7 @@ make_outfile_name (const char *iname) /* Ask for an output filename; use the given one as default. Return NULL if no file has been given or if it is not possible to ask the - user. NAME is the template len which might conatin enbedded Nuls. + user. NAME is the template len which might contain enbedded Nuls. NAMELEN is its actual length. */ char * diff --git a/g10/packet.h b/g10/packet.h index 3cb1e3b..a10495c 100644 --- a/g10/packet.h +++ b/g10/packet.h @@ -492,7 +492,7 @@ typedef struct { * implementation defined. GnuPG uses this to cache signature * verification status and since 2.1.18 also to convey information * about the origin of a key. Note that this packet is not part - * struct packet_struct becuase we use it only local in the packet + * struct packet_struct because we use it only local in the packet * parser and builder. */ typedef struct { unsigned int trustval; diff --git a/g10/seskey.c b/g10/seskey.c index 8617938..1549017 100644 --- a/g10/seskey.c +++ b/g10/seskey.c @@ -1,4 +1,4 @@ -/* seskey.c - make sesssion keys etc. +/* seskey.c - make session keys etc. * Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, * 2006, 2009, 2010 Free Software Foundation, Inc. * @@ -311,7 +311,7 @@ encode_md_value (PKT_public_key *pk, gcry_md_hd_t md, int hash_algo) /* ECDSA 521 is special has it is larger than the largest hash - we have (SHA-512). Thus we chnage the size for further + we have (SHA-512). Thus we change the size for further processing to 512. */ if (pk->pubkey_algo == PUBKEY_ALGO_ECDSA && qbits > 512) qbits = 512; diff --git a/g10/tdbio.c b/g10/tdbio.c index c780789..7572b9a 100644 --- a/g10/tdbio.c +++ b/g10/tdbio.c @@ -1707,7 +1707,7 @@ tdbio_delete_record (ctrl_t ctrl, ulong recnum) if (rc) return rc; - /* Now we can chnage it to a free record. */ + /* Now we can change it to a free record. */ rc = tdbio_read_record (0, &vr, RECTYPE_VER); if (rc) log_fatal (_("%s: error reading version record: %s\n"), diff --git a/g10/tofu.c b/g10/tofu.c index 7bef27b..1437a50 100644 --- a/g10/tofu.c +++ b/g10/tofu.c @@ -1941,7 +1941,7 @@ ask_about_binding (ctrl_t ctrl, /* I think showing the large message once is sufficient. If we * would move it right before the cpr_get many lines will scroll * away and the user might not realize that he merely entered a - * wrong choise (because he does not see that either). As a small + * wrong choice (because he does not see that either). As a small * benefit we allow C-L to redisplay everything. */ tty_printf ("%s", prompt); @@ -2239,7 +2239,7 @@ build_conflict_set (ctrl_t ctrl, tofu_dbs_t dbs, if (!die) { /*err = gpg_error_from_syserror ();*/ - xoutofcore (); /* Fixme: Let the fucntion return an error. */ + xoutofcore (); /* Fixme: Let the function return an error. */ } for (i = 0; i < conflict_set_count; i ++) diff --git a/g10/trustdb.c b/g10/trustdb.c index f8a0bc9..e2c3bda 100644 --- a/g10/trustdb.c +++ b/g10/trustdb.c @@ -1512,7 +1512,7 @@ sanitize_regexp(const char *old) /* There are basically two commonly-used regexps here. GPG and most versions of PGP use "<[^>]+[@.]example\.com>$" and PGP (9) - command line uses "example.com" (i.e. whatever the user specfies, + command line uses "example.com" (i.e. whatever the user specifies, and we can't expect users know to use "\." instead of "."). So here are the rules: we're allowed to start with "<[^>]+[@.]" and end with ">$" or start and end with nothing. In between, the diff --git a/g10/verify.c b/g10/verify.c index 4399f71..caeb1a2 100644 --- a/g10/verify.c +++ b/g10/verify.c @@ -60,7 +60,7 @@ verify_signatures (ctrl_t ctrl, int nfiles, char **files ) /* Decide whether we should handle a detached or a normal signature, * which is needed so that the code later can hash the correct data and * not have a normal signature act as detached signature and ignoring the - * indended signed material from the 2nd file or stdin. + * intended signed material from the 2nd file or stdin. * 1. gpg conttype == CONTTYPE_DM_CRYPT) { /* */ diff --git a/g13/create.c b/g13/create.c index d55b859..d773dfa 100644 --- a/g13/create.c +++ b/g13/create.c @@ -217,7 +217,7 @@ write_keyblob (const char *filename, -/* Create a new container under the name FILENAME and intialize it +/* Create a new container under the name FILENAME and initialize it using the current settings. If the file already exists an error is returned. */ gpg_error_t diff --git a/g13/g13-common.h b/g13/g13-common.h index 1fe80d3..acf25b8 100644 --- a/g13/g13-common.h +++ b/g13/g13-common.h @@ -61,7 +61,7 @@ struct const char *agent_program; /* Filename of the GPG program. Unless set via an program option it - is initialzed at the first engine startup to the standard gpg + is initialized at the first engine startup to the standard gpg filename. */ const char *gpg_program; diff --git a/kbx/keybox-blob.c b/kbx/keybox-blob.c index 82f1cfe..6874212 100644 --- a/kbx/keybox-blob.c +++ b/kbx/keybox-blob.c @@ -65,7 +65,7 @@ 1 = The only defined value - u16 Blob flags bit 0 = contains secret key material (not used) - bit 1 = ephemeral blob (e.g. used while quering external resources) + bit 1 = ephemeral blob (e.g. used while querying external resources) - u32 Offset to the OpenPGP keyblock or the X.509 DER encoded certificate - u32 The length of the keyblock or certificate @@ -229,7 +229,7 @@ struct keyboxblob { -/* A simple implemention of a dynamic buffer. Use init_membuf() to +/* A simple implementation of a dynamic buffer. Use init_membuf() to create a buffer, put_membuf to append bytes and get_membuf to release and return the buffer. Allocation errors are detected but only returned at the final get_membuf(), this helps not to clutter diff --git a/kbx/keybox-defs.h b/kbx/keybox-defs.h index 154d4fc..fd331f1 100644 --- a/kbx/keybox-defs.h +++ b/kbx/keybox-defs.h @@ -33,7 +33,7 @@ #include /* off_t */ -/* We include the type defintions from jnlib instead of defining our +/* We include the type definitions from jnlib instead of defining our owns here. This will not allow us build KBX in a standalone way but there is currently no need for it anyway. Same goes for stringhelp.h which for example provides a replacement for stpcpy - diff --git a/kbx/keybox-openpgp.c b/kbx/keybox-openpgp.c index d82c2cb..0ba0b9a 100644 --- a/kbx/keybox-openpgp.c +++ b/kbx/keybox-openpgp.c @@ -296,7 +296,7 @@ parse_key (const unsigned char *data, size_t datalen, } else { - /* Its a pitty that we need to prefix the buffer with the tag + /* Its a pity that we need to prefix the buffer with the tag and a length header: We can't simply pass it to the fast hashing function for that reason. It might be a good idea to have a scatter-gather enabled hash function. What we do here diff --git a/m4/lib-link.m4 b/m4/lib-link.m4 index e3d26fc..9bdaffa 100644 --- a/m4/lib-link.m4 +++ b/m4/lib-link.m4 @@ -173,7 +173,7 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY], fi ]) dnl Search the library and its dependencies in $additional_libdir and - dnl $LDFLAGS. Using breadth-first-seach. + dnl $LDFLAGS. Using breadth-first-search. LIB[]NAME= LTLIB[]NAME= INC[]NAME= diff --git a/m4/po.m4 b/m4/po.m4 index 201c7ca..354981d 100644 --- a/m4/po.m4 +++ b/m4/po.m4 @@ -129,12 +129,12 @@ changequote([,])dnl test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete" fi ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"` - # Hide the ALL_LINGUAS assigment from automake < 1.5. + # Hide the ALL_LINGUAS assignment from automake < 1.5. eval 'ALL_LINGUAS''=$ALL_LINGUAS_' POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" else # The set of available languages was given in configure.in. - # Hide the ALL_LINGUAS assigment from automake < 1.5. + # Hide the ALL_LINGUAS assignment from automake < 1.5. eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS' fi # Compute POFILES @@ -315,7 +315,7 @@ changequote([,])dnl sed_x_LINGUAS=`$gt_echo "$sed_x_variable" | sed -e '/^ *#/d' -e 's/VARIABLE/LINGUAS/g'` ALL_LINGUAS_=`sed -n -e "$sed_x_LINGUAS" < "$ac_file"` fi - # Hide the ALL_LINGUAS assigment from automake < 1.5. + # Hide the ALL_LINGUAS assignment from automake < 1.5. eval 'ALL_LINGUAS''=$ALL_LINGUAS_' # Compute POFILES # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po) diff --git a/scd/apdu.c b/scd/apdu.c index 65f770d..97624eb 100644 --- a/scd/apdu.c +++ b/scd/apdu.c @@ -94,7 +94,7 @@ struct reader_table_s { int used; /* True if slot is used. */ unsigned short port; /* Port number: 0 = unused, 1 - dev/tty */ - /* Function pointers intialized to the various backends. */ + /* Function pointers initialized to the various backends. */ int (*connect_card)(int); int (*disconnect_card)(int); int (*close_reader)(int); @@ -230,7 +230,7 @@ static npth_mutex_t reader_table_lock; #define PCSC_E_SERVICE_STOPPED 0x8010001E #define PCSC_W_REMOVED_CARD 0x80100069 -/* Fix pcsc-lite ABI incompatibilty. */ +/* Fix pcsc-lite ABI incompatibility. */ #ifndef SCARD_CTL_CODE #ifdef _WIN32 #include diff --git a/scd/app-openpgp.c b/scd/app-openpgp.c index 66b235d..25f3dbe 100644 --- a/scd/app-openpgp.c +++ b/scd/app-openpgp.c @@ -1588,7 +1588,7 @@ read_public_key (app_t app, ctrl_t ctrl, u32 created_at, int keyno, } -/* Get the public key for KEYNO and store it as an S-expresion with +/* Get the public key for KEYNO and store it as an S-expression with the APP handle. On error that field gets cleared. If we already know about the public key we will just return. Note that this does not mean a key is available; this is solely indicated by the @@ -1596,7 +1596,7 @@ read_public_key (app_t app, ctrl_t ctrl, u32 created_at, int keyno, Note that GnuPG 1.x does not need this and it would be too time consuming to send it just for the fun of it. However, given that we - use the same code in gpg 1.4, we can't use the gcry S-expresion + use the same code in gpg 1.4, we can't use the gcry S-expression here but need to open encode it. */ #if GNUPG_MAJOR_VERSION > 1 static gpg_error_t diff --git a/scd/app.c b/scd/app.c index 044bb1d..ec04b40 100644 --- a/scd/app.c +++ b/scd/app.c @@ -99,7 +99,7 @@ app_dump_state (void) npth_mutex_unlock (&app_list_lock); } -/* Check wether the application NAME is allowed. This does not mean +/* Check whether the application NAME is allowed. This does not mean we have support for it though. */ static int is_app_allowed (const char *name) @@ -939,7 +939,7 @@ app_change_pin (app_t app, ctrl_t ctrl, const char *chvnostr, int reset_mode, /* Perform a VERIFY operation without doing anything lese. This may - be used to initialze a the PIN cache for long lasting other + be used to initialize a the PIN cache for long lasting other operations. Its use is highly application dependent. */ gpg_error_t app_check_pin (app_t app, ctrl_t ctrl, const char *keyidstr, diff --git a/scd/atr.c b/scd/atr.c index 9dc79de..4f5a3b8 100644 --- a/scd/atr.c +++ b/scd/atr.c @@ -1,4 +1,4 @@ -/* atr.c - ISO 7816 ATR fucntions +/* atr.c - ISO 7816 ATR functions * Copyright (C) 2003, 2011 Free Software Foundation, Inc. * * This file is part of GnuPG. diff --git a/scd/command.c b/scd/command.c index 56fdf74..6bcbce4 100644 --- a/scd/command.c +++ b/scd/command.c @@ -445,7 +445,7 @@ cmd_learn (assuan_context_t ctx, char *line) xfree (serial); return rc; } - /* Not canceled, so we have to proceeed. */ + /* Not canceled, so we have to proceed. */ } xfree (serial); } diff --git a/scd/iso7816.c b/scd/iso7816.c index d146bd0..081b080 100644 --- a/scd/iso7816.c +++ b/scd/iso7816.c @@ -204,7 +204,7 @@ iso7816_list_directory (int slot, int list_dirs, } -/* This funcion sends an already formatted APDU to the card. With +/* This function sends an already formatted APDU to the card. With HANDLE_MORE set to true a MORE DATA status will be handled internally. The return value is a gpg error code (i.e. a mapped status word). This is basically the same as apdu_send_direct but diff --git a/sm/certlist.c b/sm/certlist.c index e493cda..39ab03c 100644 --- a/sm/certlist.c +++ b/sm/certlist.c @@ -388,7 +388,7 @@ gpgsm_add_to_certlist (ctrl_t ctrl, const char *name, int secret, if (!dup_certs) gpgsm_add_cert_to_certlist (ctrl, cert, &dup_certs, 0); - /* We have to ignore ambigious names as long as + /* We have to ignore ambiguous names as long as there only fault is a bad key usage. This is required to support encryption and signing certificates of the same subject. @@ -532,7 +532,7 @@ gpgsm_find_cert (ctrl_t ctrl, } /* If we don't have the KEYID filter we need to check for - ambigious search results. Note, that it is somehwat + ambiguous search results. Note, that it is somehwat reasonable to assume that a specification of a KEYID won't lead to ambiguous names. */ if (!rc && !keyid) diff --git a/sm/import.c b/sm/import.c index c7b65ad..8796cd2 100644 --- a/sm/import.c +++ b/sm/import.c @@ -814,7 +814,7 @@ parse_p12 (ctrl_t ctrl, ksba_reader_t reader, struct stats_s *stats) /* print_mpi (" q", sk.q); */ /* print_mpi (" u", sk.u); */ - /* Create an S-expresion from the parameters. */ + /* Create an S-expression from the parameters. */ err = gcry_sexp_build (&s_key, NULL, "(private-key(rsa(n%m)(e%m)(d%m)(p%m)(q%m)(u%m)))", sk.n, sk.e, sk.d, sk.p, sk.q, sk.u, NULL); diff --git a/sm/keylist.c b/sm/keylist.c index 1b1a261..13de45d 100644 --- a/sm/keylist.c +++ b/sm/keylist.c @@ -79,7 +79,7 @@ struct /* Do not print this extension in the list of extensions. This is set - for oids which are already available via ksba fucntions. */ + for oids which are already available via ksba functions. */ #define OID_FLAG_SKIP 1 /* The extension is a simple UTF8String and should be printed. */ #define OID_FLAG_UTF8 2 diff --git a/sm/misc.c b/sm/misc.c index 1e2465f..6d04776 100644 --- a/sm/misc.c +++ b/sm/misc.c @@ -1,4 +1,4 @@ -/* misc.c - Miscellaneous fucntions +/* misc.c - Miscellaneous functions * Copyright (C) 2004, 2009, 2011 Free Software Foundation, Inc. * * This file is part of GnuPG. diff --git a/sm/qualified.c b/sm/qualified.c index 718141e..564e779 100644 --- a/sm/qualified.c +++ b/sm/qualified.c @@ -32,7 +32,7 @@ /* We open the file only once and keep the open file pointer as well as the name of the file here. Note that, a listname not equal to - NULL indicates that this module has been intialized and if the + NULL indicates that this module has been initialized and if the LISTFP is also NULL, no list of qualified signatures exists. */ static char *listname; static FILE *listfp; diff --git a/sm/server.c b/sm/server.c index 37d66e2..64a3add 100644 --- a/sm/server.c +++ b/sm/server.c @@ -409,7 +409,7 @@ cmd_signer (assuan_context_t ctx, char *line) { gpgsm_status2 (ctrl, STATUS_INV_SGNR, get_inv_recpsgnr_code (rc), line, NULL); - /* For compatibiliy reasons we also issue the old code after the + /* For compatibility reasons we also issue the old code after the new one. */ gpgsm_status2 (ctrl, STATUS_INV_RECP, get_inv_recpsgnr_code (rc), line, NULL); diff --git a/sm/sign.c b/sm/sign.c index a153b51..e65562d 100644 --- a/sm/sign.c +++ b/sm/sign.c @@ -391,7 +391,7 @@ gpgsm_sign (ctrl_t ctrl, certlist_t signerlist, goto leave; } - /* Although we don't check for ambigious specification we will + /* Although we don't check for ambiguous specification we will check that the signer's certificate is usable and valid. */ rc = gpgsm_cert_use_sign_p (cert); if (!rc) diff --git a/tests/gpgscm/tests.scm b/tests/gpgscm/tests.scm index 3118977..c6c887f 100644 --- a/tests/gpgscm/tests.scm +++ b/tests/gpgscm/tests.scm @@ -236,7 +236,7 @@ ;; (letfd ) ;; ;; Bind all variables given in and initialize each of them -;; to the given initial value, and close them after evaluting . +;; to the given initial value, and close them after evaluating . (define-macro (letfd bindings . body) (let bind ((bindings' bindings)) (if (null? bindings') @@ -305,7 +305,7 @@ ;; ;; Bind all variables given in , initialize each of them to ;; a string representing an unique path in the filesystem, and delete -;; them after evaluting . +;; them after evaluating . (define-macro (lettmp bindings . body) (let bind ((bindings' bindings)) (if (null? bindings') diff --git a/tests/inittests b/tests/inittests index 1a51bdf..6fbccfb 100755 --- a/tests/inittests +++ b/tests/inittests @@ -65,10 +65,10 @@ fi echo gnupg-test-directory > testdir.stamp -# Create the private key directy if it does not exists and copy +# Create the private key directly if it does not exists and copy # the sample keys. [ -d private-keys-v1.d ] || mkdir private-keys-v1.d -for i in ${private_keys}; do +for i in ${private_keys}; do cat ${srcdir}/samplekeys/$i.key >private-keys-v1.d/$i.key done @@ -94,6 +94,6 @@ EOF # Make sure that the sample certs are available but ignore errors here # because we are not a test script. -for i in ${sample_certs}; do +for i in ${sample_certs}; do $GPGSM --import ${srcdir}/samplekeys/$i || true done diff --git a/tests/openpgp/bug537-test.data.asc b/tests/openpgp/bug537-test.data.asc index 130dd5b..b6b02e9 100644 --- a/tests/openpgp/bug537-test.data.asc +++ b/tests/openpgp/bug537-test.data.asc @@ -1,5 +1,5 @@ This is a binary (gzip compressed) file which exhibits a problem with -the zlib decryptor. See encr-data.c:decrypt_data for a decription of +the zlib decryptor. See encr-data.c:decrypt_data for a description of the problem we solved with 1.9.92 (1.4.6). It is not easy to produce such files, but this one works. The source file is also in the BTS under the name check-data-410-1.data. The result of the decryption diff --git a/tests/openpgp/quick-key-manipulation.scm b/tests/openpgp/quick-key-manipulation.scm index 8d14ae1..c21abfe 100755 --- a/tests/openpgp/quick-key-manipulation.scm +++ b/tests/openpgp/quick-key-manipulation.scm @@ -79,7 +79,7 @@ ;; XXX I don't know how to verify this. The keylisting does not seem ;; to indicate the primary UID. -(info "Checking that we get an error making non-existant user ID the primary one.") +(info "Checking that we get an error making non-existent user ID the primary one.") (catch '() (call-check `(, at GPG --quick-set-primary-uid ,(exact alpha) ,charlie)) (error "Expected an error, but get none.")) @@ -87,7 +87,7 @@ (info "Checking that we can revoke a user ID...") (call-check `(, at GPG --quick-revoke-uid ,(exact bravo) ,alpha)) -(info "Checking that we get an error revoking a non-existant user ID.") +(info "Checking that we get an error revoking a non-existent user ID.") (catch '() (call-check `(, at GPG --quick-revoke-uid ,(exact bravo) ,charlie)) (error "Expected an error, but get none.")) diff --git a/tests/pkits/README b/tests/pkits/README index 17f03ea..06aa97b 100644 --- a/tests/pkits/README +++ b/tests/pkits/README @@ -7,7 +7,7 @@ http://csrc.nist.gov/pki/testing/x509paths.html . README - this file. PKITS_data.tar.bz2 - the original ZIP file, repackaged as a tarball. Makefile.am - Part of our build system. -import-all-certs - Run a simple import test on all certifcates +import-all-certs - Run a simple import test on all certificates validate-all-certs - Run an import and validate test on all certificates signature-verification - PKITS test 4.1 validity-periods - PKITS test 4.2 diff --git a/tools/gpg-connect-agent.c b/tools/gpg-connect-agent.c index f20d331..00482a3 100644 --- a/tools/gpg-connect-agent.c +++ b/tools/gpg-connect-agent.c @@ -839,7 +839,7 @@ add_definq (char *line, int is_var, int is_prog) } -/* Show all inquiry defintions. */ +/* Show all inquiry definitions. */ static void show_definq (void) { diff --git a/tools/gpgconf-comp.c b/tools/gpgconf-comp.c index 0ef3cb4..f608f7a 100644 --- a/tools/gpgconf-comp.c +++ b/tools/gpgconf-comp.c @@ -1389,7 +1389,7 @@ gc_component_reload (int component) /* More or less Robust version of dgettext. It has the side effect of switching the codeset to utf-8 because this is what we want to - output. In theory it is posible to keep the original code set and + output. In theory it is possible to keep the original code set and switch back for regular disgnostic output (redefine "_(" for that) but given the natur of this tool, being something invoked from other pograms, it does not make much sense. */ diff --git a/tools/gpgconf.c b/tools/gpgconf.c index d6bf9a2..2236555 100644 --- a/tools/gpgconf.c +++ b/tools/gpgconf.c @@ -329,7 +329,7 @@ query_swdb (estream_t out, const char *name, const char *current_version) goto leave; } - /* Note that the parser uses the first occurance of a matching + /* Note that the parser uses the first occurrence of a matching * values and ignores possible duplicated values. */ maxlen = 2048; /* Set limit. */ diff --git a/tools/mail-signed-keys b/tools/mail-signed-keys index 3c564f1..263b8e5 100755 --- a/tools/mail-signed-keys +++ b/tools/mail-signed-keys @@ -9,7 +9,7 @@ # WITHOUT ANY WARRANTY, to the extent permitted by law; without even the # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# FIXME: Use only valid email addreses, extract only given keys +# FIXME: Use only valid email addresses, extract only given keys dryrun=0 if [ "$1" = "--dry-run" ]; then diff --git a/tools/symcryptrun.c b/tools/symcryptrun.c index 563e56b..54976ca 100644 --- a/tools/symcryptrun.c +++ b/tools/symcryptrun.c @@ -432,7 +432,7 @@ confucius_copy_file (char *infile, char *outfile, int plain) /* Get a passphrase in secure storage (if possible). If AGAIN is true, then this is a repeated attempt. If CANCELED is not a null pointer, it will be set to true or false, depending on if the user - canceled the operation or not. On error (including cancelation), a + canceled the operation or not. On error (including cancellation), a null pointer is returned. The passphrase must be deallocated with confucius_drop_pass. CACHEID is the ID to be used for passphrase caching and can be NULL to disable caching. */ diff --git a/tools/watchgnupg.c b/tools/watchgnupg.c index f8b6fdc..fc58d14 100644 --- a/tools/watchgnupg.c +++ b/tools/watchgnupg.c @@ -446,7 +446,7 @@ main (int argc, char **argv) client_t client; /* Usually we don't have that many connections, thus it is okay - to set them allways from scratch and don't maintain an active + to set them always from scratch and don't maintain an active fd_set. */ FD_ZERO (&rfds); max_fd = -1; diff --git a/tools/wks-util.c b/tools/wks-util.c index d78e01d..8eab834 100644 --- a/tools/wks-util.c +++ b/tools/wks-util.c @@ -1,4 +1,4 @@ -/* wks-utils.c - Common helper fucntions for wks tools +/* wks-utils.c - Common helper functions for wks tools * Copyright (C) 2016 g10 Code GmbH * * This file is part of GnuPG. ----------------------------------------------------------------------- Summary of changes: agent/call-pinentry.c | 6 +++--- agent/call-scd.c | 4 ++-- agent/command-ssh.c | 4 ++-- agent/findkey.c | 2 +- agent/pkdecrypt.c | 2 +- agent/pksign.c | 2 +- agent/trustlist.c | 2 +- build-aux/texinfo.tex | 10 +++++----- common/ChangeLog-2011.include | 2 +- common/audit.c | 2 +- common/call-gpg.c | 2 +- common/dotlock.c | 2 +- common/exechelp.h | 4 ++-- common/exectool.c | 2 +- common/init.h | 2 +- common/openpgp-oid.c | 2 +- common/recsel.c | 2 +- common/sexputil.c | 4 ++-- common/simple-pwquery.h | 2 +- common/sysutils.c | 2 +- common/t-session-env.c | 2 +- configure.ac | 6 +++--- dirmngr/certcache.c | 2 +- dirmngr/dns-stuff.c | 2 +- dirmngr/dns-stuff.h | 2 +- dirmngr/dns.c | 2 +- dirmngr/http.c | 8 ++++---- dirmngr/ldap-wrapper.c | 2 +- dirmngr/loadswdb.c | 4 ++-- dirmngr/server.c | 6 +++--- dirmngr/validate.c | 6 +++--- doc/HACKING | 4 ++-- doc/dirmngr.texi | 2 +- doc/gpg-agent.texi | 2 +- doc/gpgsm.texi | 4 ++-- g10/call-agent.c | 2 +- g10/getkey.c | 4 ++-- g10/gpg.c | 2 +- g10/import.c | 4 ++-- g10/keydb.h | 4 ++-- g10/keyedit.c | 8 ++++---- g10/keylist.c | 2 +- g10/openfile.c | 2 +- g10/packet.h | 2 +- g10/seskey.c | 4 ++-- g10/tdbio.c | 2 +- g10/tofu.c | 4 ++-- g10/trustdb.c | 2 +- g10/verify.c | 2 +- g13/backend.c | 2 +- g13/create.c | 2 +- g13/g13-common.h | 2 +- kbx/keybox-blob.c | 4 ++-- kbx/keybox-defs.h | 2 +- kbx/keybox-openpgp.c | 2 +- m4/lib-link.m4 | 2 +- m4/po.m4 | 6 +++--- scd/apdu.c | 4 ++-- scd/app-openpgp.c | 4 ++-- scd/app.c | 4 ++-- scd/atr.c | 2 +- scd/command.c | 2 +- scd/iso7816.c | 2 +- sm/certlist.c | 4 ++-- sm/import.c | 2 +- sm/keylist.c | 2 +- sm/misc.c | 2 +- sm/qualified.c | 2 +- sm/server.c | 2 +- sm/sign.c | 2 +- tests/gpgscm/tests.scm | 4 ++-- tests/inittests | 6 +++--- tests/openpgp/bug537-test.data.asc | 2 +- tests/openpgp/quick-key-manipulation.scm | 4 ++-- tests/pkits/README | 2 +- tools/gpg-connect-agent.c | 2 +- tools/gpgconf-comp.c | 2 +- tools/gpgconf.c | 2 +- tools/mail-signed-keys | 2 +- tools/symcryptrun.c | 2 +- tools/watchgnupg.c | 2 +- tools/wks-util.c | 2 +- 82 files changed, 123 insertions(+), 123 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Fri Apr 28 20:47:28 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Fri, 28 Apr 2017 20:47:28 +0200 Subject: [git] gnupg-doc - branch, master, updated. 2f3a353d4a327cc0f0629d43911db60579ecb260 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via 2f3a353d4a327cc0f0629d43911db60579ecb260 (commit) from 9c504b531be386a895496fec02385a2a54aeb4d2 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 2f3a353d4a327cc0f0629d43911db60579ecb260 Author: Werner Koch Date: Fri Apr 28 20:43:36 2017 +0200 cgi: Make the Stripe publishable key configurable. To provide a test installation it is better to have the stripe key in the config file and not hardcoded in the HTML template. diff --git a/cgi/config.rc b/cgi/config.rc index f139b53..a6baa7f 100644 --- a/cgi/config.rc +++ b/cgi/config.rc @@ -3,6 +3,10 @@ baseurl => 'https://gnupg.org' htdocs => '/var/www/www/www.gnupg.org/htdocs/', +stripepubkey => 'pk_live_lcfUUC9FLdguvgEKqMeaeuWY', +#stripepubkey => 'pk_test_54VgokzAcVz6WxEOsZ6jtein', + payprocd_socket => '/var/run/payproc/daemon', + #eof# diff --git a/cgi/procdonate.cgi b/cgi/procdonate.cgi index b58dc16..650f803 100755 --- a/cgi/procdonate.cgi +++ b/cgi/procdonate.cgi @@ -22,6 +22,7 @@ my %config = do $1 . '/config.rc'; my $baseurl = $config{baseurl}; my $htdocs = $config{htdocs}; +my $stripepubkey = $config{stripepubkey}; my $socket_name = $config{payprocd_socket}; my $error_marker = '* error'; @@ -157,6 +158,7 @@ sub write_template ($) { s//$sessid/ || s/(\x22\x2f>)?/$amount\1/ || s/(\x22\x2f>)?/$euroamount\1/ + || s/(\x22\x2f>)?/$stripepubkey\1/ || s/(\x22\x2f>)?/$stripeamount\1/ || s/(\x22\x2f>)?/$currency\1/ || s/(\x22\x2f>)?/$name\1/ diff --git a/web/donate/checkout-cc.org b/web/donate/checkout-cc.org index 73b69f2..8651eb0 100644 --- a/web/donate/checkout-cc.org +++ b/web/donate/checkout-cc.org @@ -57,7 +57,7 @@