summaryrefslogtreecommitdiff
path: root/contrib/keychain-mcd/crypto_osx.c
diff options
context:
space:
mode:
authorBernhard Schmidt <berni@debian.org>2017-12-30 22:21:14 +0100
committerBernhard Schmidt <berni@debian.org>2017-12-30 22:21:14 +0100
commit166ec510cb88cc1213ba6f441ffb372836fbddd3 (patch)
tree8a8160ebeff4eaa8924367dbca91ff89fccbbb2d /contrib/keychain-mcd/crypto_osx.c
parent1e5f64f1519f3e43bdd34e2975c9c97840779592 (diff)
parent75286879ecd00a15e21cb9126643fef0316bd47f (diff)
Merge tag 'debian/2.4.4-2' into stretch-backports
openvpn Debian release 2.4.4-2
Diffstat (limited to 'contrib/keychain-mcd/crypto_osx.c')
-rw-r--r--contrib/keychain-mcd/crypto_osx.c79
1 files changed, 0 insertions, 79 deletions
diff --git a/contrib/keychain-mcd/crypto_osx.c b/contrib/keychain-mcd/crypto_osx.c
deleted file mode 100644
index 27ac4f5..0000000
--- a/contrib/keychain-mcd/crypto_osx.c
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * OpenVPN -- An application to securely tunnel IP networks
- * over a single UDP port, with support for SSL/TLS-based
- * session authentication and key exchange,
- * packet encryption, packet authentication, and
- * packet compression.
- *
- * Copyright (C) 2010 Brian Raderman <brian@irregularexpression.org>
- * Copyright (C) 2013-2015 Vasily Kulikov <segoon@openwall.com>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2
- * as published by the Free Software Foundation.
- *
- * This program 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.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-
-#include <CommonCrypto/CommonDigest.h>
-#include <Security/SecKey.h>
-#include <Security/Security.h>
-
-#include "crypto_osx.h"
-#include <err.h>
-
-void
-printErrorMsg(const char *func, CFErrorRef error)
-{
- CFStringRef desc = CFErrorCopyDescription(error);
- warnx("%s failed: %s", func, CFStringGetCStringPtr(desc, kCFStringEncodingUTF8));
- CFRelease(desc);
-}
-
-void
-printErrorStatusMsg(const char *func, OSStatus status)
-{
- CFStringRef error;
- error = SecCopyErrorMessageString(status, NULL);
- if (error)
- {
- warnx("%s failed: %s", func, CFStringGetCStringPtr(error, kCFStringEncodingUTF8));
- CFRelease(error);
- }
- else
- {
- warnx("%s failed: %X", func, (int)status);
- }
-}
-
-void
-signData(SecIdentityRef identity, const uint8_t *from, int flen, uint8_t *to, size_t *tlen)
-{
- SecKeyRef privateKey = NULL;
- OSStatus status;
-
- status = SecIdentityCopyPrivateKey(identity, &privateKey);
- if (status != noErr)
- {
- printErrorStatusMsg("signData: SecIdentityCopyPrivateKey", status);
- *tlen = 0;
- return;
- }
-
- status = SecKeyRawSign(privateKey, kSecPaddingPKCS1, from, flen, to, tlen);
- CFRelease(privateKey);
- if (status != noErr)
- {
- printErrorStatusMsg("signData: SecKeyRawSign", status);
- *tlen = 0;
- return;
- }
-}