git.postgresql.org Git - postgresql.git/commit

git projects / postgresql.git / commit
? search:
summary | shortlog | log | commit | commitdiff | tree
(parent: 42bdaeb) | patch
Add support for EUI-64 MAC addresses as macaddr8
2017年3月15日 15:16:25 +0000 (11:16 -0400)
2017年3月15日 15:16:25 +0000 (11:16 -0400)
commit c7a9fa399d557c6366222e90b35db31e45d25678
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
37 files changed:
contrib/btree_gin/Makefile diff | blob | blame | history
contrib/btree_gin/btree_gin--1.0--1.1.sql [new file with mode: 0644] blob
contrib/btree_gin/btree_gin.c diff | blob | blame | history
contrib/btree_gin/btree_gin.control diff | blob | blame | history
contrib/btree_gin/expected/macaddr8.out [new file with mode: 0644] blob
contrib/btree_gin/sql/macaddr8.sql [new file with mode: 0644] blob
contrib/btree_gist/Makefile diff | blob | blame | history
contrib/btree_gist/btree_gist--1.3--1.4.sql [new file with mode: 0644] blob
contrib/btree_gist/btree_gist.control diff | blob | blame | history
contrib/btree_gist/btree_gist.h diff | blob | blame | history
contrib/btree_gist/btree_macaddr8.c [new file with mode: 0644] blob
contrib/btree_gist/expected/macaddr8.out [new file with mode: 0644] blob
contrib/btree_gist/sql/macaddr8.sql [new file with mode: 0644] blob
doc/src/sgml/brin.sgml diff | blob | blame | history
doc/src/sgml/btree-gin.sgml diff | blob | blame | history
doc/src/sgml/btree-gist.sgml diff | blob | blame | history
doc/src/sgml/datatype.sgml diff | blob | blame | history
doc/src/sgml/func.sgml diff | blob | blame | history
src/backend/utils/adt/Makefile diff | blob | blame | history
src/backend/utils/adt/mac.c diff | blob | blame | history
src/backend/utils/adt/mac8.c [new file with mode: 0644] blob
src/backend/utils/adt/network.c diff | blob | blame | history
src/backend/utils/adt/selfuncs.c diff | blob | blame | history
src/include/catalog/pg_amop.h diff | blob | blame | history
src/include/catalog/pg_amproc.h diff | blob | blame | history
src/include/catalog/pg_cast.h diff | blob | blame | history
src/include/catalog/pg_opclass.h diff | blob | blame | history
src/include/catalog/pg_operator.h diff | blob | blame | history
src/include/catalog/pg_opfamily.h diff | blob | blame | history
src/include/catalog/pg_proc.h diff | blob | blame | history
src/include/catalog/pg_type.h diff | blob | blame | history
src/include/utils/inet.h diff | blob | blame | history
src/test/regress/expected/macaddr8.out [new file with mode: 0644] blob
src/test/regress/expected/opr_sanity.out diff | blob | blame | history
src/test/regress/parallel_schedule diff | blob | blame | history
src/test/regress/serial_schedule diff | blob | blame | history
src/test/regress/sql/macaddr8.sql [new file with mode: 0644] blob
This is the main PostgreSQL git repository.
RSS Atom

AltStyle によって変換されたページ (->オリジナル) /