xref: /openbsd/lib/libfido2/src/err.c (revision e5dd7070)
1 /*
2  * Copyright (c) 2018 Yubico AB. All rights reserved.
3  * Use of this source code is governed by a BSD-style
4  * license that can be found in the LICENSE file.
5  */
6 
7 #include "fido/err.h"
8 
9 const char *
10 fido_strerr(int n)
11 {
12 	switch (n) {
13 	case FIDO_ERR_SUCCESS:
14 		return "FIDO_ERR_SUCCESS";
15 	case FIDO_ERR_INVALID_COMMAND:
16 		return "FIDO_ERR_INVALID_COMMAND";
17 	case FIDO_ERR_INVALID_PARAMETER:
18 		return "FIDO_ERR_INVALID_PARAMETER";
19 	case FIDO_ERR_INVALID_LENGTH:
20 		return "FIDO_ERR_INVALID_LENGTH";
21 	case FIDO_ERR_INVALID_SEQ:
22 		return "FIDO_ERR_INVALID_SEQ";
23 	case FIDO_ERR_TIMEOUT:
24 		return "FIDO_ERR_TIMEOUT";
25 	case FIDO_ERR_CHANNEL_BUSY:
26 		return "FIDO_ERR_CHANNEL_BUSY";
27 	case FIDO_ERR_LOCK_REQUIRED:
28 		return "FIDO_ERR_LOCK_REQUIRED";
29 	case FIDO_ERR_INVALID_CHANNEL:
30 		return "FIDO_ERR_INVALID_CHANNEL";
31 	case FIDO_ERR_CBOR_UNEXPECTED_TYPE:
32 		return "FIDO_ERR_CBOR_UNEXPECTED_TYPE";
33 	case FIDO_ERR_INVALID_CBOR:
34 		return "FIDO_ERR_INVALID_CBOR";
35 	case FIDO_ERR_MISSING_PARAMETER:
36 		return "FIDO_ERR_MISSING_PARAMETER";
37 	case FIDO_ERR_LIMIT_EXCEEDED:
38 		return "FIDO_ERR_LIMIT_EXCEEDED";
39 	case FIDO_ERR_UNSUPPORTED_EXTENSION:
40 		return "FIDO_ERR_UNSUPPORTED_EXTENSION";
41 	case FIDO_ERR_CREDENTIAL_EXCLUDED:
42 		return "FIDO_ERR_CREDENTIAL_EXCLUDED";
43 	case FIDO_ERR_PROCESSING:
44 		return "FIDO_ERR_PROCESSING";
45 	case FIDO_ERR_INVALID_CREDENTIAL:
46 		return "FIDO_ERR_INVALID_CREDENTIAL";
47 	case FIDO_ERR_USER_ACTION_PENDING:
48 		return "FIDO_ERR_USER_ACTION_PENDING";
49 	case FIDO_ERR_OPERATION_PENDING:
50 		return "FIDO_ERR_OPERATION_PENDING";
51 	case FIDO_ERR_NO_OPERATIONS:
52 		return "FIDO_ERR_NO_OPERATIONS";
53 	case FIDO_ERR_UNSUPPORTED_ALGORITHM:
54 		return "FIDO_ERR_UNSUPPORTED_ALGORITHM";
55 	case FIDO_ERR_OPERATION_DENIED:
56 		return "FIDO_ERR_OPERATION_DENIED";
57 	case FIDO_ERR_KEY_STORE_FULL:
58 		return "FIDO_ERR_KEY_STORE_FULL";
59 	case FIDO_ERR_NOT_BUSY:
60 		return "FIDO_ERR_NOT_BUSY";
61 	case FIDO_ERR_NO_OPERATION_PENDING:
62 		return "FIDO_ERR_NO_OPERATION_PENDING";
63 	case FIDO_ERR_UNSUPPORTED_OPTION:
64 		return "FIDO_ERR_UNSUPPORTED_OPTION";
65 	case FIDO_ERR_INVALID_OPTION:
66 		return "FIDO_ERR_INVALID_OPTION";
67 	case FIDO_ERR_KEEPALIVE_CANCEL:
68 		return "FIDO_ERR_KEEPALIVE_CANCEL";
69 	case FIDO_ERR_NO_CREDENTIALS:
70 		return "FIDO_ERR_NO_CREDENTIALS";
71 	case FIDO_ERR_USER_ACTION_TIMEOUT:
72 		return "FIDO_ERR_USER_ACTION_TIMEOUT";
73 	case FIDO_ERR_NOT_ALLOWED:
74 		return "FIDO_ERR_NOT_ALLOWED";
75 	case FIDO_ERR_PIN_INVALID:
76 		return "FIDO_ERR_PIN_INVALID";
77 	case FIDO_ERR_PIN_BLOCKED:
78 		return "FIDO_ERR_PIN_BLOCKED";
79 	case FIDO_ERR_PIN_AUTH_INVALID:
80 		return "FIDO_ERR_PIN_AUTH_INVALID";
81 	case FIDO_ERR_PIN_AUTH_BLOCKED:
82 		return "FIDO_ERR_PIN_AUTH_BLOCKED";
83 	case FIDO_ERR_PIN_NOT_SET:
84 		return "FIDO_ERR_PIN_NOT_SET";
85 	case FIDO_ERR_PIN_REQUIRED:
86 		return "FIDO_ERR_PIN_REQUIRED";
87 	case FIDO_ERR_PIN_POLICY_VIOLATION:
88 		return "FIDO_ERR_PIN_POLICY_VIOLATION";
89 	case FIDO_ERR_PIN_TOKEN_EXPIRED:
90 		return "FIDO_ERR_PIN_TOKEN_EXPIRED";
91 	case FIDO_ERR_REQUEST_TOO_LARGE:
92 		return "FIDO_ERR_REQUEST_TOO_LARGE";
93 	case FIDO_ERR_ACTION_TIMEOUT:
94 		return "FIDO_ERR_ACTION_TIMEOUT";
95 	case FIDO_ERR_UP_REQUIRED:
96 		return "FIDO_ERR_UP_REQUIRED";
97 	case FIDO_ERR_ERR_OTHER:
98 		return "FIDO_ERR_ERR_OTHER";
99 	case FIDO_ERR_SPEC_LAST:
100 		return "FIDO_ERR_SPEC_LAST";
101 	case FIDO_ERR_TX:
102 		return "FIDO_ERR_TX";
103 	case FIDO_ERR_RX:
104 		return "FIDO_ERR_RX";
105 	case FIDO_ERR_RX_NOT_CBOR:
106 		return "FIDO_ERR_RX_NOT_CBOR";
107 	case FIDO_ERR_RX_INVALID_CBOR:
108 		return "FIDO_ERR_RX_INVALID_CBOR";
109 	case FIDO_ERR_INVALID_PARAM:
110 		return "FIDO_ERR_INVALID_PARAM";
111 	case FIDO_ERR_INVALID_SIG:
112 		return "FIDO_ERR_INVALID_SIG";
113 	case FIDO_ERR_INVALID_ARGUMENT:
114 		return "FIDO_ERR_INVALID_ARGUMENT";
115 	case FIDO_ERR_USER_PRESENCE_REQUIRED:
116 		return "FIDO_ERR_USER_PRESENCE_REQUIRED";
117 	case FIDO_ERR_INTERNAL:
118 		return "FIDO_ERR_INTERNAL";
119 	default:
120 		return "FIDO_ERR_UNKNOWN";
121 	}
122 }
123