aboutsummaryrefslogtreecommitdiffstats
path: root/agent/genkey.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2015-10-05agent: Fix alignment problem with the second passphrase struct.Werner Koch1-11/+20
* agent/genkey.c (agent_ask_new_passphrase): Use a separate malloc for PI2. Check return value of the malloc function. * agent/command-ssh.c (ssh_identity_register): Use a separate malloc for PI2. Wipe PI2. -- For whatever stupid reasons I once allocated only one memory area and split that into PI and PI2. This is actually a common pattern with malloc but here we used a made up object size and do not take the extra alignment required into account. One of these not yet hit by a (sig)bus PC/VAX hacker bugs. Instead of trying to fix the alignment, it is better to use a second calloc for the second struct. GnuPG-bug-id: 2112 Signed-off-by: Werner Koch <[email protected]> Resolved conflicts: agent/command-ssh.c agent/genkey.c (backport master commit ddf9dd135acd2b3635bb986f6dfc0e4e446d5fad)
2015-05-19agent: Backport changes from 2.1 to support an external password manager.Neal H. Walfield1-4/+4
* agent/agent.h (agent_askpin): Add arguments keyinfo and cache_mode. Update callers. (agent_get_passphrase): Likewise. (agent_clear_passphrase): New function. (opt): Add field allow_external_cache. * agent/call-pinentry.c (start_pinentry): Send "OPTION allow-external-password-cache" to the pinentry. (PINENTRY_STATUS_PASSWORD_FROM_CACHE): New constant. (pinentry_status_cb): New function. (agent_askpin): Add arguments keyinfo and cache_mode. If KEYINFO and CACHE_MODE describe a cachable key, then send SETKEYINFO to the pinentry. Pass PINENTRY_STATUS_CB to the "GETPIN" invocation. If the passphrase was incorrect and PINENTRY_STATUS_PASSWORD_FROM_CACHE is set, decrement PININFO->FAILED_TRIES. (agent_get_passphrase): Add arguments keyinfo and cache_mode. If KEYINFO and CACHE_MODE describe a cachable key, then send SETKEYINFO to the pinentry. (agent_clear_passphrase): New function. * agent/call-pinentry.c (start_pinentry): Act upon new var, allow_external_cache. * agent/command.c (cmd_clear_passphrase): Call agent_clear_passphrase. * agent/gpg-agent.c (oNoAllowExternalCache): New. (opts): Add option --no-allow-external-cache. (parse_rereadable_options): Set this option. -- Signed-off-by: Neal H. Walfield <[email protected]> Based on commits: 3a9305439b75ccd4446378d4fd87da087fd9c892 e201c20f25e7bed29088186c5f717d43047a0f4b d7293cb317acc40cc9e5189cef33fe9d8b47e62a 56b5c9f94f2e55d096be585ed061ccf1c9ec0de6 d3b5cad2346bd5747789dc62d7804fa5c15f4f3b 2180845959839705200e3172dbafc94b70b9007f
2012-08-24Fix typos spotted during translationsDavid Prévot1-1/+1
agent/genkey.c: s/to to/to/ sm/*.c: s/failed to allocated/failed to allocate/ sm/certlist.c: s/should have not/should not have/ Consistency fix: * g10/gpg.c, kbx/kbxutil.c, sm/gpgsm.c: uppercase after Syntax
2011-08-04Removed some set but unused variables.Werner Koch1-18/+18
2009-06-24Fixed a bunch of little bugs as reported by Fabian Keil.Werner Koch1-1/+1
Still one problem left; marked with a gcc #warning.
2009-06-17Use cancel button in confirmation only if requested.Werner Koch1-1/+1
2008-10-20Marked all unused args on non-W32 platforms.Werner Koch1-0/+2
2007-11-19Started to implement the audit log feature.Werner Koch1-1/+1
Pass PINENTRY_USER_DATA and XAUTHORITY to Pinentry. Improved support for the quality bar. Minor internal restructuring. Translation fixes.
2007-10-24Changed wording of passphrase checking messages.Werner Koch1-15/+14
Fixed a segv in gpg-connect-agent.
2007-09-18Support the SETQUALITYBAR command of recent pinentries.Werner Koch1-6/+25
2007-08-29New command --check-programs for gpgconf.Werner Koch1-1/+1
2007-08-28Add more passphrase policy rules.Werner Koch1-1/+1
(--max-passphrase-days).
2007-08-27Implemented more gpg-agen options to support certain passphrase policies.Werner Koch1-12/+144
New tool gpg-check-pattern.
2007-07-16Properly close files opened by es_fopen.Werner Koch1-13/+34
Allow setting of an empty passphrase. Assorted W32 changes.
2007-07-04Changed to GPLv3.Werner Koch1-4/+2
Removed intl/.
2007-01-25jnlib/Werner Koch1-1/+1
* stringhelp.c (utf8_charcount): New. agent/ * genkey.c (check_passphrase_constraints): Use UTF-8 aware strlen.
2007-01-25agent/Werner Koch1-6/+6
* genkey.c (check_passphrase_constraints): Get ngettext call right.
2007-01-25agent/Werner Koch1-2/+60
* protect-tool.c (get_passphrase): New arg OPT_CHECK. (get_new_passphrase): Enable OTP_CHECK on the first call. * command.c (cmd_get_passphrase): Implement option --check. * gpg-agent.c (MIN_PASSPHRASE_LEN): New (parse_rereadable_options): New option --min-passphrase-len. * genkey.c (check_passphrase_constraints): New. (agent_genkey, agent_protect_and_store): Call new function. Fix memory leak. * call-pinentry.c (agent_askpin): Allow translation of the displayed error message. (agent_popup_message_start): Remove arg CANCEL_BTN. (popup_message_thread): Use --one-button option. * command.c (cmd_passwd): Now that we don't distinguish between assuan and regular error codes we can jump to the end on error. common/ * simple-pwquery.c (simple_pwquery): New arg OPT_CHECK.
2006-09-06The big Assuan error code removal.Werner Koch1-2/+2
2006-06-20Updated FSF's address.Werner Koch1-1/+2
2005-07-27Removed directories which are only used by the 1.9 branchWerner Koch1-240/+0
2005-06-16gcc-4 defaults forced me to edit many many files to get rid of theWerner Koch1-1/+1
char * vs. unsigned char * warnings. The GNU coding standards used to say that these mismatches are okay and better than a bunch of casts. Obviously this has changed now.
2005-05-24* call-scd.c (inq_needpin): Skip leading spaces in of PINWerner Koch1-4/+4
description. * divert-scd.c (getpin_cb): Enhanced to cope with description flags. * query.c (agent_askpin): Add arg PROMPT_TEXT. Changed all callers.
2004-12-20* call-scd.c (init_membuf, put_membuf, get_membuf): Removed. WeWerner Koch1-12/+6
now use the identical implementation from ../common/membuf.c. * pksign.c (agent_pksign): Changed arg OUTFP to OUTBUF and use membuf functions to return the value. * pkdecrypt.c (agent_pkdecrypt): Ditto. * genkey.c (agent_genkey): Ditto. * command.c (cmd_pksign, cmd_pkdecrypt, cmd_genkey): Replaced assuan_get_data_fp() by a the membuf scheme. (clear_outbuf, write_and_clear_outbuf): New. * membuf.c (put_membuf): Wipe out buffer after a failed realloc.
2004-02-21* command.c (cmd_passwd): Take acount of a key description.Werner Koch1-6/+26
* genkey.c (reenter_compare_cb): Do not set the error text. (agent_protect_and_store, agent_genkey): Force a re-enter after a non-matching passphrase. * query.c (agent_askpin): Add new arg INITIAL_ERRTEXT; changed all callers.
2003-11-12Mainly changes to adjust for the changed KSBA API.Werner Koch1-1/+1
2003-08-05This commit was manufactured by cvs2svn to create branchRepo Admin1-0/+240
'GNUPG-1-9-BRANCH'.
2003-06-27Key generation and signing using the OpenPGP card does rudimentary work.Werner Koch1-6/+6
2003-06-04Update error handling to match gpg-error in CVS.Marcus Brinkmann1-3/+3
2003-06-03Make use of libgpg-errorWerner Koch1-8/+10
2003-01-09Updated from latest NewPG projectWerner Koch1-6/+44
2002-10-19This commit was manufactured by cvs2svn to create branchRepo Admin1-200/+0
'GNUPG-1-9-BRANCH'.
2002-08-21* query.c (agent_askpin): Hack to show the right default prompt.NEWPG-0-9-0Werner Koch1-4/+4
(agent_get_passphrase): Ditto. * Makefile.am: Renamed the binary protect-tool to gpg-protect-tool. * protect-tool.c: Removed the note about internal use only. * gpg-agent.c (main): New option --daemon so that the program is not accidently started in the background.
2002-06-17* agent.h: Add a callback function to the pin_entry_info structure.Werner Koch1-17/+21
* query.c (agent_askpin): Use the callback to check for a correct PIN. Removed the start_err_text argument becuase it is not anymore needed; changed callers. * findkey.c (unprotect): Replace our own check loop by a callback. (try_unprotect_cb): New. * genkey.c (reenter_compare_cb): New. (agent_genkey): Use this callback here. Fixed setting of the pi2 variable and a segv in case of an empty PIN. * divert-scd.c (getpin_cb): Removed some unused stuff and explained what we still have to change.
2002-03-06sm/Werner Koch1-56/+3
* gpgsm.c: New command --learn-card * call-agent.c (learn_cb,gpgsm_agent_learn): New. * gpgsm.c (main): Print error messages for non-implemented commands. agent/ * learncard.c: New. * divert-scd.c (ask_for_card): The serial number is binary so convert it to hex here. * findkey.c (agent_write_private_key): New. * genkey.c (store_key): And use it here. scd/ * pkdecrypt.c (agent_pkdecrypt): Changed the way the diversion is done. * divert-scd.c (divert_pkdecrypt): Changed interface and implemented it.
2002-02-01* cache.c: Add a few debug outputs.Werner Koch1-2/+2
* protect.c (agent_private_key_type): New. * agent.h: Add PRIVATE_KEY_ enums. * findkey.c (agent_key_from_file): Use it to decide whether we have to unprotect a key. (unprotect): Cache the passphrase. * findkey.c (agent_key_from_file,agent_key_available): The key files do now require a ".key" suffix to make a script's life easier. * genkey.c (store_key): Ditto.
2002-01-31* genkey.c (store_key): Protect the key.Werner Koch1-6/+66
(agent_genkey): Ask for the passphrase. * findkey.c (unprotect): Actually unprotect the key. * query.c (agent_askpin): Add an optional start_err_text.
2002-01-10* genkey.c: Store the secret part and return the public part.Werner Koch1-0/+189