The macaddr datatype understands most formats of MAC address, except 12
authorBruce Momjian <[email protected]>
Sat, 15 Jun 2002 19:39:33 +0000 (19:39 +0000)
committerBruce Momjian <[email protected]>
Sat, 15 Jun 2002 19:39:33 +0000 (19:39 +0000)
hex digits with no separators, eg 00AABBCCDDEE. This is easily remedied
with the following patch (against 7.2.1):

Mike Wyer

src/backend/utils/adt/mac.c

index 0abd3a71e899f16dfc7a24f55eada1ce75f9eeed..a531842205fc369283bf8ff3c0ed673a940547cc 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * PostgreSQL type definitions for MAC addresses.
  *
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/mac.c,v 1.22 2002/03/09 17:35:35 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/mac.c,v 1.23 2002/06/15 19:39:33 momjian Exp $
  */
 
 #include "postgres.h"
@@ -46,6 +46,8 @@ macaddr_in(PG_FUNCTION_ARGS)
        count = sscanf(str, "%2x%2x%2x-%2x%2x%2x", &a, &b, &c, &d, &e, &f);
    if (count != 6)
        count = sscanf(str, "%2x%2x.%2x%2x.%2x%2x", &a, &b, &c, &d, &e, &f);
+   if (count != 6)
+       count = sscanf(str, "%2x%2x%2x%2x%2x%2x", &a, &b, &c, &d, &e, &f);
 
    if (count != 6)
        elog(ERROR, "macaddr_in: error in parsing \"%s\"", str);