Index: modules/univention/admin/syntax.py =================================================================== --- modules/univention/admin/syntax.py (Revision 30173) +++ modules/univention/admin/syntax.py (Arbeitskopie) @@ -1081,8 +1081,14 @@ choices = ( ( 'ethernet', _( 'Ethernet' ) ), ( 'fddi', _( 'FDDI' ) ), ( 'token-ring', _( 'Token-Ring' ) ) ) class MAC_Address( simple ): - regex = re.compile( '^([0-9a-fA-F]{1,2}[:-]){5}[0-9a-fA-F]{1,2}$' ) - error_message = _( 'This is not a valid MAC address. It must have 6 two digit hexadecimal numbers separated by \"-\" or \":\"' ) + regexFormats = ( + '(([0-9a-fA-F]{2}:){5}[0-9a-fA-F]{2})', # linux format + '(([0-9a-fA-F]{2}-){5}[0-9a-fA-F]{2})', # windows format + '([0-9a-fA-F]{12})', # raw format + '(([0-9a-fA-F]{4}.){2}[0-9a-fA-F]{4})', # cisco format + ) + regex = re.compile( '^(' + '|'.join(regexFormats) + ')$' ) + error_message = _( 'This is not a valid MAC address.' ) size = 'TwoThirds' @classmethod