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 * SPDX-License-Identifier: BSD-2-Clause 6 */ 7 8 #include "fido/err.h" 9 10 const char * 11 fido_strerr(int n) 12 { 13 switch (n) { 14 case FIDO_ERR_SUCCESS: 15 return "FIDO_ERR_SUCCESS"; 16 case FIDO_ERR_INVALID_COMMAND: 17 return "FIDO_ERR_INVALID_COMMAND"; 18 case FIDO_ERR_INVALID_PARAMETER: 19 return "FIDO_ERR_INVALID_PARAMETER"; 20 case FIDO_ERR_INVALID_LENGTH: 21 return "FIDO_ERR_INVALID_LENGTH"; 22 case FIDO_ERR_INVALID_SEQ: 23 return "FIDO_ERR_INVALID_SEQ"; 24 case FIDO_ERR_TIMEOUT: 25 return "FIDO_ERR_TIMEOUT"; 26 case FIDO_ERR_CHANNEL_BUSY: 27 return "FIDO_ERR_CHANNEL_BUSY"; 28 case FIDO_ERR_LOCK_REQUIRED: 29 return "FIDO_ERR_LOCK_REQUIRED"; 30 case FIDO_ERR_INVALID_CHANNEL: 31 return "FIDO_ERR_INVALID_CHANNEL"; 32 case FIDO_ERR_CBOR_UNEXPECTED_TYPE: 33 return "FIDO_ERR_CBOR_UNEXPECTED_TYPE"; 34 case FIDO_ERR_INVALID_CBOR: 35 return "FIDO_ERR_INVALID_CBOR"; 36 case FIDO_ERR_MISSING_PARAMETER: 37 return "FIDO_ERR_MISSING_PARAMETER"; 38 case FIDO_ERR_LIMIT_EXCEEDED: 39 return "FIDO_ERR_LIMIT_EXCEEDED"; 40 case FIDO_ERR_UNSUPPORTED_EXTENSION: 41 return "FIDO_ERR_UNSUPPORTED_EXTENSION"; 42 case FIDO_ERR_FP_DATABASE_FULL: 43 return "FIDO_ERR_FP_DATABASE_FULL"; 44 case FIDO_ERR_LARGEBLOB_STORAGE_FULL: 45 return "FIDO_ERR_LARGEBLOB_STORAGE_FULL"; 46 case FIDO_ERR_CREDENTIAL_EXCLUDED: 47 return "FIDO_ERR_CREDENTIAL_EXCLUDED"; 48 case FIDO_ERR_PROCESSING: 49 return "FIDO_ERR_PROCESSING"; 50 case FIDO_ERR_INVALID_CREDENTIAL: 51 return "FIDO_ERR_INVALID_CREDENTIAL"; 52 case FIDO_ERR_USER_ACTION_PENDING: 53 return "FIDO_ERR_USER_ACTION_PENDING"; 54 case FIDO_ERR_OPERATION_PENDING: 55 return "FIDO_ERR_OPERATION_PENDING"; 56 case FIDO_ERR_NO_OPERATIONS: 57 return "FIDO_ERR_NO_OPERATIONS"; 58 case FIDO_ERR_UNSUPPORTED_ALGORITHM: 59 return "FIDO_ERR_UNSUPPORTED_ALGORITHM"; 60 case FIDO_ERR_OPERATION_DENIED: 61 return "FIDO_ERR_OPERATION_DENIED"; 62 case FIDO_ERR_KEY_STORE_FULL: 63 return "FIDO_ERR_KEY_STORE_FULL"; 64 case FIDO_ERR_NOT_BUSY: 65 return "FIDO_ERR_NOT_BUSY"; 66 case FIDO_ERR_NO_OPERATION_PENDING: 67 return "FIDO_ERR_NO_OPERATION_PENDING"; 68 case FIDO_ERR_UNSUPPORTED_OPTION: 69 return "FIDO_ERR_UNSUPPORTED_OPTION"; 70 case FIDO_ERR_INVALID_OPTION: 71 return "FIDO_ERR_INVALID_OPTION"; 72 case FIDO_ERR_KEEPALIVE_CANCEL: 73 return "FIDO_ERR_KEEPALIVE_CANCEL"; 74 case FIDO_ERR_NO_CREDENTIALS: 75 return "FIDO_ERR_NO_CREDENTIALS"; 76 case FIDO_ERR_USER_ACTION_TIMEOUT: 77 return "FIDO_ERR_USER_ACTION_TIMEOUT"; 78 case FIDO_ERR_NOT_ALLOWED: 79 return "FIDO_ERR_NOT_ALLOWED"; 80 case FIDO_ERR_PIN_INVALID: 81 return "FIDO_ERR_PIN_INVALID"; 82 case FIDO_ERR_PIN_BLOCKED: 83 return "FIDO_ERR_PIN_BLOCKED"; 84 case FIDO_ERR_PIN_AUTH_INVALID: 85 return "FIDO_ERR_PIN_AUTH_INVALID"; 86 case FIDO_ERR_PIN_AUTH_BLOCKED: 87 return "FIDO_ERR_PIN_AUTH_BLOCKED"; 88 case FIDO_ERR_PIN_NOT_SET: 89 return "FIDO_ERR_PIN_NOT_SET"; 90 case FIDO_ERR_PIN_REQUIRED: 91 return "FIDO_ERR_PIN_REQUIRED"; 92 case FIDO_ERR_PIN_POLICY_VIOLATION: 93 return "FIDO_ERR_PIN_POLICY_VIOLATION"; 94 case FIDO_ERR_PIN_TOKEN_EXPIRED: 95 return "FIDO_ERR_PIN_TOKEN_EXPIRED"; 96 case FIDO_ERR_REQUEST_TOO_LARGE: 97 return "FIDO_ERR_REQUEST_TOO_LARGE"; 98 case FIDO_ERR_ACTION_TIMEOUT: 99 return "FIDO_ERR_ACTION_TIMEOUT"; 100 case FIDO_ERR_UP_REQUIRED: 101 return "FIDO_ERR_UP_REQUIRED"; 102 case FIDO_ERR_UV_BLOCKED: 103 return "FIDO_ERR_UV_BLOCKED"; 104 case FIDO_ERR_UV_INVALID: 105 return "FIDO_ERR_UV_INVALID"; 106 case FIDO_ERR_UNAUTHORIZED_PERM: 107 return "FIDO_ERR_UNAUTHORIZED_PERM"; 108 case FIDO_ERR_ERR_OTHER: 109 return "FIDO_ERR_ERR_OTHER"; 110 case FIDO_ERR_SPEC_LAST: 111 return "FIDO_ERR_SPEC_LAST"; 112 case FIDO_ERR_TX: 113 return "FIDO_ERR_TX"; 114 case FIDO_ERR_RX: 115 return "FIDO_ERR_RX"; 116 case FIDO_ERR_RX_NOT_CBOR: 117 return "FIDO_ERR_RX_NOT_CBOR"; 118 case FIDO_ERR_RX_INVALID_CBOR: 119 return "FIDO_ERR_RX_INVALID_CBOR"; 120 case FIDO_ERR_INVALID_PARAM: 121 return "FIDO_ERR_INVALID_PARAM"; 122 case FIDO_ERR_INVALID_SIG: 123 return "FIDO_ERR_INVALID_SIG"; 124 case FIDO_ERR_INVALID_ARGUMENT: 125 return "FIDO_ERR_INVALID_ARGUMENT"; 126 case FIDO_ERR_USER_PRESENCE_REQUIRED: 127 return "FIDO_ERR_USER_PRESENCE_REQUIRED"; 128 case FIDO_ERR_NOTFOUND: 129 return "FIDO_ERR_NOTFOUND"; 130 case FIDO_ERR_COMPRESS: 131 return "FIDO_ERR_COMPRESS"; 132 case FIDO_ERR_INTERNAL: 133 return "FIDO_ERR_INTERNAL"; 134 default: 135 return "FIDO_ERR_UNKNOWN"; 136 } 137 } 138