Commit Diff


commit - e2ad1172cacfb9a83494317428161143e884125f
commit + 429dd530b43d9d26ca2257dace314a0c7d493638
blob - f76c015a1ebcba024acf9d74ed122aa45752dd8c
blob + d8c6a7cd2cf3a870ba82c0baf33275943ea75e79
--- FICS/gamedb.c
+++ FICS/gamedb.c
@@ -1724,6 +1724,12 @@ RemHist(char *who)
 			}
 
 			stolower(Opp);
+			/* Validate Opp before using it as a login */
+			if (strstr(Opp, "..") || strchr(Opp, '/') || strchr(Opp, '\\')) {
+				warnx("%s: invalid Opp value: '%s' (skipping)", __func__, Opp);
+				iter_no++;
+				continue;
+			}
 			oppWhen = OldestHistGame(Opp);
 
 			if (oppWhen > When || oppWhen <= 0L) {