diff options
author | David Shaw <[email protected]> | 2004-02-12 18:32:09 +0000 |
---|---|---|
committer | David Shaw <[email protected]> | 2004-02-12 18:32:09 +0000 |
commit | 76f579b2336d3bd8b761dcd0133f8597cb4d1f9a (patch) | |
tree | 26652a12b38a8385a58faa97e81e93506c3d2128 /g10/g10.c | |
parent | * import.c (import_one): Do the revocation check even in the case when a (diff) | |
download | gnupg-76f579b2336d3bd8b761dcd0133f8597cb4d1f9a.tar.gz gnupg-76f579b2336d3bd8b761dcd0133f8597cb4d1f9a.zip |
* main.h, keyedit.c (keyedit_menu): Remove sign_mode and enhance the more
general command list functionality to replace it.
* g10.c (main): Use the general command functionality to implement
--sign-key, --lsign-key, --nrsign-key, and --nrlsign-key.
Diffstat (limited to '')
-rw-r--r-- | g10/g10.c | 54 |
1 files changed, 29 insertions, 25 deletions
@@ -2853,37 +2853,41 @@ main( int argc, char **argv ) } break; - case aSignKey: /* sign the key given as argument */ + case aSignKey: if( argc != 1 ) - wrong_args(_("--sign-key user-id")); - username = make_username( fname ); - keyedit_menu(fname, locusr, NULL, 1 ); - m_free(username); - break; - + wrong_args(_("--sign-key user-id")); + /* fall through */ case aLSignKey: if( argc != 1 ) - wrong_args(_("--lsign-key user-id")); - username = make_username( fname ); - keyedit_menu(fname, locusr, NULL, 2 ); - m_free(username); - break; - + wrong_args(_("--lsign-key user-id")); + /* fall through */ case aNRSignKey: if( argc != 1 ) - wrong_args(_("--nrsign-key user-id")); - username = make_username( fname ); - keyedit_menu(fname, locusr, NULL, 3 ); - m_free(username); - break; - + wrong_args(_("--nrsign-key user-id")); + /* fall through */ case aNRLSignKey: if( argc != 1 ) - wrong_args(_("--nrlsign-key user-id")); + wrong_args(_("--nrlsign-key user-id")); + + sl=NULL; + + if(cmd==aSignKey) + append_to_strlist(&sl,"sign"); + else if(cmd==aLSignKey) + append_to_strlist(&sl,"lsign"); + else if(cmd==aNRSignKey) + append_to_strlist(&sl,"nrsign"); + else if(cmd==aNRLSignKey) + append_to_strlist(&sl,"nrlsign"); + else + BUG(); + + append_to_strlist( &sl, "save" ); username = make_username( fname ); - keyedit_menu(fname, locusr, NULL, 4 ); - m_free(username); - break; + keyedit_menu(fname, locusr, sl, 0, 0 ); + m_free(username); + free_strlist(sl); + break; case aEditKey: /* Edit a key signature */ if( !argc ) @@ -2893,11 +2897,11 @@ main( int argc, char **argv ) sl = NULL; for( argc--, argv++ ; argc; argc--, argv++ ) append_to_strlist( &sl, *argv ); - keyedit_menu( username, locusr, sl, 0 ); + keyedit_menu( username, locusr, sl, 0, 1 ); free_strlist(sl); } else - keyedit_menu(username, locusr, NULL, 0 ); + keyedit_menu(username, locusr, NULL, 0, 1 ); m_free(username); break; |