Author: adar
Date: 2007-01-11 07:09:27 -0500 (Thu, 11 Jan 2007)
New Revision: 70851

Modified:
   trunk/mcs/class/System.Web/System.Web.Security/ChangeLog
   trunk/mcs/class/System.Web/System.Web.Security/MembershipProvider.cs
   trunk/mcs/class/System.Web/Test/System.Web.Security/MembershipProviderTest.cs
Log:
2007-01-11 Adar Wesley <[EMAIL PROTECTED]>

        * MembershipProvider.cs: fixed EncryptPassword to use password buffer 
length



Modified: trunk/mcs/class/System.Web/System.Web.Security/ChangeLog
===================================================================
--- trunk/mcs/class/System.Web/System.Web.Security/ChangeLog    2007-01-11 
11:52:18 UTC (rev 70850)
+++ trunk/mcs/class/System.Web/System.Web.Security/ChangeLog    2007-01-11 
12:09:27 UTC (rev 70851)
@@ -1,3 +1,7 @@
+2007-01-11 Adar Wesley <[EMAIL PROTECTED]>
+
+       * MembershipProvider.cs: fixed EncryptPassword to use password buffer 
length
+
 2007-01-04 Vladimir Krasnov <[EMAIL PROTECTED]>
 
        * AnonymousIdentificationModule.cs: fixed OnEnter, fixed failure on

Modified: trunk/mcs/class/System.Web/System.Web.Security/MembershipProvider.cs
===================================================================
--- trunk/mcs/class/System.Web/System.Web.Security/MembershipProvider.cs        
2007-01-11 11:52:18 UTC (rev 70850)
+++ trunk/mcs/class/System.Web/System.Web.Security/MembershipProvider.cs        
2007-01-11 12:09:27 UTC (rev 70851)
@@ -124,8 +124,8 @@
                        byte [] decryptionKey;
                        byte [] iv = new byte [SALT_BYTES];
 
-                       Array.Copy (password, 0, iv, 0, SALT_BYTES);
-                       Array.Clear (password, 0, SALT_BYTES);
+                       Array.Copy (password, 0, iv, 0, 
Math.Min(password.Length, SALT_BYTES));
+                       Array.Clear (password, 0, password.Length);
 
                        using (SymmetricAlgorithm alg = GetAlg (out 
decryptionKey)) {
                                using (ICryptoTransform encryptor = 
alg.CreateEncryptor (decryptionKey, iv)) {
@@ -139,3 +139,4 @@
 }
 #endif
 
+

Modified: 
trunk/mcs/class/System.Web/Test/System.Web.Security/MembershipProviderTest.cs
===================================================================
--- 
trunk/mcs/class/System.Web/Test/System.Web.Security/MembershipProviderTest.cs   
    2007-01-11 11:52:18 UTC (rev 70850)
+++ 
trunk/mcs/class/System.Web/Test/System.Web.Security/MembershipProviderTest.cs   
    2007-01-11 12:09:27 UTC (rev 70851)
@@ -33,8 +33,11 @@
 using System.Configuration.Provider;
 using System.Security.Principal;
 using System.Web.Security;
+using System.Text;
 
 using NUnit.Framework;
+using MonoTests.SystemWeb.Framework;
+using System.Web.UI;
 
 namespace MonoTests.System.Web.Security {
 
@@ -192,12 +195,21 @@
        public class MembershipProviderTest {
 
                [Test]
-        [Category ("NotWorking")] // Not implemented
                [ExpectedException (typeof (ProviderException))]
                public void EncryptPassword ()
                {
+                       WebTest t = new WebTest (PageInvoker.CreateOnLoad 
(EncryptOnLoad));
+                       t.Run ();
+               }
+
+               public static void EncryptOnLoad (Page p) 
+               {
                        TestMembershipProvider mp = new TestMembershipProvider 
();
-                       mp.Encrypt (null);
+                       string password = "";
+
+                       byte [] buffer = ASCIIEncoding.Default.GetBytes 
(password);
+
+                       mp.Encrypt (buffer);
                }
        }
 }

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to