summaryrefslogtreecommitdiffstats
path: root/scd/scdaemon.h
diff options
context:
space:
mode:
authorWerner Koch <wk@gnupg.org>2002-01-26 14:38:38 +0100
committerWerner Koch <wk@gnupg.org>2002-01-26 14:38:38 +0100
commit108f62eb3eadbd42a368c67c7aa1705c9ecbdec7 (patch)
tree37abe21dc23875900bd94aecd747ef531c3fdac8 /scd/scdaemon.h
parent* gpgsm.c (main): Disable core dumps. (diff)
downloadgnupg2-108f62eb3eadbd42a368c67c7aa1705c9ecbdec7.tar.xz
gnupg2-108f62eb3eadbd42a368c67c7aa1705c9ecbdec7.zip
* scdaemon.c scdaemon.h, command.c: New. Based on the code from
the gpg-agent.
Diffstat (limited to 'scd/scdaemon.h')
-rw-r--r--scd/scdaemon.h74
1 files changed, 74 insertions, 0 deletions
diff --git a/scd/scdaemon.h b/scd/scdaemon.h
new file mode 100644
index 000000000..76d00b1ce
--- /dev/null
+++ b/scd/scdaemon.h
@@ -0,0 +1,74 @@
+/* scdaemon.h - Global definitions for the SCdaemon
+ * Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+ *
+ * This file is part of GnuPG.
+ *
+ * GnuPG is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * GnuPG is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * 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
+ */
+
+#ifndef SCDAEMON_H
+#define SCDAEMON_H
+
+#include <gcrypt.h>
+#include "../common/util.h"
+#include "../common/errors.h"
+
+#define MAX_DIGEST_LEN 24
+
+/* A large struct name "opt" to keep global flags */
+struct {
+ unsigned int debug; /* debug flags (DBG_foo_VALUE) */
+ int verbose; /* verbosity level */
+ int quiet; /* be as quiet as possible */
+ int dry_run; /* don't change any persistent data */
+ int batch; /* batch mode */
+ const char *homedir; /* configuration directory name */
+} opt;
+
+
+#define DBG_COMMAND_VALUE 1 /* debug commands i/o */
+#define DBG_MPI_VALUE 2 /* debug mpi details */
+#define DBG_CRYPTO_VALUE 4 /* debug low level crypto */
+#define DBG_MEMORY_VALUE 32 /* debug memory allocation stuff */
+#define DBG_CACHE_VALUE 64 /* debug the caching */
+#define DBG_MEMSTAT_VALUE 128 /* show memory statistics */
+#define DBG_HASHING_VALUE 512 /* debug hashing operations */
+#define DBG_ASSUAN_VALUE 1024
+
+#define DBG_COMMAND (opt.debug & DBG_COMMAND_VALUE)
+#define DBG_CRYPTO (opt.debug & DBG_CRYPTO_VALUE)
+#define DBG_MEMORY (opt.debug & DBG_MEMORY_VALUE)
+#define DBG_CACHE (opt.debug & DBG_CACHE_VALUE)
+#define DBG_HASHING (opt.debug & DBG_HASHING_VALUE)
+#define DBG_ASSUAN (opt.debug & DBG_ASSUAN_VALUE)
+
+struct server_local_s;
+
+struct server_control_s {
+ struct server_local_s *server_local;
+
+};
+typedef struct server_control_s *CTRL;
+
+
+/*-- scdaemon.c --*/
+void scd_exit (int rc);
+void scd_init_default_ctrl (CTRL ctrl);
+
+/*-- command.c --*/
+void scd_command_handler (int);
+
+
+#endif /*SCDAEMON_H*/