diff --git a/lam/lib/account.inc b/lam/lib/account.inc index 43d20d8d..1c18c658 100644 --- a/lam/lib/account.inc +++ b/lam/lib/account.inc @@ -396,11 +396,11 @@ function get_preg($argument, $regexp) { break; case 'groupname': // first character must be a letter. All letters, numbers, space and ._- are allowed characters case 'username': // first character must be a letter. All letters, numbers, space and ._- are allowed characters - $pregexpr = '/^[[:alpha:]]([[:alnum:]\\.\\ \\_-])*$/u'; + $pregexpr = '/^[[:alpha:]]([[:alnum:]@\\.\\ \\_-])*$/u'; break; case 'usernameList': // comma separated list of user names case 'groupnameList': // comma separated list of group names - $pregexpr = '/^[[:alpha:]]([[:alnum:]\\.\\ \\_-])*(,[[:alpha:]]([[:alnum:]\\.\\ \\_-])*)*$/u'; + $pregexpr = '/^[[:alpha:]]([[:alnum:]@\\.\\ \\_-])*(,[[:alpha:]]([[:alnum:]@\\.\\ \\_-])*)*$/u'; break; case 'hostname': // first character must be letter, last must be $. Only normal letters, numbers and ._- are allowed $pregexpr = '/^[a-zA-Z]([a-zA-Z0-9\\.\\_-])*\\$$/u'; @@ -427,7 +427,7 @@ function get_preg($argument, $regexp) { $pregexpr = '/^[^\\\<>=\\$\\?]*$/'; break; case "homeDirectory": // Homapath, /path/...... - $pregexpr = '/^([\/]([[:alnum:]\\$\\.\\ \\_-])+)+(\/)?$/u'; + $pregexpr = '/^([\/]([[:alnum:]@\\$\\.\\ \\_-])+)+(\/)?$/u'; break; case "digit": // Normal number $pregexpr = '/^[[:digit:]]*$/';