private static bool MatchByteArray(LimitChecker limitChecker, byte[] content, byte[] pattern, ContentFlags flags) { if (!limitChecker.CheckAndIncrementContentRestrictionCount(1, content)) { return(false); } switch (flags & (ContentFlags.SubString | ContentFlags.Prefix)) { case ContentFlags.FullString: return(RuleUtil.EqualsByteArray(content, pattern)); case ContentFlags.SubString: return(RuleUtil.Contains(content, pattern)); case ContentFlags.Prefix: return(RuleUtil.IsPrefix(content, pattern)); default: throw new InvalidRuleException(string.Format("Not supported content flags {0}", flags)); } }