2006-12-14 Sebastien Pouliot <sebastien@ximian.com>
authorSebastien Pouliot <sebastien@ximian.com>
Fri, 15 Dec 2006 03:39:04 +0000 (03:39 -0000)
committerSebastien Pouliot <sebastien@ximian.com>
Fri, 15 Dec 2006 03:39:04 +0000 (03:39 -0000)
* X500DistinguishedNameTest.cs: Add test case for Teletext/T61String.
* X509Certificate2Test.cs: Add test case for Teletext/T61String.

svn path=/trunk/mcs/; revision=69520

mcs/class/System/Test/System.Security.Cryptography.X509Certificates/ChangeLog
mcs/class/System/Test/System.Security.Cryptography.X509Certificates/X500DistinguishedNameTest.cs
mcs/class/System/Test/System.Security.Cryptography.X509Certificates/X509Certificate2Test.cs

index 6482e166ccdf83c5287adc113debde92dbd8cb69..87d799138b2faab15517350b9e2407ebdb5a587c 100644 (file)
@@ -1,3 +1,8 @@
+2006-12-14  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * X500DistinguishedNameTest.cs: Add test case for Teletext/T61String.
+       * X509Certificate2Test.cs: Add test case for Teletext/T61String.
+
 2006-12-07  Sebastien Pouliot  <sebastien@ximian.com>
 
        * Pkits_4_01_SignatureVerification.cs: New. PKITS based unit tests.
index 4e47ee7c998d075abba240ed23332aa9c9c28106..88bd3b1cddc69cb5b073fc2eefe8e4c6fb1f376f 100644 (file)
@@ -331,6 +331,24 @@ namespace MonoTests.System.Security.Cryptography.X509Certificates {
                        X500DistinguishedName build = new X500DistinguishedName (expected);
                        Assert.AreEqual (expected, build.Name, "Name");
                }
+
+               [Test]
+               public void T61String ()
+               {
+                       // http://bugzilla.ximian.com/show_bug.cgi?id=77295
+                       byte[] sn = { 0x30, 0x81, 0xB5, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x44, 0x4B, 0x31, 0x2D, 0x30, 0x2B, 0x06, 
+                               0x03, 0x55, 0x04, 0x0A, 0x14, 0x24, 0x48, 0x65, 0x64, 0x65, 0x62, 0x79, 0x27, 0x73, 0x20, 0x4D, 0xF8, 0x62, 0x65, 0x6C, 0x68, 0x61, 
+                               0x6E, 0x64, 0x65, 0x6C, 0x20, 0x2F, 0x2F, 0x20, 0x43, 0x56, 0x52, 0x3A, 0x31, 0x33, 0x34, 0x37, 0x31, 0x39, 0x36, 0x37, 0x31, 0x2F, 
+                               0x30, 0x2D, 0x06, 0x03, 0x55, 0x04, 0x03, 0x14, 0x26, 0x48, 0x65, 0x64, 0x65, 0x62, 0x79, 0x27, 0x73, 0x20, 0x4D, 0xF8, 0x62, 0x65, 
+                               0x6C, 0x68, 0x61, 0x6E, 0x64, 0x65, 0x6C, 0x20, 0x2D, 0x20, 0x53, 0x61, 0x6C, 0x67, 0x73, 0x61, 0x66, 0x64, 0x65, 0x6C, 0x69, 0x6E, 
+                               0x67, 0x65, 0x6E, 0x31, 0x1E, 0x30, 0x1C, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x0F, 0x76, 0x68, 
+                               0x6D, 0x40, 0x75, 0x73, 0x65, 0x2E, 0x74, 0x65, 0x73, 0x74, 0x2E, 0x64, 0x6B, 0x31, 0x26, 0x30, 0x24, 0x06, 0x03, 0x55, 0x04, 0x05, 
+                               0x13, 0x1D, 0x43, 0x56, 0x52, 0x3A, 0x31, 0x33, 0x34, 0x37, 0x31, 0x39, 0x36, 0x37, 0x2D, 0x55, 0x49, 0x44, 0x3A, 0x31, 0x32, 0x31, 
+                               0x32, 0x31, 0x32, 0x31, 0x32, 0x31, 0x32, 0x31, 0x32 };
+                       X500DistinguishedName dn = new X500DistinguishedName (sn);
+                       string subject = "OID.2.5.4.5=CVR:13471967-UID:121212121212, E=vhm@use.test.dk, CN=Hedeby's Møbelhandel - Salgsafdelingen, O=Hedeby's Møbelhandel // CVR:13471967, C=DK";
+                       Assert.AreEqual (subject, dn.Name, "Name");
+               }
        }
 }
 
index 09bbc09554567bd1908d951d78c77fb05327f610..124c505a35f73f667b2cd373fee679285f9e4581 100644 (file)
@@ -291,6 +291,35 @@ j3ywZCr7t7JAkSDnMlM/WMqAokHFAgMBAAEwCQYFKw4DAh0FAAOBgQCdV7All4Ei
 PMRhncnb2MfB7fsc3TWY10BYpEOGVPloloW1kby3grJ+e1i9gM40fiKHYjG1Axag
 IBed512qEvWS35Tmac32/IKb3NMwQLFxT0pky9wUyMF/byPO3RkiTyQeJxhmiHqa
 mgk3bWUV6ChegutbguiKrI/DbO7wPiDLxw==
+-----END CERTIFICATE-----";
+
+               public const string t61string_cert = @"-----BEGIN CERTIFICATE-----
+MIIEwjCCA6qgAwIBAgIEP4ZvDjANBgkqhkiG9w0BAQUFADBlMQswCQYDVQQGEwJE
+SzEMMAoGA1UEChMDS01EMQwwCgYDVQQLEwNLTUQxOjA4BgNVBAMTMUtNRCBJbnRl
+cm4gVGVzdCAtIEtVTiBUSUwgVEVTVC9OTyBMSUFCSUxJVFkgR0lWRU4wHhcNMDMx
+MDEwMDgzNDIyWhcNMDgwOTAyMDgzNDIyWjCBtTELMAkGA1UEBhMCREsxLTArBgNV
+BAoUJEhlZGVieSdzIE34YmVsaGFuZGVsIC8vIENWUjoxMzQ3MTk2NzEvMC0GA1UE
+AxQmSGVkZWJ5J3MgTfhiZWxoYW5kZWwgLSBTYWxnc2FmZGVsaW5nZW4xHjAcBgkq
+hkiG9w0BCQEWD3ZobUB1c2UudGVzdC5kazEmMCQGA1UEBRMdQ1ZSOjEzNDcxOTY3
+LVVJRDoxMjEyMTIxMjEyMTIwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAOcD
+yp6eb479ByaWx/+XpVkcvIs9CytI5cKw9W/ShT/ov++IKC7P9a83Pah1gpyx4eGf
+947KvqR9FdHNV5uJOuOiP22jElXTKOAQIo9pl8jd2Dw5DMVSLq3QSwlWriTY9QP8
+t3qF9Aqqm5/HpHWw8bBnBXp0+It0M7mtEpG2SlxzAgMBAAGjggGrMIIBpzAOBgNV
+HQ8BAf8EBAMCA7gwggFIBgNVHSAEggE/MIIBOzCCATcGCSkBAQEBAQEBAzCCASgw
+LwYIKwYBBQUHAgEWI2h0dHA6Ly93d3cuY2VydGlmaWthdC5kay9yZXBvc2l0b3J5
+MIH0BggrBgEFBQcCAjCB5xqB5ERldHRlIGRpZ2l0YWxlIGNlcnRpZmlrYXQgZXIg
+dWRlbHVra2VuZGUgdGlsIHRlc3RicnVnIG9nIGthbiBpa2tlIGFudmVuZGVzIHRp
+bCBmb3JwbGlndGVkZSBhZnRhbGVyIGVsbGVyIGxpZ25lbmRlLiBEZXQgc2thbCBz
+YW10aWRpZyBub3RlcmVzIGF0IGRlciBpa2tlIGxpZ2dlciBlbiB1ZHN0ZWRlbHNl
+c3BvbGl0aWsgdGlsIGdydW5kIGZvciB1ZHN0ZWRlbHNlbiBhZiBkZXR0ZSBjZXJ0
+aWZpa2F0LjAJBgNVHRMEAjAAMB0GA1UdDgQWBBRGbd1b8ueAq3hLPYi+hoaHPnGu
+cDAfBgNVHSMEGDAWgBTY+uxQeo2M0NeJ+PxY1Nzr2ZiZUDANBgkqhkiG9w0BAQUF
+AAOCAQEAxCFwpBW5tewIVgp844mFt9G8+rygfs+184G/n85IwZ+Ryu6tMsxddVbq
+44VdW1DsT202k2bh8fgeEDKtGGn1orKglezuc0xisUWgmV44KHBHgM08hajmPS2E
+vKzGMlc4FI+iSmKmpqm3Qod9J9mBmoL9krduOKm2Cc7RdiM2k1t+j/lXJ0uNRapC
+WK3bQo3um7iujoczHQyuYDgROIra4OKmn3RJUp60XPTtY1nH/xTKqJlxKCq17tsG
+WYpnKQqsKIzlSqv9wwXs7B1iA7ZdvHk3TAnSnLP1o2H7ME05UnZPKCvraONdezon
+/yvWCu++B/xSVQ/i8F3U/NL3tLLZyw==
 -----END CERTIFICATE-----";
 
                static public byte[] farscape_pkcs7 = { 0x30, 0x82, 0x02, 0x59, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x07, 0x02, 0xA0, 0x82, 0x02, 0x4A, 0x30, 0x82, 0x02, 0x46, 0x02, 0x01, 0x01, 0x31, 0x00, 0x30, 0x0B, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x07, 0x01, 0xA0, 0x82, 0x02, 0x2E, 0x30, 0x82, 0x02, 0x2A, 0x30, 0x82, 0x01, 0x97, 0xA0, 0x03, 0x02, 0x01, 0x02, 0x02, 0x10, 0x91, 0xC4, 0x4B, 0x0D, 0xB7, 0xD8, 0x10, 0x84, 0x42, 0x26, 0x71, 0xB3, 0x97, 0xB5, 0x00, 0x97, 0x30, 0x09, 0x06, 0x05, 0x2B, 0x0E, 0x03, 0x02, 0x1D, 0x05, 0x00, 0x30, 0x28, 0x31, 0x26, 0x30, 0x24, 0x06, 0x03, 
@@ -1418,6 +1447,20 @@ mgk3bWUV6ChegutbguiKrI/DbO7wPiDLxw==
                {
                        Assert.IsNull (new X509Certificate2 ().Version);
                }
+
+               [Test]
+               public void T61String ()
+               {
+                       // http://bugzilla.ximian.com/show_bug.cgi?id=77295
+                       byte[] raw = Encoding.ASCII.GetBytes (t61string_cert);
+                       X509Certificate2 cert = new X509Certificate2 (raw);
+                       string subject = "OID.2.5.4.5=CVR:13471967-UID:121212121212, E=vhm@use.test.dk, CN=Hedeby's Møbelhandel - Salgsafdelingen, O=Hedeby's Møbelhandel // CVR:13471967, C=DK";
+                       Assert.AreEqual (subject, cert.Subject, "Subject");
+                       Assert.AreEqual (subject, cert.SubjectName.Name, "SubjectName");
+                       string issuer = "CN=KMD Intern Test - KUN TIL TEST/NO LIABILITY GIVEN, OU=KMD, O=KMD, C=DK";
+                       Assert.AreEqual (issuer, cert.Issuer, "Subject");
+                       Assert.AreEqual (issuer, cert.IssuerName.Name, "SubjectName");
+               }
        }
 }