From 4cdb010230a0fffaf523457f7526066248b06a86 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Thu, 9 Dec 2010 18:56:03 +0000 Subject: [PATCH] See ChangeLog Monotone-Parent: e1db6c4ec1e7a829a4976be2bd87d40d1d0a5d5f Monotone-Revision: ada8e59dc2acdffd7634acc70f3387a0f8e4e671 Monotone-Author: ludovic@Sophos.ca Monotone-Date: 2010-12-09T18:56:03 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 5 +++++ Documentation/SOGo Installation Guide.odt | Bin 149285 -> 149264 bytes SoObjects/SOGo/SQLSource.m | 21 ++++++++++++++++++++- 3 files changed, 25 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index de84c7bb7..62760f988 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2010-12-09 Ludovic Marcotte + + * SoObject/SOGo/SQLSource.m - added SHA password + hash support for SQL authentication sources. + 2010-12-08 Francis Lachapelle * UI/WebServerResources/MailerUI.js (onMenuEmptyTrashCallback): diff --git a/Documentation/SOGo Installation Guide.odt b/Documentation/SOGo Installation Guide.odt index 08f4637ea3e27ba2f6cb53f04c4b97911e4c6898..f6219c3c90fbaa86e0d1ced43b6f3e347eb5a09b 100644 GIT binary patch delta 35874 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 Wf+ #include +#include #import #import @@ -50,7 +51,7 @@ * * c_uid - will be used for authentication - it's a username or username@domain.tld) * c_name - which can be identical to c_uid - will be used to uniquely identify entries) - * c_password - password of the user, plain-text or md5 encoded for now + * c_password - password of the user, plain-text, md5 or sha encoded for now * c_cn - the user's common name * mail - the user's mail address * @@ -170,6 +171,24 @@ s = [NSString stringWithUTF8String: buf]; return [s isEqualToString: encryptedPassword]; } + else if ([_userPasswordAlgorithm caseInsensitiveCompare: @"sha"] == NSOrderedSame) + { + NSString *s; + + unsigned char sha[SHA_DIGEST_LENGTH]; + char buf[80]; + int i; + + memset(sha, 0, SHA_DIGEST_LENGTH); + memset(buf, 0, 80); + + SHA1((const void *)[plainPassword UTF8String], strlen([plainPassword UTF8String]), sha); + for (i = 0; i < SHA_DIGEST_LENGTH; i++) + sprintf(&(buf[i*2]), "%02x", sha[i]); + + s = [NSString stringWithUTF8String: buf]; + return [s isEqualToString: encryptedPassword]; + } [self errorWithFormat: @"Unsupported user-password algorithm: %@", _userPasswordAlgorithm];