postgresql/contrib
Stephen Frost c7a9fa399d Add support for EUI-64 MAC addresses as macaddr8
This adds in support for EUI-64 MAC addresses by adding a new data type
called 'macaddr8' (using our usual convention of indicating the number
of bytes stored).

This was largely a copy-and-paste from the macaddr data type, with
appropriate adjustments for having 8 bytes instead of 6 and adding
support for converting a provided EUI-48 (6 byte format) to the EUI-64
format.  Conversion from EUI-48 to EUI-64 inserts FFFE as the 4th and
5th bytes but does not perform the IPv6 modified EUI-64 action of
flipping the 7th bit, but we add a function to perform that specific
action for the user as it may be commonly done by users who wish to
calculate their IPv6 address based on their network prefix and 48-bit
MAC address.

Author: Haribabu Kommi, with a good bit of rework of macaddr8_in by me.
Reviewed by: Vitaly Burovoy, Kuntal Ghosh

Discussion: https://postgr.es/m/CAJrrPGcUi8ZH+KkK+=TctNQ+EfkeCEHtMU_yo1mvX8hsk_ghNQ@mail.gmail.com
2017-03-15 11:16:25 -04:00
..
adminpack Use wrappers of PG_DETOAST_DATUM_PACKED() more. 2017-03-12 19:35:34 -04:00
amcheck amcheck: Harden tests against concurrent autovacuums. 2017-03-14 13:07:38 -07:00
auth_delay Consistently declare timestamp variables as TimestampTz. 2017-02-23 15:57:08 -05:00
auto_explain Update copyright via script for 2017 2017-01-03 13:48:53 -05:00
bloom Add optimizer and executor support for parallel index scans. 2017-02-15 13:53:24 -05:00
btree_gin Add support for EUI-64 MAC addresses as macaddr8 2017-03-15 11:16:25 -04:00
btree_gist Add support for EUI-64 MAC addresses as macaddr8 2017-03-15 11:16:25 -04:00
chkpass Further cleanup from the strong-random patch. 2016-12-12 11:55:32 +02:00
citext Move some things from builtins.h to new header files 2017-01-20 20:29:53 -05:00
cube Fix typos in comments. 2017-02-06 11:33:58 +02:00
dblink Fix compiler warning 2017-03-13 15:44:50 -04:00
dict_int Update copyright via script for 2017 2017-01-03 13:48:53 -05:00
dict_xsyn Update copyright via script for 2017 2017-01-03 13:48:53 -05:00
earthdistance Fix typos in comments. 2017-02-06 11:33:58 +02:00
file_fdw Update copyright via script for 2017 2017-01-03 13:48:53 -05:00
fuzzystrmatch Use wrappers of PG_DETOAST_DATUM_PACKED() more. 2017-03-12 19:35:34 -04:00
hstore Assume deconstruct_array() outputs are untoasted. 2017-03-12 19:35:31 -04:00
hstore_plperl Code review for avoidance of direct cross-module links. 2017-02-02 11:21:16 -05:00
hstore_plpython Drop support for Python 2.3 2017-02-21 09:49:22 -05:00
intagg Schema-qualify some references to regprocedure. 2016-06-10 10:41:58 -04:00
intarray Use wrappers of PG_DETOAST_DATUM_PACKED() more. 2017-03-12 19:35:34 -04:00
isn Fix typos in comments. 2017-02-06 11:33:58 +02:00
lo Move atooid() definition to a central place 2017-03-01 11:55:28 -05:00
ltree Spelling fixes 2017-03-14 12:58:39 -04:00
ltree_plpython Code review for avoidance of direct cross-module links. 2017-02-02 11:21:16 -05:00
oid2name Fix hard-coded relkind constants in assorted other files. 2017-03-09 23:36:52 -05:00
pageinspect hash: Add write-ahead logging support. 2017-03-14 13:27:02 -04:00
passwordcheck Replace isMD5() with a more future-proof way to check if pw is encrypted. 2017-02-01 13:11:37 +02:00
pg_buffercache Don't bother to lock bufmgr partitions in pg_buffercache. 2016-09-29 13:16:30 +03:00
pg_freespacemap Update pg_freespacemap extension for parallel query. 2016-06-09 17:18:16 -04:00
pg_prewarm Use wrappers of PG_DETOAST_DATUM_PACKED() more. 2017-03-12 19:35:34 -04:00
pg_standby Fix typos in comments. 2017-02-06 11:33:58 +02:00
pg_stat_statements Support XMLTABLE query expression 2017-03-08 12:40:26 -03:00
pg_trgm Use wrappers of PG_DETOAST_DATUM_PACKED() more. 2017-03-12 19:35:34 -04:00
pg_visibility Add relkind checks to certain contrib modules 2017-03-09 16:34:25 -05:00
pgcrypto Spelling fixes in code comments 2017-03-14 12:58:39 -04:00
pgrowlocks Use wrappers of PG_DETOAST_DATUM_PACKED() more. 2017-03-12 19:35:34 -04:00
pgstattuple hash: Add write-ahead logging support. 2017-03-14 13:27:02 -04:00
postgres_fdw Fix hard-coded relkind constants in assorted other files. 2017-03-09 23:36:52 -05:00
seg Fix typos in comments. 2017-02-06 11:33:58 +02:00
sepgsql Use wrappers of PG_DETOAST_DATUM_PACKED() more. 2017-03-12 19:35:34 -04:00
spi Spelling fixes in code comments 2017-03-14 12:58:39 -04:00
sslinfo Use wrappers of PG_DETOAST_DATUM_PACKED() more. 2017-03-12 19:35:34 -04:00
start-scripts Fix typos in comments. 2017-02-06 11:33:58 +02:00
tablefunc Update copyright via script for 2017 2017-01-03 13:48:53 -05:00
tcn Update copyright via script for 2017 2017-01-03 13:48:53 -05:00
test_decoding Improve isolation tests infrastructure. 2017-03-14 15:56:17 -07:00
tsm_system_rows Update copyright via script for 2017 2017-01-03 13:48:53 -05:00
tsm_system_time Update copyright via script for 2017 2017-01-03 13:48:53 -05:00
unaccent Use wrappers of PG_DETOAST_DATUM_PACKED() more. 2017-03-12 19:35:34 -04:00
uuid-ossp Use wrappers of PG_DETOAST_DATUM_PACKED() more. 2017-03-12 19:35:34 -04:00
vacuumlo Fix hard-coded relkind constants in assorted other files. 2017-03-09 23:36:52 -05:00
xml2 Use wrappers of PG_DETOAST_DATUM_PACKED() more. 2017-03-12 19:35:34 -04:00
contrib-global.mk Respect TEMP_CONFIG when pg_regress_check and friends are called 2016-02-27 12:28:21 -05:00
Makefile Add amcheck extension to contrib. 2017-03-09 16:33:02 -08:00
README Rename 'gmake' to 'make' in docs and recommended commands 2014-02-12 17:29:19 -05:00

The PostgreSQL contrib tree
---------------------------

This subtree contains porting tools, analysis utilities, and plug-in
features that are not part of the core PostgreSQL system, mainly
because they address a limited audience or are too experimental to be
part of the main source tree.  This does not preclude their
usefulness.

User documentation for each module appears in the main SGML
documentation.

When building from the source distribution, these modules are not
built automatically, unless you build the "world" target.  You can
also build and install them all by running "make all" and "make
install" in this directory; or to build and install just one selected
module, do the same in that module's subdirectory.

Some directories supply new user-defined functions, operators, or
types.  To make use of one of these modules, after you have installed
the code you need to register the new SQL objects in the database
system by executing a CREATE EXTENSION command.  In a fresh database,
you can simply do

    CREATE EXTENSION module_name;

See the PostgreSQL documentation for more information about this
procedure.