internal static BanResults CheckHostBan(string hostname) { if (Backend == null || hostname == string.Empty) { return(BanResults.None); } string mask = string.Empty; foreach (string subnet in hostname.Split(".".ToCharArray())) { if (mask == string.Empty) { mask = subnet; } else { mask += "." + subnet; } BanResults results = ResultsFromRecord(Backend.FindHostMaskBan(mask)); if (results != BanResults.None) { return(results); } } return(BanResults.None); }
internal static BanResults CheckAddressBan(string address) { if (Backend == null || address == string.Empty) { return(BanResults.None); } if (address.Contains(":")) { string mask = string.Empty; foreach (string subnet in address.Split(":".ToCharArray())) { if (mask == string.Empty) { mask = subnet; } else { mask += ":" + subnet; } BanResults results = ResultsFromRecord(Backend.FindIPAddressBan(mask)); if (results != BanResults.None) { return(results); } } } else { string mask = string.Empty; foreach (string subnet in address.Split(".".ToCharArray())) { if (mask == string.Empty) { mask = subnet; } else { mask += "." + subnet; } BanResults results = ResultsFromRecord(Backend.FindIPAddressBan(mask)); if (results != BanResults.None) { return(results); } } } return(BanResults.None); }
private static BanResults ResultsFromRecord(Databases.BanRecord record) { if (record == null) { return(BanResults.None); } BanResults results = new BanResults(); results.ID = record.ID; results.Reason = record.Reason; results.Active = true; return(results); }