summaryrefslogtreecommitdiffstats
path: root/net/base/cert_status_flags.cc
Commit message (Collapse)AuthorAgeFilesLines
* net: extract net/cert out of net/basephajdan.jr@chromium.org2013-03-291-83/+0
| | | | | | | | | | | | This introduces the following dependency of net/base on things outside: net/base/openssl_client_key_store.cc:#include "net/cert/x509_certificate.h" BUG=70818 Review URL: https://codereview.chromium.org/13006020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191450 0039d316-1c4b-4281-b951-d872f2087c98
* Remove error handling for NOT_IN_DNS.agl@chromium.org2012-08-011-4/+0
| | | | | | | | | | | This experiment is long dead and its code is long gone. This change removes some last traces. BUG=none TEST=none Review URL: https://chromiumcodereview.appspot.com/10821024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@149412 0039d316-1c4b-4281-b951-d872f2087c98
* Reject certificate chains containing small RSA and DSA keys.palmer@chromium.org2011-12-151-0/+4
| | | | | | | | | | | "Small" means less than 1024 bits. BUG=102949 TEST=net_unittests, X509CertificateTest.* Review URL: http://codereview.chromium.org/8568040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@114709 0039d316-1c4b-4281-b951-d872f2087c98
* Ignore revocation check failures from automated requests.agl@chromium.org2011-10-121-1/+9
| | | | | | | | | | | | | | Extensions send requests without a TabContents, therefore we can't route SSL errors to their SSLManager. Since, without a UI, we have to make a static decision, this change makes it so that revocation check failures are ignored for these requests. BUG=86537 TEST=none Review URL: http://codereview.chromium.org/8201011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@105082 0039d316-1c4b-4281-b951-d872f2087c98
* For the SSL cert status, convert anonymous enum that gives bit values into a ↵pkasting@chromium.org2011-09-231-2/+2
| | | | | | | | | | | | | | typedefed uint32. This allows code all over Chromium to use an explicit type instead of "int". This also means the individual named bit constants themselves have the same explicit type. I find the resulting code to be noticeably clearer. This also exposed a bug in SSLErrorInfo::GetErrorsForCertStatus() where not having an explicit type allowed a function argument ordering bug to creep in, so I claim this is safer too. Normally this makes things like DCHECK_EQ() unhappy, but when I'd originally tested this I didn't seem to need to make any changes due to that. Will be watching the trybots... The original motiviation for this change was to find a way to eliminate some cases of passing anonymous-typed values as template arguments (which happens when you use a value from the enum in e.g. EXPECT_EQ()), which is technically illegal in C++03, though we don't warn about it. Simply naming the enum would have done this, but this would have encouraged readers to actually use the enum name as a type, which for a bitfield is inappropriate for the reason given in the first paragraph. BUG=92247 TEST=Compiles Review URL: http://codereview.chromium.org/7969023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102415 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 102322 - For the SSL cert status, convert anonymous enum that gives ↵pkasting@chromium.org2011-09-221-3/+3
| | | | | | | | | | | | | | | | | | | bit values into a typedefed uint32. This allows code all over Chromium to use an explicit type instead of "int". (This isn't possible by simply naming the enum as technically the enum doesn't define all of the possible combinations of bits.) This also means the individual named bit constants themselves have the same explicit type. I find the resulting code to be noticeably clearer. This also exposed a bug in SSLErrorInfo::GetErrorsForCertStatus() where not having an explicit type allowed a function argument ordering bug to creep in, so I claim this is safer too. I also added CERT_STATUS_NO_ERROR in place of "0" as a magic number. Normally this makes things like DCHECK_EQ() unhappy, but when I'd originally tested this I didn't seem to need to make any changes due to that. Will be watching the trybots... The original motiviation for this change was to find a way to eliminate some cases of passing anonymous-typed values as template arguments (which happens when you use a value from the enum in e.g. EXPECT_EQ()), which is technically illegal in C++03, though we don't warn about it. Simply naming the enum would have done this, but this would have encouraged readers to actually use the enum name as a type, which for a bitfield is inappropriate for the reason given in the first paragraph. BUG=92247 TEST=Compiles Review URL: http://codereview.chromium.org/7819009 TBR=pkasting@chromium.org Review URL: http://codereview.chromium.org/7995014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102325 0039d316-1c4b-4281-b951-d872f2087c98
* For the SSL cert status, convert anonymous enum that gives bit values into a ↵pkasting@chromium.org2011-09-221-3/+3
| | | | | | | | | | | | | | | | typedefed uint32. This allows code all over Chromium to use an explicit type instead of "int". (This isn't possible by simply naming the enum as technically the enum doesn't define all of the possible combinations of bits.) This also means the individual named bit constants themselves have the same explicit type. I find the resulting code to be noticeably clearer. This also exposed a bug in SSLErrorInfo::GetErrorsForCertStatus() where not having an explicit type allowed a function argument ordering bug to creep in, so I claim this is safer too. I also added CERT_STATUS_NO_ERROR in place of "0" as a magic number. Normally this makes things like DCHECK_EQ() unhappy, but when I'd originally tested this I didn't seem to need to make any changes due to that. Will be watching the trybots... The original motiviation for this change was to find a way to eliminate some cases of passing anonymous-typed values as template arguments (which happens when you use a value from the enum in e.g. EXPECT_EQ()), which is technically illegal in C++03, though we don't warn about it. Simply naming the enum would have done this, but this would have encouraged readers to actually use the enum name as a type, which for a bitfield is inappropriate for the reason given in the first paragraph. BUG=92247 TEST=Compiles Review URL: http://codereview.chromium.org/7819009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102322 0039d316-1c4b-4281-b951-d872f2087c98
* Show "DNS" as the authority for DNSSEC validated certficiates.agl@chromium.org2010-09-161-0/+4
| | | | | | | | | | | | | | | | | | | At the moment, if we validate a certificate using DNSSEC the Page Info dialog will show whatever Issuer the site chose as the issuing authority. That's confusing because the site could choose a string like 'US Dept of Homeland Security' (for example) which is misleading. This patch forces the authority string to always be "DNSSEC" in the case that we used DNSSEC to validate the certificate. (The string "DNSSEC" isn't translated as it's an acronym.) BUG=none TEST=none http://codereview.chromium.org/3304016/show git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59686 0039d316-1c4b-4281-b951-d872f2087c98
* Consider "certificate revoked" as the most serious certificatewtc@chromium.org2009-08-221-2/+2
| | | | | | | | | | | error. R=abarth BUG=none TEST=none Review URL: http://codereview.chromium.org/171056 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24048 0039d316-1c4b-4281-b951-d872f2087c98
* Add new certificate error codewtc@chromium.org2009-08-141-0/+4
| | | | | | | | | | | | | | | | | | ERR_CERT_WEAK_SIGNATURE_ALGORITHM and certificate status flag CERT_STATUS_WEAK_SIGNATURE_ALGORITHM. Note that I didn't add new load flag LOAD_IGNORE_CERT_WEAK_SIGNATURE_ALGORITHM. Allow users to accept MD2 certificates as certificates signed using a weak signature algorithm. MD4 certificates are still treated as invalid certificates. R=jar,jcampan BUG=http://crbug.com/18725 TEST=none Review URL: http://codereview.chromium.org/165504 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23497 0039d316-1c4b-4281-b951-d872f2087c98
* Move certificate verification off the IO thread.wtc@chromium.org2009-02-031-0/+67
Move the MapNetErrorToCertStatus and MapCertStatusToNetError functions to cert_status_flags.h so they can be shared with Mac and Linux code. Move the certificate verification function to the X509Certificate class. Right now X509Certificate::Verify is only implemented on Windows. R=eroman BUG=3592 Review URL: http://codereview.chromium.org/14915 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9084 0039d316-1c4b-4281-b951-d872f2087c98