Updated from latest NewPG project
[gnupg.git] / sm / encrypt.c
index 43087fc..40e1258 100644 (file)
@@ -58,45 +58,6 @@ struct encrypt_cb_parm_s {
 };
 
 
-static KsbaCert
-get_default_recipient (void)
-{
-  const char key[] =
-    "/CN=test cert 1,OU=Aegypten Project,O=g10 Code GmbH,L=Düsseldorf,C=DE";
-
-  KEYDB_SEARCH_DESC desc;
-  KsbaCert cert = NULL;
-  KEYDB_HANDLE kh = NULL;
-  int rc;
-
-  rc = keydb_classify_name (key, &desc);
-  if (rc)
-    {
-      log_error ("failed to find recipient: %s\n", gnupg_strerror (rc));
-      return NULL;
-    }
-
-  kh = keydb_new (0);
-  if (!kh)
-    return NULL;
-
-  rc = keydb_search (kh, &desc, 1);
-  if (rc)
-    {
-      log_debug ("failed to find default certificate: rc=%d\n", rc);
-    }
-  else 
-    {
-      rc = keydb_get_cert (kh, &cert);
-      if (rc)
-        {
-          log_debug ("failed to get cert: rc=%d\n", rc);
-        }
-    }
-
-  keydb_release (kh);
-  return cert;
-}
 
 
 \f
@@ -398,12 +359,18 @@ gpgsm_encrypt (CTRL ctrl, CERTLIST recplist, int data_fd, FILE *out_fp)
   DEK dek = NULL;
   int recpno;
   FILE *data_fp = NULL;
-  struct certlist_s help_recplist;
   CERTLIST cl;
 
   memset (&encparm, 0, sizeof encparm);
-  help_recplist.next = NULL;
-  help_recplist.cert = NULL;
+
+  if (!recplist)
+    {
+      log_error(_("no valid recipients given\n"));
+      gpgsm_status (ctrl, STATUS_NO_RECP, "0");
+      rc = GNUPG_No_Public_Key;
+      goto leave;
+    }
+
   kh = keydb_new (0);
   if (!kh)
     {
@@ -412,21 +379,6 @@ gpgsm_encrypt (CTRL ctrl, CERTLIST recplist, int data_fd, FILE *out_fp)
       goto leave;
     }
 
-  /* If no recipient list is given, use a default one */
-  /* FIXME: we shoudl not do this but return an error and a
-     STATUS_NO_RECP */
-  if (!recplist)
-    {
-      help_recplist.cert = get_default_recipient ();
-      if (!help_recplist.cert)
-        {
-          log_error ("no default recipient found\n");
-          rc = seterr (General_Error);
-          goto leave;
-        }
-      recplist = &help_recplist;
-    }
-
   data_fp = fdopen ( dup (data_fd), "rb");
   if (!data_fp)
     {
@@ -593,7 +545,5 @@ gpgsm_encrypt (CTRL ctrl, CERTLIST recplist, int data_fd, FILE *out_fp)
   if (data_fp)
     fclose (data_fp);
   xfree (encparm.buffer);
-  if (help_recplist.cert)
-    ksba_cert_release (help_recplist.cert);
   return rc;
 }