diff --git a/CHANGELOG b/CHANGELOG
index 4b20d78..7bf6a22 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -34,6 +34,7 @@
 - fix deadlock in alarm manager module.
 - allow for older schemas that allow "*" as a key value.
 - update master map lexer to also allow "." in macro name.
+- allow for "#" and "@" in hostname validation for sshfs mounts.
 
 20/2/2007 autofs-5.0.1
 ----------------------
diff --git a/modules/parse_sun.c b/modules/parse_sun.c
index 99961c3..5e14c75 100644
--- a/modules/parse_sun.c
+++ b/modules/parse_sun.c
@@ -762,12 +762,17 @@ static int validate_location(char *loc)
 	if (*ptr == ':')
 		return 1;
 
-	/* If a ':' is present now it must be a host name */
+	/*
+	 * If a ':' is present now it must be a host name, except
+	 * for those special file systems like sshfs which use "#"
+	 * and "@" in the host name part.
+	 */
 	if (check_colon(ptr)) {
 		while (*ptr && *ptr != ':') {
 			if (!(isalnum(*ptr) ||
 			    *ptr == '-' || *ptr == '.' || *ptr == '_' ||
-			    *ptr == ',' || *ptr == '(' || *ptr == ')'))
+			    *ptr == ',' || *ptr == '(' || *ptr == ')' ||
+			    *ptr == '#' || *ptr == '@'))
 				return 0;
 			ptr++;
 		}