summaryrefslogtreecommitdiffstats
path: root/libkdenetwork/libgpgme-copy/gpgme/delete.c
diff options
context:
space:
mode:
Diffstat (limited to 'libkdenetwork/libgpgme-copy/gpgme/delete.c')
-rw-r--r--libkdenetwork/libgpgme-copy/gpgme/delete.c109
1 files changed, 0 insertions, 109 deletions
diff --git a/libkdenetwork/libgpgme-copy/gpgme/delete.c b/libkdenetwork/libgpgme-copy/gpgme/delete.c
deleted file mode 100644
index 1f2d1a9bb..000000000
--- a/libkdenetwork/libgpgme-copy/gpgme/delete.c
+++ /dev/null
@@ -1,109 +0,0 @@
-/* delete.c - Delete a key.
- Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
-
- This file is part of GPGME.
-
- GPGME is free software; you can redistribute it and/or modify it
- under the terms of the GNU Lesser General Public License as
- published by the Free Software Foundation; either version 2.1 of
- the License, or (at your option) any later version.
-
- GPGME 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
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- 02110-1301, USA. */
-
-#if HAVE_CONFIG_H
-#include <config.h>
-#endif
-#include <stdlib.h>
-#include <errno.h>
-
-#include "gpgme.h"
-#include "context.h"
-#include "ops.h"
-
-
-static gpgme_error_t
-delete_status_handler (void *priv, gpgme_status_code_t code, char *args)
-{
- if (code == GPGME_STATUS_DELETE_PROBLEM)
- {
- enum delete_problem
- {
- DELETE_No_Problem = 0,
- DELETE_No_Such_Key = 1,
- DELETE_Must_Delete_Secret_Key = 2,
- DELETE_Ambiguous_Specification = 3
- };
- long problem;
- char *tail;
-
- errno = 0;
- problem = strtol (args, &tail, 0);
- if (errno || (*tail && *tail != ' '))
- return gpg_error (GPG_ERR_INV_ENGINE);
-
- switch (problem)
- {
- case DELETE_No_Problem:
- break;
-
- case DELETE_No_Such_Key:
- return gpg_error (GPG_ERR_NO_PUBKEY);
-
- case DELETE_Must_Delete_Secret_Key:
- return gpg_error (GPG_ERR_CONFLICT);
-
- case DELETE_Ambiguous_Specification:
- return gpg_error (GPG_ERR_AMBIGUOUS_NAME);
-
- default:
- return gpg_error (GPG_ERR_GENERAL);
- }
- }
- return 0;
-}
-
-
-static gpgme_error_t
-delete_start (gpgme_ctx_t ctx, int synchronous, const gpgme_key_t key,
- int allow_secret)
-{
- gpgme_error_t err;
-
- err = _gpgme_op_reset (ctx, synchronous);
- if (err)
- return err;
-
- _gpgme_engine_set_status_handler (ctx->engine, delete_status_handler, ctx);
-
- return _gpgme_engine_op_delete (ctx->engine, key, allow_secret);
-}
-
-
-/* Delete KEY from the keyring. If ALLOW_SECRET is non-zero, secret
- keys are also deleted. */
-gpgme_error_t
-gpgme_op_delete_start (gpgme_ctx_t ctx, const gpgme_key_t key,
- int allow_secret)
-{
- return delete_start (ctx, 0, key, allow_secret);
-}
-
-
-/* Delete KEY from the keyring. If ALLOW_SECRET is non-zero, secret
- keys are also deleted. */
-gpgme_error_t
-gpgme_op_delete (gpgme_ctx_t ctx, const gpgme_key_t key, int allow_secret)
-{
- gpgme_error_t err = delete_start (ctx, 1, key, allow_secret);
- if (!err)
- err = _gpgme_wait_one (ctx);
- return err;
-}