Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified opencpe-tree.pdf
Binary file not shown.
47 changes: 12 additions & 35 deletions opencpe-tree.txt
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
pyang ietf-system@2013-11-07.yang ietf-interfaces@2013-07-04.yang\
ietf-ip@2013-10-18.yang opencpe-system@2014-01-27.yang\
opencpe-firmware-mgmt@2014-01-27.yang\
--features ietf-system:authentication,local-users,timezone-location,\
crypt-hash-md5,crypt-hash-sha-256,crypt-hash-sha-512,ntp\
pyang ietf-system@2014-04-04.yang ietf-interfaces@2013-12-23.yang\
ietf-ip@2014-03-28.yang opencpe-system@2014-01-27.yang\
opencpe-firmware-mgmt@2014-02-06.yang\
--features ietf-system:authentication,local-users,timezone-name,ntp\
--features iana-crypt-hash:crypt-hash-md5,crypt-hash-sha-256,crypt-hash-sha-512\
--features opencpe-firmware-mgmt:firmware-slots,firmware-download-ftp,\
firmware-download-http,firmware-download-https,firmware-download-scp\
--features last-boot-status-report\
--deviation-module opencpe-deviations@2014-01-12.yang\
--deviation-module opencpe-deviations@2014-05-13.yang\
-f tree

module: ietf-system
Expand All @@ -16,8 +16,8 @@ module: ietf-system
| +--rw location? string
| +--rw clock
| | +--rw (timezone)?
| | +--:(timezone-location) {timezone-location}?
| | | +--rw timezone-location? ianatz:iana-timezone
| | +--:(timezone-name) {timezone-name}?
| | | +--rw timezone-name? timezone-name
| | +--:(timezone-utc-offset)
| | +--rw timezone-utc-offset? int16
| +--rw ntp! {ntp}?
Expand All @@ -43,7 +43,7 @@ module: ietf-system
| +--rw user-authentication-order* identityref
| +--rw user* [name] {local-users}?
| +--rw name string
| +--rw password? crypt-hash
| +--rw password? ianach:crypt-hash
| +--rw ssh-key* [name]
| +--rw name string
| +--rw algorithm string
Expand Down Expand Up @@ -174,23 +174,10 @@ module: opencpe-firmware-mgmt
rpcs:
+---x firmware-download
| +--ro input
| | +--ro (transport)?
| | | +--:(ftp) {firmware-download-ftp}?
| | | | +--ro ftp!
| | | | +--ro address inet:uri
| | | +--:(http) {firmware-download-http}?
| | | | +--ro http!
| | | | +--ro address inet:uri
| | | +--:(https) {firmware-download-https}?
| | | | +--ro https!
| | | | +--ro address inet:uri
| | | +--:(scp) {firmware-download-scp}?
| | | +--ro scp!
| | | +--ro address inet:uri
| | +--ro address inet:uri
| | +--ro (credentials)?
| | | +--:(user-pass)
| | | | +--ro user-pass!
| | | | +--ro username string
| | | +--:(password)
| | | | +--ro password!
| | | | +--ro password string
| | | +--:(certificate)
| | | | +--ro certificate!
Expand All @@ -208,16 +195,6 @@ rpcs:
+---x firmware-commit
| +--ro input
| +--ro job-id int32
+---x get-job-status
| +--ro input
| | +--ro job-id int32
| +--ro output
| +--ro job-id int32
| +--ro install-target leafref {firmware-slots}?
| +--ro status
| +--ro status enumeration
| +--ro status-msg? string
| +--ro progress percent
+---x set-bootorder {firmware-slots}?
+--ro input
+--ro bootorder* leafref
124 changes: 124 additions & 0 deletions specs/iana-crypt-hash@2014-04-04.yang
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
module iana-crypt-hash {
namespace "urn:ietf:params:xml:ns:yang:iana-crypt-hash";
prefix ianach;

organization "IANA";
contact
" Internet Assigned Numbers Authority

Postal: ICANN
4676 Admiralty Way, Suite 330
Marina del Rey, CA 90292

Tel: +1 310 823 9358
E-Mail: iana&iana.org";
description
"This YANG module defines a typedef for storing passwords
using a hash function, and features to indicate which hash
functions are supported by an implementation.

The latest revision of this YANG module can be obtained from
the IANA web site.

Requests for new values should be made to IANA via
email (iana&iana.org).

Copyright (c) 2014 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).

The initial version of this YANG module is part of RFC XXXX;
see the RFC itself for full legal notices.";
// RFC Ed.: replace XXXX with actual RFC number and remove this
// note.

// RFC Ed.: update the date below with the date of RFC publication
// and remove this note.
revision 2014-04-04 {
description
"Initial revision.";
reference
"RFC XXXX: A YANG Data Model for System Management";
}

typedef crypt-hash {
type string {
pattern
'$0$.*'
+ '|$1$[a-zA-Z0-9./]{1,8}$[a-zA-Z0-9./]{22}'
+ '|$5$(rounds=\d+$)?[a-zA-Z0-9./]{1,16}$[a-zA-Z0-9./]{43}'
+ '|$6$(rounds=\d+$)?[a-zA-Z0-9./]{1,16}$[a-zA-Z0-9./]{86}';
}
description
"The crypt-hash type is used to store passwords using
a hash function. The algorithms for applying the hash
function and encoding the result are implemented in
various UNIX systems as the function crypt(3).

A value of this type matches one of the forms:

$0$<clear text password>
$<id>$<salt>$<password hash>
$<id>$<parameter>$<salt>$<password hash>

The '$0$' prefix signals that the value is clear text. When
such a value is received by the server, a hash value is
calculated, and the string '$<id>$<salt>$' or
$<id>$<parameter>$<salt>$ is prepended to the result. This
value is stored in the configuration data store.

If a value starting with '$<id>$', where <id> is not '0', is
received, the server knows that the value already represents a
hashed value, and stores it as is in the data store.

When a server needs to verify a password given by a user, it
finds the stored password hash string for that user, extracts
the salt, and calculates the hash with the salt and given
password as input. If the calculated hash value is the same
as the stored value, the password given by the client is
accepted.

This type defines the following hash functions:

id | hash function | feature
---+---------------+-------------------
1 | MD5 | crypt-hash-md5
5 | SHA-256 | crypt-hash-sha-256
6 | SHA-512 | crypt-hash-sha-512

The server indicates support for the different hash functions
by advertising the corresponding feature.";
reference
"IEEE Std 1003.1-2008 - crypt() function
RFC 1321: The MD5 Message-Digest Algorithm
FIPS.180-3.2008: Secure Hash Standard";
}

feature crypt-hash-md5 {
description
"Indicates that the device supports the MD5
hash function in 'crypt-hash' values";
reference "RFC 1321: The MD5 Message-Digest Algorithm";
}

feature crypt-hash-sha-256 {
description
"Indicates that the device supports the SHA-256
hash function in 'crypt-hash' values";
reference "FIPS.180-3.2008: Secure Hash Standard";
}

feature crypt-hash-sha-512 {
description
"Indicates that the device supports the SHA-512
hash function in 'crypt-hash' values";
reference "FIPS.180-3.2008: Secure Hash Standard";
}

}
15 changes: 9 additions & 6 deletions specs/iana-if-type.yang
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ module iana-if-type {
Requests for new values should be made to IANA via
email (iana&iana.org).

Copyright (c) 2011 IETF Trust and the persons identified as
Copyright (c) 2013 IETF Trust and the persons identified as
authors of the code. All rights reserved.

Redistribution and use in source and binary forms, with or
Expand All @@ -39,8 +39,8 @@ module iana-if-type {
Relating to IETF Documents
(http://trustee.ietf.org/license-info).

This version of this YANG module is part of RFC XXXX; see
the RFC itself for full legal notices.";
The initial version of this YANG module is part of RFC XXXX;
see the RFC itself for full legal notices.";
// RFC Ed.: replace XXXX with actual RFC number and remove this
// note.
reference
Expand All @@ -49,7 +49,7 @@ module iana-if-type {

// RFC Ed.: update the date below with the date of RFC publication
// and remove this note.
revision 2013-11-07 {
revision 2014-01-15 {
description
"Initial revision.";
reference
Expand Down Expand Up @@ -160,10 +160,14 @@ module iana-if-type {
identity basicISDN {
base iana-interface-type;
description
"see also RFC2127";
"no longer used.
see also RFC2127";
}
identity primaryISDN {
base iana-interface-type;
description
"no longer used.
see also RFC2127";
}
identity propPointToPointSerial {
base iana-interface-type;
Expand Down Expand Up @@ -1508,4 +1512,3 @@ module iana-if-type {
}

}

Loading