change the type of hardware_module_name member

Change the type of `hardware_module_name` struct from
`mbedtls_x509_name` to a unique struct, to distinguish it from the
named data type.
diff --git a/include/mbedtls/x509_crt.h b/include/mbedtls/x509_crt.h
index b321c42..81a2de2 100644
--- a/include/mbedtls/x509_crt.h
+++ b/include/mbedtls/x509_crt.h
@@ -121,7 +121,12 @@
          *                         hwType OBJECT IDENTIFIER,
          *                         hwSerialNum OCTET STRING }
          */
-        mbedtls_x509_name hardware_module_name;
+        struct
+        {
+            mbedtls_x509_buf oid;               /**< The object identifier. */
+            mbedtls_x509_buf val;               /**< The named value. */
+        }
+        hardware_module_name;
     }
     value;
 }
diff --git a/library/x509_crt.c b/library/x509_crt.c
index cce230b..9bc8696 100644
--- a/library/x509_crt.c
+++ b/library/x509_crt.c
@@ -1668,8 +1668,6 @@
     other_name->value.hardware_module_name.val.tag = MBEDTLS_ASN1_OCTET_STRING;
     other_name->value.hardware_module_name.val.p = p;
     other_name->value.hardware_module_name.val.len = len;
-    other_name->value.hardware_module_name.next = NULL;
-    other_name->value.hardware_module_name.next_merged = 0;
     p += len;
     if( p != end )
     {