diff options
Diffstat (limited to 'agent/agent.h')
-rw-r--r-- | agent/agent.h | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/agent/agent.h b/agent/agent.h new file mode 100644 index 000000000..e689b8e56 --- /dev/null +++ b/agent/agent.h @@ -0,0 +1,78 @@ +/* agent.h - Global definitions for the agent + * Copyright (C) 2001 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 AGENT_H +#define AGENT_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 */ + 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_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) + +struct server_local_s; + +struct server_control_s { + struct server_local_s *server_local; + struct { + unsigned char value[MAX_DIGEST_LEN]; + int valuelen; + } digest; + + +}; +typedef struct server_control_s *CTRL; + +/*-- gpg-agent.c --*/ +void agent_exit (int rc); + + +/*-- command.c --*/ +void start_command_handler (void); + +/*-- pksign.c --*/ +int agent_pksign (CTRL ctrl, FILE *outfp); + + + +#endif /*AGENT_H*/ |