blob: df1802401191f8dccf99befc19888dbd602165cf [file] [log] [blame]
Scott Bakerc9d3d842021-09-17 11:32:53 -07001// SPDX-FileCopyrightText: 2021 Open Networking Foundation
2//
3// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
4
5module apn-profile {
6 namespace "http://opennetworking.org/aether/apn-profile";
7 prefix pro;
8
9 import ietf-inet-types { prefix inet; }
10
11 organization "Open Networking Foundation.";
12 contact "Scott Baker";
13 description "To generate JSON from this use command
14 pyang -f jtoxx test1.yang | python3 -m json.tool > test1.json
15 Copied from YangUIComponents project";
16
17 revision "2020-10-22" {
18 description "An Aether APN Profile";
19 reference "RFC 6087";
20 }
21
22 // TODO: Think more on whether this should be a UUID or
23 // simply a unique name. If it's a UUID, could fix the
24 // string length.
25 typedef apn-profile-id {
26 type string {
27 length 1..32;
28 }
29 }
30
31 container apn-profile {
32 description "The top level container";
33
34 list apn-profile {
35 key "id";
36 description
37 "List of apn profiles";
38
39 leaf id {
40 type apn-profile-id;
41 description "ID for this apn profile.";
42 }
43
44 leaf display-name {
45 type string {
46 length 1..80;
47 }
48 description "display name to use in GUI or CLI";
49 }
50
51 leaf apn-name {
52 type string {
53 length 1..32;
54 }
55 description "apn name";
56 }
57
58 leaf dns-primary {
59 type inet:ip-address;
60 description "primary dns server name";
61 }
62
63 leaf dns-secondary {
64 type inet:ip-address;
65 description "secondary dns server name";
66 }
67
68 leaf mtu {
69 type uint32 {
70 range 68..65535;
71 }
72 units bytes;
73 default 1460;
74 description "maximum transmission unit";
75 }
76
77 leaf gx-enabled {
78 type boolean;
79 default false;
80 description "enable gx interface";
81 }
82
83 leaf description {
84 type string {
85 length 1..100;
86 }
87 description "description of this profile";
88 }
89 }
90 }
91}