Add X509Name.der
diff --git a/src/crypto/x509name.c b/src/crypto/x509name.c
index 93a440e..5827ccb 100644
--- a/src/crypto/x509name.c
+++ b/src/crypto/x509name.c
@@ -249,6 +249,30 @@
     return PyInt_FromLong(hash);
 }
 
+static char crypto_X509Name_der_doc[] = "\n\
+Return the DER encodeing of this name\n\
+\n\
+Arguments: self - The X509 object\n\
+           args - The Python argument tuple, should be empty\n\
+Returns:   None\n\
+";
+
+/*
+ * Arguments: self - The X509Name object
+ * Returns:   The DER form of an X509Name.
+ */
+static PyObject *
+crypto_X509Name_der(crypto_X509NameObj *self, PyObject *args)
+{
+    if (!PyArg_ParseTuple(args, ":der")) {
+	return NULL;
+    }
+
+    i2d_X509_NAME(self->x509_name, 0);
+    return PyString_FromStringAndSize(self->x509_name->bytes->data,
+				      self->x509_name->bytes->length);
+}
+
 
 /*
  * Call the visitproc on all contained objects.
@@ -312,6 +336,7 @@
 static PyMethodDef crypto_X509Name_methods[] =
 {
     ADD_METHOD(hash),
+    ADD_METHOD(der),
     { NULL, NULL }
 };
 #undef ADD_METHOD