diff options
author | jmc <> | 2016-09-19 12:55:04 +0000 |
---|---|---|
committer | jmc <> | 2016-09-19 12:55:04 +0000 |
commit | 9a3e14d8a3707ae4c966138df77487a25a64559c (patch) | |
tree | 12715f26986d451eeabb34bea3979bc194d21ee2 | |
parent | 79f8829eee2dc7ce0238fc92164da407cd8664dd (diff) | |
download | openbsd-9a3e14d8a3707ae4c966138df77487a25a64559c.tar.gz openbsd-9a3e14d8a3707ae4c966138df77487a25a64559c.tar.bz2 openbsd-9a3e14d8a3707ae4c966138df77487a25a64559c.zip |
shorten verify;
-rw-r--r-- | src/usr.bin/openssl/openssl.1 | 250 |
1 files changed, 96 insertions, 154 deletions
diff --git a/src/usr.bin/openssl/openssl.1 b/src/usr.bin/openssl/openssl.1 index 7983e2671c..b23c64a0a0 100644 --- a/src/usr.bin/openssl/openssl.1 +++ b/src/usr.bin/openssl/openssl.1 | |||
@@ -1,4 +1,4 @@ | |||
1 | .\" $OpenBSD: openssl.1,v 1.75 2016/09/17 15:10:50 deraadt Exp $ | 1 | .\" $OpenBSD: openssl.1,v 1.76 2016/09/19 12:55:04 jmc Exp $ |
2 | .\" ==================================================================== | 2 | .\" ==================================================================== |
3 | .\" Copyright (c) 1998-2002 The OpenSSL Project. All rights reserved. | 3 | .\" Copyright (c) 1998-2002 The OpenSSL Project. All rights reserved. |
4 | .\" | 4 | .\" |
@@ -112,7 +112,7 @@ | |||
112 | .\" | 112 | .\" |
113 | .\" OPENSSL | 113 | .\" OPENSSL |
114 | .\" | 114 | .\" |
115 | .Dd $Mdocdate: September 17 2016 $ | 115 | .Dd $Mdocdate: September 19 2016 $ |
116 | .Dt OPENSSL 1 | 116 | .Dt OPENSSL 1 |
117 | .Os | 117 | .Os |
118 | .Sh NAME | 118 | .Sh NAME |
@@ -4687,7 +4687,7 @@ The number of bytes must match the message digest algorithm in use. | |||
4687 | A previously created time stamp request in DER | 4687 | A previously created time stamp request in DER |
4688 | format that will be printed into the output file. | 4688 | format that will be printed into the output file. |
4689 | Useful for examining the content of a request in human-readable format. | 4689 | Useful for examining the content of a request in human-readable format. |
4690 | .It Fl md4|md5|ripemd160|sha|sha1 | 4690 | .It Fl md4 | md5 | ripemd160 | sha | sha1 |
4691 | The message digest to apply to the data file. | 4691 | The message digest to apply to the data file. |
4692 | It supports all the message digest algorithms that are supported by the | 4692 | It supports all the message digest algorithms that are supported by the |
4693 | .Nm dgst | 4693 | .Nm dgst |
@@ -5004,13 +5004,9 @@ containing the SPKAC. | |||
5004 | .It Fl verify | 5004 | .It Fl verify |
5005 | Verify the digital signature on the supplied SPKAC. | 5005 | Verify the digital signature on the supplied SPKAC. |
5006 | .El | 5006 | .El |
5007 | .\" | ||
5008 | .\" VERIFY | ||
5009 | .\" | ||
5010 | .Sh VERIFY | 5007 | .Sh VERIFY |
5011 | .nr nS 1 | 5008 | .nr nS 1 |
5012 | .Nm "openssl verify" | 5009 | .Nm "openssl verify" |
5013 | .Bk -words | ||
5014 | .Op Fl CAfile Ar file | 5010 | .Op Fl CAfile Ar file |
5015 | .Op Fl CApath Ar directory | 5011 | .Op Fl CApath Ar directory |
5016 | .Op Fl check_ss_sig | 5012 | .Op Fl check_ss_sig |
@@ -5028,9 +5024,7 @@ Verify the digital signature on the supplied SPKAC. | |||
5028 | .Op Fl untrusted Ar file | 5024 | .Op Fl untrusted Ar file |
5029 | .Op Fl verbose | 5025 | .Op Fl verbose |
5030 | .Op Fl x509_strict | 5026 | .Op Fl x509_strict |
5031 | .Op Fl | ||
5032 | .Op Ar certificates | 5027 | .Op Ar certificates |
5033 | .Ek | ||
5034 | .nr nS 0 | 5028 | .nr nS 0 |
5035 | .Pp | 5029 | .Pp |
5036 | The | 5030 | The |
@@ -5054,63 +5048,55 @@ should contain multiple certificates in PEM format, concatenated together. | |||
5054 | A | 5048 | A |
5055 | .Ar directory | 5049 | .Ar directory |
5056 | of trusted certificates. | 5050 | of trusted certificates. |
5057 | The certificates should have names of the form | 5051 | The certificates, or symbolic links to them, |
5058 | .Em hash.0 , | 5052 | should have names of the form |
5059 | or have symbolic links to them of this form | 5053 | .Ar hash Ns .0 , |
5060 | ("hash" is the hashed certificate subject name: see the | 5054 | where |
5055 | .Ar hash | ||
5056 | is the hashed certificate subject name | ||
5057 | (see the | ||
5061 | .Fl hash | 5058 | .Fl hash |
5062 | option of the | 5059 | option of the |
5063 | .Nm x509 | 5060 | .Nm x509 |
5064 | utility). | 5061 | utility). |
5065 | The | ||
5066 | .Nm c_rehash | ||
5067 | script distributed with OpenSSL | ||
5068 | will automatically create symbolic links to a directory of certificates. | ||
5069 | .It Fl crl_check | 5062 | .It Fl crl_check |
5070 | Checks end entity certificate validity by attempting to look up a valid CRL. | 5063 | Check end entity certificate validity by attempting to look up a valid CRL. |
5071 | If a valid CRL cannot be found an error occurs. | 5064 | If a valid CRL cannot be found an error occurs. |
5072 | .It Fl crl_check_all | 5065 | .It Fl crl_check_all |
5073 | Checks the validity of all certificates in the chain by attempting | 5066 | Check the validity of all certificates in the chain by attempting |
5074 | to look up valid CRLs. | 5067 | to look up valid CRLs. |
5075 | .It Fl explicit_policy | 5068 | .It Fl explicit_policy |
5076 | Set policy variable require-explicit-policy (see RFC 3280 et al). | 5069 | Set policy variable require-explicit-policy (RFC 3280). |
5077 | .It Fl extended_crl | 5070 | .It Fl extended_crl |
5078 | Enable extended CRL features such as indirect CRLs and alternate CRL | 5071 | Enable extended CRL features such as indirect CRLs and alternate CRL |
5079 | signing keys. | 5072 | signing keys. |
5080 | .It Fl help | 5073 | .It Fl help |
5081 | Prints out a usage message. | 5074 | Print a usage message. |
5082 | .It Fl ignore_critical | 5075 | .It Fl ignore_critical |
5083 | Normally if an unhandled critical extension is present which is not | 5076 | Ignore critical extensions instead of rejecting the certificate. |
5084 | supported by | ||
5085 | .Nm OpenSSL , | ||
5086 | the certificate is rejected (as required by RFC 3280 et al). | ||
5087 | If this option is set, critical extensions are ignored. | ||
5088 | .It Fl inhibit_any | 5077 | .It Fl inhibit_any |
5089 | Set policy variable inhibit-any-policy (see RFC 3280 et al). | 5078 | Set policy variable inhibit-any-policy (RFC 3280). |
5090 | .It Fl inhibit_map | 5079 | .It Fl inhibit_map |
5091 | Set policy variable inhibit-policy-mapping (see RFC 3280 et al). | 5080 | Set policy variable inhibit-policy-mapping (RFC 3280). |
5092 | .It Fl issuer_checks | 5081 | .It Fl issuer_checks |
5093 | Print out diagnostics relating to searches for the issuer certificate | 5082 | Print diagnostics relating to searches for the issuer certificate |
5094 | of the current certificate. | 5083 | of the current certificate |
5095 | This shows why each candidate issuer certificate was rejected. | 5084 | showing why each candidate issuer certificate was rejected. |
5096 | However the presence of rejection messages | 5085 | The presence of rejection messages |
5097 | does not itself imply that anything is wrong: during the normal | 5086 | does not itself imply that anything is wrong: |
5098 | verify process several rejections may take place. | 5087 | during the normal verify process several rejections may take place. |
5099 | .It Fl policy_check | 5088 | .It Fl policy_check |
5100 | Enables certificate policy processing. | 5089 | Enable certificate policy processing. |
5101 | .It Fl purpose Ar purpose | 5090 | .It Fl purpose Ar purpose |
5102 | The intended use for the certificate. | 5091 | The intended use for the certificate. |
5103 | Without this option no chain verification will be done. | 5092 | Without this option no chain verification will be done. |
5104 | Currently accepted uses are | 5093 | Currently accepted uses are |
5105 | .Ar sslclient , sslserver , | 5094 | .Cm sslclient , sslserver , |
5106 | .Ar nssslserver , smimesign , | 5095 | .Cm nssslserver , smimesign , |
5107 | .Ar smimeencrypt , crlsign , | 5096 | .Cm smimeencrypt , crlsign , |
5108 | .Ar any , | 5097 | .Cm any , |
5109 | and | 5098 | and |
5110 | .Ar ocsphelper . | 5099 | .Cm ocsphelper . |
5111 | See the | ||
5112 | .Sx VERIFY OPERATION | ||
5113 | section for more information. | ||
5114 | .It Fl untrusted Ar file | 5100 | .It Fl untrusted Ar file |
5115 | A | 5101 | A |
5116 | .Ar file | 5102 | .Ar file |
@@ -5123,35 +5109,25 @@ Print extra information about the operations being performed. | |||
5123 | .It Fl x509_strict | 5109 | .It Fl x509_strict |
5124 | Disable workarounds for broken certificates which have to be disabled | 5110 | Disable workarounds for broken certificates which have to be disabled |
5125 | for strict X.509 compliance. | 5111 | for strict X.509 compliance. |
5126 | .It Fl | ||
5127 | Marks the last option. | ||
5128 | All arguments following this are assumed to be certificate files. | ||
5129 | This is useful if the first certificate filename begins with a | ||
5130 | .Sq - . | ||
5131 | .It Ar certificates | 5112 | .It Ar certificates |
5132 | One or more | 5113 | One or more PEM |
5133 | .Ar certificates | 5114 | .Ar certificates |
5134 | to verify. | 5115 | to verify. |
5135 | If no certificate files are included, an attempt is made to read | 5116 | If no certificate files are included, an attempt is made to read |
5136 | a certificate from standard input. | 5117 | a certificate from standard input. |
5137 | They should all be in PEM format. | 5118 | If the first certificate filename begins with a dash, |
5119 | use a lone dash to mark the last option. | ||
5138 | .El | 5120 | .El |
5139 | .Sh VERIFY OPERATION | 5121 | .Pp |
5140 | The | 5122 | The |
5141 | .Nm verify | 5123 | .Nm verify |
5142 | program uses the same functions as the internal SSL and S/MIME verification, | 5124 | program uses the same functions as the internal SSL and S/MIME verification, |
5143 | therefore this description applies to these verify operations too. | 5125 | with one crucial difference: |
5144 | .Pp | 5126 | wherever possible an attempt is made to continue after an error, |
5145 | There is one crucial difference between the verify operations performed | 5127 | whereas normally the verify operation would halt on the first error. |
5146 | by the | ||
5147 | .Nm verify | ||
5148 | program: wherever possible an attempt is made to continue | ||
5149 | after an error, whereas normally the verify operation would halt on the | ||
5150 | first error. | ||
5151 | This allows all the problems with a certificate chain to be determined. | 5128 | This allows all the problems with a certificate chain to be determined. |
5152 | .Pp | 5129 | .Pp |
5153 | The verify operation consists of a number of separate steps: | 5130 | The verify operation consists of a number of separate steps. |
5154 | .Pp | ||
5155 | Firstly a certificate chain is built up starting from the supplied certificate | 5131 | Firstly a certificate chain is built up starting from the supplied certificate |
5156 | and ending in the root CA. | 5132 | and ending in the root CA. |
5157 | It is an error if the whole chain cannot be built up. | 5133 | It is an error if the whole chain cannot be built up. |
@@ -5160,32 +5136,20 @@ certificate. | |||
5160 | If a certificate is found which is its own issuer, it is assumed | 5136 | If a certificate is found which is its own issuer, it is assumed |
5161 | to be the root CA. | 5137 | to be the root CA. |
5162 | .Pp | 5138 | .Pp |
5163 | The process of | 5139 | All certificates whose subject name matches the issuer name |
5164 | .Qq looking up the issuer's certificate | ||
5165 | itself involves a number of steps. | ||
5166 | In versions of | ||
5167 | .Nm OpenSSL | ||
5168 | before 0.9.5a the first certificate whose subject name matched the issuer | ||
5169 | of the current certificate was assumed to be the issuer's certificate. | ||
5170 | In | ||
5171 | .Nm OpenSSL | ||
5172 | 0.9.6 and later all certificates whose subject name matches the issuer name | ||
5173 | of the current certificate are subject to further tests. | 5140 | of the current certificate are subject to further tests. |
5174 | The relevant authority key identifier components of the current certificate | 5141 | The relevant authority key identifier components of the current certificate |
5175 | .Pq if present | 5142 | (if present) must match the subject key identifier (if present) |
5176 | must match the subject key identifier | 5143 | and issuer and serial number of the candidate issuer; |
5177 | .Pq if present | 5144 | in addition the |
5178 | and issuer and serial number of the candidate issuer; in addition the | 5145 | .Cm keyUsage |
5179 | .Em keyUsage | 5146 | extension of the candidate issuer (if present) must permit certificate signing. |
5180 | extension of the candidate issuer | ||
5181 | .Pq if present | ||
5182 | must permit certificate signing. | ||
5183 | .Pp | 5147 | .Pp |
5184 | The lookup first looks in the list of untrusted certificates and if no match | 5148 | The lookup first looks in the list of untrusted certificates and if no match |
5185 | is found the remaining lookups are from the trusted certificates. | 5149 | is found the remaining lookups are from the trusted certificates. |
5186 | The root CA is always looked up in the trusted certificate list: if the | 5150 | The root CA is always looked up in the trusted certificate list: |
5187 | certificate to verify is a root certificate, then an exact match must be | 5151 | if the certificate to verify is a root certificate, |
5188 | found in the trusted list. | 5152 | then an exact match must be found in the trusted list. |
5189 | .Pp | 5153 | .Pp |
5190 | The second operation is to check every untrusted certificate's extensions for | 5154 | The second operation is to check every untrusted certificate's extensions for |
5191 | consistency with the supplied purpose. | 5155 | consistency with the supplied purpose. |
@@ -5198,35 +5162,30 @@ certificate must have extensions compatible with the supplied purpose | |||
5198 | and all other certificates must also be valid CA certificates. | 5162 | and all other certificates must also be valid CA certificates. |
5199 | The precise extensions required are described in more detail in | 5163 | The precise extensions required are described in more detail in |
5200 | the | 5164 | the |
5201 | .Sx X.509 CERTIFICATE EXTENSIONS | 5165 | .Nm X509 |
5202 | section below. | 5166 | section below. |
5203 | .Pp | 5167 | .Pp |
5204 | The third operation is to check the trust settings on the root CA. | 5168 | The third operation is to check the trust settings on the root CA. |
5205 | The root CA should be trusted for the supplied purpose. | 5169 | The root CA should be trusted for the supplied purpose. |
5206 | For compatibility with previous versions of | 5170 | A certificate with no trust settings is considered to be valid for |
5207 | .Nm SSLeay | ||
5208 | and | ||
5209 | .Nm OpenSSL , | ||
5210 | a certificate with no trust settings is considered to be valid for | ||
5211 | all purposes. | 5171 | all purposes. |
5212 | .Pp | 5172 | .Pp |
5213 | The final operation is to check the validity of the certificate chain. | 5173 | The final operation is to check the validity of the certificate chain. |
5214 | The validity period is checked against the current system time and the | 5174 | The validity period is checked against the current system time and the |
5215 | .Em notBefore | 5175 | .Cm notBefore |
5216 | and | 5176 | and |
5217 | .Em notAfter | 5177 | .Cm notAfter |
5218 | dates in the certificate. | 5178 | dates in the certificate. |
5219 | The certificate signatures are also checked at this point. | 5179 | The certificate signatures are also checked at this point. |
5220 | .Pp | 5180 | .Pp |
5221 | If all operations complete successfully, the certificate is considered | 5181 | If all operations complete successfully, the certificate is considered |
5222 | valid. | 5182 | valid. |
5223 | If any operation fails then the certificate is not valid. | 5183 | If any operation fails then the certificate is not valid. |
5224 | .Sh VERIFY DIAGNOSTICS | ||
5225 | When a verify operation fails, the output messages can be somewhat cryptic. | 5184 | When a verify operation fails, the output messages can be somewhat cryptic. |
5226 | The general form of the error message is: | 5185 | The general form of the error message is: |
5227 | .Bd -unfilled | 5186 | .Bd -literal |
5228 | \& server.pem: /C=AU/ST=Queensland/O=CryptSoft Pty Ltd/CN=Test CA (1024-bit) | 5187 | server.pem: /C=AU/ST=Queensland/O=CryptSoft Pty Ltd/CN=Test CA (1024-bit) |
5229 | \& error 24 at 1 depth lookup:invalid CA certificate | 5188 | error 24 at 1 depth lookup:invalid CA certificate |
5230 | .Ed | 5189 | .Ed |
5231 | .Pp | 5190 | .Pp |
5232 | The first line contains the name of the certificate being verified, followed by | 5191 | The first line contains the name of the certificate being verified, followed by |
@@ -5240,141 +5199,124 @@ Finally a text version of the error number is presented. | |||
5240 | An exhaustive list of the error codes and messages is shown below; this also | 5199 | An exhaustive list of the error codes and messages is shown below; this also |
5241 | includes the name of the error code as defined in the header file | 5200 | includes the name of the error code as defined in the header file |
5242 | .In openssl/x509_vfy.h . | 5201 | .In openssl/x509_vfy.h . |
5243 | Some of the error codes are defined but never returned: these are described | 5202 | Some of the error codes are defined but never returned: these are described as |
5244 | as | ||
5245 | .Qq unused . | 5203 | .Qq unused . |
5246 | .Bl -tag -width "XXXX" | 5204 | .Bl -tag -width "XXXX" |
5247 | .It Ar "0 X509_V_OK: ok" | 5205 | .It "0 X509_V_OK: ok" |
5248 | The operation was successful. | 5206 | The operation was successful. |
5249 | .It Ar 2 X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT: unable to get issuer certificate | 5207 | .It 2 X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT: unable to get issuer certificate |
5250 | The issuer certificate could not be found: this occurs if the issuer certificate | 5208 | The issuer certificate could not be found: this occurs if the issuer certificate |
5251 | of an untrusted certificate cannot be found. | 5209 | of an untrusted certificate cannot be found. |
5252 | .It Ar 3 X509_V_ERR_UNABLE_TO_GET_CRL: unable to get certificate CRL | 5210 | .It 3 X509_V_ERR_UNABLE_TO_GET_CRL: unable to get certificate CRL |
5253 | The CRL of a certificate could not be found. | 5211 | The CRL of a certificate could not be found. |
5254 | .It Ar 4 X509_V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE: unable to decrypt certificate's signature | 5212 | .It 4 X509_V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE: unable to decrypt certificate's signature |
5255 | The certificate signature could not be decrypted. | 5213 | The certificate signature could not be decrypted. |
5256 | This means that the actual signature value could not be determined rather | 5214 | This means that the actual signature value could not be determined rather |
5257 | than it not matching the expected value. | 5215 | than it not matching the expected value. |
5258 | This is only meaningful for RSA keys. | 5216 | This is only meaningful for RSA keys. |
5259 | .It Ar 5 X509_V_ERR_UNABLE_TO_DECRYPT_CRL_SIGNATURE: unable to decrypt CRL's signature | 5217 | .It 5 X509_V_ERR_UNABLE_TO_DECRYPT_CRL_SIGNATURE: unable to decrypt CRL's signature |
5260 | The CRL signature could not be decrypted: this means that the actual | 5218 | The CRL signature could not be decrypted: this means that the actual |
5261 | signature value could not be determined rather than it not matching the | 5219 | signature value could not be determined rather than it not matching the |
5262 | expected value. | 5220 | expected value. |
5263 | Unused. | 5221 | Unused. |
5264 | .It Ar 6 X509_V_ERR_UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY: unable to decode issuer public key | 5222 | .It 6 X509_V_ERR_UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY: unable to decode issuer public key |
5265 | The public key in the certificate | 5223 | The public key in the certificate |
5266 | .Em SubjectPublicKeyInfo | 5224 | .Cm SubjectPublicKeyInfo |
5267 | could not be read. | 5225 | could not be read. |
5268 | .It Ar 7 X509_V_ERR_CERT_SIGNATURE_FAILURE: certificate signature failure | 5226 | .It 7 X509_V_ERR_CERT_SIGNATURE_FAILURE: certificate signature failure |
5269 | The signature of the certificate is invalid. | 5227 | The signature of the certificate is invalid. |
5270 | .It Ar 8 X509_V_ERR_CRL_SIGNATURE_FAILURE: CRL signature failure | 5228 | .It 8 X509_V_ERR_CRL_SIGNATURE_FAILURE: CRL signature failure |
5271 | The signature of the certificate is invalid. | 5229 | The signature of the certificate is invalid. |
5272 | .It Ar 9 X509_V_ERR_CERT_NOT_YET_VALID: certificate is not yet valid | 5230 | .It 9 X509_V_ERR_CERT_NOT_YET_VALID: certificate is not yet valid |
5273 | The certificate is not yet valid: the | 5231 | The certificate is not yet valid: the |
5274 | .Em notBefore | 5232 | .Cm notBefore |
5275 | date is after the current time. | 5233 | date is after the current time. |
5276 | .It Ar 10 X509_V_ERR_CERT_HAS_EXPIRED: certificate has expired | 5234 | .It 10 X509_V_ERR_CERT_HAS_EXPIRED: certificate has expired |
5277 | The certificate has expired; that is, the | 5235 | The certificate has expired; that is, the |
5278 | .Em notAfter | 5236 | .Cm notAfter |
5279 | date is before the current time. | 5237 | date is before the current time. |
5280 | .It Ar 11 X509_V_ERR_CRL_NOT_YET_VALID: CRL is not yet valid | 5238 | .It 11 X509_V_ERR_CRL_NOT_YET_VALID: CRL is not yet valid |
5281 | The CRL is not yet valid. | 5239 | The CRL is not yet valid. |
5282 | .It Ar 12 X509_V_ERR_CRL_HAS_EXPIRED: CRL has expired | 5240 | .It 12 X509_V_ERR_CRL_HAS_EXPIRED: CRL has expired |
5283 | The CRL has expired. | 5241 | The CRL has expired. |
5284 | .It Ar 13 X509_V_ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD: format error in certificate's notBefore field | 5242 | .It 13 X509_V_ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD: format error in certificate's notBefore field |
5285 | The certificate | 5243 | The certificate |
5286 | .Em notBefore | 5244 | .Cm notBefore |
5287 | field contains an invalid time. | 5245 | field contains an invalid time. |
5288 | .It Ar 14 X509_V_ERR_ERROR_IN_CERT_NOT_AFTER_FIELD: format error in certificate's notAfter field | 5246 | .It 14 X509_V_ERR_ERROR_IN_CERT_NOT_AFTER_FIELD: format error in certificate's notAfter field |
5289 | The certificate | 5247 | The certificate |
5290 | .Em notAfter | 5248 | .Cm notAfter |
5291 | field contains an invalid time. | 5249 | field contains an invalid time. |
5292 | .It Ar 15 X509_V_ERR_ERROR_IN_CRL_LAST_UPDATE_FIELD: format error in CRL's lastUpdate field | 5250 | .It 15 X509_V_ERR_ERROR_IN_CRL_LAST_UPDATE_FIELD: format error in CRL's lastUpdate field |
5293 | The CRL | 5251 | The CRL |
5294 | .Em lastUpdate | 5252 | .Cm lastUpdate |
5295 | field contains an invalid time. | 5253 | field contains an invalid time. |
5296 | .It Ar 16 X509_V_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD: format error in CRL's nextUpdate field | 5254 | .It 16 X509_V_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD: format error in CRL's nextUpdate field |
5297 | The CRL | 5255 | The CRL |
5298 | .Em nextUpdate | 5256 | .Cm nextUpdate |
5299 | field contains an invalid time. | 5257 | field contains an invalid time. |
5300 | .It Ar 17 X509_V_ERR_OUT_OF_MEM: out of memory | 5258 | .It 17 X509_V_ERR_OUT_OF_MEM: out of memory |
5301 | An error occurred trying to allocate memory. | 5259 | An error occurred trying to allocate memory. |
5302 | This should never happen. | 5260 | This should never happen. |
5303 | .It Ar 18 X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT: self signed certificate | 5261 | .It 18 X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT: self signed certificate |
5304 | The passed certificate is self-signed and the same certificate cannot be | 5262 | The passed certificate is self-signed and the same certificate cannot be |
5305 | found in the list of trusted certificates. | 5263 | found in the list of trusted certificates. |
5306 | .It Ar 19 X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN: self signed certificate in certificate chain | 5264 | .It 19 X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN: self signed certificate in certificate chain |
5307 | The certificate chain could be built up using the untrusted certificates but | 5265 | The certificate chain could be built up using the untrusted certificates but |
5308 | the root could not be found locally. | 5266 | the root could not be found locally. |
5309 | .It Ar 20 X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY: unable to get local issuer certificate | 5267 | .It 20 X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY: unable to get local issuer certificate |
5310 | The issuer certificate of a locally looked up certificate could not be found. | 5268 | The issuer certificate of a locally looked up certificate could not be found. |
5311 | This normally means the list of trusted certificates is not complete. | 5269 | This normally means the list of trusted certificates is not complete. |
5312 | .It Ar 21 X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE: unable to verify the first certificate | 5270 | .It 21 X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE: unable to verify the first certificate |
5313 | No signatures could be verified because the chain contains only one | 5271 | No signatures could be verified because the chain contains only one |
5314 | certificate and it is not self-signed. | 5272 | certificate and it is not self-signed. |
5315 | .It Ar 22 X509_V_ERR_CERT_CHAIN_TOO_LONG: certificate chain too long | 5273 | .It 22 X509_V_ERR_CERT_CHAIN_TOO_LONG: certificate chain too long |
5316 | The certificate chain length is greater than the supplied maximum depth. | 5274 | The certificate chain length is greater than the supplied maximum depth. |
5317 | Unused. | 5275 | Unused. |
5318 | .It Ar 23 X509_V_ERR_CERT_REVOKED: certificate revoked | 5276 | .It 23 X509_V_ERR_CERT_REVOKED: certificate revoked |
5319 | The certificate has been revoked. | 5277 | The certificate has been revoked. |
5320 | .It Ar 24 X509_V_ERR_INVALID_CA: invalid CA certificate | 5278 | .It 24 X509_V_ERR_INVALID_CA: invalid CA certificate |
5321 | A CA certificate is invalid. | 5279 | A CA certificate is invalid. |
5322 | Either it is not a CA or its extensions are not consistent | 5280 | Either it is not a CA or its extensions are not consistent |
5323 | with the supplied purpose. | 5281 | with the supplied purpose. |
5324 | .It Ar 25 X509_V_ERR_PATH_LENGTH_EXCEEDED: path length constraint exceeded | 5282 | .It 25 X509_V_ERR_PATH_LENGTH_EXCEEDED: path length constraint exceeded |
5325 | The | 5283 | The |
5326 | .Em basicConstraints | 5284 | .Cm basicConstraints |
5327 | pathlength parameter has been exceeded. | 5285 | pathlength parameter has been exceeded. |
5328 | .It Ar 26 X509_V_ERR_INVALID_PURPOSE: unsupported certificate purpose | 5286 | .It 26 X509_V_ERR_INVALID_PURPOSE: unsupported certificate purpose |
5329 | The supplied certificate cannot be used for the specified purpose. | 5287 | The supplied certificate cannot be used for the specified purpose. |
5330 | .It Ar 27 X509_V_ERR_CERT_UNTRUSTED: certificate not trusted | 5288 | .It 27 X509_V_ERR_CERT_UNTRUSTED: certificate not trusted |
5331 | The root CA is not marked as trusted for the specified purpose. | 5289 | The root CA is not marked as trusted for the specified purpose. |
5332 | .It Ar 28 X509_V_ERR_CERT_REJECTED: certificate rejected | 5290 | .It 28 X509_V_ERR_CERT_REJECTED: certificate rejected |
5333 | The root CA is marked to reject the specified purpose. | 5291 | The root CA is marked to reject the specified purpose. |
5334 | .It Ar 29 X509_V_ERR_SUBJECT_ISSUER_MISMATCH: subject issuer mismatch | 5292 | .It 29 X509_V_ERR_SUBJECT_ISSUER_MISMATCH: subject issuer mismatch |
5335 | The current candidate issuer certificate was rejected because its subject name | 5293 | The current candidate issuer certificate was rejected because its subject name |
5336 | did not match the issuer name of the current certificate. | 5294 | did not match the issuer name of the current certificate. |
5337 | Only displayed when the | 5295 | Only displayed when the |
5338 | .Fl issuer_checks | 5296 | .Fl issuer_checks |
5339 | option is set. | 5297 | option is set. |
5340 | .It Ar 30 X509_V_ERR_AKID_SKID_MISMATCH: authority and subject key identifier mismatch | 5298 | .It 30 X509_V_ERR_AKID_SKID_MISMATCH: authority and subject key identifier mismatch |
5341 | The current candidate issuer certificate was rejected because its subject key | 5299 | The current candidate issuer certificate was rejected because its subject key |
5342 | identifier was present and did not match the authority key identifier current | 5300 | identifier was present and did not match the authority key identifier current |
5343 | certificate. | 5301 | certificate. |
5344 | Only displayed when the | 5302 | Only displayed when the |
5345 | .Fl issuer_checks | 5303 | .Fl issuer_checks |
5346 | option is set. | 5304 | option is set. |
5347 | .It Ar 31 X509_V_ERR_AKID_ISSUER_SERIAL_MISMATCH: authority and issuer serial number mismatch | 5305 | .It 31 X509_V_ERR_AKID_ISSUER_SERIAL_MISMATCH: authority and issuer serial number mismatch |
5348 | The current candidate issuer certificate was rejected because its issuer name | 5306 | The current candidate issuer certificate was rejected because its issuer name |
5349 | and serial number were present and did not match the authority key identifier | 5307 | and serial number were present and did not match the authority key identifier |
5350 | of the current certificate. | 5308 | of the current certificate. |
5351 | Only displayed when the | 5309 | Only displayed when the |
5352 | .Fl issuer_checks | 5310 | .Fl issuer_checks |
5353 | option is set. | 5311 | option is set. |
5354 | .It Ar 32 X509_V_ERR_KEYUSAGE_NO_CERTSIGN:key usage does not include certificate signing | 5312 | .It 32 X509_V_ERR_KEYUSAGE_NO_CERTSIGN:key usage does not include certificate signing |
5355 | The current candidate issuer certificate was rejected because its | 5313 | The current candidate issuer certificate was rejected because its |
5356 | .Em keyUsage | 5314 | .Cm keyUsage |
5357 | extension does not permit certificate signing. | 5315 | extension does not permit certificate signing. |
5358 | .It Ar 50 X509_V_ERR_APPLICATION_VERIFICATION: application verification failure | 5316 | .It 50 X509_V_ERR_APPLICATION_VERIFICATION: application verification failure |
5359 | An application specific error. | 5317 | An application specific error. |
5360 | Unused. | 5318 | Unused. |
5361 | .El | 5319 | .El |
5362 | .Sh VERIFY BUGS | ||
5363 | Although the issuer checks are a considerable improvement over the old | ||
5364 | technique, they still suffer from limitations in the underlying | ||
5365 | X509_LOOKUP API. | ||
5366 | One consequence of this is that trusted certificates with matching subject | ||
5367 | name must either appear in a file (as specified by the | ||
5368 | .Fl CAfile | ||
5369 | option) or a directory (as specified by | ||
5370 | .Fl CApath ) . | ||
5371 | If they occur in both, only the certificates in the file will | ||
5372 | be recognised. | ||
5373 | .Pp | ||
5374 | Previous versions of | ||
5375 | .Nm OpenSSL | ||
5376 | assumed certificates with matching subject name were identical and | ||
5377 | mishandled them. | ||
5378 | .\" | 5320 | .\" |
5379 | .\" VERSION | 5321 | .\" VERSION |
5380 | .\" | 5322 | .\" |