OpenCoverage

ssherr.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/openssh/src/ssherr.c
Source codeSwitch to Preprocessed file
LineSourceCount
1/* $OpenBSD: ssherr.c,v 1.8 2018/07/03 11:39:54 djm Exp $ */-
2/*-
3 * Copyright (c) 2011 Damien Miller-
4 *-
5 * Permission to use, copy, modify, and distribute this software for any-
6 * purpose with or without fee is hereby granted, provided that the above-
7 * copyright notice and this permission notice appear in all copies.-
8 *-
9 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES-
10 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF-
11 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR-
12 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES-
13 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN-
14 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF-
15 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.-
16 */-
17-
18#include <errno.h>-
19#include <string.h>-
20#include "ssherr.h"-
21-
22const char *-
23ssh_err(int n)-
24{-
25 switch (n) {-
26 case SSH_ERR_SUCCESS:
never executed: case 0:
0
27 return "success";
never executed: return "success";
0
28 case SSH_ERR_INTERNAL_ERROR:
never executed: case -1:
0
29 return "unexpected internal error";
never executed: return "unexpected internal error";
0
30 case SSH_ERR_ALLOC_FAIL:
never executed: case -2:
0
31 return "memory allocation failed";
never executed: return "memory allocation failed";
0
32 case SSH_ERR_MESSAGE_INCOMPLETE:
never executed: case -3:
0
33 return "incomplete message";
never executed: return "incomplete message";
0
34 case SSH_ERR_INVALID_FORMAT:
never executed: case -4:
0
35 return "invalid format";
never executed: return "invalid format";
0
36 case SSH_ERR_BIGNUM_IS_NEGATIVE:
never executed: case -5:
0
37 return "bignum is negative";
never executed: return "bignum is negative";
0
38 case SSH_ERR_STRING_TOO_LARGE:
never executed: case -6:
0
39 return "string is too large";
never executed: return "string is too large";
0
40 case SSH_ERR_BIGNUM_TOO_LARGE:
never executed: case -7:
0
41 return "bignum is too large";
never executed: return "bignum is too large";
0
42 case SSH_ERR_ECPOINT_TOO_LARGE:
never executed: case -8:
0
43 return "elliptic curve point is too large";
never executed: return "elliptic curve point is too large";
0
44 case SSH_ERR_NO_BUFFER_SPACE:
never executed: case -9:
0
45 return "insufficient buffer space";
never executed: return "insufficient buffer space";
0
46 case SSH_ERR_INVALID_ARGUMENT:
never executed: case -10:
0
47 return "invalid argument";
never executed: return "invalid argument";
0
48 case SSH_ERR_KEY_BITS_MISMATCH:
never executed: case -11:
0
49 return "key bits do not match";
never executed: return "key bits do not match";
0
50 case SSH_ERR_EC_CURVE_INVALID:
never executed: case -12:
0
51 return "invalid elliptic curve";
never executed: return "invalid elliptic curve";
0
52 case SSH_ERR_KEY_TYPE_MISMATCH:
never executed: case -13:
0
53 return "key type does not match";
never executed: return "key type does not match";
0
54 case SSH_ERR_KEY_TYPE_UNKNOWN:
never executed: case -14:
0
55 return "unknown or unsupported key type";
never executed: return "unknown or unsupported key type";
0
56 case SSH_ERR_EC_CURVE_MISMATCH:
never executed: case -15:
0
57 return "elliptic curve does not match";
never executed: return "elliptic curve does not match";
0
58 case SSH_ERR_EXPECTED_CERT:
never executed: case -16:
0
59 return "plain key provided where certificate required";
never executed: return "plain key provided where certificate required";
0
60 case SSH_ERR_KEY_LACKS_CERTBLOB:
never executed: case -17:
0
61 return "key lacks certificate data";
never executed: return "key lacks certificate data";
0
62 case SSH_ERR_KEY_CERT_UNKNOWN_TYPE:
never executed: case -18:
0
63 return "unknown/unsupported certificate type";
never executed: return "unknown/unsupported certificate type";
0
64 case SSH_ERR_KEY_CERT_INVALID_SIGN_KEY:
never executed: case -19:
0
65 return "invalid certificate signing key";
never executed: return "invalid certificate signing key";
0
66 case SSH_ERR_KEY_INVALID_EC_VALUE:
never executed: case -20:
0
67 return "invalid elliptic curve value";
never executed: return "invalid elliptic curve value";
0
68 case SSH_ERR_SIGNATURE_INVALID:
never executed: case -21:
0
69 return "incorrect signature";
never executed: return "incorrect signature";
0
70 case SSH_ERR_LIBCRYPTO_ERROR:
never executed: case -22:
0
71 return "error in libcrypto"; /* XXX fetch and return */
never executed: return "error in libcrypto";
0
72 case SSH_ERR_UNEXPECTED_TRAILING_DATA:
never executed: case -23:
0
73 return "unexpected bytes remain after decoding";
never executed: return "unexpected bytes remain after decoding";
0
74 case SSH_ERR_SYSTEM_ERROR:
never executed: case -24:
0
75 return strerror(errno);
never executed: return strerror( (*__errno_location ()) );
0
76 case SSH_ERR_KEY_CERT_INVALID:
never executed: case -25:
0
77 return "invalid certificate";
never executed: return "invalid certificate";
0
78 case SSH_ERR_AGENT_COMMUNICATION:
never executed: case -26:
0
79 return "communication with agent failed";
never executed: return "communication with agent failed";
0
80 case SSH_ERR_AGENT_FAILURE:
never executed: case -27:
0
81 return "agent refused operation";
never executed: return "agent refused operation";
0
82 case SSH_ERR_DH_GEX_OUT_OF_RANGE:
never executed: case -28:
0
83 return "DH GEX group out of range";
never executed: return "DH GEX group out of range";
0
84 case SSH_ERR_DISCONNECTED:
never executed: case -29:
0
85 return "disconnected";
never executed: return "disconnected";
0
86 case SSH_ERR_MAC_INVALID:
never executed: case -30:
0
87 return "message authentication code incorrect";
never executed: return "message authentication code incorrect";
0
88 case SSH_ERR_NO_CIPHER_ALG_MATCH:
never executed: case -31:
0
89 return "no matching cipher found";
never executed: return "no matching cipher found";
0
90 case SSH_ERR_NO_MAC_ALG_MATCH:
never executed: case -32:
0
91 return "no matching MAC found";
never executed: return "no matching MAC found";
0
92 case SSH_ERR_NO_COMPRESS_ALG_MATCH:
never executed: case -33:
0
93 return "no matching compression method found";
never executed: return "no matching compression method found";
0
94 case SSH_ERR_NO_KEX_ALG_MATCH:
never executed: case -34:
0
95 return "no matching key exchange method found";
never executed: return "no matching key exchange method found";
0
96 case SSH_ERR_NO_HOSTKEY_ALG_MATCH:
never executed: case -35:
0
97 return "no matching host key type found";
never executed: return "no matching host key type found";
0
98 case SSH_ERR_PROTOCOL_MISMATCH:
never executed: case -37:
0
99 return "protocol version mismatch";
never executed: return "protocol version mismatch";
0
100 case SSH_ERR_NO_PROTOCOL_VERSION:
never executed: case -38:
0
101 return "could not read protocol version";
never executed: return "could not read protocol version";
0
102 case SSH_ERR_NO_HOSTKEY_LOADED:
never executed: case -36:
0
103 return "could not load host key";
never executed: return "could not load host key";
0
104 case SSH_ERR_NEED_REKEY:
never executed: case -39:
0
105 return "rekeying not supported by peer";
never executed: return "rekeying not supported by peer";
0
106 case SSH_ERR_PASSPHRASE_TOO_SHORT:
never executed: case -40:
0
107 return "passphrase is too short (minimum five characters)";
never executed: return "passphrase is too short (minimum five characters)";
0
108 case SSH_ERR_FILE_CHANGED:
never executed: case -41:
0
109 return "file changed while reading";
never executed: return "file changed while reading";
0
110 case SSH_ERR_KEY_UNKNOWN_CIPHER:
never executed: case -42:
0
111 return "key encrypted using unsupported cipher";
never executed: return "key encrypted using unsupported cipher";
0
112 case SSH_ERR_KEY_WRONG_PASSPHRASE:
never executed: case -43:
0
113 return "incorrect passphrase supplied to decrypt private key";
never executed: return "incorrect passphrase supplied to decrypt private key";
0
114 case SSH_ERR_KEY_BAD_PERMISSIONS:
never executed: case -44:
0
115 return "bad permissions";
never executed: return "bad permissions";
0
116 case SSH_ERR_KEY_CERT_MISMATCH:
never executed: case -45:
0
117 return "certificate does not match key";
never executed: return "certificate does not match key";
0
118 case SSH_ERR_KEY_NOT_FOUND:
never executed: case -46:
0
119 return "key not found";
never executed: return "key not found";
0
120 case SSH_ERR_AGENT_NOT_PRESENT:
never executed: case -47:
0
121 return "agent not present";
never executed: return "agent not present";
0
122 case SSH_ERR_AGENT_NO_IDENTITIES:
never executed: case -48:
0
123 return "agent contains no identities";
never executed: return "agent contains no identities";
0
124 case SSH_ERR_BUFFER_READ_ONLY:
never executed: case -49:
0
125 return "internal error: buffer is read-only";
never executed: return "internal error: buffer is read-only";
0
126 case SSH_ERR_KRL_BAD_MAGIC:
never executed: case -50:
0
127 return "KRL file has invalid magic number";
never executed: return "KRL file has invalid magic number";
0
128 case SSH_ERR_KEY_REVOKED:
never executed: case -51:
0
129 return "Key is revoked";
never executed: return "Key is revoked";
0
130 case SSH_ERR_CONN_CLOSED:
never executed: case -52:
0
131 return "Connection closed";
never executed: return "Connection closed";
0
132 case SSH_ERR_CONN_TIMEOUT:
never executed: case -53:
0
133 return "Connection timed out";
never executed: return "Connection timed out";
0
134 case SSH_ERR_CONN_CORRUPT:
never executed: case -54:
0
135 return "Connection corrupted";
never executed: return "Connection corrupted";
0
136 case SSH_ERR_PROTOCOL_ERROR:
never executed: case -55:
0
137 return "Protocol error";
never executed: return "Protocol error";
0
138 case SSH_ERR_KEY_LENGTH:
never executed: case -56:
0
139 return "Invalid key length";
never executed: return "Invalid key length";
0
140 case SSH_ERR_NUMBER_TOO_LARGE:
never executed: case -57:
0
141 return "number is too large";
never executed: return "number is too large";
0
142 case SSH_ERR_SIGN_ALG_UNSUPPORTED:
never executed: case -58:
0
143 return "signature algorithm not supported";
never executed: return "signature algorithm not supported";
0
144 default:
never executed: default:
0
145 return "unknown error";
never executed: return "unknown error";
0
146 }-
147}-
Source codeSwitch to Preprocessed file

Generated by Squish Coco 4.2.2