<?php
/**
- * Change password ldap backend
+ * Change password LDAP backend
*
* @version $Id$
* @package plugins
/** Default plugin configuration.*/
/**
- * Address of ldap server.
- * You can use any URL format that is supported by your ldap extension.
+ * Address of LDAP server.
+ * You can use any URL format that is supported by your LDAP extension.
* Examples:
* <ul>
* <li>'ldap.example.com' - connect to server on ldap.example.com address
- * <li>'ldaps://ldap.example.com' - connect to server on ldap.example.com address
- * and use SSL encrypted connection to default ldaps port.
+ * <li>'ldaps://ldap.example.com' - connect to server on ldap.example.com address
+ * and use SSL encrypted connection to default LDAPs port.
* </ul>
* defaults to imap server address.
* @link http://www.php.net/ldap-connect
$cpw_ldap_server=$imapServerAddress;
/**
- * Port of ldap server.
- * Used only when $cpw_ldap_server specifies ip address or dns name.
+ * Port of LDAP server.
+ * Used only when $cpw_ldap_server specifies IP address or DNS name.
* @global integer $cpw_ldap_port
*/
global $cpw_ldap_port;
$cpw_ldap_port=389;
/**
- * ldap basedn that is used for binding to ldap server.
+ * LDAP basedn that is used for binding to LDAP server.
* this option must be set to correct value.
* @global $cpw_ldap_basedn;
*/
$cpw_ldap_connect_opts=array();
/**
- * Controls use of starttls on ldap connection.
- * Requires php 4.2+, php ldap extension with ssl support and
+ * Controls use of starttls on LDAP connection.
+ * Requires PHP 4.2+, PHP LDAP extension with SSL support and
* PROTOCOL_VERSION => 3 setting in $cpw_ldap_connect_opts
* @global boolean $cpw_ldap_use_tls
*/
$cpw_ldap_use_tls=false;
/**
- * BindDN that should be able to search ldap directory and find DN used by user.
- * Uses anonymous bind if set to empty string. You should not use DN with write
- * access to ldap directory here. Write access is not required.
+ * BindDN that should be able to search LDAP directory and find DN used by user.
+ * Uses anonymous bind if set to empty string. You should not use DN with write
+ * access to LDAP directory here. Write access is not required.
* @global string $cpw_ldap_binddn
*/
global $cpw_ldap_binddn;
/**
* password used for $cpw_ldap_binddn
- * @global string $cpw_ldap_bindpw
+ * @global string $cpw_ldap_bindpw
*/
global $cpw_ldap_bindpw;
$cpw_ldap_bindpw='';
/**
* BindDN that should be able to change password.
* WARNING: usually user has enough privileges to change own password.
- * If you leave default value, plugin will try to connect with dn that
+ * If you leave default value, plugin will try to connect with DN that
* is detected in $cpw_ldap_username_attr=$username search and current
* user password will be used for authentication.
* @global string $cpw_ldap_admindn
/**
* password used for $cpw_ldap_admindn
- * @global string $cpw_ldap_adminpw
+ * @global string $cpw_ldap_adminpw
*/
global $cpw_ldap_adminpw;
$cpw_ldap_adminpw='';
/**
- * ldap attribute that stores username.
+ * LDAP attribute that stores username.
* username entry should be unique for $cpw_ldap_basedn
* @global string $cpw_ldap_userid_attr
*/
// check for ldap support in php
if (! function_exists('ldap_connect')) {
- error_box(_("Current configuration requires ldap support in php."),$color);
+ error_box(_("Current configuration requires LDAP support in PHP."),$color);
$cpw_ldap_initerr=true;
}
$cpw_ldap_initerr=true;
}
- // if error var is positive, close html and stop execution
+ // if error var is positive, close html and stop execution
if ($cpw_ldap_initerr) {
echo '</body></html>';
exit;
* @return array Array of error messages.
*/
function cpw_ldap_dochange($data) {
- global $cpw_ldap_server, $cpw_ldap_port, $cpw_ldap_basedn,
+ global $cpw_ldap_server, $cpw_ldap_port, $cpw_ldap_basedn,
$cpw_ldap_connect_opts,$cpw_ldap_use_tls,
$cpw_ldap_binddn, $cpw_ldap_bindpw,
$cpw_ldap_admindn, $cpw_ldap_adminpw;
$msgs = array();
/**
- * connect to ldap server
+ * connect to LDAP server
* hide ldap_connect() function call errors, because they are processed in script.
- * any script execution error is treated as critical, error messages are dumped
- * to $msgs and ldap connection is closed with ldap_unbind(). all ldap_unbind()
+ * any script execution error is treated as critical, error messages are dumped
+ * to $msgs and LDAP connection is closed with ldap_unbind(). all ldap_unbind()
* errors are suppressed. Any other error suppression should be explained.
*/
$cpw_ldap_con=@ldap_connect($cpw_ldap_server);
foreach ($cpw_ldap_connect_opts as $opt => $value) {
if (! ldap_set_option($cpw_ldap_con,constant('LDAP_OPT_' . $opt),$value)) {
// set error message
- array_push($msgs,sprintf(_("Setting of ldap connection option %s to value %s failed."),$opt,$value));
+ array_push($msgs,sprintf(_("Setting of LDAP connection option %s to value %s failed."),$opt,$value));
// FIXME: check if ldap_set_option modifies ldap_error.
array_push($msgs,sprintf(_("Error: %s"),ldap_error($cpw_ldap_con)));
$cpw_ldap_con_err=true;
}
/**
- * bind to ldap (use anonymous bind or unprivileged dn) in order to get user's dn
+ * Bind to LDAP (use anonymous bind or unprivileged DN) in order to get user's DN
* hide ldap_bind() function call errors, because errors are processed in script
*/
if ($cpw_ldap_binddn!='') {
// check ldap_bind errors
if (! $cpw_ldap_binding) {
- array_push($msgs,_("Unable to bind to ldap server"));
+ array_push($msgs,_("Unable to bind to LDAP server."));
array_push($msgs,sprintf(_("Server replied: %s"),ldap_error($cpw_ldap_con)));
@ldap_unbind($cpw_ldap_con);
return $msgs;
/**
* unset $cpw_ldap_res2 variable, if such var exists.
- * $cpw_ldap_res2 object can be set in two places and second place checks,
- * if object was created in first place. if variable name matches (somebody
- * uses $cpw_ldap_res2 in code or globals), incorrect validation might
- * cause script errors.
+ * $cpw_ldap_res2 object can be set in two places and second place checks,
+ * if object was created in first place. if variable name matches (somebody
+ * uses $cpw_ldap_res2 in code or globals), incorrect validation might
+ * cause script errors.
*/
if (isset($cpw_ldap_res2)) unset($cpw_ldap_res2);
}
if (! $cpw_ldap_binding) {
- array_push($msgs,_("Unable to rebind to ldap server"));
+ array_push($msgs,_("Unable to rebind to LDAP server."));
array_push($msgs,sprintf(_("Server replied: %s"),ldap_error($cpw_ldap_con)));
@ldap_unbind($cpw_ldap_con);
return $msgs;
/** backend support functions **/
/**
- * Sanitizes ldap query strings.
+ * Sanitizes LDAP query strings.
* original code - ldapquery plugin.
* See rfc2254
* @link http://www.faqs.org/rfcs/rfc2254.html
if ($ret=='crypt') {
// {CRYPT} can be standard des crypt, extended des crypt, md5 crypt or blowfish
- // depends on first salt symbols (ext_des = '_', md5 = '$1$', blowfish = '$2$')
+ // depends on first salt symbols (ext_des = '_', md5 = '$1$', blowfish = '$2$')
// and length of salt (des = 2 chars, ext_des = 9, md5 = 12, blowfish = 16).
if (preg_match("/^\{crypt\}\\\$1\\\$+/i",$pass)) {
$ret='md5crypt';
}
/**
- * search ldap for user id.
+ * Search LDAP for user id.
* @param object $ldap_con ldap connection
* @param string $ldap_basedn ldap basedn
* @param array $msgs error messages
$results=ldap_search($ldap_con,$ldap_basedn,cpw_ldap_specialchars($cpw_ldap_userid_attr . '=' . $username));
if (! $results) {
- array_push($msgs,_("Unable to find user's dn.") . _("Search error."));
+ array_push($msgs,_("Unable to find user's DN.") . _("Search error."));
array_push($msgs,sprintf(_("Error: %s"),ldap_error($ldap_con)));
$ret=false;
} elseif ($onlyone && ldap_count_entries($ldap_con,$results)>1) {
$ret=false;
} elseif (! $userdn = ldap_get_dn($ldap_con,ldap_first_entry($ldap_con,$results))) {
// ldap_get_dn() returned error
- array_push($msgs,_("Unable to find user's dn.") . _("ldap_get_dn error."));
+ array_push($msgs,_("Unable to find user's DN.") . _("ldap_get_dn error."));
$ret=false;
}
return $ret;
}
/**
- * encrypts ldap password
+ * Encrypts LDAP password
*
- * if $cpw_ldap_default_crypto is set to empty string or $same_crypto is set,
+ * if $cpw_ldap_default_crypto is set to empty string or $same_crypto is set,
* uses same crypto as in old password.
* See phpldapadmin password_hash() function
* @link http://phpldapadmin.sf.net
}
$ret = "{SMD5}".base64_encode( mhash( MHASH_MD5, $pass.$salt ).$salt );
} else {
- array_push($msgs,sprintf(_("Unsupported crypto: %s"),'smd5') . _("php mhash extension is missing."));
+ array_push($msgs,sprintf(_("Unsupported crypto: %s"),'smd5') . _("PHP mhash extension is missing."));
}
break;
case 'sha':
if( function_exists( 'mhash' ) ) {
$ret = '{SHA}' . base64_encode( mhash( MHASH_SHA1, $pass) );
} else {
- array_push($msgs,sprintf(_("Unsupported crypto: %s"),'sha') . _("php mhash extension is missing."));
+ array_push($msgs,sprintf(_("Unsupported crypto: %s"),'sha') . _("PHP mhash extension is missing."));
}
break;
case 'ssha':
}
$ret = "{SSHA}".base64_encode( mhash( MHASH_SHA1, $pass.$salt ).$salt );
} else {
- array_push($msgs,sprintf(_("Unsupported crypto: %s"),'ssha')
- . _("php mhash extension is missing."));
+ array_push($msgs,sprintf(_("Unsupported crypto: %s"),'ssha')
+ . _("PHP mhash extension is missing."));
}
break;
case 'crypt':
if (defined('CRYPT_STD_DES') && CRYPT_STD_DES==1) {
$ret = '{CRYPT}' . crypt($pass,GenerateRandomString(2,$extra_salt_chars,7));
} else {
- array_push($msgs,sprintf(_("Unsupported crypto: %s"),'crypt')
+ array_push($msgs,sprintf(_("Unsupported crypto: %s"),'crypt')
. _("System crypt library doesn't support standard des crypt."));
}
break;
if (defined('CRYPT_MD5') && CRYPT_MD5==1) {
$ret = '{CRYPT}' . crypt($pass,'$1$' . GenerateRandomString(9,$extra_salt_chars,7));
} else {
- array_push($msgs,sprintf(_("Unsupported crypto: %s"),'md5crypt')
+ array_push($msgs,sprintf(_("Unsupported crypto: %s"),'md5crypt')
. _("System crypt library doesn't have md5 support."));
}
break;
case 'extcrypt':
// check if crypt() supports extended des
if (defined('CRYPT_EXT_DES') && CRYPT_EXT_DES==1) {
- // FIXME: guinea pigs with extended des support needed.
+ // FIXME: guinea pigs with extended des support needed.
$ret = '{CRYPT}' . crypt($pass,'_' . GenerateRandomString(8,$extra_salt_chars,7));
} else {
- array_push($msgs,sprintf(_("Unsupported crypto: %s"),'ext_des')
+ array_push($msgs,sprintf(_("Unsupported crypto: %s"),'ext_des')
. _("System crypt library doesn't support extended des crypt."));
}
break;
case 'blowfish':
// check if crypt() supports blowfish
if (defined('CRYPT_BLOWFISH') && CRYPT_BLOWFISH==1) {
- // FIXME: guinea pigs with blowfish support needed.
+ // FIXME: guinea pigs with blowfish support needed.
$ret = '{CRYPT}' . crypt($pass,'$2$' . GenerateRandomString(13,$extra_salt_chars,7));
} else {
- array_push($msgs,sprintf(_("Unsupported crypto: %s"),'blowfish')
+ array_push($msgs,sprintf(_("Unsupported crypto: %s"),'blowfish')
. _("System crypt library doesn't have blowfish support."));
}
break;
$ret=true;
} else {
array_push($msgs,_("Unable to validate user's password."));
- array_push($msgs, _("php mhash extension is missing."));
+ array_push($msgs, _("PHP mhash extension is missing."));
}
break;
case 'smd5':
$ret=true;
} else {
array_push($msgs,_("Unable to validate user's password."));
- array_push($msgs, _("php mhash extension is missing."));
+ array_push($msgs, _("PHP mhash extension is missing."));
}
break;
case 'sha':
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2005-02-27 18:57+0200\n"
+"POT-Creation-Date: 2005-02-27 23:00+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
msgid "Address Book"
msgstr ""
-msgid "All"
-msgstr ""
-
-msgid "To"
-msgstr ""
-
-msgid "Cc"
-msgstr ""
-
msgid "Name"
msgstr ""
msgid "Source"
msgstr ""
-msgid "Bcc"
+msgid "To"
msgstr ""
-msgid "Use Addresses"
+msgid "Cc"
msgstr ""
-msgid "Address Book Search"
+msgid "Bcc"
+msgstr ""
+
+msgid "No persons matching your search were found"
msgstr ""
msgid "Search for"
msgid "List all"
msgstr ""
+msgid "Close"
+msgstr ""
+
#, php-format
msgid "Unable to list addresses from %s"
msgstr ""
msgid "Your search failed with the following error(s)"
msgstr ""
-msgid "No persons matching your search were found"
+msgid "All"
msgstr ""
-msgid "Return"
+msgid "Use Addresses"
msgstr ""
-msgid "Close"
+msgid "Address Book Search"
+msgstr ""
+
+msgid "Return"
msgstr ""
msgid "No personal address book is defined. Contact administrator."
msgid "Server replied: "
msgstr ""
-msgid "Illegal folder name. Please select a different name."
-msgstr ""
-
-msgid "Click here to go back"
-msgstr ""
-
-msgid "You have not selected a folder to delete. Please do so."
-msgstr ""
-
-msgid "Delete Folder"
-msgstr ""
-
-#, php-format
-msgid "Are you sure you want to delete %s?"
-msgstr ""
-
-msgid "Yes"
-msgstr ""
-
-msgid "No"
-msgstr ""
-
msgid "Folders"
msgstr ""
msgid "No folders found"
msgstr ""
+msgid "Delete Folder"
+msgstr ""
+
msgid "Delete"
msgstr ""
msgid "Subscribe to:"
msgstr ""
+msgid "Illegal folder name. Please select a different name."
+msgstr ""
+
+msgid "Click here to go back"
+msgstr ""
+
+msgid "You have not selected a folder to delete. Please do so."
+msgstr ""
+
+#, php-format
+msgid "Are you sure you want to delete %s?"
+msgstr ""
+
+msgid "Yes"
+msgstr ""
+
+msgid "No"
+msgstr ""
+
msgid "You have not selected a folder to rename. Please do so."
msgstr ""
msgid "Password:"
msgstr ""
-msgid "Options"
+msgid "Personal Information"
+msgstr ""
+
+msgid "Display Preferences"
+msgstr ""
+
+msgid "Compose Preferences"
msgstr ""
msgid "Message Highlighting"
msgstr ""
+msgid "Folder Preferences"
+msgstr ""
+
+msgid "Index Order"
+msgstr ""
+
+msgid "Options"
+msgstr ""
+
+msgid "Error(s) occurred while saving your options"
+msgstr ""
+
+msgid "Some of your preference changes were not applied."
+msgstr ""
+
+#. Display a message indicating a successful save.
+msgid "Successfully Saved Options"
+msgstr ""
+
+msgid "Refresh Folder List"
+msgstr ""
+
+msgid "Refresh Page"
+msgstr ""
+
+msgid ""
+"This contains personal information about yourself such as your name, your "
+"email address, etc."
+msgstr ""
+
+msgid ""
+"You can change the way that SquirrelMail looks and displays information to "
+"you, such as the colors, the language, and other settings."
+msgstr ""
+
+msgid ""
+"Based upon given criteria, incoming messages can have different background "
+"colors in the message list. This helps to easily distinguish who the "
+"messages are from, especially for mailing lists."
+msgstr ""
+
+msgid ""
+"These settings change the way your folders are displayed and manipulated."
+msgstr ""
+
+msgid ""
+"The order of the message index can be rearranged and changed to contain the "
+"headers in any order you want."
+msgstr ""
+
+msgid ""
+"Control the behaviour and layout of writing new mail messages, replying to "
+"and forwarding messages."
+msgstr ""
+
msgid "New"
msgstr ""
msgid "Move Up"
msgstr ""
-msgid "Index Order"
-msgstr ""
-
msgid "Checkbox"
msgstr ""
msgid "Return to options page"
msgstr ""
-msgid "Personal Information"
-msgstr ""
-
-msgid "Display Preferences"
-msgstr ""
-
-msgid "Compose Preferences"
-msgstr ""
-
-msgid "Folder Preferences"
-msgstr ""
-
-msgid "Error(s) occurred while saving your options"
-msgstr ""
-
-msgid "Some of your preference changes were not applied."
-msgstr ""
-
-#. Display a message indicating a successful save.
-msgid "Successfully Saved Options"
-msgstr ""
-
-msgid "Refresh Folder List"
-msgstr ""
-
-msgid "Refresh Page"
-msgstr ""
-
-msgid ""
-"This contains personal information about yourself such as your name, your "
-"email address, etc."
-msgstr ""
-
-msgid ""
-"You can change the way that SquirrelMail looks and displays information to "
-"you, such as the colors, the language, and other settings."
-msgstr ""
-
-msgid ""
-"Based upon given criteria, incoming messages can have different background "
-"colors in the message list. This helps to easily distinguish who the "
-"messages are from, especially for mailing lists."
-msgstr ""
-
-msgid ""
-"These settings change the way your folders are displayed and manipulated."
-msgstr ""
-
-msgid ""
-"The order of the message index can be rearranged and changed to contain the "
-"headers in any order you want."
-msgstr ""
-
-msgid ""
-"Control the behaviour and layout of writing new mail messages, replying to "
-"and forwarding messages."
-msgstr ""
-
msgid "Message not printable"
msgstr ""
msgid "Use icons"
msgstr ""
-msgid "Use php recode functions"
+msgid "Use PHP recode functions"
msgstr ""
-msgid "Use php iconv functions"
+msgid "Use PHP iconv functions"
msgstr ""
#. ---- Settings of address books ----
msgid "Show button in toolbar"
msgstr ""
-#, php-format
-msgid "Could not write calendar file %s"
+msgid "TODAY"
msgstr ""
-msgid "TODAY"
+#, php-format
+msgid "Could not write calendar file %s"
msgstr ""
msgid "l, F j Y"
msgid "Use this to change your email password."
msgstr ""
-msgid "Current configuration requires ldap support in php."
+msgid "Current configuration requires LDAP support in PHP."
msgstr ""
msgid "Plugin is not configured correctly."
#. set error message
#, php-format
-msgid "Setting of ldap connection option %s to value %s failed."
+msgid "Setting of LDAP connection option %s to value %s failed."
msgstr ""
#. FIXME: check if ldap_set_option modifies ldap_error.
msgid "Unable to use LDAP TLS in current setup."
msgstr ""
-msgid "Unable to bind to ldap server"
+msgid "Unable to bind to LDAP server."
msgstr ""
#, php-format
msgid "Server replied: %s"
msgstr ""
-msgid "Unable to rebind to ldap server"
+msgid "Unable to rebind to LDAP server."
msgstr ""
msgid "Unable to connect to LDAP server."
msgstr ""
#. ldap_get_dn() returned error
-msgid "Unable to find user's dn."
+msgid "Unable to find user's DN."
msgstr ""
msgid "Search error."
msgid "Unsupported crypto: %s"
msgstr ""
-msgid "php mhash extension is missing."
+msgid "PHP mhash extension is missing."
msgstr ""
msgid "System crypt library doesn't support standard des crypt."
msgid "View Message details"
msgstr ""
+msgid "New Mail"
+msgstr ""
+
+msgid "SquirrelMail Notice:"
+msgstr ""
+
+#, php-format
+msgid "You have %s new message"
+msgid_plural "You have %s new messages"
+msgstr[0] ""
+msgstr[1] ""
+
msgid "New Mail Notification"
msgstr ""
msgid "Current File:"
msgstr ""
-msgid "New Mail"
-msgstr ""
-
-msgid "SquirrelMail Notice:"
-msgstr ""
-
-#, php-format
-msgid "You have %s new message"
-msgid_plural "You have %s new messages"
-msgstr[0] ""
-msgstr[1] ""
-
msgid "NewMail Options"
msgstr ""
msgid "No errors found"
msgstr ""
+msgid ""
+"Your personal dictionary has been encrypted and is now stored in an "
+"encrypted format."
+msgstr ""
+
+msgid ""
+"Your personal dictionary has been decrypted and is now stored as plain text."
+msgstr ""
+
+msgid "Personal Dictionary Crypto Settings"
+msgstr ""
+
msgid "Your personal dictionary was erased."
msgstr ""
msgid "Dictionary re-encrypted"
msgstr ""
-msgid ""
-"Your personal dictionary has been encrypted and is now stored in an "
-"encrypted format."
-msgstr ""
-
-msgid ""
-"Your personal dictionary has been decrypted and is now stored as plain text."
-msgstr ""
-
-msgid "Personal Dictionary Crypto Settings"
-msgstr ""
-
#. *
#. * Agt. Smith: "You're empty."
#. * Neo: "So are you."