| 151 | } |
| 152 | |
| 153 | bool MailProvider::matchEmail(String * email) |
| 154 | { |
| 155 | Array * components; |
| 156 | String * domain; |
| 157 | |
| 158 | components = email->componentsSeparatedByString(MCSTR("@")); |
| 159 | if (components->count() < 2) |
| 160 | return false; |
| 161 | |
| 162 | domain = (String *) components->lastObject(); |
| 163 | |
| 164 | bool matchExcludeDomain = false; |
| 165 | mc_foreacharray(String, exclude, mDomainExclude) { |
| 166 | if (matchDomain(exclude, domain)){ |
| 167 | matchExcludeDomain = true;; |
| 168 | break; |
| 169 | } |
| 170 | } |
| 171 | if (matchExcludeDomain) { |
| 172 | return false; |
| 173 | } |
| 174 | |
| 175 | bool matchValidDomain = false; |
| 176 | mc_foreacharray(String, match, mDomainMatch) { |
| 177 | if (matchDomain(match, domain)){ |
| 178 | matchValidDomain = true; |
| 179 | break; |
| 180 | } |
| 181 | } |
| 182 | if (matchValidDomain) { |
| 183 | return true; |
| 184 | } |
| 185 | |
| 186 | return false; |
| 187 | } |
| 188 | |
| 189 | bool MailProvider::matchMX(String * hostname) |
| 190 | { |
no test coverage detected