[1] http://tools.ietf.org/html/rfc5280#section-4.2.1.10
[2] https://www.mozilla.org/en-US/about/governance/policies/secu...
Validation of x509 certificates is ridiculously complex, and CA rightfully only use the widely interoperable subset of extensions...
See for example http://blog.codekills.net/2012/04/08/adventures-in-x509-the-... about what really happens when one steps outside the well traveled path of certificate attributes...
Speaking from personal experience, writing code to correctly validate x509 certificates isn't as hard as it looks.
The fact that OpenSSL did it wrong for 15 years doesn't bode well for the myriads of TLS implementations that are around.
My experience with the x509 part of SSL/TLS stacks is really not good when you start to use something else than OpenSSL/NSS (well PolarSSL is pretty good too). Quite often there is enough implemented to interoperate in the common use cases, but you're on your own if you need a complete standard support... Then it has been a while, maybe it's a lot better now.
Source: I wrote all that code in Mozilla's implementation.