adding command-line and certificate functionalities
[aaa.git] / aaa-cert / src / main / yang / aaa-cert-rpc.yang
1 /*
2 Copyright (c) 2015 Inocybe Technology All rights reserved.
3
4 This program and the accompanying materials are made available under the
5 terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 and is available at http://www.eclipse.org/legal/epl-v10.html INTERNAL
7 */
8
9 module aaa-cert-rpc {
10     yang-version 1;
11     namespace "urn:opendaylight:yang:aaa:cert:rpc";
12     prefix "aaa-cert-rpc";
13
14     description
15         "defination of node certificate grouping and Rpc calls of certificate manipulation";
16
17     contact
18         "melserngawy@inocybe.com";
19
20     revision "2015-12-15" {
21         description
22             "Initial revision.";
23     }
24
25     grouping node-certificate {
26         leaf alias {
27             description "ovs node certificate alias";
28             type string;
29         }
30         leaf certificate {
31             description "ovs node certificate";
32             type string;
33         }
34     }
35
36     rpc getODLCertificate {
37         description
38             "Get the ctl.jks keystore certificate";
39         output {
40            leaf odl-cert {
41                type string;
42            }
43         }
44     }
45
46     rpc getODLCertificateReq {
47         description
48             "Generate a certificate request from the ctl.jks keystore to be signed by a CA";
49         output {
50            leaf odl-cert-req {
51                type string;
52            }
53         }
54     }
55
56     rpc setODLCertifcate {
57         description
58             "The certifcate should be generated based on
59             a certifcate request generated from the ctl.jks
60             keystore otherwise the certifcated will not be added to ctl keystore";
61         input {
62            leaf odl-cert {
63                type string;
64            }
65         }
66     }
67
68     rpc setNodeCertifcate {
69         description
70             "Certifcate of the ovs node that will communicate with opendaylight through TLS connection";
71         input {
72            leaf node-alias {
73                type string;
74            }
75            leaf node-cert {
76                type string;
77            }
78         }
79     }
80
81     rpc getNodeCertifcate {
82         description
83             "Get the ovs node certificate based on node alias";
84         input {
85            leaf node-alias {
86                type string;
87            }
88         }
89         output {
90             leaf node-cert {
91                 type string;
92             }
93         }
94     }
95 }