From 30b4e2aa2a775f8fc48a57f82679c93ee1816ea4 Mon Sep 17 00:00:00 2001
From: jrandom <jrandom>
Date: Sun, 13 Nov 2005 04:47:15 +0000
Subject: [PATCH] change one's password

---
 apps/syndie/java/src/net/i2p/syndie/User.java | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/apps/syndie/java/src/net/i2p/syndie/User.java b/apps/syndie/java/src/net/i2p/syndie/User.java
index bc848e3fd9..4f6c65cdf4 100644
--- a/apps/syndie/java/src/net/i2p/syndie/User.java
+++ b/apps/syndie/java/src/net/i2p/syndie/User.java
@@ -127,6 +127,22 @@ public class User {
         init(); 
     }
     
+    public boolean changePassword(String oldPass, String pass0, String pass1) {
+        String curPass = _hashedPassword;
+        Hash curPassHash = _context.sha().calculateHash(DataHelper.getUTF8(oldPass));
+        Hash newPassHash = _context.sha().calculateHash(DataHelper.getUTF8(pass0));
+        if (curPassHash.toBase64().equals(curPass)) {
+            if ( (pass0 != null) && (pass1 != null) && (pass0.equals(pass1)) ) {
+                _hashedPassword = newPassHash.toBase64();
+                return true;
+            } else {
+                return false;
+            }
+        } else {
+            return false;
+        }
+    }
+
     public String login(String login, String pass, Properties props) {
         _username = login;
         load(props);
-- 
GitLab