Provide X.509 name comparison based on raw ASN.1 data

This commit provides a new function `mbedtls_x509_name_cmp_raw()`
to x509.c for comparing to X.509 names by traversing the raw ASN.1
data (as opposed to using the dynamically allocated linked list
of `mbedtls_x509_name` structures). It has external linkage because
it will be needed in `x509_crt` and `x509_crl`, but is marked
internal and hence not part of the public API.
diff --git a/include/mbedtls/x509.h b/include/mbedtls/x509.h
index e6781b6..13067b8 100644
--- a/include/mbedtls/x509.h
+++ b/include/mbedtls/x509.h
@@ -305,6 +305,8 @@
                      mbedtls_x509_buf *serial );
 int mbedtls_x509_name_cmp( const mbedtls_x509_name *a,
                            const mbedtls_x509_name *b );
+int mbedtls_x509_name_cmp_raw( const mbedtls_x509_buf_raw *a,
+                               const mbedtls_x509_buf_raw *b );
 int mbedtls_x509_memcasecmp( const void *s1, const void *s2, size_t len );
 int mbedtls_x509_get_ext( unsigned char **p, const unsigned char *end,
                   mbedtls_x509_buf *ext, int tag );