function MacAddressValidator::checkMac
Checks whether a MAC address is valid.
1 call to MacAddressValidator::checkMac()
- MacAddressValidator::validate in vendor/
symfony/ validator/ Constraints/ MacAddressValidator.php - Checks if the passed value is valid.
File
-
vendor/
symfony/ validator/ Constraints/ MacAddressValidator.php, line 57
Class
- MacAddressValidator
- Validates whether a value is a valid MAC address.
Namespace
Symfony\Component\Validator\ConstraintsCode
private static function checkMac(string $mac, string $type) : bool {
if (!filter_var($mac, \FILTER_VALIDATE_MAC)) {
return false;
}
return match ($type) { MacAddress::ALL => true,
MacAddress::ALL_NO_BROADCAST => !self::isBroadcast($mac),
MacAddress::LOCAL_ALL => self::isLocal($mac),
MacAddress::LOCAL_NO_BROADCAST => self::isLocal($mac) && !self::isBroadcast($mac),
MacAddress::LOCAL_UNICAST => self::isLocal($mac) && self::isUnicast($mac),
MacAddress::LOCAL_MULTICAST => self::isLocal($mac) && !self::isUnicast($mac),
MacAddress::LOCAL_MULTICAST_NO_BROADCAST => self::isLocal($mac) && !self::isUnicast($mac) && !self::isBroadcast($mac),
MacAddress::UNIVERSAL_ALL => !self::isLocal($mac),
MacAddress::UNIVERSAL_UNICAST => !self::isLocal($mac) && self::isUnicast($mac),
MacAddress::UNIVERSAL_MULTICAST => !self::isLocal($mac) && !self::isUnicast($mac),
MacAddress::UNICAST_ALL => self::isUnicast($mac),
MacAddress::MULTICAST_ALL => !self::isUnicast($mac),
MacAddress::MULTICAST_NO_BROADCAST => !self::isUnicast($mac) && !self::isBroadcast($mac),
MacAddress::BROADCAST => self::isBroadcast($mac),
};
}