* import.c (import_one): Do collapse_uids() before we do any cleaning
[gnupg.git] / g10 / options.h
index 2f7b03e..dd07d08 100644 (file)
@@ -1,6 +1,6 @@
 /* options.h
- * Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003,
- *               2004 Free Software Foundation, Inc.
+ * Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004,
+ *               2005 Free Software Foundation, Inc.
  *
  * This file is part of GnuPG.
  *
@@ -16,7 +16,8 @@
  *
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+ * USA.
  */
 #ifndef G10_OPTIONS_H
 #define G10_OPTIONS_H
@@ -26,8 +27,6 @@
 #include "main.h"
 #include "packet.h"
 
-#undef ENABLE_COMMENT_PACKETS  /* don't create comment packets */
-
 #ifndef EXTERN_UNLESS_MAIN_MODULE
 /* Norcraft can't cope with common symbols */
 #if defined (__riscos__) && !defined (INCLUDED_BY_MAIN_MODULE)
@@ -50,7 +49,9 @@ struct
   int list_only;
   int textmode;
   int expert;
+  const char *def_sig_expire;
   int ask_sig_expire;
+  const char *def_cert_expire;
   int ask_cert_expire;
   int batch;       /* run in batch mode */
   int answer_yes; /* answer yes on most questions */
@@ -80,7 +81,6 @@ struct
   int def_cert_level;
   int min_cert_level;
   int ask_cert_level;
-  int sk_comments;
   int no_version;
   int marginals_needed;
   int completes_needed;
@@ -137,7 +137,6 @@ struct
   } *keyserver;
   struct
   {
-    int verbose;
     unsigned int options;
     unsigned int import_options;
     unsigned int export_options;
@@ -163,6 +162,8 @@ struct
   STRLIST sig_policy_url;
   STRLIST cert_policy_url;
   STRLIST sig_keyserver_url;
+  STRLIST cert_subpackets;
+  STRLIST sig_subpackets;
   int use_embedded_filename;
   int allow_non_selfsigned_uid;
   int allow_freeform_uid;
@@ -195,12 +196,24 @@ struct
   byte *show_subpackets;
   int rfc2440_text;
 
+  /* If true, let write failures on the status-fd exit the process. */
+  int exit_on_status_write_error;
+
+  /* If > 0, limit the number of card insertion prompts to this
+     value. */
+  int limit_card_insert_tries; 
+
 #ifdef ENABLE_CARD_SUPPORT
   const char *ctapi_driver; /* Library to access the ctAPI. */
   const char *pcsc_driver;  /* Library to access the PC/SC system. */
   int disable_ccid;    /* Disable the use of the internal CCID driver. */
 #endif /*ENABLE_CARD_SUPPORT*/
 
+  /* If set, require an 0x19 backsig to be present on signatures made
+     by signing subkeys.  If not set, a missing backsig is not an
+     error (but an invalid backsig still is). */
+  int require_backsigs;
+
 } opt;
 
 /* CTRL is used to keep some global variables we currently can't
@@ -224,7 +237,7 @@ struct {
 #define DBG_TRUST_VALUE   256  /* debug the trustdb */
 #define DBG_HASHING_VALUE 512  /* debug hashing operations */
 #define DBG_EXTPROG_VALUE 1024  /* debug external program calls */
-#define DBG_CARD_IO_VALUE 2048
+#define DBG_CARD_IO_VALUE 2048  /* debug smart card I/O.  */
 
 #define DBG_PACKET (opt.debug & DBG_PACKET_VALUE)
 #define DBG_FILTER (opt.debug & DBG_FILTER_VALUE)
@@ -252,13 +265,16 @@ struct {
 #define IMPORT_FAST                      (1<<2)
 #define IMPORT_SK2PK                     (1<<3)
 #define IMPORT_MERGE_ONLY                (1<<4)
-#define IMPORT_UNUSABLE_SIGS             (1<<5)
+#define IMPORT_CLEAN_SIGS                (1<<5)
+#define IMPORT_CLEAN_UIDS                (1<<6)
 
 #define EXPORT_LOCAL_SIGS                (1<<0)
 #define EXPORT_ATTRIBUTES                (1<<1)
 #define EXPORT_SENSITIVE_REVKEYS         (1<<2)
 #define EXPORT_MINIMAL                   (1<<3)
-#define EXPORT_UNUSABLE_SIGS             (1<<4)
+#define EXPORT_CLEAN_SIGS                (1<<4)
+#define EXPORT_CLEAN_UIDS                (1<<5)
+#define EXPORT_RESET_SUBKEY_PASSWD       (1<<6)
 
 #define LIST_SHOW_PHOTOS                 (1<<0)
 #define LIST_SHOW_POLICY_URLS            (1<<1)
@@ -283,13 +299,13 @@ struct {
 #define VERIFY_SHOW_UNUSABLE_UIDS        (1<<6)
 
 #define KEYSERVER_INCLUDE_REVOKED        (1<<0)
-#define KEYSERVER_INCLUDE_DISABLED       (1<<1)
-#define KEYSERVER_INCLUDE_SUBKEYS        (1<<2)
-#define KEYSERVER_USE_TEMP_FILES         (1<<3)
-#define KEYSERVER_KEEP_TEMP_FILES        (1<<4)
-#define KEYSERVER_ADD_FAKE_V3            (1<<5)
-#define KEYSERVER_AUTO_KEY_RETRIEVE      (1<<6)
-#define KEYSERVER_TRY_DNS_SRV            (1<<7)
-#define KEYSERVER_HONOR_KEYSERVER_URL    (1<<8)
+#define KEYSERVER_INCLUDE_SUBKEYS        (1<<1)
+#define KEYSERVER_USE_TEMP_FILES         (1<<2)
+#define KEYSERVER_KEEP_TEMP_FILES        (1<<3)
+#define KEYSERVER_ADD_FAKE_V3            (1<<4)
+#define KEYSERVER_AUTO_KEY_RETRIEVE      (1<<5)
+#define KEYSERVER_TRY_DNS_SRV            (1<<6)
+#define KEYSERVER_HONOR_KEYSERVER_URL    (1<<7)
+#define KEYSERVER_AUTO_PKA_RETRIEVE      (1<<8)
 
 #endif /*G10_OPTIONS_H*/