libpurple/protocols/gg/validator.c

changeset 40538
222423055d93
parent 40439
e9838d634d5e
child 42085
a76f1668564c
--- a/libpurple/protocols/gg/validator.c	Mon Sep 21 20:15:51 2020 -0500
+++ b/libpurple/protocols/gg/validator.c	Mon Sep 21 20:23:22 2020 -0500
@@ -44,8 +44,16 @@
 
 	value = purple_request_field_string_get_value(field);
 
-	if (value != NULL && ggp_password_validate(value))
-		return TRUE;
+	if (value != NULL) {
+		size_t len = strlen(value);
+		if (6 <= len && len <= 15) {
+			if (g_regex_match_simple(
+			            "^[ a-zA-Z0-9~`!@#$%^&*()_+=[\\]{};':\",./?<>\\\\|-]+$",
+			            value, 0, 0)) {
+				return TRUE;
+			}
+		}
+	}
 
 	if (errmsg)
 		*errmsg = g_strdup(_("Password can contain 6-15 alphanumeric characters"));

mercurial