X509Ext str/unicode fixes
diff --git a/OpenSSL/crypto/pkcs12.c b/OpenSSL/crypto/pkcs12.c
index adb0c8d..81d6074 100644
--- a/OpenSSL/crypto/pkcs12.c
+++ b/OpenSSL/crypto/pkcs12.c
@@ -367,7 +367,7 @@
          *  certificate. */
         alias_str = X509_alias_get0(cert, &alias_len);
         if (alias_str) {
-            self->friendlyname = Py_BuildValue(FMT("#"), alias_str, alias_len);
+            self->friendlyname = Py_BuildValue(BYTESTRING_FMT "#", alias_str, alias_len);
             if (!self->friendlyname) {
                 /*
                  * XXX Untested
diff --git a/OpenSSL/crypto/revoked.c b/OpenSSL/crypto/revoked.c
index e043330..5a9e713 100644
--- a/OpenSSL/crypto/revoked.c
+++ b/OpenSSL/crypto/revoked.c
@@ -231,7 +231,7 @@
 static PyObject*
 crypto_Revoked_set_rev_date(crypto_RevokedObj *self, PyObject *args) {
     return _set_asn1_time(
-        FMT(":set_rev_date"), self->revoked->revocationDate, args);
+        BYTESTRING_FMT ":set_rev_date", self->revoked->revocationDate, args);
 }
 
 /* The integer is converted to an upper-case hex string
@@ -307,7 +307,7 @@
     BIGNUM *serial = NULL;
     ASN1_INTEGER *tmpser = NULL;
 
-    if (!PyArg_ParseTupleAndKeywords(args, keywds, FMT(":set_serial"),
+    if (!PyArg_ParseTupleAndKeywords(args, keywds, BYTESTRING_FMT ":set_serial",
                                      kwlist, &hex_str)) {
         return NULL;
     }
diff --git a/OpenSSL/crypto/x509.c b/OpenSSL/crypto/x509.c
index 3cd3145..b00ad3c 100644
--- a/OpenSSL/crypto/x509.c
+++ b/OpenSSL/crypto/x509.c
@@ -369,7 +369,8 @@
 crypto_X509_set_notBefore(crypto_X509Obj *self, PyObject *args)
 {
 	return _set_asn1_time(
-            FMT(":set_notBefore"), X509_get_notBefore(self->x509), args);
+            BYTESTRING_FMT ":set_notBefore",
+            X509_get_notBefore(self->x509), args);
 }
 
 static char crypto_X509_set_notAfter_doc[] = "\n\
@@ -388,7 +389,8 @@
 crypto_X509_set_notAfter(crypto_X509Obj *self, PyObject *args)
 {
 	return _set_asn1_time(
-            FMT(":set_notAfter"), X509_get_notAfter(self->x509), args);
+            BYTESTRING_FMT ":set_notAfter",
+            X509_get_notAfter(self->x509), args);
 }
 
 PyObject*
diff --git a/OpenSSL/crypto/x509ext.c b/OpenSSL/crypto/x509ext.c
index 28e8805..d629732 100644
--- a/OpenSSL/crypto/x509ext.c
+++ b/OpenSSL/crypto/x509ext.c
@@ -186,10 +186,12 @@
     static char *kwlist[] = {"type_name", "critical", "value", "subject",
                              "issuer", NULL};
 
-    if (!PyArg_ParseTupleAndKeywords(args, kwargs, "sis|O!O!:X509Extension",
-                                     kwlist, &type_name, &critical, &value,
-                                     &crypto_X509_Type, &subject,
-                                     &crypto_X509_Type, &issuer )) {
+    if (!PyArg_ParseTupleAndKeywords(
+            args, kwargs,
+            BYTESTRING_FMT "i" BYTESTRING_FMT "|O!O!:X509Extension",
+            kwlist, &type_name, &critical, &value,
+            &crypto_X509_Type, &subject,
+            &crypto_X509_Type, &issuer )) {
         return NULL;
     }