target = "https://tools.ietf.org/rfc/rfc8446#appendix-B.3.1.4"

# B.3.1.4.  Supported Groups Extension
#
#    enum {
#        unallocated_RESERVED(0x0000),
# 
#        /* Elliptic Curve Groups (ECDHE) */
#        obsolete_RESERVED(0x0001..0x0016),
#        secp256r1(0x0017), secp384r1(0x0018), secp521r1(0x0019),
#        obsolete_RESERVED(0x001A..0x001C),
#        x25519(0x001D), x448(0x001E),
# 
#        /* Finite Field Groups (DHE) */
#        ffdhe2048(0x0100), ffdhe3072(0x0101), ffdhe4096(0x0102),
#        ffdhe6144(0x0103), ffdhe8192(0x0104),
# 
#        /* Reserved Code Points */
#        ffdhe_private_use(0x01FC..0x01FF),
#        ecdhe_private_use(0xFE00..0xFEFF),
#        obsolete_RESERVED(0xFF01..0xFF02),
#        (0xFFFF)
#    } NamedGroup;
# 
#    struct {
#        NamedGroup named_group_list<2..2^16-1>;
#    } NamedGroupList;
# 
# Values within "obsolete_RESERVED" ranges are used in previous
# versions of TLS and MUST NOT be offered or negotiated by TLS 1.3
# implementations.  The obsolete curves have various known/theoretical
# weaknesses or have had very little usage, in some cases only due to
# unintentional server configuration issues.  They are no longer
# considered appropriate for general use and should be assumed to be
# potentially unsafe.  The set of curves specified here is sufficient
# for interoperability with all currently deployed and properly
# configured TLS implementations.

[[spec]]
level = "MUST"
quote = '''
Values within "obsolete_RESERVED" ranges are used in previous
versions of TLS and MUST NOT be offered or negotiated by TLS 1.3
implementations.
'''

