diff --git a/g10/getkey.c b/g10/getkey.c
index 5cb080750..70960667b 100644
--- a/g10/getkey.c
+++ b/g10/getkey.c
@@ -1029,19 +1029,14 @@ get_pubkey_byfprint_fast (PKT_public_key * pk,
  * the default key.  This functions checks that a corresponding secret
  * key is available.  With no secret key it does not succeeed. */
 gpg_error_t
-get_seckey_byname (PKT_public_key *pk, const char *name)
+get_seckey_default (PKT_public_key *pk)
 {
   gpg_error_t err;
   strlist_t namelist = NULL;
   int include_unusable = 1;
 
-  /* If we have no name, try to use the default secret key.  If we
-     have no default, we'll use the first usable one. */
-
-  if (!name && opt.def_secret_key && *opt.def_secret_key)
+  if (opt.def_secret_key && *opt.def_secret_key)
     add_to_strlist (&namelist, opt.def_secret_key);
-  else if (name)
-    add_to_strlist (&namelist, name);
   else
     include_unusable = 0;
 
diff --git a/g10/keydb.h b/g10/keydb.h
index 0bc60bfda..e160a87c8 100644
--- a/g10/keydb.h
+++ b/g10/keydb.h
@@ -419,7 +419,7 @@ int get_pubkey_byfprint_fast (PKT_public_key *pk,
    whether there is some secret key with the specified key id.  */
 int have_secret_key_with_kid (u32 *keyid);
 
-gpg_error_t get_seckey_byname (PKT_public_key *pk, const char *name);
+gpg_error_t get_seckey_default (PKT_public_key *pk);
 
 gpg_error_t get_seckey_byfprint (PKT_public_key *pk,
                                  const byte *fprint, size_t fprint_len);
diff --git a/g10/pkclist.c b/g10/pkclist.c
index 68d281284..9996d1828 100644
--- a/g10/pkclist.c
+++ b/g10/pkclist.c
@@ -714,7 +714,7 @@ default_recipient(void)
     if( !opt.def_recipient_self )
 	return NULL;
     pk = xmalloc_clear( sizeof *pk );
-    i = get_seckey_byname (pk, NULL);
+    i = get_seckey_default (pk);
     if( i ) {
 	free_public_key( pk );
 	return NULL;