rfc9645v5.txt   rfc9645.txt 
skipping to change at line 499 skipping to change at line 499
</rpc-reply> </rpc-reply>
2.3. YANG Module 2.3. YANG Module
This YANG module has normative references to [RFC5288], [RFC5289], This YANG module has normative references to [RFC5288], [RFC5289],
[RFC8422], [RFC9640], [RFC9642], [FIPS180-4], and [FIPS186-5]. [RFC8422], [RFC9640], [RFC9642], [FIPS180-4], and [FIPS186-5].
This YANG module has informative references to [RFC5246] and This YANG module has informative references to [RFC5246] and
[RFC8446]. [RFC8446].
<CODE BEGINS> file "ietf-tls-common@2024-03-16.yang" <CODE BEGINS> file "ietf-tls-common@2024-10-10.yang"
module ietf-tls-common { module ietf-tls-common {
yang-version 1.1; yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-tls-common"; namespace "urn:ietf:params:xml:ns:yang:ietf-tls-common";
prefix tlscmn; prefix tlscmn;
import iana-tls-cipher-suite-algs { import iana-tls-cipher-suite-algs {
prefix tlscsa; prefix tlscsa;
reference reference
"RFC 9645: YANG Groupings for TLS Clients and TLS Servers"; "RFC 9645: YANG Groupings for TLS Clients and TLS Servers";
} }
skipping to change at line 558 skipping to change at line 558
or without modification, is permitted pursuant to, and or without modification, is permitted pursuant to, and
subject to the license terms contained in, the Revised subject to the license terms contained in, the Revised
BSD License set forth in Section 4.c of the IETF Trust's BSD License set forth in Section 4.c of the IETF Trust's
Legal Provisions Relating to IETF Documents Legal Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info). (https://trustee.ietf.org/license-info).
This version of this YANG module is part of RFC 9645 This version of this YANG module is part of RFC 9645
(https://www.rfc-editor.org/info/rfc9645); see the RFC (https://www.rfc-editor.org/info/rfc9645); see the RFC
itself for full legal notices."; itself for full legal notices.";
revision 2024-03-16 { revision 2024-10-10 {
description description
"Initial version."; "Initial version.";
reference reference
"RFC 9645: YANG Groupings for TLS Clients and TLS Servers"; "RFC 9645: YANG Groupings for TLS Clients and TLS Servers";
} }
// Features // Features
feature tls12 { feature tls12 {
description description
skipping to change at line 1094 skipping to change at line 1094
</tls-client> </tls-client>
3.3. YANG Module 3.3. YANG Module
This YANG module has normative references to [RFC4279], [RFC5280], This YANG module has normative references to [RFC4279], [RFC5280],
[RFC6520], [RFC7250], [RFC9640], [RFC9641], and [RFC9642] and [RFC6520], [RFC7250], [RFC9640], [RFC9641], and [RFC9642] and
informative references to [RFC5056], [RFC5246], [RFC8446], [RFC9258], informative references to [RFC5056], [RFC5246], [RFC8446], [RFC9258],
and [RFC9257]. and [RFC9257].
<CODE BEGINS> file "ietf-tls-client@2024-03-16.yang" <CODE BEGINS> file "ietf-tls-client@2024-10-10.yang"
module ietf-tls-client { module ietf-tls-client {
yang-version 1.1; yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-tls-client"; namespace "urn:ietf:params:xml:ns:yang:ietf-tls-client";
prefix tlsc; prefix tlsc;
import ietf-netconf-acm { import ietf-netconf-acm {
prefix nacm; prefix nacm;
reference reference
"RFC 8341: Network Configuration Access Control Model"; "RFC 8341: Network Configuration Access Control Model";
} }
skipping to change at line 1158 skipping to change at line 1158
or without modification, is permitted pursuant to, and or without modification, is permitted pursuant to, and
subject to the license terms contained in, the Revised subject to the license terms contained in, the Revised
BSD License set forth in Section 4.c of the IETF Trust's BSD License set forth in Section 4.c of the IETF Trust's
Legal Provisions Relating to IETF Documents Legal Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info). (https://trustee.ietf.org/license-info).
This version of this YANG module is part of RFC 9645 This version of this YANG module is part of RFC 9645
(https://www.rfc-editor.org/info/rfc9645); see the RFC (https://www.rfc-editor.org/info/rfc9645); see the RFC
itself for full legal notices."; itself for full legal notices.";
revision 2024-03-16 { revision 2024-10-10 {
description description
"Initial version"; "Initial version";
reference reference
"RFC 9645: YANG Groupings for TLS Clients and TLS Servers"; "RFC 9645: YANG Groupings for TLS Clients and TLS Servers";
} }
// Features // Features
feature tls-client-keepalives { feature tls-client-keepalives {
description description
skipping to change at line 1885 skipping to change at line 1885
</tls-server> </tls-server>
4.3. YANG Module 4.3. YANG Module
This YANG module has normative references to [RFC4279], [RFC5280], This YANG module has normative references to [RFC4279], [RFC5280],
[RFC6520], [RFC7250], [RFC9640], [RFC9641], and [RFC9642] and [RFC6520], [RFC7250], [RFC9640], [RFC9641], and [RFC9642] and
informative references to [RFC5056], [RFC5246], [RFC8446], [RFC9258], informative references to [RFC5056], [RFC5246], [RFC8446], [RFC9258],
and [RFC9257]. and [RFC9257].
<CODE BEGINS> file "ietf-tls-server@2024-03-16.yang" <CODE BEGINS> file "ietf-tls-server@2024-10-10.yang"
module ietf-tls-server { module ietf-tls-server {
yang-version 1.1; yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-tls-server"; namespace "urn:ietf:params:xml:ns:yang:ietf-tls-server";
prefix tlss; prefix tlss;
import ietf-netconf-acm { import ietf-netconf-acm {
prefix nacm; prefix nacm;
reference reference
"RFC 8341: Network Configuration Access Control Model"; "RFC 8341: Network Configuration Access Control Model";
} }
skipping to change at line 1949 skipping to change at line 1949
or without modification, is permitted pursuant to, and or without modification, is permitted pursuant to, and
subject to the license terms contained in, the Revised subject to the license terms contained in, the Revised
BSD License set forth in Section 4.c of the IETF Trust's BSD License set forth in Section 4.c of the IETF Trust's
Legal Provisions Relating to IETF Documents Legal Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info). (https://trustee.ietf.org/license-info).
This version of this YANG module is part of RFC 9645 This version of this YANG module is part of RFC 9645
(https://www.rfc-editor.org/info/rfc9645); see the RFC (https://www.rfc-editor.org/info/rfc9645); see the RFC
itself for full legal notices."; itself for full legal notices.";
revision 2024-03-16 { revision 2024-10-10 {
description description
"Initial version."; "Initial version.";
reference reference
"RFC 9645: YANG Groupings for TLS Clients and TLS Servers"; "RFC 9645: YANG Groupings for TLS Clients and TLS Servers";
} }
// Features // Features
feature tls-server-keepalives { feature tls-server-keepalives {
description description
skipping to change at line 2675 skipping to change at line 2675
Unassigned or reserved values are not present in the module. Unassigned or reserved values are not present in the module.
When the "iana-tls-cipher-suite-algs" YANG module is updated, a new When the "iana-tls-cipher-suite-algs" YANG module is updated, a new
"revision" statement with a unique revision date must be added in "revision" statement with a unique revision date must be added in
front of the existing revision statements. The "revision" must have front of the existing revision statements. The "revision" must have
a "description" statement explaining why the the update occurred and a "description" statement explaining why the the update occurred and
must have a "reference" substatement that points to the document must have a "reference" substatement that points to the document
defining the registry update that resulted in this change. For defining the registry update that resulted in this change. For
instance: instance:
revision 2024-02-02 { revision 2024-10-10 {
description description
"This update reflects the update made to the underlying "This update reflects the update made to the underlying
'Foo Bar' registry per RFC XXXX."; 'Foo Bar' registry per RFC XXXX.";
reference reference
"RFC XXXX: Extend the Foo Bar Registry "RFC XXXX: Extend the Foo Bar Registry
to Support Something Important"; to Support Something Important";
} }
IANA has added the following note to the "TLS Cipher Suites" registry IANA has added the following note to the "TLS Cipher Suites" registry
under the "Transport Layer Security (TLS) Parameters" registry group under the "Transport Layer Security (TLS) Parameters" registry group
skipping to change at line 2959 skipping to change at line 2959
import requests_cache import requests_cache
from io import StringIO from io import StringIO
from datetime import datetime from datetime import datetime
# Metadata for the one YANG module produced by this script # Metadata for the one YANG module produced by this script
MODULES = [ MODULES = [
{ {
"csv_url": "https://www.iana.org/assignments/tls-parameters/\ "csv_url": "https://www.iana.org/assignments/tls-parameters/\
\tls-parameters-4.csv", \tls-parameters-4.csv",
"spaced_name": "cipher-suite", "spaced_name": "cipher-suite",
"hypenated_name": "cipher-suite", "hyphenated_name": "cipher-suite",
"prefix": "tlscsa", "prefix": "tlscsa",
} }
] ]
def create_module_begin(module, f): def create_module_begin(module, f):
# Define template for all four modules # Define template for all four modules
PREAMBLE_TEMPLATE=""" PREAMBLE_TEMPLATE="""
module iana-tls-HNAME-algs { module iana-tls-HNAME-algs {
yang-version 1.1; yang-version 1.1;
skipping to change at line 3024 skipping to change at line 3024
} }
typedef tls-HNAME-algorithm { typedef tls-HNAME-algorithm {
type enumeration { type enumeration {
""" """
# Replacements # Replacements
rep = { rep = {
"DATE": datetime.today().strftime('%Y-%m-%d'), "DATE": datetime.today().strftime('%Y-%m-%d'),
"YEAR": datetime.today().strftime('%Y'), "YEAR": datetime.today().strftime('%Y'),
"SNAME": module["spaced_name"], "SNAME": module["spaced_name"],
"HNAME": module["hypenated_name"], "HNAME": module["hyphenated_name"],
"PREFIX": module["prefix"] "PREFIX": module["prefix"]
} }
# Do the replacement # Do the replacement
rep = dict((re.escape(k), v) for k, v in rep.items()) rep = dict((re.escape(k), v) for k, v in rep.items())
pattern = re.compile("|".join(rep.keys())) pattern = re.compile("|".join(rep.keys()))
text = pattern.sub(lambda m: rep[re.escape(m.group(0))], PREAMBL\ text = pattern.sub(lambda m: rep[re.escape(m.group(0))], PREAMBL\
\E_TEMPLATE) \E_TEMPLATE)
# Write preamble into the file # Write preamble into the file
skipping to change at line 3170 skipping to change at line 3170
f.write(" }\n") f.write(" }\n")
f.write('\n') f.write('\n')
f.write('}\n') f.write('}\n')
def create_module(module): def create_module(module):
# Install cache for 8x speedup # Install cache for 8x speedup
requests_cache.install_cache() requests_cache.install_cache()
# Ascertain the yang module's name # Ascertain the yang module's name
yang_module_name = "iana-tls-" + module["hypenated_name"] + "-al\ yang_module_name = "iana-tls-" + module["hyphenated_name"] + "-a\
\gs.yang" \lgs.yang"
# Create yang module file # Create yang module file
with open(yang_module_name, "w") as f: with open(yang_module_name, "w") as f:
create_module_begin(module, f) create_module_begin(module, f)
create_module_body(module, f) create_module_body(module, f)
create_module_end(module, f) create_module_end(module, f)
def main(): def main():
for module in MODULES: for module in MODULES:
create_module(module) create_module(module)
 End of changes. 10 change blocks. 
11 lines changed or deleted 11 lines changed or added

This html diff was produced by rfcdiff 1.48.