summaryrefslogtreecommitdiff
path: root/ssh-pkcs11.h
diff options
context:
space:
mode:
authordjm@openbsd.org <djm@openbsd.org>2019-01-20 22:51:37 +0000
committerDamien Miller <djm@mindrot.org>2019-01-21 10:54:37 +1100
commit93f02107f44d63a016d8c23ebd2ca9205c495c48 (patch)
tree1d8d6ca8e146c9bd325614f33a59adf7199b40c9 /ssh-pkcs11.h
parentaa22c20e0c36c2fc610cfcc793b0d14079c38814 (diff)
downloadopenssh-git-93f02107f44d63a016d8c23ebd2ca9205c495c48.tar.gz
upstream: add support for ECDSA keys in PKCS#11 tokens
Work by markus@ and Pedro Martelletto, feedback and ok me@ OpenBSD-Commit-ID: a37d651e221341376636056512bddfc16efb4424
Diffstat (limited to 'ssh-pkcs11.h')
-rw-r--r--ssh-pkcs11.h18
1 files changed, 17 insertions, 1 deletions
diff --git a/ssh-pkcs11.h b/ssh-pkcs11.h
index 0ced74f2..b9038450 100644
--- a/ssh-pkcs11.h
+++ b/ssh-pkcs11.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: ssh-pkcs11.h,v 1.4 2015/01/15 09:40:00 djm Exp $ */
+/* $OpenBSD: ssh-pkcs11.h,v 1.5 2019/01/20 22:51:37 djm Exp $ */
/*
* Copyright (c) 2010 Markus Friedl. All rights reserved.
*
@@ -14,10 +14,26 @@
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
+
+/* Errors for pkcs11_add_provider() */
+#define SSH_PKCS11_ERR_GENERIC 1
+#define SSH_PKCS11_ERR_LOGIN_FAIL 2
+#define SSH_PKCS11_ERR_NO_SLOTS 3
+#define SSH_PKCS11_ERR_PIN_REQUIRED 4
+#define SSH_PKCS11_ERR_PIN_LOCKED 5
+
int pkcs11_init(int);
void pkcs11_terminate(void);
int pkcs11_add_provider(char *, char *, struct sshkey ***);
int pkcs11_del_provider(char *);
+#ifdef WITH_PKCS11_KEYGEN
+struct sshkey *
+ pkcs11_gakp(char *, char *, unsigned int, char *, unsigned int,
+ unsigned int, unsigned char, u_int32_t *);
+struct sshkey *
+ pkcs11_destroy_keypair(char *, char *, unsigned long, unsigned char,
+ u_int32_t *);
+#endif
#if !defined(WITH_OPENSSL) && defined(ENABLE_PKCS11)
#undef ENABLE_PKCS11