Adding upstream version 2.0.24.
Signed-off-by: Daniel Baumann <daniel@debian.org>
This commit is contained in:
parent
e508fcfeb9
commit
afb0a8fea7
118 changed files with 45084 additions and 0 deletions
1
tests/data/042686bb.0
Symbolic link
1
tests/data/042686bb.0
Symbolic link
|
@ -0,0 +1 @@
|
|||
serverca.pem
|
1
tests/data/5412ca73.0
Symbolic link
1
tests/data/5412ca73.0
Symbolic link
|
@ -0,0 +1 @@
|
|||
server.crt
|
1
tests/data/62436b04.0
Symbolic link
1
tests/data/62436b04.0
Symbolic link
|
@ -0,0 +1 @@
|
|||
client.crt
|
25
tests/data/client.crt
Normal file
25
tests/data/client.crt
Normal file
|
@ -0,0 +1,25 @@
|
|||
-----BEGIN CERTIFICATE-----
|
||||
MIIEQDCCAygCCQCV65JgDvfWkDANBgkqhkiG9w0BAQsFADBjMQswCQYDVQQGEwJD
|
||||
WjETMBEGA1UECAwKU29tZS1TdGF0ZTENMAsGA1UEBwwEQnJubzEPMA0GA1UECgwG
|
||||
Q0VTTkVUMQwwCgYDVQQLDANUTUMxETAPBgNVBAMMCHNlcnZlcmNhMB4XDTE4MTEw
|
||||
NTA3MzAzOVoXDTI4MTEwMjA3MzAzOVowYTELMAkGA1UEBhMCQ1oxEzARBgNVBAgM
|
||||
ClNvbWUtU3RhdGUxDTALBgNVBAcMBEJybm8xDzANBgNVBAoMBkNFU05FVDEMMAoG
|
||||
A1UECwwDVE1DMQ8wDQYDVQQDDAZjbGllbnQwggIiMA0GCSqGSIb3DQEBAQUAA4IC
|
||||
DwAwggIKAoICAQC+kqPqDL9GbWmqVQhp4qla4vYo4kFuh2HG48b7RLp/4l/guik4
|
||||
Hvq2aDVFD9sBcs3FeQbjoLH1Q4doUr8jG6VwJsfovE5SD3T8dVLs2dtpW0OyXTcc
|
||||
b0I9lOVDMz6f6IUBe/m5vk8XNbdUII0NJ8y1dQ51VH3e784Bzu7PSdaMaFac4fkw
|
||||
8kJA9LxkWkv2FDFC7IBcVjRgtb/15EwODH849O6+VPEgX5gdozNj5bL45rKDBvvx
|
||||
0KjD7dFBGAIHbSjmjp7HHadfYKqvtQnMb83fRcK6wohxNP3vy13wBTtSOlvOg16G
|
||||
b+2ZB0Or7wgOw19ZvEIcNgswPwhHfZQNcYMNVLCu02BSzwdY00IEqNM0J5B/W//K
|
||||
JF3uFF/ZqP7D2wO7w8j5UL2lpuxF7YrGecNT1Kr7ggHdkzcLlekkNu7wNWKAZlJ6
|
||||
+Kbun8PqZbamGXLG2Ur1aZDkyKyD9nyMzsRneAlxO+HbQhLojimUbsMm+wgL89zc
|
||||
hLYkL/DSmsJlryA4qhvzHaaONBw4DV5UhSbLDpZtXVfrn+MAm8hLpqf+gUCThsFN
|
||||
8kDp9h9Tg9v01ai9jGb941HkFtGYUWHS5drSz3ZLnSI6i1/wKdbs9ns9YqDMqq2c
|
||||
305v5h7taMN0b40KuGSIME4K4cOsdfCprFYGZQgKjaadQwrsm4k1Jl7kMwIDAQAB
|
||||
MA0GCSqGSIb3DQEBCwUAA4IBAQAtwH2u1o16jkABlqEGDIvAJSMwBmZzNTNHgOXt
|
||||
WDlkzWGsj+L1wc/DNjDRBkE31h4h7ASthhqi1nzzHYQ1hhPVhUUqI532AS/V7EPs
|
||||
Bg3f+BI8gxqQ31TUBEQ4Ll6FtW36nqpJOe6Uui2rH2FonuUg2Av5BvDRil42Tu7f
|
||||
YW4WpSU3e00HiGJ0J0t+QjoKRnnoLJJqlmzk8Y4aIlQim7Azvrlo1WEtOhI3L9UE
|
||||
1GEqxLjRB45P36FSe1wfkgt7xmD0Xjy33Wh6Ae2Fvx7OfJ0K1zy0LHr4rDDJ3tLT
|
||||
qjPqHIFhaa73jGXwXk8sZnbAk542Oa6C6AjzNFyqV7T5Q5lg
|
||||
-----END CERTIFICATE-----
|
51
tests/data/client.key
Normal file
51
tests/data/client.key
Normal file
|
@ -0,0 +1,51 @@
|
|||
-----BEGIN RSA PRIVATE KEY-----
|
||||
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
|
||||
-----END RSA PRIVATE KEY-----
|
12
tests/data/key_dsa
Normal file
12
tests/data/key_dsa
Normal file
|
@ -0,0 +1,12 @@
|
|||
-----BEGIN DSA PRIVATE KEY-----
|
||||
MIIBugIBAAKBgQC5UysgLVJXTBaY4hPuLBBmxsOkC9VzFKbH581ufLqKxBZlQhcn
|
||||
OZ4DaQWXUvMXOmDTnG+ROpjbXBMxaYRmCwrUL9Gz0JeTYuqE413D1XYpQYZH5oJH
|
||||
7SyIe4R+mlCdORekeSKdY2oJ9dREVVe0WXiAzrBV+Eg5Ve3uWQkYw3HAMwIVAMOo
|
||||
rc88si96YqcYSPf//761FJtVAoGANwUJNODSvguHU6x55+UTGHLyWnbIqd/nbUn1
|
||||
cnCRa4xeHSHq0rBayoHh3hJiqqpcdRpb0lVoYNe51HmFJHJUGLHtYcxgnqdvIF5K
|
||||
QiP5h1ESxYqb4v4AXHl5+CVyC0Yp/hkowqaNfVqyOgol/IhNlJknZDCMxWUD9NUJ
|
||||
iiV5oc0CgYACU3qrETmgEHbwx5kCKN1/Ly4pWzS5rNg764aYsU0wE714TfYs5nOf
|
||||
yEvQYkfBDb+rEpGyKot6ZvDsHvL0WVVVx7mIDSKnzHAYwYGl1wKNHlLenOMZIDRT
|
||||
43AKfTz03wRkCrzBl2fAmLLq7wFaXcDDxaBg4zN2CDbuHjmJgRuwzAIUBRb7QH4c
|
||||
p2gVuWcmRuuI9Qexmzc=
|
||||
-----END DSA PRIVATE KEY-----
|
1
tests/data/key_dsa.pub
Normal file
1
tests/data/key_dsa.pub
Normal file
|
@ -0,0 +1 @@
|
|||
ssh-dss AAAAB3NzaC1kc3MAAACBALlTKyAtUldMFpjiE+4sEGbGw6QL1XMUpsfnzW58uorEFmVCFyc5ngNpBZdS8xc6YNOcb5E6mNtcEzFphGYLCtQv0bPQl5Ni6oTjXcPVdilBhkfmgkftLIh7hH6aUJ05F6R5Ip1jagn11ERVV7RZeIDOsFX4SDlV7e5ZCRjDccAzAAAAFQDDqK3PPLIvemKnGEj3//++tRSbVQAAAIA3BQk04NK+C4dTrHnn5RMYcvJadsip3+dtSfVycJFrjF4dIerSsFrKgeHeEmKqqlx1GlvSVWhg17nUeYUkclQYse1hzGCep28gXkpCI/mHURLFipvi/gBceXn4JXILRin+GSjCpo19WrI6CiX8iE2UmSdkMIzFZQP01QmKJXmhzQAAAIACU3qrETmgEHbwx5kCKN1/Ly4pWzS5rNg764aYsU0wE714TfYs5nOfyEvQYkfBDb+rEpGyKot6ZvDsHvL0WVVVx7mIDSKnzHAYwYGl1wKNHlLenOMZIDRT43AKfTz03wRkCrzBl2fAmLLq7wFaXcDDxaBg4zN2CDbuHjmJgRuwzA== vasko@pcvasko
|
5
tests/data/key_ecdsa
Normal file
5
tests/data/key_ecdsa
Normal file
|
@ -0,0 +1,5 @@
|
|||
-----BEGIN EC PRIVATE KEY-----
|
||||
MHcCAQEEICQ2fr9Jt2xluom0YQQ7HseE8YTo5reZRVcQENKUWOrooAoGCCqGSM49
|
||||
AwEHoUQDQgAENEgHZ41JFZT4c1ZFQYqvvqCEIuDxFoyVQKmz2UGOdzqCBomXZD5M
|
||||
4ufyx7bAB0reVgEzPd1ypH5KVTt4HzAkBw==
|
||||
-----END EC PRIVATE KEY-----
|
1
tests/data/key_ecdsa.pub
Normal file
1
tests/data/key_ecdsa.pub
Normal file
|
@ -0,0 +1 @@
|
|||
ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBDRIB2eNSRWU+HNWRUGKr76ghCLg8RaMlUCps9lBjnc6ggaJl2Q+TOLn8se2wAdK3lYBMz3dcqR+SlU7eB8wJAc= vasko@pcvasko
|
27
tests/data/key_rsa
Normal file
27
tests/data/key_rsa
Normal file
|
@ -0,0 +1,27 @@
|
|||
-----BEGIN RSA PRIVATE KEY-----
|
||||
MIIEpAIBAAKCAQEAz2r1QC4jO0MEyFAJ3TvBPRjpEg0Fo7hMJM2yd5DgT2u5JKu9
|
||||
VDmRXnnA4xW/XoqZJY3xcrPyWBxkGmFRfP7L09CleYex5brUXResr6khG46W0zkW
|
||||
9u6XR194hRMgwsAiKKvbzHl/sMl57Xsp9NRqSC9IoNFgJ75Kl/0j47qZV+WSLVEq
|
||||
9DIVzO3zUl+dAQ+hvCDtP3Y1HHTFHI04xr+90sQfWcy78Z4V7lCW8xCSSS4+qmo8
|
||||
hCFWiUmu97wN9yQg/Ks2q67LiE6I1SzwxZnh8EgKAeXT/OsqKenusqbl8yscXn+s
|
||||
jV3BPKE4/FBWASF7ICD9pwb1pONRGitFZN2BZQIDAQABAoIBAQC1jeTQYdI67EXC
|
||||
ZLTNrqFNroFMaJOYJBiaWmat2+VL/3nWzHDzyVQiQyaAXyfcRCsbQSyn/zTQxUEm
|
||||
Cis+4vRdGpPNVeZ0tN1wAuoH9F3jdiM1DhK44E0Qj1O5/+08Ktt7iDrjtzH699A+
|
||||
/ADUqh3Bw4mqIrss7pbyhQSmME5LLTbaWikZ8LgtUiF9f5JWzsqjPb6Yd8JEg0O+
|
||||
5lDngLfgEYevKCJxxBMtQQQ6gZCjQQWmir+/0NBezSHsoltPlw1m8Vs8Y5zz684y
|
||||
v33J/qxDM7+rbGbte2fSQ06OuK7abCZMyfXyWdp4cQpG1JZRxGp4Y8vQKvsU5ZOQ
|
||||
UT/v7ur9AoGBAO+Li/vUzU3GlL7mxBlPTg5LavItWq6C7Rnwftjql7yPxrQ/+m5R
|
||||
Za0YujnqvZq5SpdpljCZbF9KYrFr92wgFqlt5uYptI4eD0/6xALEUcJJIlllTjiK
|
||||
tJmuyFkkD45WEn1IlDGAURQiDn6aqd40odlPsv4L5EdnQEQQz6Kfv6JLAoGBAN2q
|
||||
chHTKv1PBXfqRm0ABYSPyFhki2RqI4DWsbwykFXn3qP7tDDnmR/VMsAbApgTVW77
|
||||
LGffJ7DZXsqgzujwcqvLBKf8Wl5MRJg2jTe0GkKEBYqhGWNzBhuIwnIcKu/6HsEd
|
||||
FfCD93hwUPaVTBE+2ckXQVb9RSUCpGarXKk9cZ0PAoGBAJ/Hku29OdwA80KKpo7D
|
||||
SStbvtAe1HfGuOQueE2z3NZXiJC+hAqFnK5i6gSrwSCtK0XnldiA3bqJ4V66x2SF
|
||||
2tfUiMlJVDffcRNGDuxRir9vDMxYOF6alnBUFyruVLn6S4bpnH+QOYSWWtizzU58
|
||||
CODsulWeFPxTsJg2Jmkw6SAVAoGANWBGqX4k2uw9T9vM65BWw83vm0FSw3I/bFXG
|
||||
ZJ/0W4tC9E+22xPZrm2jE9ktLbtyFhBLaBO3NgGRrs88I6FKq41uaJj+lbhdyB1S
|
||||
sfgfXqb1wqT6PRVEgjrTP7ECsdiTsUK0tr7AR3McO9RFhd2Ribec1zqTfM7/EW3w
|
||||
GRyfkAcCgYAtw6KO+5fXHE79v9pUdZAJ4PAc/KdHjv0zE9s5snwUrh7TO5fIB62d
|
||||
i6nPBWLwD5InDZ9sNgxzTBt+0o2N6PsvKQFtfEBemKimmZShMytFkx9/KTRNR9se
|
||||
2qcBMiJsdAaz6hHUliYVWV3Ui+Uy+vYh5reuEhcvEjEzT6ySaCrZfg==
|
||||
-----END RSA PRIVATE KEY-----
|
1
tests/data/key_rsa.pub
Normal file
1
tests/data/key_rsa.pub
Normal file
|
@ -0,0 +1 @@
|
|||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDPavVALiM7QwTIUAndO8E9GOkSDQWjuEwkzbJ3kOBPa7kkq71UOZFeecDjFb9eipkljfFys/JYHGQaYVF8/svT0KV5h7HlutRdF6yvqSEbjpbTORb27pdHX3iFEyDCwCIoq9vMeX+wyXnteyn01GpIL0ig0WAnvkqX/SPjuplX5ZItUSr0MhXM7fNSX50BD6G8IO0/djUcdMUcjTjGv73SxB9ZzLvxnhXuUJbzEJJJLj6qajyEIVaJSa73vA33JCD8qzarrsuITojVLPDFmeHwSAoB5dP86yop6e6ypuXzKxxef6yNXcE8oTj8UFYBIXsgIP2nBvWk41EaK0Vk3YFl vasko@pcvasko
|
464
tests/data/modules/ietf-netconf-acm.yin
Normal file
464
tests/data/modules/ietf-netconf-acm.yin
Normal file
|
@ -0,0 +1,464 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module name="ietf-netconf-acm"
|
||||
xmlns="urn:ietf:params:xml:ns:yang:yin:1"
|
||||
xmlns:nacm="urn:ietf:params:xml:ns:yang:ietf-netconf-acm"
|
||||
xmlns:yang="urn:ietf:params:xml:ns:yang:ietf-yang-types">
|
||||
<namespace uri="urn:ietf:params:xml:ns:yang:ietf-netconf-acm"/>
|
||||
<prefix value="nacm"/>
|
||||
<import module="ietf-yang-types">
|
||||
<prefix value="yang"/>
|
||||
</import>
|
||||
<organization>
|
||||
<text>IETF NETCONF (Network Configuration) Working Group</text>
|
||||
</organization>
|
||||
<contact>
|
||||
<text>WG Web: <https://datatracker.ietf.org/wg/netconf/>
|
||||
WG List: <mailto:netconf@ietf.org>
|
||||
|
||||
Author: Andy Bierman
|
||||
<mailto:andy@yumaworks.com>
|
||||
|
||||
Author: Martin Bjorklund
|
||||
<mailto:mbj@tail-f.com></text>
|
||||
</contact>
|
||||
<description>
|
||||
<text>Network Configuration Access Control Model.
|
||||
|
||||
Copyright (c) 2012 - 2018 IETF Trust and the persons
|
||||
identified as authors of the code. All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or
|
||||
without modification, is permitted pursuant to, and subject
|
||||
to the license terms contained in, the Simplified BSD
|
||||
License set forth in Section 4.c of the IETF Trust's
|
||||
Legal Provisions Relating to IETF Documents
|
||||
(https://trustee.ietf.org/license-info).
|
||||
|
||||
This version of this YANG module is part of RFC 8341; see
|
||||
the RFC itself for full legal notices.</text>
|
||||
</description>
|
||||
<revision date="2018-02-14">
|
||||
<description>
|
||||
<text>Added support for YANG 1.1 actions and notifications tied to
|
||||
data nodes. Clarified how NACM extensions can be used by
|
||||
other data models.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 8341: Network Configuration Access Control Model</text>
|
||||
</reference>
|
||||
</revision>
|
||||
<revision date="2012-02-22">
|
||||
<description>
|
||||
<text>Initial version.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 6536: Network Configuration Protocol (NETCONF)
|
||||
Access Control Model</text>
|
||||
</reference>
|
||||
</revision>
|
||||
<extension name="default-deny-write">
|
||||
<description>
|
||||
<text>Used to indicate that the data model node
|
||||
represents a sensitive security system parameter.
|
||||
|
||||
If present, the NETCONF server will only allow the designated
|
||||
'recovery session' to have write access to the node. An
|
||||
explicit access control rule is required for all other users.
|
||||
|
||||
If the NACM module is used, then it must be enabled (i.e.,
|
||||
/nacm/enable-nacm object equals 'true'), or this extension
|
||||
is ignored.
|
||||
|
||||
The 'default-deny-write' extension MAY appear within a data
|
||||
definition statement. It is ignored otherwise.</text>
|
||||
</description>
|
||||
</extension>
|
||||
<extension name="default-deny-all">
|
||||
<description>
|
||||
<text>Used to indicate that the data model node
|
||||
controls a very sensitive security system parameter.
|
||||
|
||||
If present, the NETCONF server will only allow the designated
|
||||
'recovery session' to have read, write, or execute access to
|
||||
the node. An explicit access control rule is required for all
|
||||
other users.
|
||||
|
||||
If the NACM module is used, then it must be enabled (i.e.,
|
||||
/nacm/enable-nacm object equals 'true'), or this extension
|
||||
is ignored.
|
||||
|
||||
The 'default-deny-all' extension MAY appear within a data
|
||||
definition statement, 'rpc' statement, or 'notification'
|
||||
statement. It is ignored otherwise.</text>
|
||||
</description>
|
||||
</extension>
|
||||
<typedef name="user-name-type">
|
||||
<type name="string">
|
||||
<length value="1..max"/>
|
||||
</type>
|
||||
<description>
|
||||
<text>General-purpose username string.</text>
|
||||
</description>
|
||||
</typedef>
|
||||
<typedef name="matchall-string-type">
|
||||
<type name="string">
|
||||
<pattern value="\*"/>
|
||||
</type>
|
||||
<description>
|
||||
<text>The string containing a single asterisk '*' is used
|
||||
to conceptually represent all possible values
|
||||
for the particular leaf using this data type.</text>
|
||||
</description>
|
||||
</typedef>
|
||||
<typedef name="access-operations-type">
|
||||
<type name="bits">
|
||||
<bit name="create">
|
||||
<description>
|
||||
<text>Any protocol operation that creates a
|
||||
new data node.</text>
|
||||
</description>
|
||||
</bit>
|
||||
<bit name="read">
|
||||
<description>
|
||||
<text>Any protocol operation or notification that
|
||||
returns the value of a data node.</text>
|
||||
</description>
|
||||
</bit>
|
||||
<bit name="update">
|
||||
<description>
|
||||
<text>Any protocol operation that alters an existing
|
||||
data node.</text>
|
||||
</description>
|
||||
</bit>
|
||||
<bit name="delete">
|
||||
<description>
|
||||
<text>Any protocol operation that removes a data node.</text>
|
||||
</description>
|
||||
</bit>
|
||||
<bit name="exec">
|
||||
<description>
|
||||
<text>Execution access to the specified protocol operation.</text>
|
||||
</description>
|
||||
</bit>
|
||||
</type>
|
||||
<description>
|
||||
<text>Access operation.</text>
|
||||
</description>
|
||||
</typedef>
|
||||
<typedef name="group-name-type">
|
||||
<type name="string">
|
||||
<length value="1..max"/>
|
||||
<pattern value="[^\*].*"/>
|
||||
</type>
|
||||
<description>
|
||||
<text>Name of administrative group to which
|
||||
users can be assigned.</text>
|
||||
</description>
|
||||
</typedef>
|
||||
<typedef name="action-type">
|
||||
<type name="enumeration">
|
||||
<enum name="permit">
|
||||
<description>
|
||||
<text>Requested action is permitted.</text>
|
||||
</description>
|
||||
</enum>
|
||||
<enum name="deny">
|
||||
<description>
|
||||
<text>Requested action is denied.</text>
|
||||
</description>
|
||||
</enum>
|
||||
</type>
|
||||
<description>
|
||||
<text>Action taken by the server when a particular
|
||||
rule matches.</text>
|
||||
</description>
|
||||
</typedef>
|
||||
<typedef name="node-instance-identifier">
|
||||
<type name="yang:xpath1.0"/>
|
||||
<description>
|
||||
<text>Path expression used to represent a special
|
||||
data node, action, or notification instance-identifier
|
||||
string.
|
||||
|
||||
A node-instance-identifier value is an
|
||||
unrestricted YANG instance-identifier expression.
|
||||
All the same rules as an instance-identifier apply,
|
||||
except that predicates for keys are optional. If a key
|
||||
predicate is missing, then the node-instance-identifier
|
||||
represents all possible server instances for that key.
|
||||
|
||||
This XML Path Language (XPath) expression is evaluated in the
|
||||
following context:
|
||||
|
||||
o The set of namespace declarations are those in scope on
|
||||
the leaf element where this type is used.
|
||||
|
||||
o The set of variable bindings contains one variable,
|
||||
'USER', which contains the name of the user of the
|
||||
current session.
|
||||
|
||||
o The function library is the core function library, but
|
||||
note that due to the syntax restrictions of an
|
||||
instance-identifier, no functions are allowed.
|
||||
|
||||
o The context node is the root node in the data tree.
|
||||
|
||||
The accessible tree includes actions and notifications tied
|
||||
to data nodes.</text>
|
||||
</description>
|
||||
</typedef>
|
||||
<container name="nacm">
|
||||
<nacm:default-deny-all/>
|
||||
<description>
|
||||
<text>Parameters for NETCONF access control model.</text>
|
||||
</description>
|
||||
<leaf name="enable-nacm">
|
||||
<type name="boolean"/>
|
||||
<default value="true"/>
|
||||
<description>
|
||||
<text>Enables or disables all NETCONF access control
|
||||
enforcement. If 'true', then enforcement
|
||||
is enabled. If 'false', then enforcement
|
||||
is disabled.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="read-default">
|
||||
<type name="action-type"/>
|
||||
<default value="permit"/>
|
||||
<description>
|
||||
<text>Controls whether read access is granted if
|
||||
no appropriate rule is found for a
|
||||
particular read request.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="write-default">
|
||||
<type name="action-type"/>
|
||||
<default value="deny"/>
|
||||
<description>
|
||||
<text>Controls whether create, update, or delete access
|
||||
is granted if no appropriate rule is found for a
|
||||
particular write request.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="exec-default">
|
||||
<type name="action-type"/>
|
||||
<default value="permit"/>
|
||||
<description>
|
||||
<text>Controls whether exec access is granted if no appropriate
|
||||
rule is found for a particular protocol operation request.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="enable-external-groups">
|
||||
<type name="boolean"/>
|
||||
<default value="true"/>
|
||||
<description>
|
||||
<text>Controls whether the server uses the groups reported by the
|
||||
NETCONF transport layer when it assigns the user to a set of
|
||||
NACM groups. If this leaf has the value 'false', any group
|
||||
names reported by the transport layer are ignored by the
|
||||
server.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="denied-operations">
|
||||
<type name="yang:zero-based-counter32"/>
|
||||
<config value="false"/>
|
||||
<mandatory value="true"/>
|
||||
<description>
|
||||
<text>Number of times since the server last restarted that a
|
||||
protocol operation request was denied.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="denied-data-writes">
|
||||
<type name="yang:zero-based-counter32"/>
|
||||
<config value="false"/>
|
||||
<mandatory value="true"/>
|
||||
<description>
|
||||
<text>Number of times since the server last restarted that a
|
||||
protocol operation request to alter
|
||||
a configuration datastore was denied.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="denied-notifications">
|
||||
<type name="yang:zero-based-counter32"/>
|
||||
<config value="false"/>
|
||||
<mandatory value="true"/>
|
||||
<description>
|
||||
<text>Number of times since the server last restarted that
|
||||
a notification was dropped for a subscription because
|
||||
access to the event type was denied.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<container name="groups">
|
||||
<description>
|
||||
<text>NETCONF access control groups.</text>
|
||||
</description>
|
||||
<list name="group">
|
||||
<key value="name"/>
|
||||
<description>
|
||||
<text>One NACM group entry. This list will only contain
|
||||
configured entries, not any entries learned from
|
||||
any transport protocols.</text>
|
||||
</description>
|
||||
<leaf name="name">
|
||||
<type name="group-name-type"/>
|
||||
<description>
|
||||
<text>Group name associated with this entry.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf-list name="user-name">
|
||||
<type name="user-name-type"/>
|
||||
<description>
|
||||
<text>Each entry identifies the username of
|
||||
a member of the group associated with
|
||||
this entry.</text>
|
||||
</description>
|
||||
</leaf-list>
|
||||
</list>
|
||||
</container>
|
||||
<list name="rule-list">
|
||||
<key value="name"/>
|
||||
<ordered-by value="user"/>
|
||||
<description>
|
||||
<text>An ordered collection of access control rules.</text>
|
||||
</description>
|
||||
<leaf name="name">
|
||||
<type name="string">
|
||||
<length value="1..max"/>
|
||||
</type>
|
||||
<description>
|
||||
<text>Arbitrary name assigned to the rule-list.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf-list name="group">
|
||||
<type name="union">
|
||||
<type name="matchall-string-type"/>
|
||||
<type name="group-name-type"/>
|
||||
</type>
|
||||
<description>
|
||||
<text>List of administrative groups that will be
|
||||
assigned the associated access rights
|
||||
defined by the 'rule' list.
|
||||
|
||||
The string '*' indicates that all groups apply to the
|
||||
entry.</text>
|
||||
</description>
|
||||
</leaf-list>
|
||||
<list name="rule">
|
||||
<key value="name"/>
|
||||
<ordered-by value="user"/>
|
||||
<description>
|
||||
<text>One access control rule.
|
||||
|
||||
Rules are processed in user-defined order until a match is
|
||||
found. A rule matches if 'module-name', 'rule-type', and
|
||||
'access-operations' match the request. If a rule
|
||||
matches, the 'action' leaf determines whether or not
|
||||
access is granted.</text>
|
||||
</description>
|
||||
<leaf name="name">
|
||||
<type name="string">
|
||||
<length value="1..max"/>
|
||||
</type>
|
||||
<description>
|
||||
<text>Arbitrary name assigned to the rule.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="module-name">
|
||||
<type name="union">
|
||||
<type name="matchall-string-type"/>
|
||||
<type name="string"/>
|
||||
</type>
|
||||
<default value="*"/>
|
||||
<description>
|
||||
<text>Name of the module associated with this rule.
|
||||
|
||||
This leaf matches if it has the value '*' or if the
|
||||
object being accessed is defined in the module with the
|
||||
specified module name.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<choice name="rule-type">
|
||||
<description>
|
||||
<text>This choice matches if all leafs present in the rule
|
||||
match the request. If no leafs are present, the
|
||||
choice matches all requests.</text>
|
||||
</description>
|
||||
<case name="protocol-operation">
|
||||
<leaf name="rpc-name">
|
||||
<type name="union">
|
||||
<type name="matchall-string-type"/>
|
||||
<type name="string"/>
|
||||
</type>
|
||||
<description>
|
||||
<text>This leaf matches if it has the value '*' or if
|
||||
its value equals the requested protocol operation
|
||||
name.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
</case>
|
||||
<case name="notification">
|
||||
<leaf name="notification-name">
|
||||
<type name="union">
|
||||
<type name="matchall-string-type"/>
|
||||
<type name="string"/>
|
||||
</type>
|
||||
<description>
|
||||
<text>This leaf matches if it has the value '*' or if its
|
||||
value equals the requested notification name.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
</case>
|
||||
<case name="data-node">
|
||||
<leaf name="path">
|
||||
<type name="node-instance-identifier"/>
|
||||
<mandatory value="true"/>
|
||||
<description>
|
||||
<text>Data node instance-identifier associated with the
|
||||
data node, action, or notification controlled by
|
||||
this rule.
|
||||
|
||||
Configuration data or state data
|
||||
instance-identifiers start with a top-level
|
||||
data node. A complete instance-identifier is
|
||||
required for this type of path value.
|
||||
|
||||
The special value '/' refers to all possible
|
||||
datastore contents.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
</case>
|
||||
</choice>
|
||||
<leaf name="access-operations">
|
||||
<type name="union">
|
||||
<type name="matchall-string-type"/>
|
||||
<type name="access-operations-type"/>
|
||||
</type>
|
||||
<default value="*"/>
|
||||
<description>
|
||||
<text>Access operations associated with this rule.
|
||||
|
||||
This leaf matches if it has the value '*' or if the
|
||||
bit corresponding to the requested operation is set.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="action">
|
||||
<type name="action-type"/>
|
||||
<mandatory value="true"/>
|
||||
<description>
|
||||
<text>The access control action associated with the
|
||||
rule. If a rule has been determined to match a
|
||||
particular request, then this object is used
|
||||
to determine whether to permit or deny the
|
||||
request.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="comment">
|
||||
<type name="string"/>
|
||||
<description>
|
||||
<text>A textual description of the access rule.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
</list>
|
||||
</list>
|
||||
</container>
|
||||
</module>
|
600
tests/data/modules/ietf-netconf-monitoring.yin
Normal file
600
tests/data/modules/ietf-netconf-monitoring.yin
Normal file
|
@ -0,0 +1,600 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module name="ietf-netconf-monitoring"
|
||||
xmlns="urn:ietf:params:xml:ns:yang:yin:1"
|
||||
xmlns:ncm="urn:ietf:params:xml:ns:yang:ietf-netconf-monitoring"
|
||||
xmlns:yang="urn:ietf:params:xml:ns:yang:ietf-yang-types"
|
||||
xmlns:inet="urn:ietf:params:xml:ns:yang:ietf-inet-types">
|
||||
<namespace uri="urn:ietf:params:xml:ns:yang:ietf-netconf-monitoring"/>
|
||||
<prefix value="ncm"/>
|
||||
<import module="ietf-yang-types">
|
||||
<prefix value="yang"/>
|
||||
</import>
|
||||
<import module="ietf-inet-types">
|
||||
<prefix value="inet"/>
|
||||
</import>
|
||||
<organization>
|
||||
<text>IETF NETCONF (Network Configuration) Working Group</text>
|
||||
</organization>
|
||||
<contact>
|
||||
<text>WG Web: <http://tools.ietf.org/wg/netconf/>
|
||||
WG List: <mailto:netconf@ietf.org>
|
||||
|
||||
WG Chair: Mehmet Ersue
|
||||
<mailto:mehmet.ersue@nsn.com>
|
||||
|
||||
WG Chair: Bert Wijnen
|
||||
<mailto:bertietf@bwijnen.net>
|
||||
|
||||
Editor: Mark Scott
|
||||
<mailto:mark.scott@ericsson.com>
|
||||
|
||||
Editor: Martin Bjorklund
|
||||
<mailto:mbj@tail-f.com></text>
|
||||
</contact>
|
||||
<description>
|
||||
<text>NETCONF Monitoring Module.
|
||||
All elements in this module are read-only.
|
||||
|
||||
Copyright (c) 2010 IETF Trust and the persons identified as
|
||||
authors of the code. All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or
|
||||
without modification, is permitted pursuant to, and subject
|
||||
to the license terms contained in, the Simplified BSD
|
||||
License set forth in Section 4.c of the IETF Trust's
|
||||
Legal Provisions Relating to IETF Documents
|
||||
(http://trustee.ietf.org/license-info).
|
||||
|
||||
This version of this YANG module is part of RFC 6022; see
|
||||
the RFC itself for full legal notices.</text>
|
||||
</description>
|
||||
<revision date="2010-10-04">
|
||||
<description>
|
||||
<text>Initial revision.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 6022: YANG Module for NETCONF Monitoring</text>
|
||||
</reference>
|
||||
</revision>
|
||||
<typedef name="netconf-datastore-type">
|
||||
<type name="enumeration">
|
||||
<enum name="running"/>
|
||||
<enum name="candidate"/>
|
||||
<enum name="startup"/>
|
||||
</type>
|
||||
<description>
|
||||
<text>Enumeration of possible NETCONF datastore types.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 4741: NETCONF Configuration Protocol</text>
|
||||
</reference>
|
||||
</typedef>
|
||||
<identity name="transport">
|
||||
<description>
|
||||
<text>Base identity for NETCONF transport types.</text>
|
||||
</description>
|
||||
</identity>
|
||||
<identity name="netconf-ssh">
|
||||
<base name="transport"/>
|
||||
<description>
|
||||
<text>NETCONF over Secure Shell (SSH).</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 4742: Using the NETCONF Configuration Protocol
|
||||
over Secure SHell (SSH)</text>
|
||||
</reference>
|
||||
</identity>
|
||||
<identity name="netconf-soap-over-beep">
|
||||
<base name="transport"/>
|
||||
<description>
|
||||
<text>NETCONF over Simple Object Access Protocol (SOAP) over
|
||||
Blocks Extensible Exchange Protocol (BEEP).</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 4743: Using NETCONF over the Simple Object
|
||||
Access Protocol (SOAP)</text>
|
||||
</reference>
|
||||
</identity>
|
||||
<identity name="netconf-soap-over-https">
|
||||
<base name="transport"/>
|
||||
<description>
|
||||
<text>NETCONF over Simple Object Access Protocol (SOAP)
|
||||
over Hypertext Transfer Protocol Secure (HTTPS).</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 4743: Using NETCONF over the Simple Object
|
||||
Access Protocol (SOAP)</text>
|
||||
</reference>
|
||||
</identity>
|
||||
<identity name="netconf-beep">
|
||||
<base name="transport"/>
|
||||
<description>
|
||||
<text>NETCONF over Blocks Extensible Exchange Protocol (BEEP).</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 4744: Using the NETCONF Protocol over the
|
||||
Blocks Extensible Exchange Protocol (BEEP)</text>
|
||||
</reference>
|
||||
</identity>
|
||||
<identity name="netconf-tls">
|
||||
<base name="transport"/>
|
||||
<description>
|
||||
<text>NETCONF over Transport Layer Security (TLS).</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 5539: NETCONF over Transport Layer Security (TLS)</text>
|
||||
</reference>
|
||||
</identity>
|
||||
<identity name="schema-format">
|
||||
<description>
|
||||
<text>Base identity for data model schema languages.</text>
|
||||
</description>
|
||||
</identity>
|
||||
<identity name="xsd">
|
||||
<base name="schema-format"/>
|
||||
<description>
|
||||
<text>W3C XML Schema Definition.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>W3C REC REC-xmlschema-1-20041028:
|
||||
XML Schema Part 1: Structures</text>
|
||||
</reference>
|
||||
</identity>
|
||||
<identity name="yang">
|
||||
<base name="schema-format"/>
|
||||
<description>
|
||||
<text>The YANG data modeling language for NETCONF.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 6020: YANG - A Data Modeling Language for the
|
||||
Network Configuration Protocol (NETCONF)</text>
|
||||
</reference>
|
||||
</identity>
|
||||
<identity name="yin">
|
||||
<base name="schema-format"/>
|
||||
<description>
|
||||
<text>The YIN syntax for YANG.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 6020: YANG - A Data Modeling Language for the
|
||||
Network Configuration Protocol (NETCONF)</text>
|
||||
</reference>
|
||||
</identity>
|
||||
<identity name="rng">
|
||||
<base name="schema-format"/>
|
||||
<description>
|
||||
<text>Regular Language for XML Next Generation (RELAX NG).</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>ISO/IEC 19757-2:2008: RELAX NG</text>
|
||||
</reference>
|
||||
</identity>
|
||||
<identity name="rnc">
|
||||
<base name="schema-format"/>
|
||||
<description>
|
||||
<text>Relax NG Compact Syntax</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>ISO/IEC 19757-2:2008: RELAX NG</text>
|
||||
</reference>
|
||||
</identity>
|
||||
<grouping name="common-counters">
|
||||
<description>
|
||||
<text>Counters that exist both per session, and also globally,
|
||||
accumulated from all sessions.</text>
|
||||
</description>
|
||||
<leaf name="in-rpcs">
|
||||
<type name="yang:zero-based-counter32"/>
|
||||
<description>
|
||||
<text>Number of correct <rpc> messages received.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="in-bad-rpcs">
|
||||
<type name="yang:zero-based-counter32"/>
|
||||
<description>
|
||||
<text>Number of messages received when an <rpc> message was expected,
|
||||
that were not correct <rpc> messages. This includes XML parse
|
||||
errors and errors on the rpc layer.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="out-rpc-errors">
|
||||
<type name="yang:zero-based-counter32"/>
|
||||
<description>
|
||||
<text>Number of <rpc-reply> messages sent that contained an
|
||||
<rpc-error> element.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="out-notifications">
|
||||
<type name="yang:zero-based-counter32"/>
|
||||
<description>
|
||||
<text>Number of <notification> messages sent.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
</grouping>
|
||||
<container name="netconf-state">
|
||||
<config value="false"/>
|
||||
<description>
|
||||
<text>The netconf-state container is the root of the monitoring
|
||||
data model.</text>
|
||||
</description>
|
||||
<container name="capabilities">
|
||||
<description>
|
||||
<text>Contains the list of NETCONF capabilities supported by the
|
||||
server.</text>
|
||||
</description>
|
||||
<leaf-list name="capability">
|
||||
<type name="inet:uri"/>
|
||||
<description>
|
||||
<text>List of NETCONF capabilities supported by the server.</text>
|
||||
</description>
|
||||
</leaf-list>
|
||||
</container>
|
||||
<container name="datastores">
|
||||
<description>
|
||||
<text>Contains the list of NETCONF configuration datastores.</text>
|
||||
</description>
|
||||
<list name="datastore">
|
||||
<key value="name"/>
|
||||
<description>
|
||||
<text>List of NETCONF configuration datastores supported by
|
||||
the NETCONF server and related information.</text>
|
||||
</description>
|
||||
<leaf name="name">
|
||||
<type name="netconf-datastore-type"/>
|
||||
<description>
|
||||
<text>Name of the datastore associated with this list entry.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<container name="locks">
|
||||
<presence value="This container is present only if the datastore is locked."/>
|
||||
<description>
|
||||
<text>The NETCONF <lock> and <partial-lock> operations allow
|
||||
a client to lock specific resources in a datastore. The
|
||||
NETCONF server will prevent changes to the locked
|
||||
resources by all sessions except the one that acquired
|
||||
the lock(s).
|
||||
|
||||
Monitoring information is provided for each datastore
|
||||
entry including details such as the session that acquired
|
||||
the lock, the type of lock (global or partial) and the
|
||||
list of locked resources. Multiple locks per datastore
|
||||
are supported.</text>
|
||||
</description>
|
||||
<grouping name="lock-info">
|
||||
<description>
|
||||
<text>Lock related parameters, common to both global and
|
||||
partial locks.</text>
|
||||
</description>
|
||||
<leaf name="locked-by-session">
|
||||
<type name="uint32"/>
|
||||
<mandatory value="true"/>
|
||||
<description>
|
||||
<text>The session ID of the session that has locked
|
||||
this resource. Both a global lock and a partial
|
||||
lock MUST contain the NETCONF session-id.
|
||||
|
||||
If the lock is held by a session that is not managed
|
||||
by the NETCONF server (e.g., a CLI session), a session
|
||||
id of 0 (zero) is reported.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 4741: NETCONF Configuration Protocol</text>
|
||||
</reference>
|
||||
</leaf>
|
||||
<leaf name="locked-time">
|
||||
<type name="yang:date-and-time"/>
|
||||
<mandatory value="true"/>
|
||||
<description>
|
||||
<text>The date and time of when the resource was
|
||||
locked.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
</grouping>
|
||||
<choice name="lock-type">
|
||||
<description>
|
||||
<text>Indicates if a global lock or a set of partial locks
|
||||
are set.</text>
|
||||
</description>
|
||||
<container name="global-lock">
|
||||
<description>
|
||||
<text>Present if the global lock is set.</text>
|
||||
</description>
|
||||
<uses name="lock-info"/>
|
||||
</container>
|
||||
<list name="partial-lock">
|
||||
<key value="lock-id"/>
|
||||
<description>
|
||||
<text>List of partial locks.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 5717: Partial Lock Remote Procedure Call (RPC) for
|
||||
NETCONF</text>
|
||||
</reference>
|
||||
<leaf name="lock-id">
|
||||
<type name="uint32"/>
|
||||
<description>
|
||||
<text>This is the lock id returned in the <partial-lock>
|
||||
response.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<uses name="lock-info"/>
|
||||
<leaf-list name="select">
|
||||
<type name="yang:xpath1.0"/>
|
||||
<min-elements value="1"/>
|
||||
<description>
|
||||
<text>The xpath expression that was used to request
|
||||
the lock. The select expression indicates the
|
||||
original intended scope of the lock.</text>
|
||||
</description>
|
||||
</leaf-list>
|
||||
<leaf-list name="locked-node">
|
||||
<type name="instance-identifier"/>
|
||||
<description>
|
||||
<text>The list of instance-identifiers (i.e., the
|
||||
locked nodes).
|
||||
|
||||
The scope of the partial lock is defined by the list
|
||||
of locked nodes.</text>
|
||||
</description>
|
||||
</leaf-list>
|
||||
</list>
|
||||
</choice>
|
||||
</container>
|
||||
</list>
|
||||
</container>
|
||||
<container name="schemas">
|
||||
<description>
|
||||
<text>Contains the list of data model schemas supported by the
|
||||
server.</text>
|
||||
</description>
|
||||
<list name="schema">
|
||||
<key value="identifier version format"/>
|
||||
<description>
|
||||
<text>List of data model schemas supported by the server.</text>
|
||||
</description>
|
||||
<leaf name="identifier">
|
||||
<type name="string"/>
|
||||
<description>
|
||||
<text>Identifier to uniquely reference the schema. The
|
||||
identifier is used in the <get-schema> operation and may
|
||||
be used for other purposes such as file retrieval.
|
||||
|
||||
For modeling languages that support or require a data
|
||||
model name (e.g., YANG module name) the identifier MUST
|
||||
match that name. For YANG data models, the identifier is
|
||||
the name of the module or submodule. In other cases, an
|
||||
identifier such as a filename MAY be used instead.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="version">
|
||||
<type name="string"/>
|
||||
<description>
|
||||
<text>Version of the schema supported. Multiple versions MAY be
|
||||
supported simultaneously by a NETCONF server. Each
|
||||
version MUST be reported individually in the schema list,
|
||||
i.e., with same identifier, possibly different location,
|
||||
but different version.
|
||||
|
||||
For YANG data models, version is the value of the most
|
||||
recent YANG 'revision' statement in the module or
|
||||
submodule, or the empty string if no 'revision' statement
|
||||
is present.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="format">
|
||||
<type name="identityref">
|
||||
<base name="schema-format"/>
|
||||
</type>
|
||||
<description>
|
||||
<text>The data modeling language the schema is written
|
||||
in (currently xsd, yang, yin, rng, or rnc).
|
||||
For YANG data models, 'yang' format MUST be supported and
|
||||
'yin' format MAY also be provided.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="namespace">
|
||||
<type name="inet:uri"/>
|
||||
<mandatory value="true"/>
|
||||
<description>
|
||||
<text>The XML namespace defined by the data model.
|
||||
|
||||
For YANG data models, this is the module's namespace.
|
||||
If the list entry describes a submodule, this field
|
||||
contains the namespace of the module to which the
|
||||
submodule belongs.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf-list name="location">
|
||||
<type name="union">
|
||||
<type name="enumeration">
|
||||
<enum name="NETCONF"/>
|
||||
</type>
|
||||
<type name="inet:uri"/>
|
||||
</type>
|
||||
<description>
|
||||
<text>One or more locations from which the schema can be
|
||||
retrieved. This list SHOULD contain at least one
|
||||
entry per schema.
|
||||
|
||||
A schema entry may be located on a remote file system
|
||||
(e.g., reference to file system for ftp retrieval) or
|
||||
retrieved directly from a server supporting the
|
||||
<get-schema> operation (denoted by the value 'NETCONF').</text>
|
||||
</description>
|
||||
</leaf-list>
|
||||
</list>
|
||||
</container>
|
||||
<container name="sessions">
|
||||
<description>
|
||||
<text>The sessions container includes session-specific data for
|
||||
NETCONF management sessions. The session list MUST include
|
||||
all currently active NETCONF sessions.</text>
|
||||
</description>
|
||||
<list name="session">
|
||||
<key value="session-id"/>
|
||||
<description>
|
||||
<text>All NETCONF sessions managed by the NETCONF server
|
||||
MUST be reported in this list.</text>
|
||||
</description>
|
||||
<leaf name="session-id">
|
||||
<type name="uint32">
|
||||
<range value="1..max"/>
|
||||
</type>
|
||||
<description>
|
||||
<text>Unique identifier for the session. This value is the
|
||||
NETCONF session identifier, as defined in RFC 4741.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 4741: NETCONF Configuration Protocol</text>
|
||||
</reference>
|
||||
</leaf>
|
||||
<leaf name="transport">
|
||||
<type name="identityref">
|
||||
<base name="transport"/>
|
||||
</type>
|
||||
<mandatory value="true"/>
|
||||
<description>
|
||||
<text>Identifies the transport for each session, e.g.,
|
||||
'netconf-ssh', 'netconf-soap', etc.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="username">
|
||||
<type name="string"/>
|
||||
<mandatory value="true"/>
|
||||
<description>
|
||||
<text>The username is the client identity that was authenticated
|
||||
by the NETCONF transport protocol. The algorithm used to
|
||||
derive the username is NETCONF transport protocol specific
|
||||
and in addition specific to the authentication mechanism
|
||||
used by the NETCONF transport protocol.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="source-host">
|
||||
<type name="inet:host"/>
|
||||
<description>
|
||||
<text>Host identifier of the NETCONF client. The value
|
||||
returned is implementation specific (e.g., hostname,
|
||||
IPv4 address, IPv6 address)</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="login-time">
|
||||
<type name="yang:date-and-time"/>
|
||||
<mandatory value="true"/>
|
||||
<description>
|
||||
<text>Time at the server at which the session was established.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<uses name="common-counters">
|
||||
<description>
|
||||
<text>Per-session counters. Zero based with following reset
|
||||
behaviour:
|
||||
- at start of a session
|
||||
- when max value is reached</text>
|
||||
</description>
|
||||
</uses>
|
||||
</list>
|
||||
</container>
|
||||
<container name="statistics">
|
||||
<description>
|
||||
<text>Statistical data pertaining to the NETCONF server.</text>
|
||||
</description>
|
||||
<leaf name="netconf-start-time">
|
||||
<type name="yang:date-and-time"/>
|
||||
<description>
|
||||
<text>Date and time at which the management subsystem was
|
||||
started.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="in-bad-hellos">
|
||||
<type name="yang:zero-based-counter32"/>
|
||||
<description>
|
||||
<text>Number of sessions silently dropped because an
|
||||
invalid <hello> message was received. This includes <hello>
|
||||
messages with a 'session-id' attribute, bad namespace, and
|
||||
bad capability declarations.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="in-sessions">
|
||||
<type name="yang:zero-based-counter32"/>
|
||||
<description>
|
||||
<text>Number of sessions started. This counter is incremented
|
||||
when a <hello> message with a <session-id> is sent.
|
||||
|
||||
'in-sessions' - 'in-bad-hellos' =
|
||||
'number of correctly started netconf sessions'</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="dropped-sessions">
|
||||
<type name="yang:zero-based-counter32"/>
|
||||
<description>
|
||||
<text>Number of sessions that were abnormally terminated, e.g.,
|
||||
due to idle timeout or transport close. This counter is not
|
||||
incremented when a session is properly closed by a
|
||||
<close-session> operation, or killed by a <kill-session>
|
||||
operation.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<uses name="common-counters">
|
||||
<description>
|
||||
<text>Global counters, accumulated from all sessions.
|
||||
Zero based with following reset behaviour:
|
||||
- re-initialization of NETCONF server
|
||||
- when max value is reached</text>
|
||||
</description>
|
||||
</uses>
|
||||
</container>
|
||||
</container>
|
||||
<rpc name="get-schema">
|
||||
<description>
|
||||
<text>This operation is used to retrieve a schema from the
|
||||
NETCONF server.
|
||||
|
||||
Positive Response:
|
||||
The NETCONF server returns the requested schema.
|
||||
|
||||
Negative Response:
|
||||
If requested schema does not exist, the <error-tag> is
|
||||
'invalid-value'.
|
||||
|
||||
If more than one schema matches the requested parameters, the
|
||||
<error-tag> is 'operation-failed', and <error-app-tag> is
|
||||
'data-not-unique'.</text>
|
||||
</description>
|
||||
<input>
|
||||
<leaf name="identifier">
|
||||
<type name="string"/>
|
||||
<mandatory value="true"/>
|
||||
<description>
|
||||
<text>Identifier for the schema list entry.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="version">
|
||||
<type name="string"/>
|
||||
<description>
|
||||
<text>Version of the schema requested. If this parameter is not
|
||||
present, and more than one version of the schema exists on
|
||||
the server, a 'data-not-unique' error is returned, as
|
||||
described above.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="format">
|
||||
<type name="identityref">
|
||||
<base name="schema-format"/>
|
||||
</type>
|
||||
<description>
|
||||
<text>The data modeling language of the schema. If this
|
||||
parameter is not present, and more than one formats of
|
||||
the schema exists on the server, a 'data-not-unique' error
|
||||
is returned, as described above.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
</input>
|
||||
<output>
|
||||
<anyxml name="data">
|
||||
<description>
|
||||
<text>Contains the schema content.</text>
|
||||
</description>
|
||||
</anyxml>
|
||||
</output>
|
||||
</rpc>
|
||||
</module>
|
353
tests/data/modules/ietf-netconf-notifications.yin
Normal file
353
tests/data/modules/ietf-netconf-notifications.yin
Normal file
|
@ -0,0 +1,353 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module name="ietf-netconf-notifications"
|
||||
xmlns="urn:ietf:params:xml:ns:yang:yin:1"
|
||||
xmlns:ncn="urn:ietf:params:xml:ns:yang:ietf-netconf-notifications"
|
||||
xmlns:inet="urn:ietf:params:xml:ns:yang:ietf-inet-types"
|
||||
xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0">
|
||||
<namespace uri="urn:ietf:params:xml:ns:yang:ietf-netconf-notifications"/>
|
||||
<prefix value="ncn"/>
|
||||
<import module="ietf-inet-types">
|
||||
<prefix value="inet"/>
|
||||
</import>
|
||||
<import module="ietf-netconf">
|
||||
<prefix value="nc"/>
|
||||
</import>
|
||||
<organization>
|
||||
<text>IETF NETCONF (Network Configuration Protocol) Working Group</text>
|
||||
</organization>
|
||||
<contact>
|
||||
<text>WG Web: <http://tools.ietf.org/wg/netconf/>
|
||||
WG List: <mailto:netconf@ietf.org>
|
||||
|
||||
WG Chair: Bert Wijnen
|
||||
<mailto:bertietf@bwijnen.net>
|
||||
|
||||
WG Chair: Mehmet Ersue
|
||||
<mailto:mehmet.ersue@nsn.com>
|
||||
|
||||
Editor: Andy Bierman
|
||||
<mailto:andy@netconfcentral.org></text>
|
||||
</contact>
|
||||
<description>
|
||||
<text>This module defines a YANG data model for use with the
|
||||
NETCONF protocol that allows the NETCONF client to
|
||||
receive common NETCONF base event notifications.
|
||||
|
||||
Copyright (c) 2012 IETF Trust and the persons identified as
|
||||
the document authors. All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or
|
||||
without modification, is permitted pursuant to, and subject
|
||||
to the license terms contained in, the Simplified BSD License
|
||||
|
||||
|
||||
|
||||
set forth in Section 4.c of the IETF Trust's Legal Provisions
|
||||
Relating to IETF Documents
|
||||
(http://trustee.ietf.org/license-info).
|
||||
|
||||
This version of this YANG module is part of RFC 6470; see
|
||||
the RFC itself for full legal notices.</text>
|
||||
</description>
|
||||
<revision date="2012-02-06">
|
||||
<description>
|
||||
<text>Initial version.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 6470: NETCONF Base Notifications</text>
|
||||
</reference>
|
||||
</revision>
|
||||
<grouping name="common-session-parms">
|
||||
<description>
|
||||
<text>Common session parameters to identify a
|
||||
management session.</text>
|
||||
</description>
|
||||
<leaf name="username">
|
||||
<type name="string"/>
|
||||
<mandatory value="true"/>
|
||||
<description>
|
||||
<text>Name of the user for the session.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="session-id">
|
||||
<type name="nc:session-id-or-zero-type"/>
|
||||
<mandatory value="true"/>
|
||||
<description>
|
||||
<text>Identifier of the session.
|
||||
A NETCONF session MUST be identified by a non-zero value.
|
||||
A non-NETCONF session MAY be identified by the value zero.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="source-host">
|
||||
<type name="inet:ip-address"/>
|
||||
<description>
|
||||
<text>Address of the remote host for the session.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
</grouping>
|
||||
<grouping name="changed-by-parms">
|
||||
<description>
|
||||
<text>Common parameters to identify the source
|
||||
of a change event, such as a configuration
|
||||
or capability change.</text>
|
||||
</description>
|
||||
<container name="changed-by">
|
||||
<description>
|
||||
<text>Indicates the source of the change.
|
||||
If caused by internal action, then the
|
||||
empty leaf 'server' will be present.
|
||||
If caused by a management session, then
|
||||
the name, remote host address, and session ID
|
||||
of the session that made the change will be reported.</text>
|
||||
</description>
|
||||
<choice name="server-or-user">
|
||||
<mandatory value="true"/>
|
||||
<leaf name="server">
|
||||
<type name="empty"/>
|
||||
<description>
|
||||
<text>If present, the change was caused
|
||||
by the server.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<case name="by-user">
|
||||
<uses name="common-session-parms"/>
|
||||
</case>
|
||||
</choice>
|
||||
</container>
|
||||
</grouping>
|
||||
<notification name="netconf-config-change">
|
||||
<description>
|
||||
<text>Generated when the NETCONF server detects that the
|
||||
<running> or <startup> configuration datastore
|
||||
has been changed by a management session.
|
||||
The notification summarizes the edits that
|
||||
have been detected.
|
||||
|
||||
The server MAY choose to also generate this
|
||||
notification while loading a datastore during the
|
||||
boot process for the device.</text>
|
||||
</description>
|
||||
<uses name="changed-by-parms"/>
|
||||
<leaf name="datastore">
|
||||
<type name="enumeration">
|
||||
<enum name="running">
|
||||
<description>
|
||||
<text>The <running> datastore has changed.</text>
|
||||
</description>
|
||||
</enum>
|
||||
<enum name="startup">
|
||||
<description>
|
||||
<text>The <startup> datastore has changed</text>
|
||||
</description>
|
||||
</enum>
|
||||
</type>
|
||||
<default value="running"/>
|
||||
<description>
|
||||
<text>Indicates which configuration datastore has changed.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<list name="edit">
|
||||
<description>
|
||||
<text>An edit record SHOULD be present for each distinct
|
||||
edit operation that the server has detected on
|
||||
the target datastore. This list MAY be omitted
|
||||
if the detailed edit operations are not known.
|
||||
The server MAY report entries in this list for
|
||||
changes not made by a NETCONF session (e.g., CLI).</text>
|
||||
</description>
|
||||
<leaf name="target">
|
||||
<type name="instance-identifier"/>
|
||||
<description>
|
||||
<text>Topmost node associated with the configuration change.
|
||||
A server SHOULD set this object to the node within
|
||||
the datastore that is being altered. A server MAY
|
||||
set this object to one of the ancestors of the actual
|
||||
node that was changed, or omit this object, if the
|
||||
exact node is not known.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="operation">
|
||||
<type name="nc:edit-operation-type"/>
|
||||
<description>
|
||||
<text>Type of edit operation performed.
|
||||
A server MUST set this object to the NETCONF edit
|
||||
operation performed on the target datastore.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
</list>
|
||||
</notification>
|
||||
<notification name="netconf-capability-change">
|
||||
<description>
|
||||
<text>Generated when the NETCONF server detects that
|
||||
the server capabilities have changed.
|
||||
Indicates which capabilities have been added, deleted,
|
||||
and/or modified. The manner in which a server
|
||||
capability is changed is outside the scope of this
|
||||
document.</text>
|
||||
</description>
|
||||
<uses name="changed-by-parms"/>
|
||||
<leaf-list name="added-capability">
|
||||
<type name="inet:uri"/>
|
||||
<description>
|
||||
<text>List of capabilities that have just been added.</text>
|
||||
</description>
|
||||
</leaf-list>
|
||||
<leaf-list name="deleted-capability">
|
||||
<type name="inet:uri"/>
|
||||
<description>
|
||||
<text>List of capabilities that have just been deleted.</text>
|
||||
</description>
|
||||
</leaf-list>
|
||||
<leaf-list name="modified-capability">
|
||||
<type name="inet:uri"/>
|
||||
<description>
|
||||
<text>List of capabilities that have just been modified.
|
||||
A capability is considered to be modified if the
|
||||
base URI for the capability has not changed, but
|
||||
one or more of the parameters encoded at the end of
|
||||
the capability URI have changed.
|
||||
The new modified value of the complete URI is returned.</text>
|
||||
</description>
|
||||
</leaf-list>
|
||||
</notification>
|
||||
<notification name="netconf-session-start">
|
||||
<description>
|
||||
<text>Generated when a NETCONF server detects that a
|
||||
NETCONF session has started. A server MAY generate
|
||||
this event for non-NETCONF management sessions.
|
||||
Indicates the identity of the user that started
|
||||
the session.</text>
|
||||
</description>
|
||||
<uses name="common-session-parms"/>
|
||||
</notification>
|
||||
<notification name="netconf-session-end">
|
||||
<description>
|
||||
<text>Generated when a NETCONF server detects that a
|
||||
NETCONF session has terminated.
|
||||
A server MAY optionally generate this event for
|
||||
non-NETCONF management sessions. Indicates the
|
||||
identity of the user that owned the session,
|
||||
and why the session was terminated.</text>
|
||||
</description>
|
||||
<uses name="common-session-parms"/>
|
||||
<leaf name="killed-by">
|
||||
<when condition="../termination-reason = 'killed'"/>
|
||||
<type name="nc:session-id-type"/>
|
||||
<description>
|
||||
<text>The ID of the session that directly caused this session
|
||||
to be abnormally terminated. If this session was abnormally
|
||||
terminated by a non-NETCONF session unknown to the server,
|
||||
then this leaf will not be present.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="termination-reason">
|
||||
<type name="enumeration">
|
||||
<enum name="closed">
|
||||
<description>
|
||||
<text>The session was terminated by the client in normal
|
||||
fashion, e.g., by the NETCONF <close-session>
|
||||
protocol operation.</text>
|
||||
</description>
|
||||
</enum>
|
||||
<enum name="killed">
|
||||
<description>
|
||||
<text>The session was terminated in abnormal
|
||||
fashion, e.g., by the NETCONF <kill-session>
|
||||
protocol operation.</text>
|
||||
</description>
|
||||
</enum>
|
||||
<enum name="dropped">
|
||||
<description>
|
||||
<text>The session was terminated because the transport layer
|
||||
connection was unexpectedly closed.</text>
|
||||
</description>
|
||||
</enum>
|
||||
<enum name="timeout">
|
||||
<description>
|
||||
<text>The session was terminated because of inactivity,
|
||||
e.g., waiting for the <hello> message or <rpc>
|
||||
messages.</text>
|
||||
</description>
|
||||
</enum>
|
||||
<enum name="bad-hello">
|
||||
<description>
|
||||
<text>The client's <hello> message was invalid.</text>
|
||||
</description>
|
||||
</enum>
|
||||
<enum name="other">
|
||||
<description>
|
||||
<text>The session was terminated for some other reason.</text>
|
||||
</description>
|
||||
</enum>
|
||||
</type>
|
||||
<mandatory value="true"/>
|
||||
<description>
|
||||
<text>Reason the session was terminated.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
</notification>
|
||||
<notification name="netconf-confirmed-commit">
|
||||
<description>
|
||||
<text>Generated when a NETCONF server detects that a
|
||||
confirmed-commit event has occurred. Indicates the event
|
||||
and the current state of the confirmed-commit procedure
|
||||
in progress.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 6241, Section 8.4</text>
|
||||
</reference>
|
||||
<uses name="common-session-parms">
|
||||
<when condition="confirm-event != 'timeout'"/>
|
||||
</uses>
|
||||
<leaf name="confirm-event">
|
||||
<type name="enumeration">
|
||||
<enum name="start">
|
||||
<description>
|
||||
<text>The confirmed-commit procedure has started.</text>
|
||||
</description>
|
||||
</enum>
|
||||
<enum name="cancel">
|
||||
<description>
|
||||
<text>The confirmed-commit procedure has been canceled,
|
||||
e.g., due to the session being terminated, or an
|
||||
explicit <cancel-commit> operation.</text>
|
||||
</description>
|
||||
</enum>
|
||||
<enum name="timeout">
|
||||
<description>
|
||||
<text>The confirmed-commit procedure has been canceled
|
||||
due to the confirm-timeout interval expiring.
|
||||
The common session parameters will not be present
|
||||
in this sub-mode.</text>
|
||||
</description>
|
||||
</enum>
|
||||
<enum name="extend">
|
||||
<description>
|
||||
<text>The confirmed-commit timeout has been extended,
|
||||
e.g., by a new <confirmed-commit> operation.</text>
|
||||
</description>
|
||||
</enum>
|
||||
<enum name="complete">
|
||||
<description>
|
||||
<text>The confirmed-commit procedure has been completed.</text>
|
||||
</description>
|
||||
</enum>
|
||||
</type>
|
||||
<mandatory value="true"/>
|
||||
<description>
|
||||
<text>Indicates the event that caused the notification.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
<leaf name="timeout">
|
||||
<when condition="../confirm-event = 'start' or ../confirm-event = 'extend'"/>
|
||||
<type name="uint32"/>
|
||||
<units name="seconds"/>
|
||||
<description>
|
||||
<text>The configured timeout value if the event type
|
||||
is 'start' or 'extend'. This value represents
|
||||
the approximate number of seconds from the event
|
||||
time when the 'timeout' event might occur.</text>
|
||||
</description>
|
||||
</leaf>
|
||||
</notification>
|
||||
</module>
|
149
tests/data/modules/ietf-netconf-with-defaults.yin
Normal file
149
tests/data/modules/ietf-netconf-with-defaults.yin
Normal file
|
@ -0,0 +1,149 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module name="ietf-netconf-with-defaults"
|
||||
xmlns="urn:ietf:params:xml:ns:yang:yin:1"
|
||||
xmlns:ncwd="urn:ietf:params:xml:ns:yang:ietf-netconf-with-defaults"
|
||||
xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0">
|
||||
<namespace uri="urn:ietf:params:xml:ns:yang:ietf-netconf-with-defaults"/>
|
||||
<prefix value="ncwd"/>
|
||||
<import module="ietf-netconf">
|
||||
<prefix value="nc"/>
|
||||
</import>
|
||||
<organization>
|
||||
<text>IETF NETCONF (Network Configuration Protocol) Working Group</text>
|
||||
</organization>
|
||||
<contact>
|
||||
<text>WG Web: <http://tools.ietf.org/wg/netconf/>
|
||||
|
||||
WG List: <netconf@ietf.org>
|
||||
|
||||
WG Chair: Bert Wijnen
|
||||
<bertietf@bwijnen.net>
|
||||
|
||||
WG Chair: Mehmet Ersue
|
||||
<mehmet.ersue@nsn.com>
|
||||
|
||||
Editor: Andy Bierman
|
||||
<andy.bierman@brocade.com>
|
||||
|
||||
Editor: Balazs Lengyel
|
||||
<balazs.lengyel@ericsson.com></text>
|
||||
</contact>
|
||||
<description>
|
||||
<text>This module defines an extension to the NETCONF protocol
|
||||
that allows the NETCONF client to control how default
|
||||
values are handled by the server in particular NETCONF
|
||||
operations.
|
||||
|
||||
Copyright (c) 2011 IETF Trust and the persons identified as
|
||||
the document authors. All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or
|
||||
without modification, is permitted pursuant to, and subject
|
||||
to the license terms contained in, the Simplified BSD License
|
||||
set forth in Section 4.c of the IETF Trust's Legal Provisions
|
||||
Relating to IETF Documents
|
||||
(http://trustee.ietf.org/license-info).
|
||||
|
||||
This version of this YANG module is part of RFC 6243; see
|
||||
the RFC itself for full legal notices.</text>
|
||||
</description>
|
||||
<revision date="2011-06-01">
|
||||
<description>
|
||||
<text>Initial version.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 6243: With-defaults Capability for NETCONF</text>
|
||||
</reference>
|
||||
</revision>
|
||||
<typedef name="with-defaults-mode">
|
||||
<description>
|
||||
<text>Possible modes to report default data.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 6243; Section 3.</text>
|
||||
</reference>
|
||||
<type name="enumeration">
|
||||
<enum name="report-all">
|
||||
<description>
|
||||
<text>All default data is reported.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 6243; Section 3.1</text>
|
||||
</reference>
|
||||
</enum>
|
||||
<enum name="report-all-tagged">
|
||||
<description>
|
||||
<text>All default data is reported.
|
||||
Any nodes considered to be default data
|
||||
will contain a 'default' XML attribute,
|
||||
set to 'true' or '1'.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 6243; Section 3.4</text>
|
||||
</reference>
|
||||
</enum>
|
||||
<enum name="trim">
|
||||
<description>
|
||||
<text>Values are not reported if they contain the default.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 6243; Section 3.2</text>
|
||||
</reference>
|
||||
</enum>
|
||||
<enum name="explicit">
|
||||
<description>
|
||||
<text>Report values that contain the definition of
|
||||
explicitly set data.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 6243; Section 3.3</text>
|
||||
</reference>
|
||||
</enum>
|
||||
</type>
|
||||
</typedef>
|
||||
<grouping name="with-defaults-parameters">
|
||||
<description>
|
||||
<text>Contains the <with-defaults> parameter for control
|
||||
of defaults in NETCONF retrieval operations.</text>
|
||||
</description>
|
||||
<leaf name="with-defaults">
|
||||
<description>
|
||||
<text>The explicit defaults processing mode requested.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 6243; Section 4.5.1</text>
|
||||
</reference>
|
||||
<type name="with-defaults-mode"/>
|
||||
</leaf>
|
||||
</grouping>
|
||||
<augment target-node="/nc:get-config/nc:input">
|
||||
<description>
|
||||
<text>Adds the <with-defaults> parameter to the
|
||||
input of the NETCONF <get-config> operation.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 6243; Section 4.5.1</text>
|
||||
</reference>
|
||||
<uses name="with-defaults-parameters"/>
|
||||
</augment>
|
||||
<augment target-node="/nc:get/nc:input">
|
||||
<description>
|
||||
<text>Adds the <with-defaults> parameter to
|
||||
the input of the NETCONF <get> operation.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 6243; Section 4.5.1</text>
|
||||
</reference>
|
||||
<uses name="with-defaults-parameters"/>
|
||||
</augment>
|
||||
<augment target-node="/nc:copy-config/nc:input">
|
||||
<description>
|
||||
<text>Adds the <with-defaults> parameter to
|
||||
the input of the NETCONF <copy-config> operation.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 6243; Section 4.5.1</text>
|
||||
</reference>
|
||||
<uses name="with-defaults-parameters"/>
|
||||
</augment>
|
||||
</module>
|
1032
tests/data/modules/ietf-netconf.yin
Normal file
1032
tests/data/modules/ietf-netconf.yin
Normal file
File diff suppressed because it is too large
Load diff
16
tests/data/modules/module-a-dv.yang
Normal file
16
tests/data/modules/module-a-dv.yang
Normal file
|
@ -0,0 +1,16 @@
|
|||
module module-a-dv {
|
||||
|
||||
namespace "urn:jmu:params:xml:ns:yang:module-a-dv";
|
||||
prefix dv;
|
||||
|
||||
import module-a {
|
||||
prefix a;
|
||||
}
|
||||
|
||||
description
|
||||
"Contains some deviations to module-a";
|
||||
|
||||
deviation "/a:top/a:hidden" {
|
||||
deviate not-supported;
|
||||
}
|
||||
}
|
21
tests/data/modules/module-a-dv2.yang
Normal file
21
tests/data/modules/module-a-dv2.yang
Normal file
|
@ -0,0 +1,21 @@
|
|||
module module-a-dv2 {
|
||||
|
||||
namespace "urn:jmu:params:xml:ns:yang:module-a-dv2";
|
||||
prefix dv2;
|
||||
|
||||
import module-a {
|
||||
prefix a;
|
||||
}
|
||||
|
||||
description
|
||||
"Contains some deviations to module-a";
|
||||
|
||||
deviation "/a:top/a:type" {
|
||||
deviate add {
|
||||
default "admin";
|
||||
must "count(.) = 1";
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
23
tests/data/modules/module-a.yang
Normal file
23
tests/data/modules/module-a.yang
Normal file
|
@ -0,0 +1,23 @@
|
|||
module module-a {
|
||||
|
||||
namespace "urn:jmu:params:xml:ns:yang:module-a";
|
||||
prefix a;
|
||||
|
||||
description "This is a simple user module";
|
||||
|
||||
container top {
|
||||
|
||||
leaf name {
|
||||
type string;
|
||||
}
|
||||
|
||||
leaf type {
|
||||
type string;
|
||||
}
|
||||
|
||||
leaf hidden {
|
||||
type boolean;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
102
tests/data/modules/nc-notifications.yin
Normal file
102
tests/data/modules/nc-notifications.yin
Normal file
|
@ -0,0 +1,102 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module name="nc-notifications"
|
||||
xmlns="urn:ietf:params:xml:ns:yang:yin:1"
|
||||
xmlns:manageEvent="urn:ietf:params:xml:ns:netmod:notification"
|
||||
xmlns:yang="urn:ietf:params:xml:ns:yang:ietf-yang-types"
|
||||
xmlns:ncEvent="urn:ietf:params:xml:ns:netconf:notification:1.0">
|
||||
<namespace uri="urn:ietf:params:xml:ns:netmod:notification"/>
|
||||
<prefix value="manageEvent"/>
|
||||
<import module="ietf-yang-types">
|
||||
<prefix value="yang"/>
|
||||
</import>
|
||||
<import module="notifications">
|
||||
<prefix value="ncEvent"/>
|
||||
</import>
|
||||
<organization>
|
||||
<text>IETF NETCONF WG</text>
|
||||
</organization>
|
||||
<contact>
|
||||
<text>netconf@ietf.org</text>
|
||||
</contact>
|
||||
<description>
|
||||
<text>Conversion of the 'manageEvent' XSD in the NETCONF
|
||||
Notifications RFC.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 5277</text>
|
||||
</reference>
|
||||
<revision date="2008-07-14">
|
||||
<description>
|
||||
<text>RFC 5277 version.</text>
|
||||
</description>
|
||||
</revision>
|
||||
<container name="netconf">
|
||||
<description>
|
||||
<text>Top-level element in the notification namespace</text>
|
||||
</description>
|
||||
<config value="false"/>
|
||||
<container name="streams">
|
||||
<description>
|
||||
<text>The list of event streams supported by the system. When
|
||||
a query is issued, the returned set of streams is
|
||||
determined based on user privileges.</text>
|
||||
</description>
|
||||
<list name="stream">
|
||||
<description>
|
||||
<text>Stream name, description and other information.</text>
|
||||
</description>
|
||||
<key value="name"/>
|
||||
<min-elements value="1"/>
|
||||
<leaf name="name">
|
||||
<description>
|
||||
<text>The name of the event stream. If this is the default
|
||||
NETCONF stream, this must have the value 'NETCONF'.</text>
|
||||
</description>
|
||||
<type name="ncEvent:streamNameType"/>
|
||||
</leaf>
|
||||
<leaf name="description">
|
||||
<description>
|
||||
<text>A description of the event stream, including such
|
||||
information as the type of events that are sent over
|
||||
this stream.</text>
|
||||
</description>
|
||||
<type name="string"/>
|
||||
<mandatory value="true"/>
|
||||
</leaf>
|
||||
<leaf name="replaySupport">
|
||||
<description>
|
||||
<text>A description of the event stream, including such
|
||||
information as the type of events that are sent over
|
||||
this stream.</text>
|
||||
</description>
|
||||
<type name="boolean"/>
|
||||
<mandatory value="true"/>
|
||||
</leaf>
|
||||
<leaf name="replayLogCreationTime">
|
||||
<description>
|
||||
<text>The timestamp of the creation of the log used to support
|
||||
the replay function on this stream. Note that this might
|
||||
be earlier then the earliest available notification in
|
||||
the log. This object is updated if the log resets for
|
||||
some reason. This object MUST be present if replay is
|
||||
supported.</text>
|
||||
</description>
|
||||
<type name="yang:date-and-time"/>
|
||||
</leaf>
|
||||
</list>
|
||||
</container>
|
||||
</container>
|
||||
<notification name="replayComplete">
|
||||
<description>
|
||||
<text>This notification is sent to signal the end of a replay
|
||||
portion of a subscription.</text>
|
||||
</description>
|
||||
</notification>
|
||||
<notification name="notificationComplete">
|
||||
<description>
|
||||
<text>This notification is sent to signal the end of a notification
|
||||
subscription. It is sent in the case that stopTime was
|
||||
specified during the creation of the subscription..</text>
|
||||
</description>
|
||||
</notification>
|
||||
</module>
|
10
tests/data/modules/notif1.yang
Normal file
10
tests/data/modules/notif1.yang
Normal file
|
@ -0,0 +1,10 @@
|
|||
module notif1 {
|
||||
namespace "n1";
|
||||
prefix "n1";
|
||||
|
||||
notification n1 {
|
||||
leaf first {
|
||||
type string;
|
||||
}
|
||||
}
|
||||
}
|
96
tests/data/modules/notifications.yin
Normal file
96
tests/data/modules/notifications.yin
Normal file
|
@ -0,0 +1,96 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module name="notifications"
|
||||
xmlns="urn:ietf:params:xml:ns:yang:yin:1"
|
||||
xmlns:ncEvent="urn:ietf:params:xml:ns:netconf:notification:1.0"
|
||||
xmlns:yang="urn:ietf:params:xml:ns:yang:ietf-yang-types">
|
||||
<namespace uri="urn:ietf:params:xml:ns:netconf:notification:1.0"/>
|
||||
<prefix value="ncEvent"/>
|
||||
<import module="ietf-yang-types">
|
||||
<prefix value="yang"/>
|
||||
</import>
|
||||
<organization>
|
||||
<text>IETF NETCONF WG</text>
|
||||
</organization>
|
||||
<contact>
|
||||
<text>netconf@ops.ietf.org</text>
|
||||
</contact>
|
||||
<description>
|
||||
<text>Conversion of the 'ncEvent' XSD in the
|
||||
NETCONF Notifications RFC.</text>
|
||||
</description>
|
||||
<reference>
|
||||
<text>RFC 5277.</text>
|
||||
</reference>
|
||||
<revision date="2008-07-14">
|
||||
<description>
|
||||
<text>RFC 5277 version.</text>
|
||||
</description>
|
||||
</revision>
|
||||
<typedef name="streamNameType">
|
||||
<description>
|
||||
<text>The name of an event stream.</text>
|
||||
</description>
|
||||
<type name="string"/>
|
||||
</typedef>
|
||||
<rpc name="create-subscription">
|
||||
<description>
|
||||
<text>The command to create a notification subscription. It
|
||||
takes as argument the name of the notification stream
|
||||
and filter. Both of those options limit the content of
|
||||
the subscription. In addition, there are two time-related
|
||||
parameters, startTime and stopTime, which can be used to
|
||||
select the time interval of interest to the notification
|
||||
replay feature.</text>
|
||||
</description>
|
||||
<input>
|
||||
<leaf name="stream">
|
||||
<description>
|
||||
<text>An optional parameter that indicates which stream of events
|
||||
is of interest. If not present, then events in the default
|
||||
NETCONF stream will be sent.</text>
|
||||
</description>
|
||||
<type name="streamNameType"/>
|
||||
<default value="NETCONF"/>
|
||||
</leaf>
|
||||
<anyxml name="filter">
|
||||
<description>
|
||||
<text>An optional parameter that indicates which subset of all
|
||||
possible events is of interest. The format of this
|
||||
parameter is the same as that of the filter parameter
|
||||
in the NETCONF protocol operations. If not present,
|
||||
all events not precluded by other parameters will
|
||||
be sent.</text>
|
||||
</description>
|
||||
</anyxml>
|
||||
<leaf name="startTime">
|
||||
<description>
|
||||
<text>A parameter used to trigger the replay feature and
|
||||
indicates that the replay should start at the time
|
||||
specified. If start time is not present, this is not a
|
||||
replay subscription.</text>
|
||||
</description>
|
||||
<type name="yang:date-and-time"/>
|
||||
</leaf>
|
||||
<leaf name="stopTime">
|
||||
<description>
|
||||
<text>An optional parameter used with the optional replay
|
||||
feature to indicate the newest notifications of
|
||||
interest. If stop time is not present, the notifications
|
||||
will continue until the subscription is terminated.
|
||||
Must be used with startTime.</text>
|
||||
</description>
|
||||
<type name="yang:date-and-time"/>
|
||||
</leaf>
|
||||
</input>
|
||||
</rpc>
|
||||
<container name="notification">
|
||||
<description>
|
||||
<text>internal struct to start a notification</text>
|
||||
</description>
|
||||
<config value="false"/>
|
||||
<leaf name="eventTime">
|
||||
<mandatory value="true"/>
|
||||
<type name="yang:date-and-time"/>
|
||||
</leaf>
|
||||
</container>
|
||||
</module>
|
9
tests/data/nc10/rpc-lock
Normal file
9
tests/data/nc10/rpc-lock
Normal file
|
@ -0,0 +1,9 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<rpc xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="1">
|
||||
<lock>
|
||||
<target>
|
||||
<running/>
|
||||
</target>
|
||||
</lock>
|
||||
</rpc>
|
||||
]]>]]>
|
7
tests/data/nc11/rpc-lock
Normal file
7
tests/data/nc11/rpc-lock
Normal file
|
@ -0,0 +1,7 @@
|
|||
|
||||
#11
|
||||
<rpc xmlns=
|
||||
#103
|
||||
"urn:ietf:params:xml:ns:netconf:base:1.0" message-id="1"><lock><target><running/></target></lock></rpc>
|
||||
##
|
||||
|
26
tests/data/server.crt
Normal file
26
tests/data/server.crt
Normal file
|
@ -0,0 +1,26 @@
|
|||
-----BEGIN CERTIFICATE-----
|
||||
MIIETjCCAzYCFEO1ljvG2ET9vb1itRsNMb8xN0R3MA0GCSqGSIb3DQEBCwUAMGMx
|
||||
CzAJBgNVBAYTAkNaMRMwEQYDVQQIDApTb21lLVN0YXRlMQ0wCwYDVQQHDARCcm5v
|
||||
MQ8wDQYDVQQKDAZDRVNORVQxDDAKBgNVBAsMA1RNQzERMA8GA1UEAwwIc2VydmVy
|
||||
Y2EwHhcNMjEwOTAzMTExNjMyWhcNMzEwOTAxMTExNjMyWjBkMQswCQYDVQQGEwJD
|
||||
WjETMBEGA1UECAwKU29tZS1TdGF0ZTENMAsGA1UEBwwEQnJubzEPMA0GA1UECgwG
|
||||
Q0VTTkVUMQwwCgYDVQQLDANUTUMxEjAQBgNVBAMMCTEyNy4wLjAuMTCCAiIwDQYJ
|
||||
KoZIhvcNAQEBBQADggIPADCCAgoCggIBAOqI7Y3w5r8kD9WZCMAaa/e3ig7nm76a
|
||||
IJUR0Xb1bk6X/4FNVQKwEJsBodOYupZvE5FZdZ6DJSMSyQ3FrJWnlZ+isr7F9B4b
|
||||
ELV8Kj6sJGuVAr+mpcH/4rwL3DaXF9Y9Lf7iBgiOHUoip80Asn9BU4q80JI6w2VH
|
||||
d5ng4TUE67gmpRleIHzViKt3taBrsAJ9bS5bvaE6xOB8zKYGzRFOsDZrEqqcBsVI
|
||||
WC6EmjO29HS5qj/mXM0ktFGnNDxTZHoRkNgmCE/NH+fNKOFxraCwlFBpKemAky+G
|
||||
dgngRGiQAVowyAx/nSmCFAalKc+E4ddoFwD/oft6iOvvXqaXh6368wEQ7Hy48FDc
|
||||
UCbHtUEgK4wMrX9BSrRh6zkXO1tE4ghb0dM2qFDS0ypO3p04kUPa31mTgLuOH1Lz
|
||||
wmlwxOs113mlYKCgqOFR5YaN+nq1HI5RATPo5NvCMpG2RrQW+ooCr2GtbT0oHmJv
|
||||
8yaBVY0HJ69eLnIv37dfjWvoTiBKBBIisXAD5Nm9rwSjZUSFu1iyd7u2YrkBCUzZ
|
||||
uvt3BOPpX8GgQgagU6BPnac76FF6DMhRUXlBXdTuWsbuH14LdNIzGjkMZhNL/Tpk
|
||||
f6S/z1iH5VReGc+clTjWGg1XO5fr3mNKBGa7hDydIZRIMbgsy63DIY7n5dqhNkO3
|
||||
0CGmr/9TagVZAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAEjP2Zed4zY/nProMy67
|
||||
JyI3vV2fDYpYUkPD7ofSjFHjQc3ooXfBCF6Ho0dCdBTpof6kGIjfDmhcKoVcPqr8
|
||||
A/EA1pEGOB0RZkCjrwEnbAVdIb/5QP6nLtm7M5md3dEF+rttfBwisH6CV4XbXXZc
|
||||
t/cNP+MPK2sXevCK2w8Xbt9nHeI/MXZoUW3WNGFwlRNlmQxCIoI0hnge9Gyb0WcT
|
||||
ciHvhm8WtUQI1Ff3DLDgcQZQ1oOhci+ocBJVhC9l9lDCOpu93coyM7PD4CbVTFxf
|
||||
nPnOy81525W6ya0nmZOKafG20bdc+T1LqMXM+uR5hBHsg9K6UbREHEoP3pLYW7zg
|
||||
0Aw=
|
||||
-----END CERTIFICATE-----
|
51
tests/data/server.key
Normal file
51
tests/data/server.key
Normal file
|
@ -0,0 +1,51 @@
|
|||
-----BEGIN RSA PRIVATE KEY-----
|
||||
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
|
||||
-----END RSA PRIVATE KEY-----
|
27
tests/data/serverca.key
Normal file
27
tests/data/serverca.key
Normal file
|
@ -0,0 +1,27 @@
|
|||
-----BEGIN RSA PRIVATE KEY-----
|
||||
MIIEpgIBAAKCAQEAyMrKraqraFGklO2itRIEWxfuzWo1IwxZ22aJmeXDLeomt689
|
||||
3NXelMLaC3swQ+hu49JjiIY81DXvbVgmIgLm7cAz5tHTHuJbfdI4Q6gyic4aOpy2
|
||||
s3s1/vYz+1TvEUFCiPXEsJrH72he/z9nBxL8vY6Eg8U8EG8NvKp9zyCKA7vmNSgQ
|
||||
OtuyF18fesYHAnvQjNXO5q6diPXdHOr2bjTRUvARGbWlv4Rvf81RwUkRsWoF/0pg
|
||||
lV/TxnW2MoHnn3apxb/kmH92CQ+GWKxq5SkhvbkYePlA87kgKnDtXl4wEXIhYwM5
|
||||
1kafRhhlAKN+qYeV9teBqGpjsZRYesrh3mXHlQIDAQABAoIBAQC0eeI2usKaX1fJ
|
||||
LNckXW9g2WAhbicYu49ArydbFrOaX24xh+fYyLrph0IpM66sOw0A5SflnJKsQ1ZT
|
||||
N/n+dBFQ/YMpIsvaZKbLrto3pcTXLFNS/20QYdyksHMEotDG95twM0d5XYX74BoS
|
||||
3tAiAaT+VE0zi2Jzev4j6DJwq9ShiPclZFcpAbyVqi77ruJLID0j+lxLEOsTpN9h
|
||||
Y/36CMwfAVe8OwiBl8vOAjEf3ssNz0iesEIB/Rx0rmg0dNquuYvJmF7pJNdQNq7Q
|
||||
5fOM5Ww0iwqb8lzIU9fkMwFhljcxtc51nrr6mg8kKT1A0cDu4dJuYa6Od+IkW0nP
|
||||
ozE7JDo5AoGBAPgfEwtsr/w5OFDtwiO+9wRxug+M6zuczeYIvK/FtDSghnZv18MK
|
||||
HZJx6omApdgqF10ya5VuZg6VGBCO7DF20wORWriI7zPXIY0QBIw5zzEnMpw/wW6J
|
||||
GSQ3KBBgVJKiSsv0pmf7h+pt2Tz/leh4bIgV7gryYyy2x+M0S5qk30EjAoGBAM8q
|
||||
/PdTwpE8AKEr5LgQvSUpSXKl2tLewyK6XL7FMNIQxe8frlIeF+jgPsNFlWaVl+e6
|
||||
qDksEqlltn2rmBRYVsSWFytpOHyVAfFtoJw1Qpa7bx3cYqA+jgIw3Lrva3AdircW
|
||||
DG9sLjk4V3y5FJogXuNbeYj/exUq4CTzRwMoXIvnAoGBAOyHWvVaIA3WUkw7ywWe
|
||||
hwZSj+dBFAHZAiMXEyCQ3LAKkwQWrF1+qCAxvj5kSDTgMzOh3BMwkdO256DpTln9
|
||||
Bz1wdEZUK4uEurQpn9w5Q718u29eC7yerzvp5KRv4E+ErL7vMy8PBktBeoT+tN5O
|
||||
5k94cFs5I7e9aqG5+ZSrNTR3AoGBAIln7djtiUNjFNfRkSY0k/+t3rVYJEdw0OSb
|
||||
zyAJElSCI4Zy8OAubZVcBsTlxi4AUny0ZRdmkAojGGNKCNiVrxc8pal5ZKnc+yjy
|
||||
mXCCMuRe9VhM8G1wkCgL2Jt0aUI3leXRjfXpPs9c+0oSSAPiLI2IAphHO4/SnFBl
|
||||
u1fw0VFJAoGBAK+yZBxqo3nJqYhhPyvNUyEkDZJnuhcc7mQJsPd4AbgmeN/3izbI
|
||||
2Rvn1wzkqz5LoCvAWAg51gWJBO99XvuT/J0ob4w494NtUYJdSq8Bg7dkebhdaAXl
|
||||
lBXCI5kOmboHCaTsbJlXglxv7p6zkctU844p2Ki8XlkAbQTL+uQgZ6fE
|
||||
-----END RSA PRIVATE KEY-----
|
22
tests/data/serverca.pem
Normal file
22
tests/data/serverca.pem
Normal file
|
@ -0,0 +1,22 @@
|
|||
-----BEGIN CERTIFICATE-----
|
||||
MIIDnDCCAoSgAwIBAgIJAIjf7UNx4uabMA0GCSqGSIb3DQEBCwUAMGMxCzAJBgNV
|
||||
BAYTAkNaMRMwEQYDVQQIDApTb21lLVN0YXRlMQ0wCwYDVQQHDARCcm5vMQ8wDQYD
|
||||
VQQKDAZDRVNORVQxDDAKBgNVBAsMA1RNQzERMA8GA1UEAwwIc2VydmVyY2EwHhcN
|
||||
MTgxMTA1MDcyNjM5WhcNMjgxMTAyMDcyNjM5WjBjMQswCQYDVQQGEwJDWjETMBEG
|
||||
A1UECAwKU29tZS1TdGF0ZTENMAsGA1UEBwwEQnJubzEPMA0GA1UECgwGQ0VTTkVU
|
||||
MQwwCgYDVQQLDANUTUMxETAPBgNVBAMMCHNlcnZlcmNhMIIBIjANBgkqhkiG9w0B
|
||||
AQEFAAOCAQ8AMIIBCgKCAQEAyMrKraqraFGklO2itRIEWxfuzWo1IwxZ22aJmeXD
|
||||
Leomt6893NXelMLaC3swQ+hu49JjiIY81DXvbVgmIgLm7cAz5tHTHuJbfdI4Q6gy
|
||||
ic4aOpy2s3s1/vYz+1TvEUFCiPXEsJrH72he/z9nBxL8vY6Eg8U8EG8NvKp9zyCK
|
||||
A7vmNSgQOtuyF18fesYHAnvQjNXO5q6diPXdHOr2bjTRUvARGbWlv4Rvf81RwUkR
|
||||
sWoF/0pglV/TxnW2MoHnn3apxb/kmH92CQ+GWKxq5SkhvbkYePlA87kgKnDtXl4w
|
||||
EXIhYwM51kafRhhlAKN+qYeV9teBqGpjsZRYesrh3mXHlQIDAQABo1MwUTAdBgNV
|
||||
HQ4EFgQU60nJ4q3ItcfaOOBjJSqadAPiMg8wHwYDVR0jBBgwFoAU60nJ4q3Itcfa
|
||||
OOBjJSqadAPiMg8wDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEA
|
||||
xIqIQ5SCXnKslZfrXiAEbB5dglxVOSa8me5a/70uHK/27JZ6veeIgRqZ4VgPHnBC
|
||||
a3m6EHr+mnTjjqSUcGIUiKV3g2Dumw8paqZC+Qv+Ib/NKquS1lO2Ry1wHBtXzn5K
|
||||
KHHyM1bWMDaDszirw2+pp22VdRrPZNA9NWXheEDYOLyQekyL2CfidhxhaXvUZyWg
|
||||
alLyF2XRZ5/jAT+NjfWw39EmWPUGk13Jm83OaFc1VdrXNCiD0sGCQ+BTCllDinQv
|
||||
R08yzd4fzA3YXthvX1dBu1SvqQAGOS7gssRCyv9uWI6MXta25X91eY1ZMz1euJ04
|
||||
mB8EdyYiZc0kzrb9dv5d0g==
|
||||
-----END CERTIFICATE-----
|
Loading…
Add table
Add a link
Reference in a new issue