Adding ONOS Segment Routing CLI files to new repo
diff --git a/cli/desc/version200/tacacs.py b/cli/desc/version200/tacacs.py
new file mode 100755
index 0000000..31efcf2
--- /dev/null
+++ b/cli/desc/version200/tacacs.py
@@ -0,0 +1,391 @@
+#
+# Copyright (c) 2013 Big Switch Networks, Inc.
+#
+# Licensed under the Eclipse Public License, Version 1.0 (the
+# "License"); you may not use this file except in compliance with the
+# License. You may obtain a copy of the License at
+#
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+# implied. See the License for the specific language governing
+# permissions and limitations under the License.
+#
+"""
+TACACS_SERVER_HOST_COMMAND_DESCRIPTION = {
+ 'name' : 'tacacs',
+ 'mode' : 'config*',
+ 'short-help' : 'TACACS timeout, ip server address',
+ 'doc' : 'tacacs|tacacs',
+ 'doc-example' : 'tacacs|tacacs-example',
+ 'command-type' : 'config-object',
+ 'obj-type' : 'tacacs-plus-host',
+ 'parent-field' : None,
+ 'args' : (
+ 'server',
+ {
+ 'choices' : (
+ (
+ {
+ 'token' : 'timeout',
+ 'data' : {
+ 'id' : 'tacacs',
+ 'timeout' : 0
+ },
+ 'obj-type' : 'tacacs-plus-config',
+ 'no-action' : 'write-object',
+ 'short-help' : 'configure timeout',
+ 'doc' : 'tacacs|tacacs-timeout',
+ },
+ {
+ 'field' : 'timeout',
+ 'type' : 'integer',
+ 'data' : {
+ 'id' : 'tacacs'
+ },
+ 'obj-type' : 'tacacs-plus-config',
+ 'action' : 'write-object',
+ 'optional-for-no' : True,
+ },
+ ),
+ (
+ {
+ 'token' : 'key',
+ 'data' : {
+ 'id' : 'tacacs',
+ 'key' : '',
+ },
+ 'no-action' : 'write-object',
+ 'obj-type' : 'tacacs-plus-config',
+ 'short-help' : 'set shared TACACS server key',
+ 'doc' : 'tacacs|tacacs-key',
+ },
+ {
+ 'field' : 'key',
+ 'type' : 'string',
+ 'data' : { 'id' : 'tacacs' },
+ 'obj-type' : 'tacacs-plus-config',
+ 'action' : 'write-object',
+ 'optional-for-no' : True,
+ },
+ ),
+ (
+ {
+ 'field' : 'ip',
+ 'tag' : 'host',
+ 'type' : 'ip-address-not-mask',
+ 'completion' : 'complete-object-field',
+ 'short-help' : 'set specific TACACS host properties',
+ 'doc' : 'tacacs|tacacs-host',
+ },
+ {
+ 'optional' : True,
+ 'optional-for-no' : True,
+ 'args' : (
+ {
+ 'token' : 'key',
+ 'no-action' : 'reset-fields-explicit',
+ 'data' : { 'key' : '' },
+ 'obj-type' : 'tacacs-plus-host',
+ 'short-help' : 'set shared TACACS server key',
+ 'doc' : 'tacacs|tacacs-host-key',
+ },
+ {
+ 'optional-for-no' : True,
+ 'args' : {
+ 'field' : 'key',
+ 'type' : 'string',
+ 'obj-type' : 'tacacs-plus-host',
+ },
+ }
+ ),
+ },
+ ),
+ ),
+ },
+ )
+}
+
+TACACS_AAA_AUTHORIZATION_EXEC_COMMAND_DESCRIPTION = {
+ 'name' : 'aaa',
+ 'mode' : 'config*',
+ 'short-help' : 'Configure authorization parameters',
+ 'command-type' : 'config',
+ 'doc' : 'aaa|aaa-authorization',
+ 'doc-example' : 'aaa|aaa-authorization-example',
+ 'obj-type' : 'tacacs-plus-config',
+ 'no-action' : 'reset-fields-explicit',
+ 'fields' : [ 'tacacs-plus-authz', 'local-authz' ],
+ 'args' : (
+ 'authorization',
+ {
+ 'token' : 'exec',
+ 'short-help' : 'Configure authorization for starting a shell',
+ 'doc' : 'aaa|aaa-authorization-exec',
+ },
+ {
+ 'token' : 'default',
+ 'short-help' : 'Configure authorization for the default channel',
+ 'doc' : 'aaa|aaa-authorization-exec-use-default',
+ },
+ {
+ 'optional-for-no' : True,
+ 'choices' : (
+ {
+ 'token' : 'local',
+ 'short-help' : 'Use local database for authorization',
+ 'doc' : 'aaa|aaa-authorization-exec-use-local',
+ 'action' : {
+ 'proc' : 'write-object',
+ 'data' : {
+ 'id' : 'tacacs',
+ 'local-authz' : True,
+ 'tacacs-plus-authz' : False,
+ },
+ },
+ },
+ (
+ {
+ 'token' : 'group',
+ 'short-help' : 'Use a server-group',
+ },
+ {
+ 'token' : 'tacacs+',
+ 'short-help' : 'Use list of all defined TACACS+ hosts',
+ 'doc' : 'aaa|aaa-authorization-exec-use-tacacs',
+ 'action' : {
+ 'proc' : 'write-object',
+ 'data' : {
+ 'id' : 'tacacs',
+ 'local-authz' : False,
+ 'tacacs-plus-authz' : True,
+ },
+ },
+ },
+ {
+ 'token' : 'local',
+ 'short-help' : 'Use local database for authorization',
+ 'doc' : 'aaa|aaa-authorization-exec-use-local',
+ 'optional' : True,
+ 'action' : {
+ 'proc' : 'write-object',
+ 'data' : {
+ 'id' : 'tacacs',
+ 'local-authz' : True,
+ 'tacacs-plus-authz' : True,
+ },
+ },
+ },
+ ),
+ ),
+ },
+ ),
+}
+
+TACACS_AAA_AUTHENTICATION_LOGIN_COMMAND_DESCRIPTION = {
+ 'name' : 'aaa',
+ 'mode' : 'config*',
+ 'short-help' : 'Configure authentication parameters',
+ 'doc' : 'aaa|aaa-authentication',
+ 'doc-example' : 'aaa|aaa-authentication-example',
+ 'command-type' : 'config',
+ 'no-action' : 'reset-fields-explicit',
+ 'obj-type' : 'tacacs-plus-config',
+ 'fields' : [ 'tacacs-plus-authn', 'local-authn' ],
+ 'args' : (
+ 'authentication',
+ {
+ 'token' : 'login',
+ 'short-help' : 'Configure authentication for starting a shell',
+ 'doc' : 'aaa|aaa-authentication-login',
+ },
+ {
+ 'token' : 'default',
+ 'short-help' : 'Configure authentication via the default channel',
+ 'doc' : 'aaa|aaa-authentication-login-use-default',
+ },
+ {
+ 'optional-for-no' : True,
+ 'choices' : (
+ (
+ {
+ 'token' : 'local',
+ 'short-help' : 'Use local database for authentication',
+ 'doc' : 'aaa|aaa-authentication-login-use-local',
+ 'action' : {
+ 'proc' : 'write-object',
+ 'data' : {
+ 'id' : 'tacacs',
+ 'local-authn' : True,
+ 'tacacs-plus-authn' : False,
+ },
+ },
+ },
+ ),
+ (
+ 'group',
+ {
+ 'token' : 'tacacs+',
+ 'short-help' : 'Use list of all defined TACACS+ hosts',
+ 'doc' : 'aaa|aaa-authentication-login-use-tacacs',
+ 'action' : {
+ 'proc' : 'write-object',
+ 'data' : {
+ 'id' : 'tacacs',
+ 'local-authn' : False,
+ 'tacacs-plus-authn' : True,
+ },
+ },
+ },
+ {
+ 'token' : 'local',
+ 'optional' : True,
+ 'short-help' : 'Use local database for authentication',
+ 'doc' : 'aaa|aaa-authentication-login-use-local',
+ 'action' : {
+ 'proc' : 'write-object',
+ 'data' : {
+ 'id' : 'tacacs',
+ 'local-authn' : True,
+ 'tacacs-plus-authn' : True,
+ },
+ },
+ },
+ ),
+ ),
+ },
+ ),
+}
+
+TACACS_AAA_ACCOUNTING_EXEC_COMMAND_DESCRIPTION = {
+ 'name' : 'aaa',
+ 'mode' : 'config*',
+ 'short-help' : 'Configure accounting parameters',
+ 'doc' : 'aaa|aaa-accounting',
+ 'doc-example' : 'aaa|aaa-accounting-example',
+ 'all-help' : 'Authentication, Authorization, and Accounting',
+ 'command-type' : 'config',
+ 'obj-type' : 'tacacs-plus-config',
+ 'no-action' : 'reset-fields-explicit',
+ 'fields' : [ 'tacacs-plus-acct' ],
+ 'args' : (
+ 'accounting',
+ {
+ 'token' : 'exec',
+ 'short-help' : 'Configure accounting for starting a shell',
+ 'doc' : 'aaa|aaa-accounting-exec',
+ },
+ {
+ 'token' : 'default',
+ 'short-help' : 'Configure accounting for the default channel',
+ 'doc' : 'aaa|aaa-authorization-exec-use-default',
+ },
+ {
+ 'optional-for-no' : True,
+ 'choices' : (
+ (
+ {
+ 'token' : 'none',
+ 'short-help' : 'No accounting',
+ 'doc' : 'aaa|aaa-accounting-exec-use-none',
+ 'action' : {
+ 'proc' : 'write-object',
+ 'data' : {
+ 'id' : 'tacacs',
+ 'tacacs-plus-acct' : False,
+ },
+ },
+ },
+ ),
+ (
+ {
+ 'token' : 'start-stop',
+ 'short-help' : 'Record start and stop',
+ 'doc' : 'aaa|aaa-accounting-exec-use-start-stop',
+ },
+ {
+ 'token' : 'group',
+ 'short-help' : 'Use a server-group',
+ 'doc' : 'aaa|aaa-accounting-exec-use-server-group',
+ },
+ {
+ 'token' : 'tacacs+',
+ 'short-help' : 'Use list of all defined TACACS+ hosts',
+ 'doc' : 'aaa|aaa-accounting-exec-use-tacacs',
+ 'action' : {
+ 'proc' : 'write-object',
+ 'data' : {
+ 'id' : 'tacacs',
+ 'tacacs-plus-acct' : True,
+ },
+ },
+ },
+ ),
+ ),
+ },
+ ),
+ }
+
+SHOW_TACACS_COMMAND_DESCRIPTION = {
+ 'name' : 'show',
+ 'mode' : 'login',
+ 'short-help' : 'Show TACACS operational state',
+ 'doc' : 'tacacs|show',
+ 'doc-example' : 'tacacs|show-example',
+ 'command-type' : 'display-table',
+ 'obj-type' : 'tacacs-plus-config',
+ 'parent-field' : None,
+ 'args' : (
+ 'tacacs',
+ ),
+ 'action' : (
+ {
+ 'proc' : 'display-table',
+ },
+ {
+ 'proc' : 'display-table',
+ 'title' : '\nTACACS Server Hosts\n',
+ 'sort' : 'timestamp',
+ 'obj-type' : 'tacacs-plus-host',
+ },
+ ),
+}
+
+SHOW_TACACS_PLUS_CONFIG_FORMAT = {
+ 'tacacs-plus-config' : {
+ 'field-orderings' : {
+ 'default' : [ 'Idx',
+ 'tacacs-plus-authn',
+ 'tacacs-plus-authz',
+ 'tacacs-plus-acct',
+ 'local-authn',
+ 'local-authz',
+ 'timeout',
+ 'key',
+ ],
+ },
+ },
+}
+
+SHOW_TACACS_PLUS_HOST_FORMAT = {
+ 'tacacs-plus-host' : {
+ 'field-orderings' : {
+ 'default' : [ 'Idx', 'ip', 'key',
+ ],
+ },
+ 'fields' : {
+ 'Idx' : {
+ 'verbose-name' : '#',
+ },
+ 'ip' : {
+ 'verbose-name' : 'Ip Address',
+ },
+ 'key' : {
+ },
+
+ }
+ }
+}
+"""
\ No newline at end of file