Junos RPC YANG module for request command(s)
Version: 2019-01-01
module junos-rpc-request { yang-version 1; namespace "http://yang.juniper.net/junos/rpc/request"; prefix request; import junos-common-types { prefix jt; revision-date "2019-01-01"; } organization "Juniper Networks, Inc."; contact "yang-support@juniper.net"; description "Junos RPC YANG module for request command(s)"; revision "2019-01-01" { description "Junos: 21.3R1.9"; } rpc request-commit-server-cleanup { description "Commit queue clean up operations"; input { choice queue-selector { leaf id { type union { type uint32; type string { pattern "<.*>|$.*"; } } description "Clean up queue id"; } leaf job-status { type enumeration { enum "error" { value 0; description "Remove jobs that had errors"; } enum "pending" { value 1; description "Remove jobs that are pending"; } enum "success" { value 2; description "Remove jobs that succeeded"; } } description "Clean up all entries with specified status"; } } // choice queue-selector } output { choice output_c { leaf output { type string; } anyxml commit-server-delete-results; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-commit-server-cleanup rpc request-commit-server-pause { description "Pause the commit server"; output { choice output_c { leaf output { type string; } anyxml commit-server-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-commit-server-pause rpc request-commit-server-start { description "Start the commit server"; output { choice output_c { leaf output { type string; } anyxml commit-server-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-commit-server-start rpc request-delta-exporter-initialize { description "Initialize delta exporter database"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-delta-exporter-initialize rpc request-yang-add { description "Add YANG module(s) and action/translation script(s)"; input { leaf package { type string; mandatory true; description "Unique ID for future op - delete/update"; } leaf-list module { type jt:filename; ordered-by user; description "YANG module(s) path"; } leaf-list action-script { type jt:filename; ordered-by user; description "Action script path"; } leaf-list translation-script { type jt:filename; ordered-by user; description "Translation script path"; } leaf-list deviation-module { type jt:filename; ordered-by user; description "Deviation module path"; } leaf proxy-xml { type empty; description "XML proxy YANG module(s)"; } leaf snmp { type empty; description "Add custom MIB in YANG format"; } choice re-choice { leaf re0 { type empty; description "Add/Delete YANG module(s) on RE0"; } leaf re1 { type empty; description "Add/Delete YANG module(s) on RE1"; } leaf other-routing-engine { type empty; description "Add/Delete YANG module(s) on other RE"; } } // choice re-choice } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-yang-add rpc request-yang-delete { description "Remove YANG package"; input { leaf package { type string; mandatory true; description "ID to be removed"; } choice re-choice { leaf re0 { type empty; description "Add/Delete YANG module(s) on RE0"; } leaf re1 { type empty; description "Add/Delete YANG module(s) on RE1"; } leaf other-routing-engine { type empty; description "Add/Delete YANG module(s) on other RE"; } } // choice re-choice } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-yang-delete rpc request-yang-enable { description "Enable YANG package to JUNOS translation"; input { leaf package { type string; mandatory true; description "ID"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-yang-enable rpc request-yang-disable { description "Disable YANG package to JUNOS translation"; input { leaf package { type string; mandatory true; description "ID"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-yang-disable rpc request-yang-validate { description "Validate YANG module(s) and action/translation script(s)"; input { leaf-list module { type jt:filename; ordered-by user; description "Name of the YANG module to be validated"; } leaf-list translation-script { type jt:filename; ordered-by user; description "Name of the translation-script to be validated"; } leaf-list action-script { type jt:filename; ordered-by user; description "Name of the action-script to be validated"; } leaf proxy-xml { type empty; description "XML proxy YANG module"; } leaf snmp { type empty; description "Validate custom MIB in YANG format"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-yang-validate rpc request-yang-update { description "Update YANG module(s) and action/translation script(s)"; input { leaf package { type string; mandatory true; description "ID"; } leaf-list module { type jt:filename; ordered-by user; description "YANG module(s) path"; } leaf-list translation-script { type jt:filename; ordered-by user; description "Translation script path"; } leaf-list deviation-module { type jt:filename; ordered-by user; description "Deviation module path"; } leaf-list action-script { type jt:filename; ordered-by user; description "Action script path"; } leaf proxy-xml { type empty; description "XML proxy YANG module(s)"; } leaf snmp { type empty; description "Update custom MIBs in YANG format"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-yang-update rpc request-logout-user { description "Forcibly end user's CLI login session"; input { uses command-forwarding; leaf pid { type union { type uint32; type string { pattern "<.*>|$.*"; } } description "Management process ID for user"; } leaf all { type empty; description "Logout all sessions owned by user"; } leaf user { type string; description "Name of user"; } leaf terminal { type string; description "Terminal user is logged in to"; } } output { choice output_c { leaf output { type string; } anyxml logout-user; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-logout-user rpc reload-event-scripts { description "Reload all existing event-scripts"; output { choice output_c { leaf output { type string; } anyxml event-scripts-reload; anyxml multi-routing-engine-results; } // choice output_c } } // rpc reload-event-scripts rpc request-scripts-package-add { description "Add or upgrade jais package"; input { leaf no-copy { type empty; description "Don't save copy of jais package file"; } leaf unlink { type empty; description "Remove the package after successful installation"; } leaf package-name { type jt:filename; mandatory true; description "URL or pathname of package"; } choice chassis { leaf scc { type empty; description "Install package on SCC"; } leaf lcc { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Install package on an LCC"; } leaf sfc { type empty; description "Install package on SFC"; } leaf member { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Install package on member"; } leaf dont-forward { type empty; } leaf master { type empty; description "Run command on master"; } leaf backup { type empty; description "Run command on backup"; } } // choice chassis } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-scripts-package-add rpc request-scripts-package-delete { description "Remove jais package"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-scripts-package-delete rpc request-scripts-package-rollback { description "Attempt to roll back to last jais package"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-scripts-package-rollback rpc request-script-refresh-from { description "Refresh script from a given base URL"; input { leaf type { type enumeration { enum "commit" { value 0; description "Refresh commit script from a given base URL"; } enum "op" { value 1; description "Refresh op script from a given base URL"; } enum "event" { value 2; description "Refresh event script from a given base URL"; } enum "snmp" { value 3; description "Refresh snmp script from a given base URL"; } enum "extension-service" { value 4; description "Refresh extension-services app from a given base URL"; } } mandatory true; } leaf file { type string; description "Local script file name"; } leaf url { type string; description "URL from where the content will be retrieved"; } leaf routing-instance { type string; description "Specify the routing-instance name"; } leaf cert-file { type string; description "Specify the certificate file name"; } leaf sync { type empty; description "Refresh script and synchronize with other RE"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-script-refresh-from rpc request-scripts-synchronize { description "Push the scripts to other RE"; input { leaf type { type enumeration { enum "commit" { value 0; description "Push commit script to other RE"; } enum "op" { value 1; description "Push op script to other RE"; } enum "event" { value 2; description "Push event script to other RE"; } enum "snmp" { value 3; description "Push snmp script to other RE"; } enum "jet" { value 4; description "Push jet app to other RE"; } enum "lib" { value 5; description "Push lib script to other RE"; } enum "all" { value 6; description "Push all the scripts to other RE"; } } mandatory true; } leaf file { type string; description "Local script file name"; } leaf newer-than { type jt:time; description "Push script to other RE if newer than this time (YYYY-MM-DD.HH:MM:SS)"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-scripts-synchronize rpc resize-configuraion-database { description "Resize the configuration database"; input { uses command-forwarding; leaf force { type empty; description "Resize the configuration database even if modified"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc resize-configuraion-database rpc request-save-rescue-configuration { description "Save committed configuration as rescue configuration"; output { choice output_c { leaf output { type string; } anyxml rescue-management-results; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-save-rescue-configuration rpc request-delete-rescue-configuration { description "Delete the rescue configuration"; output { choice output_c { leaf output { type string; } anyxml rescue-management-results; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-delete-rescue-configuration rpc request-package-add { description "Add extension or upgrade package"; input { leaf force { type empty; description "Force addition of package (ignore warnings)"; } leaf reboot { type empty; description "Reboot system after adding package"; } leaf force-host { type empty; description "Force addition of host os package (ignore version check)"; } leaf on-primary { type empty; description "Install image on primary partition while booted on secondary partition"; } leaf no-auto-reboot { type empty; description "Do not reboot system automatically after adding package"; } leaf delay-restart { type empty; description "Don't restart processes"; } leaf no-copy { type empty; description "Don't save copies of package files"; } leaf dualroot { type empty; description "Install Dual-Root image for Zeroization"; } choice validate_choice { leaf no-validate { type empty; description "Don't check compatibility with current configuration"; } leaf validate { type empty; description "Check compatibility with current configuration"; } leaf validate-on-host { type string; description "Remote host or user@host for configuration validation"; } leaf validate-on-routing-engine { type string; description "Routing engine for configuration validation"; } } // choice validate_choice leaf best-effort-load { type empty; description "Load succeeds if at least one statement is valid"; } leaf unlink { type empty; description "Remove the package after successful installation"; } choice re-choice { leaf re0 { type empty; description "Install package on RE0"; } leaf re1 { type empty; description "Install package on RE1"; } leaf both-routing-engines { type empty; description "Simultaneous upgrade on both the RE's"; } } // choice re-choice choice chassis { leaf scc { type empty; description "Install package on SCC"; } leaf lcc { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Install package on an LCC"; } leaf sfc { type empty; description "Install package on SFC"; } leaf member { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Install package on member"; } leaf dont-forward { type empty; } leaf service-node { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 1"; } } description "Install package on Service Node"; } leaf upgrade-group { type string; description "Satellite upgrade group name"; } leaf satellite { type union { type int32; type string { pattern "<.*>|$.*"; } } description "FPC slot of satellite system"; } leaf device-alias { type string; description "Device alias of satellite system"; } } // choice chassis leaf issu-internal { type empty; description "Internally executed by mgd, to allow software adds during issu"; } leaf-list upgrade-with-config { type jt:filename; ordered-by user; description "Additional configs ('text/xml' format) to be applied on upgrade"; } choice package-options { leaf-list set { type jt:filename; ordered-by user; description "List of URLs or pathnames corresponding to packages"; } leaf package-name { type jt:filename; description "URL or pathname of package"; } leaf version { type string; description "Version of satellite package"; } } // choice package-options } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-package-add rpc request-package-latest-status { description "Status of package installation"; output { choice output_c { leaf output { type string; } anyxml package-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-package-latest-status rpc abort-in-service-upgrade { description "Abort in-service software upgrade"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc abort-in-service-upgrade rpc request-package-in-service-upgrade { description "In-service software upgrade"; input { leaf reboot { type empty; description "Reboot system after adding package"; } choice package-options { leaf-list set { type jt:filename; ordered-by user; description "List of URLs or pathnames corresponding to packages for ISSU"; } leaf package-name { type jt:filename; description "URL or pathname of package"; } } // choice package-options leaf no-old-master-upgrade { type empty; description "Don't upgrade the old master after switchover"; } leaf verbose { type empty; description "Enable detailed output"; } leaf no-copy { type empty; description "Don't save copies of package files"; } leaf unlink { type empty; description "Remove the package after successful installation"; } leaf no-validate { type empty; description "Don't check compatibility with current configuration"; } choice issu_internal { } // choice issu_internal leaf enhanced-mode { type empty; description "Try to upgrade without any traffic loss"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-package-in-service-upgrade rpc request-in-service-upgrade-status { description "In-Service software upgrade status"; output { choice output_c { leaf output { type string; } anyxml issu-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-in-service-upgrade-status rpc request-in-service-upgrade-pause { description "In-Service software upgrade pause"; input { leaf before-issu-state-validate { type empty; description "Pause ISSU before ISSU_STATE_VALIDATE"; } leaf before-issu-state-slave-re-prepare { type empty; description "Pause ISSU before ISSU_STATE_SLAVE_RE_PREPARE"; } leaf after-issu-state-slave-re-prepare-done { type empty; description "Pause ISSU after ISSU_STATE_SLAVE_RE_PREPARE_DONE"; } leaf after-issu-state-switchover-done { type empty; description "Pause ISSU after ISSU_STATE_SWITCHOVER_DONE"; } leaf before-issu-state-old-master-upgrade { type empty; description "Pause ISSU before ISSU_STATE_OLD_MASTER_UPGRADE"; } } output { choice output_c { leaf output { type string; } anyxml issu-pause; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-in-service-upgrade-pause rpc request-in-service-upgrade-resume { description "In-Service software upgrade resume"; input { leaf before-issu-state-validate { type empty; description "Resume ISSU before ISSU_STATE_VALIDATE"; } leaf before-issu-state-slave-re-prepare { type empty; description "Resume ISSU before ISSU_STATE_SLAVE_RE_PREPARE"; } leaf after-issu-state-slave-re-prepare-done { type empty; description "Resume ISSU after ISSU_STATE_SLAVE_RE_PREPARE_DONE"; } leaf after-issu-state-switchover-done { type empty; description "Resume ISSU after ISSU_STATE_SWITCHOVER_DONE"; } leaf before-issu-state-old-master-upgrade { type empty; description "Resume ISSU before ISSU_STATE_OLD_MASTER_UPGRADE"; } leaf all-states { type empty; description "Resume/Cancel the pause request for all the states"; } } output { choice output_c { leaf output { type string; } anyxml issu-resume; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-in-service-upgrade-resume rpc request-package-nonstop-upgrade { description "Nonstop software upgrade"; input { leaf force-host { type empty; description "Force addition of host os package (ignore version check)"; } leaf no-auto-recovery { type empty; description "Will not recover in case of NSSU failure"; } choice package-options { leaf-list set { type jt:filename; ordered-by user; description "List of URLs or pathnames corresponding to packages"; } leaf package-name { type jt:filename; description "URL or pathname of package"; } } // choice package-options leaf no-copy { type empty; status deprecated; description "Don't save copies of package files"; } leaf unlink { type empty; status deprecated; description "Remove the package after successful installation"; } leaf no-validate { type empty; description "Don't check compatibility with current configuration"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-package-nonstop-upgrade rpc request-package-delete { description "Remove extension or upgrade package"; input { leaf archived { type empty; description "Removing of all archived software versions except current and rollback"; } leaf force { type empty; description "Force removal of package (ignore warnings)"; } choice package-options { leaf-list set { type string; ordered-by user; description "List of package name"; } leaf package-name { type string; description "Name of package"; } leaf upgrade-group { type string; description "Satellite upgrade group name"; } leaf version { type string; description "Version of satellite package"; } } // choice package-options leaf reboot { type empty; description "Reboot system after package delete"; } choice re-choice { leaf re0 { type empty; description "Delete package on RE0"; } leaf re1 { type empty; description "Delete package on RE1"; } } // choice re-choice choice chassis { leaf scc { type empty; description "Delete package on SCC"; } leaf lcc { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 3"; } } description "Delete package on an LCC"; } leaf sfc { type empty; description "Delete package on SFC"; } leaf member { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Delete package on VC Member"; } leaf dont-forward { type empty; } } // choice chassis } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-package-delete rpc request-package-rollback { description "Attempt to roll back to previous set of packages"; input { uses command-forwarding; leaf reboot { type empty; description "Reboot system after rollback"; } leaf force { type empty; description "Force rollback of packages (ignore warnings)"; } choice satellite-arg { leaf upgrade-group { type string; description "Satellite upgrade group name"; } leaf satellite { type union { type int32; type string { pattern "<.*>|$.*"; } } description "FPC slot of satellite system"; } leaf device-alias { type string; description "Device alias of satellite system"; } } // choice satellite-arg } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-package-rollback rpc request-package-validate { description "Verify package compatibility with current configuration"; input { leaf-list upgrade-with-config { type jt:filename; ordered-by user; description "Additional configs ('text/xml' format) to be validated"; } choice package-options { leaf-list set { type jt:filename; ordered-by user; description "List of URLs or pathnames corresponding to packages"; } leaf package-name { type jt:filename; description "URL or pathname of package"; } } // choice package-options choice chassis { leaf scc { type empty; description "Validate package on SCC"; } leaf lcc { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Validate package on an LCC"; } leaf sfc { type empty; description "Validate package on SFC"; } leaf member { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Validate package on member"; } leaf dont-forward { type empty; } } // choice chassis } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-package-validate rpc check-in-service-upgrade { description "Check in-service software upgrade"; input { choice package-options { leaf-list set { type jt:filename; ordered-by user; description "List of URLs or pathnames corresponding to packages for ISSU"; } leaf package-name { type jt:filename; description "URL or pathname of package"; } } // choice package-options leaf enhanced-mode { type empty; description "Try to upgrade without any traffic loss"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc check-in-service-upgrade rpc request-package-delete-backup { description "Delete old system software packages"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-package-delete-backup rpc request-license-add { description "Add license keys from file, local or from server"; input { leaf filename { type string; description "Filename (URL, local, remote, or floppy)"; } leaf key-data { type string; description "License key data"; } } output { choice output_c { leaf output { type string; } anyxml add-license-results; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-license-add rpc request-license-delete { description "Delete license keys"; input { choice delete-choice { leaf all { type empty; description "Delete all license keys"; } leaf license-identifier { type string; description "Identifier of installed license key"; } leaf-list license-identifier-list { type string; ordered-by user; description "Identifier of installed license key"; } } // choice delete-choice } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-license-delete rpc request-license-save { description "Save license keys to file, local or to server"; input { leaf filename { type string; mandatory true; description "Filename (URL, local, remote, or floppy)"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-license-save rpc request-license-update { description "Start autoupdate license keys from LMS servers"; input { leaf trial { type empty; description "Start autoupdate trial license keys from LMS servers"; } } output { choice output_c { leaf output { type string; } anyxml inform; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-license-update rpc license-revoke-licenses { status deprecated; description "Revoke licenses in the Authorization key"; input { leaf filename { type string; mandatory true; description "Filename (URL, local, remote, or floppy)"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc license-revoke-licenses rpc enable-unified-services-chassis-mode { description "Enable unified services chassis mode"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc enable-unified-services-chassis-mode rpc disable-unified-services-chassis-mode { description "Disable unified services chassis mode"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc disable-unified-services-chassis-mode rpc fips-selftest { description "Execute FIPS known answer tests (KATs)"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc fips-selftest rpc request-personality-file-generate { description "Generate the personality-file tarball for the device"; input { leaf personality-file-create { type string; mandatory true; description "Url containing the remote server alongwith the name of the tarball"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-personality-file-generate rpc request-personality-file-retrieve { description "Retrieve the personality-file tarball of the device"; input { leaf personality-file-retrieve { type string; mandatory true; description "Url containing the remote server alongwith the name of the tarball"; } leaf retrieve-location { type string; mandatory true; description "Path on the local device where the personality-file will be retrieved"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-personality-file-retrieve rpc transfer-control { description "Control transfers of core and log files"; input { leaf operation { type enumeration { enum "abort" { value 0; description "Abort a transfer"; } enum "pause" { value 1; description "Pause a transfer"; } enum "restart" { value 2; description "Restart a transfer"; } } mandatory true; description "Transfer control operation"; } choice arg-type { case component { } // case component leaf transfer-id { type union { type int32; type string { pattern "<.*>|$.*"; } } description "Transfer identifier"; } } // choice arg-type } output { choice output_c { leaf output { type string; } anyxml transfer-control-diagnostics; anyxml multi-routing-engine-results; } // choice output_c } } // rpc transfer-control rpc request-log { description "Create an archive of all system logs"; output { choice output_c { leaf output { type string; } anyxml system-logfiles; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-log rpc request-system-storage-cleanup { description "Clean up temporary files and rotate logs"; input { uses command-forwarding; leaf dry-run { type empty; description "Only list the cleanup candidates, do not remove them"; } leaf no-confirm { type empty; description "Do not ask for confirmation"; } } output { choice output_c { leaf output { type string; } anyxml system-storage-cleanup-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-system-storage-cleanup rpc request-system-storage-cleanup-satellite { description "Clean up temporary and core files on satellite device"; input { leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "65 .. 254"; } } description "Satellite slot number"; } leaf device-alias { type string; description "Device alias"; } leaf dry-run { type empty; description "Only list the cleanup candidates, do not remove them"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-system-storage-cleanup-satellite rpc request-system-storage-expand-user { description "Manage size of user disk"; input { leaf operation { type enumeration { enum "expand" { value 0; description "Expand user disk to maximum available size"; } enum "restore" { value 1; description "Restore user disk to default setting"; } } mandatory true; description "Expand user disk or revert to default"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-system-storage-expand-user rpc request-boot-media { description "Setup permanent boot media for subsequent reboots"; input { leaf media { type enumeration { enum "primary" { value 0; description "Boot from primary Junos partition"; } enum "alternate" { value 1; description "Boot from alternate Junos partition"; } enum "external" { value 2; description "Boot from external USB device"; } } mandatory true; description "Media to be setup as boot device"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-boot-media rpc request-boot-console { description "Switch boot-console port"; input { uses command-forwarding; leaf port { type enumeration { enum "console" { value 0; description "Set Console port as boot console"; } enum "auxiliary" { value 1; description "Set Auxiliary port as boot console"; } } mandatory true; description "Choice of port"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-boot-console rpc request-reboot { description "Reboot the system"; input { uses command-forwarding; leaf hypervisor { type empty; description "Reboot both Junos and Hypervisor"; } leaf fast-boot { type empty; status deprecated; description "Enable fast reboot"; } leaf media { type enumeration { enum "disk" { value 0; description "Boot off hard disk"; } enum "compact-flash" { value 1; description "Standard boot off flash device"; } enum "usb" { value 2; description "Boot off USB device"; } enum "usb0" { value 3; description "Boot off USB0 device"; } enum "usb1" { value 4; description "Boot off USB1 device"; } enum "removable-compact-flash" { value 5; description "Boot off removable compact flash device"; } enum "external" { value 6; description "Boot from external storage device"; } enum "internal" { value 7; description "Boot from internal flash"; } enum "nand-flash0" { value 8; description "Boot off nand-flash0"; } enum "nand-flash1" { value 9; description "Boot off nand-flash1"; } } description "Boot media for next boot"; } leaf at { type string; default "now"; description "Time at which to perform the operation"; } leaf in { type string; default "now"; description "Number of minutes to delay before operation"; } leaf message { type string; description "Message to display to all users"; } leaf power-off { type enumeration { enum "fpc" { value 0; description "Power off FPCs"; } } description "Power-off the software on RE"; } leaf slice { type enumeration { enum "alternate" { value 0; description "Boot from alternate partition"; } enum "1" { value 1; description "Boot from first partition"; } enum "2" { value 2; description "Boot from second partition"; } } description "Partition on boot media to boot from"; } } output { choice output_c { leaf output { type string; } anyxml request-reboot-results; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-reboot rpc request-reboot-in-service { description "Reboot with minimal traffic disruption"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-reboot-in-service rpc request-halt { description "Halt the system"; input { uses command-forwarding; leaf media { type enumeration { enum "disk" { value 0; description "Boot off hard disk"; } enum "compact-flash" { value 1; description "Standard boot off flash device"; } enum "usb" { value 2; description "Boot off USB device"; } enum "usb0" { value 3; description "Boot off USB0 device"; } enum "usb1" { value 4; description "Boot off USB1 device"; } enum "removable-compact-flash" { value 5; description "Boot off removable compact flash device"; } enum "external" { value 6; description "Boot from external storage device"; } enum "internal" { value 7; description "Boot from internal flash"; } enum "nand-flash0" { value 8; description "Boot off nand-flash0"; } enum "nand-flash1" { value 9; description "Boot off nand-flash1"; } } description "Boot media for next boot"; } leaf at { type string; default "now"; description "Time at which to perform the operation"; } leaf in { type string; default "now"; description "Number of minutes to delay before operation"; } leaf message { type string; description "Message to display to all users"; } leaf power-off { type enumeration { enum "fpc" { value 0; description "Power off FPCs"; } } description "Power-off the software on RE"; } leaf slice { type enumeration { enum "alternate" { value 0; description "Boot from alternate partition"; } enum "1" { value 1; description "Boot from first partition"; } enum "2" { value 2; description "Boot from second partition"; } } description "Partition on boot media to boot from"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-halt rpc request-power-off { description "Power off the software on RE"; input { uses command-forwarding; leaf media { type enumeration { enum "disk" { value 0; description "Boot off hard disk"; } enum "compact-flash" { value 1; description "Standard boot off flash device"; } enum "usb" { value 2; description "Boot off USB device"; } enum "usb0" { value 3; description "Boot off USB0 device"; } enum "usb1" { value 4; description "Boot off USB1 device"; } enum "removable-compact-flash" { value 5; description "Boot off removable compact flash device"; } enum "external" { value 6; description "Boot from external storage device"; } enum "internal" { value 7; description "Boot from internal flash"; } enum "nand-flash0" { value 8; description "Boot off nand-flash0"; } enum "nand-flash1" { value 9; description "Boot off nand-flash1"; } } description "Boot media for next boot"; } leaf at { type string; default "now"; description "Time at which to perform the operation"; } leaf in { type string; default "now"; description "Number of minutes to delay before operation"; } leaf message { type string; description "Message to display to all users"; } leaf power-off { type enumeration { enum "fpc" { value 0; description "Power off FPCs"; } } description "Power-off the software on RE"; } leaf slice { type enumeration { enum "alternate" { value 0; description "Boot from alternate partition"; } enum "1" { value 1; description "Boot from first partition"; } enum "2" { value 2; description "Boot from second partition"; } } description "Partition on boot media to boot from"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-power-off rpc request-process-terminate { description "Terminate the process"; input { leaf process-id { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 99999"; } } mandatory true; description "Process ID"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-process-terminate rpc request-system-zeroize { description "Erase all data, including configuration and log files"; input { leaf media { type empty; description "Overwrite media"; } leaf local { type empty; description "Zeroize just this Routing Engine"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-system-zeroize rpc request-snapshot { description "Archive data and executable areas"; input { uses command-forwarding; leaf partition { type empty; description "Partition the media"; } leaf factory { type empty; description "Include only files shipped from factory in snapshot"; } leaf as-primary { type empty; description "Setup snapshot to be used in the primary boot device"; } leaf swap-size { type string; description "Size of the swap partition"; } leaf config-size { type string; description "Size of the config partition"; } leaf root-size { type string; description "Size of the root partition"; } leaf data-size { type string; description "Size of the data partition"; } leaf slice { type enumeration { enum "alternate" { value 0; description "Write snapshot to alternate partition"; } } description "Write snapshot to specified partition"; } leaf media { type enumeration { enum "removable-compact-flash" { value 0; description "Write snapshot to removable compact flash"; } enum "compact-flash" { value 1; description "Write snapshot to compact flash"; } enum "usb" { value 2; description "Write snapshot to device connected to USB port"; } enum "usb0" { value 3; description "Write snapshot to device connected to USB0 port"; } enum "usb1" { value 4; description "Write snapshot to device connected to USB1 port"; } enum "hard-disk" { value 5; description "Write snapshot to hard disk"; } enum "internal" { value 6; description "Write snapshot to internal flash"; } enum "external" { value 7; description "Write snapshot to external storage device"; } } default "compact-flash"; description "Media to snapshot to"; } leaf root-partition { type empty; description "Write snapshot of root partition alone"; } leaf config-partition { type empty; description "Write snapshot of config partition alone"; } } output { choice output_c { leaf output { type string; } anyxml snapshot-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-snapshot rpc request-system-firmware-reload-fpc { description "Reload FPC ROM monitor"; input { leaf slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "FPC slot number"; } } output { choice output_c { leaf output { type string; } anyxml system-firmware-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-system-firmware-reload-fpc rpc request-system-firmware-reload-sib { description "Reload SIB firmware"; input { leaf slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "SIB slot number"; } } output { choice output_c { leaf output { type string; } anyxml system-firmware-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-system-firmware-reload-sib rpc request-jfw-cpld-upgrade { description "Upgrade CPLD firmware"; input { leaf cpld-type { type string; description "CPLD type: RE, MAIN, FAN"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-cpld-upgrade rpc request-jfw-cpld-mainboard-upgrade { description "Upgrade mainboard CPLD firmware"; output { choice output_c { leaf output { type string; } anyxml system-jfw-cpld-mainboard-upgrade-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-cpld-mainboard-upgrade rpc request-jfw-main-board-upgrade-status { description "Show MAIN board upgrade status"; output { choice output_c { leaf output { type string; } anyxml system-jfw-main-board-upgrade-information-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-main-board-upgrade-status rpc request-jfw-cpld-fanboard-upgrade { description "Upgrade fanboard CPLD firmware"; output { choice output_c { leaf output { type string; } anyxml system-jfw-cpld-fanboard-upgrade-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-cpld-fanboard-upgrade rpc request-jfw-cpld-fanboard-upgrade-status { description "Show fanboard CPLD upgrade status"; output { choice output_c { leaf output { type string; } anyxml system-jfw-cpld-fanboard-upgrade-information-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-cpld-fanboard-upgrade-status rpc request-jfw-cpld-sys-upgrade { description "Upgrade Sys CPLD firmware"; output { choice output_c { leaf output { type string; } anyxml system-jfw-cpld-sys-upgrade-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-cpld-sys-upgrade rpc request-jfw-sys-cpld-upgrade-status { description "Show Sys cpld upgrade status"; output { choice output_c { leaf output { type string; } anyxml system-jfw-sys-cpld-upgrade-information-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-sys-cpld-upgrade-status rpc request-jfw-cpld-cpuboard-upgrade { description "Upgrade CPU board CPLD firmware"; output { choice output_c { leaf output { type string; } anyxml system-jfw-cpld-cpuboard-upgrade-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-cpld-cpuboard-upgrade rpc request-jfw-cpu-cpld-upgrade-status { description "Show CPU cpld upgrade status"; output { choice output_c { leaf output { type string; } anyxml system-jfw-cpu-cpld-upgrade-information-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-cpu-cpld-upgrade-status rpc request-jfw-mmc-upgrade { description "Upgrade MMC firmware"; output { choice output_c { leaf output { type string; } anyxml system-jfw-mmc-upgrade-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-mmc-upgrade rpc request-jfw-mmc-upgrade-status { description "Show MMC upgrade status"; output { choice output_c { leaf output { type string; } anyxml system-jfw-mmc-upgrade-information-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-mmc-upgrade-status rpc request-jfw-nic-i350-upgrade { description "Upgrade Builtin i350 NIC firmware"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-nic-i350-upgrade rpc request-jfirmware-nic-i210-upgrade { description "Upgrade Builtin i210 NIC firmware"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfirmware-nic-i210-upgrade rpc request-jfw-nic-x552-upgrade { description "Upgrade Builtin x552 NIC firmware"; output { choice output_c { leaf output { type string; } anyxml system-jfw-nic-x552-upgrade-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-nic-x552-upgrade rpc request-jfw-nic-x722-upgrade { description "Upgrade Builtin x722 NIC firmware"; output { choice output_c { leaf output { type string; } anyxml system-jfw-nic-x722-upgrade-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-nic-x722-upgrade rpc request-jfw-nic-x722-upgrade-status { description "Show NIC upgrade status"; output { choice output_c { leaf output { type string; } anyxml system-jfw-nic-x722-upgrade-information-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-nic-x722-upgrade-status rpc request-jfw-nic-x553-upgrade { description "Upgrade Builtin x553 NIC firmware"; output { choice output_c { leaf output { type string; } anyxml system-jfw-nic-x553-upgrade-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-nic-x553-upgrade rpc request-jfw-nic-i82599-1-upgrade { description "Upgrade Builtin i82599_1 NIC firmware"; output { choice output_c { leaf output { type string; } anyxml system-jfw-nic-i82599-1-upgrade-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-nic-i82599-1-upgrade rpc request-jfw-nic-i82599-2-upgrade { description "Upgrade Builtin i82599_2 NIC firmware"; output { choice output_c { leaf output { type string; } anyxml system-jfw-nic-i82599-2-upgrade-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-nic-i82599-2-upgrade rpc request-jfw-em-i350-copper-upgrade { description "Upgrade Expansion Module i350 NIC Copper firmware"; output { choice output_c { leaf output { type string; } anyxml system-jfw-em-i350-copper-upgrade-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-em-i350-copper-upgrade rpc request-jfw-em-i350-sfp-upgrade { description "Upgrade Expansion Module i350 NIC SFP firmware"; output { choice output_c { leaf output { type string; } anyxml system-jfw-em-i350-sfp-upgrade-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-em-i350-sfp-upgrade rpc request-jfw-bios-upgrade { description "Upgrade BIOS firmware"; input { leaf disk { type string; description "1, 2"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-bios-upgrade rpc request-jfw-bios-upgrade-status { description "Show BIOS upgrade status"; output { choice output_c { leaf output { type string; } anyxml system-jfw-bios-upgrade-information-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-bios-upgrade-status rpc request-jfw-psu-upgrade { description "Upgrade psu firmware"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-psu-upgrade rpc request-jfw-psu-upgrade-status { description "Show PSU upgrade status"; output { choice output_c { leaf output { type string; } anyxml system-jfw-psu-upgrade-information-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-psu-upgrade-status rpc request-jfirmware-hv-psu-upgrade { description "Upgrade HV PSU firmware"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfirmware-hv-psu-upgrade rpc request-jfirmware-hv-psu-upgrade-status { description "Show HV PSU upgrade status"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfirmware-hv-psu-upgrade-status rpc request-jfw-ssd-upgrade { description "Upgrade SSD firmware"; input { leaf disk { type string; description "1, 2"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-ssd-upgrade rpc get-jfw-tpm-upgrade { description "Upgrade TPM firmware"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc get-jfw-tpm-upgrade rpc request-jfw-poe-upgrade { description "Upgrade POE firmware"; input { leaf fpc-slot { type string; mandatory true; description "FPC slot"; } leaf poe-firmware-type { type enumeration { enum "poe-at-firmware" { value 0; description "IEEE 802.3at PoE Firmware Support"; } enum "poe-bt-firmware" { value 1; description "IEEE 802.3bt PoE Firmware Support"; } } description "POE_FIRMWARE_TYPE"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-poe-upgrade rpc request-jfw-bcm-pcie-upgrade { description "Upgrade BCM PCIe firmware"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-bcm-pcie-upgrade rpc request-jfirmware-pmic-upgrade { description "Upgrade PMIC firmware"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfirmware-pmic-upgrade rpc request-jfw-pmic-fpga-upgrade-status { description "Show PMIC Upgrade status"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-pmic-fpga-upgrade-status rpc request-jfw-re-fpga-upgrade { description "Upgrade RE FPGA"; input { leaf file { type string; description "Jfirmware package file"; } } output { choice output_c { leaf output { type string; } anyxml system-jfw-re-fpga-upgrade-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-re-fpga-upgrade rpc request-jfw-re-fpga-upgrade-status { description "Show RE FPGA Upgrade status"; output { choice output_c { leaf output { type string; } anyxml system-jfw-re-fpga-upgrade-information-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-re-fpga-upgrade-status rpc request-jfw-tmc-fpga-upgrade { description "Upgrade Mainboard TMC FPGA"; output { choice output_c { leaf output { type string; } anyxml system-jfw-tmc-fpga-upgrade-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-tmc-fpga-upgrade rpc request-jfw-tmc-fpga-upgrade-status { description "Show TMC Upgrade status"; output { choice output_c { leaf output { type string; } anyxml system-jfw-tmc-fpga-upgrade-information-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-tmc-fpga-upgrade-status rpc request-jfw-power-cpld-upgrade { description "Upgrade Power CPLD"; output { choice output_c { leaf output { type string; } anyxml system-jfw-power-cpld-upgrade-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-power-cpld-upgrade rpc request-jfw-powercpld-upgrade-status { description "Show Powercpld Upgrade status"; output { choice output_c { leaf output { type string; } anyxml system-jfw-powercpld-upgrade-information-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-powercpld-upgrade-status rpc request-jfirmware-fanboard-fpga-upgrade { description "Upgrade Fanboard FPGA"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfirmware-fanboard-fpga-upgrade rpc request-jfirmware-fanboard-fpga-upgrade-status { description "Show Fanboard FPGA Upgrade status"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfirmware-fanboard-fpga-upgrade-status rpc request-jfw-optics-sfp-upgrade { description "Upgrade Optics FPGA/CPLD"; output { choice output_c { leaf output { type string; } anyxml system-jfw-optics-sfp-upgrade-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-optics-sfp-upgrade rpc request-jfw-optics-sfp-upgrade-status { description "Show SFP Upgrade status"; output { choice output_c { leaf output { type string; } anyxml system-jfw-optics-sfp-upgrade-information-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-optics-sfp-upgrade-status rpc request-jfw-optics-qsfp-upgrade { description "Upgrade Optics FPGA/CPLD"; output { choice output_c { leaf output { type string; } anyxml system-jfw-optics-qsfp-upgrade-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-optics-qsfp-upgrade rpc request-jfw-optics-qsfp-upgrade-status { description "Show QSFP Upgrade status"; output { choice output_c { leaf output { type string; } anyxml system-jfw-optics-qsfp-upgrade-information-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-optics-qsfp-upgrade-status rpc request-jfw-bmc-upgrade { description "Upgrade BMC firmware"; input { leaf file { type string; description "Jfirmware package file"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-bmc-upgrade rpc request-jfw-bmc-upgrade-status { description "Show BMC Upgrade status"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-bmc-upgrade-status rpc request-jfw-allfw-upgrade { description "Upgrade all firmwares applicable in Jfirmware package"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-jfw-allfw-upgrade rpc request-fpc-fpga-upgrade { description "Upgrade Line Card FPGAs"; input { uses command-forwarding; leaf slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "FPC slot number"; } } output { choice output_c { leaf output { type string; } anyxml system-fpga-upgrade-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-fpc-fpga-upgrade rpc request-pem-firmware-upgrade { description "Upgrade CHASSIS PEM FW"; input { leaf slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "PEM slot number"; } } output { choice output_c { leaf output { type string; } anyxml system-firmware-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-pem-firmware-upgrade rpc request-ftc-firmware-upgrade { description "Upgrade FTC firmware"; input { leaf slot { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 1"; } } mandatory true; description "FTC slot number"; } } output { choice output_c { leaf output { type string; } anyxml system-firmware-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-ftc-firmware-upgrade rpc request-bitscpld-firmware-upgrade { description "Upgrade BITSCPLD programmable on SPMC Mezz board"; output { choice output_c { leaf output { type string; } anyxml system-firmware-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-bitscpld-firmware-upgrade rpc request-cb-fpga-upgrade { description "Upgrade baseboard FPGA"; input { choice which-arg { leaf fpga { type empty; description "Upgrade baseboard FPGA"; } leaf port-fpga { type empty; description "Upgrade baseboard PORT FPGA"; } leaf port { type empty; description "Upgrade baseboard port"; } leaf tic-fpga { type empty; description "Upgrade TIC FPGA"; } leaf optics { type enumeration { enum "cpld0" { value 0; description "Optics CPLD0"; } enum "cpld1" { value 1; description "Optics CPLD1"; } } description "Upgrade Optics CPLD"; } leaf fancpld { type empty; description "Upgrade fan board CPLD"; } } // choice which-arg leaf slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "CB slot number"; } leaf tag { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 2"; } } mandatory true; description "Firmware tag"; } } output { choice output_c { leaf output { type string; } anyxml system-firmware-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-cb-fpga-upgrade rpc request-i2c-fpga-upgrade { description "I2C FPGA Upgrade"; output { choice output_c { leaf output { type string; } anyxml system-firmware-i2c-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-i2c-fpga-upgrade rpc request-system-firmware-upgrade-sfb { description "Upgrade SFB firmware"; input { leaf slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "SFB slot number"; } leaf tag { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 1"; } } mandatory true; description "Firmware tag number"; } } output { choice output_c { leaf output { type string; } anyxml system-firmware-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-system-firmware-upgrade-sfb rpc request-pem-firmware-downgrade { description "Upgrade CHASSIS PEM FW"; input { leaf slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "PEM slot number"; } } output { choice output_c { leaf output { type string; } anyxml system-firmware-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-pem-firmware-downgrade rpc request-bitscpld-firmware-downgrade { description "Upgrade BITSCPLD programmable on SPMC Mezz board"; output { choice output_c { leaf output { type string; } anyxml system-firmware-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-bitscpld-firmware-downgrade rpc request-cb-fpga-downgrade { description "Upgrade baseboard FPGA"; input { choice which-arg { leaf fpga { type empty; description "Upgrade baseboard FPGA"; } leaf port { type empty; description "Upgrade baseboard port"; } leaf tic-fpga { type empty; description "Upgrade TIC FPGA"; } } // choice which-arg leaf slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "CB slot number"; } leaf tag { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 2"; } } mandatory true; description "Firmware tag"; } } output { choice output_c { leaf output { type string; } anyxml system-firmware-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-cb-fpga-downgrade rpc request-i2c-fpga-downgrade { description "I2C FPGA Upgrade"; output { choice output_c { leaf output { type string; } anyxml system-firmware-i2c-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-i2c-fpga-downgrade rpc request-system-firmware-downgrade-sfb { description "Downgrade SFB firmware"; input { leaf slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "SFB slot number"; } leaf tag { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 1"; } } mandatory true; description "Firmware tag number"; } } output { choice output_c { leaf output { type string; } anyxml system-firmware-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-system-firmware-downgrade-sfb rpc request-power-on-other-re { description "Power on the system"; input { uses command-forwarding; leaf other-routing-engine { type empty; mandatory true; description "Power on other Routing Engine"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-power-on-other-re rpc request-security-uefi-revoke { description "Revoke platform UEFI keys"; input { leaf cmd { type string; mandatory true; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-security-uefi-revoke rpc request-security-bios-upgrade { description "Upgrade BIOS from the location"; input { leaf package-name { type jt:filename; description "URL or path name of package"; } leaf re-slot { type union { type string { pattern "<.*>|$.*"; } type int32; } mandatory true; description "RE slot number"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-security-bios-upgrade rpc generate-pki-key-pair { description "Generate RSA, DSA or ECDSA private and public key pair"; input { uses command-forwarding; choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } leaf size { type enumeration { enum "256" { value 0; description "256 bits (ECDSA only)"; } enum "384" { value 1; description "384 bits (ECDSA only)"; } enum "521" { value 2; description "521 bits (ECDSA only)"; } enum "512" { value 3; description "512 bits (RSA only)"; } enum "1024" { value 4; description "1024 bits (RSA/DSA only)"; } enum "2048" { value 5; description "2048 bits (RSA/DSA only)"; } enum "4096" { value 6; description "4096 bits (RSA/DSA only)"; } } units "bits"; default "2048"; description "Size of key"; } leaf type { type enumeration { enum "rsa" { value 0; description "RSA encryption"; } enum "dsa" { value 1; description "DSA encryption"; } enum "ecdsa" { value 2; description "ECDSA encryption"; } } default "rsa"; description "Algorithm for encrypting public private keys"; } } output { choice output_c { leaf output { type string; } anyxml cert-key-pair; anyxml multi-routing-engine-results; } // choice output_c } } // rpc generate-pki-key-pair rpc generate-pki-certificate-request { description "Generate the certificate request in PKCS-10 format"; input { uses command-forwarding; leaf ip-address { type jt:ipaddr; description "Static IP address of the device"; } leaf ipv6-address { type jt:ipv6addr; description "Static IPv6 address of the device for subject-alt-name"; } choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select leaf filename { type string; description "Local location for copy of certificate request"; } leaf subject { type string; mandatory true; description "DC=<Domain component>,CN=<Common-Name>,OU=<Organizational-Unit-name>,O=<Organization-name>,SN=<Serial-Number>,L=<Locality>,ST=<state>,C=<Country>"; } leaf digest { type enumeration { enum "sha-1" { value 0; description "SHA-1 digests (RSA/DSA only, default value for RSA/DSA)"; } enum "sha-256" { value 1; description "SHA-256 digests (RSA/ECDSA only, default value for ECDSA)"; } enum "sha-384" { value 2; description "SHA-384 digests (ECDSA only)"; } } description "Hash algorithm for signing RSA certificates"; } leaf validity-start-time { type jt:time; status deprecated; description "Certificate validity start time (YYYY-MM-DD.HH:MM:SS)"; } leaf validity-end-time { type jt:time; status deprecated; description "Certificate validity end time (YYYY-MM-DD.HH:MM:SS)"; } leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } leaf domain-name { type string; description "Fully qualified domain name"; } leaf email { type string; description "Email address"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc generate-pki-certificate-request rpc load-pki-ca-certificate { description "Load the certificate onto the routing platform"; input { uses command-forwarding; leaf ca-profile { type string { length "1 .. 32"; } mandatory true; description "Certificate authority profile"; } choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select leaf filename { type string; mandatory true; description "File pathname containing certificate to load"; } } output { choice output_c { leaf output { type string; } anyxml cert-ca-load-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc load-pki-ca-certificate rpc request-security-pki-ca-profile-group { description "Perform operations on group of Certificate-authority(CA) certificates"; input { choice daemon-select { leaf logical-system { type string; description "Name of logical system, or 'all'"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml ca-profile-group; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-security-pki-ca-profile-group rpc request-security-pki-ca-profile-group-load { description "Load the certificate group onto the routing platform"; input { uses command-forwarding; choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select leaf ca-group-name { type string { length "1 .. 24"; } mandatory true; description "CA group identifier"; } leaf filename { type string; mandatory true; description "File pathname containing certificate to load"; } } output { choice output_c { leaf output { type string; } anyxml ca-profile-group-load; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-security-pki-ca-profile-group-load rpc verify-pki-ca-certificate { description "Verify the certificate"; input { uses command-forwarding; choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select leaf ca-profile { type string { length "1 .. 32"; } mandatory true; description "Certificate authority profile"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc verify-pki-ca-certificate rpc request-security-local-certificate-enroll { description "Enroll router certificate with CA online"; input { uses command-forwarding; leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } leaf ca-profile { type string { length "1 .. 32"; } mandatory true; description "Certificate authority profile"; } leaf challenge-password { type string; mandatory true; description "Password used by CA for enrollment and revocation"; } leaf scep-encryption-algorithm { type enumeration { enum "des" { value 0; description "DES Encryption"; } enum "des3" { value 1; description "DES-3 Encryption (default)"; } } description "Encrypion algorithm used for SCEP-PKCS7"; } leaf scep-digest-algorithm { type enumeration { enum "md5" { value 0; description "MD-5 digest"; } enum "sha1" { value 1; description "SHA-1 digest (default)"; } } description "Hash algorithm used for SCEP-PKCS7"; } leaf ip-address { type jt:ipaddr; description "Static IP address of the device"; } leaf ipv6-address { type jt:ipv6addr; description "Static IPv6 address of the device for subject-alt-name"; } leaf subject { type string; mandatory true; description "DC=<Domain component>,CN=<Common-Name>,OU=<Organizational-Unit-name>,O=<Organization-name>,SN=<Serial-Number>,L=<Locality>,ST=<state>,C=<Country>"; } leaf validity-start-time { type jt:time; status deprecated; description "Certificate validity start time (YYYY-MM-DD.HH:MM:SS)"; } leaf validity-end-time { type jt:time; status deprecated; description "Certificate validity end time (YYYY-MM-DD.HH:MM:SS)"; } leaf digest { type enumeration { enum "sha-1" { value 0; description "SHA-1 digests (default value)"; } enum "sha-256" { value 1; description "SHA-256 digests"; } } description "Hash algorithm for signing RSA certificates"; } choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select leaf domain-name { type string; description "Fully qualified domain name"; } leaf email { type string; description "Email address"; } } output { choice output_c { leaf output { type string; } anyxml local-certificate-enroll; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-security-local-certificate-enroll rpc request-security-local-certificate-enroll-cmpv2 { description "Enroll certificate using CMPv2 protocol"; input { uses command-forwarding; choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } leaf ip-address { type jt:ipaddr; description "Static IP address of the device"; } leaf ipv6-address { type jt:ipv6addr; description "Static IPv6 address of the device for subject-alt-name"; } leaf domain-name { type string; description "Fully qualified domain name for subject-alt-name"; } leaf email { type string; description "Email address"; } leaf subject { type string; mandatory true; description "DC=<Domain component>,CN=<Common-Name>,OU=<Organizational-Unit-name>,O=<Organization-name>,SN=<Serial-Number>,L=<Locality>,ST=<state>,C=<Country>"; } leaf ca-profile { type string { length "1 .. 32"; } mandatory true; description "Certificate authority profile"; } leaf ca-dn { type string; description "Subject DN for CMPv2 server, if CA certificate is not enrolled"; } leaf ca-secret { type string; mandatory true; description "Initial Authentication Key, received from CMPv2 server"; } leaf ca-reference { type string; mandatory true; description "Reference value associated with secret, received from CMPv2 server"; } } output { choice output_c { leaf output { type string; } anyxml local-certificate-enroll-cmpv2; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-security-local-certificate-enroll-cmpv2 rpc request-security-local-certificate-enroll-scep { description "Enroll end-entity certificate using SCEP protocol"; input { uses command-forwarding; leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } leaf ca-profile { type string { length "1 .. 32"; } mandatory true; description "Certificate authority profile"; } leaf challenge-password { type string; mandatory true; description "Password used by CA for enrollment and revocation"; } leaf scep-encryption-algorithm { type enumeration { enum "des" { value 0; description "DES Encryption"; } enum "des3" { value 1; description "DES-3 Encryption (default)"; } } description "Encrypion algorithm used for SCEP-PKCS7"; } leaf scep-digest-algorithm { type enumeration { enum "md5" { value 0; description "MD-5 digest"; } enum "sha1" { value 1; description "SHA-1 digest (default)"; } } description "Hash algorithm used for SCEP-PKCS7"; } leaf ip-address { type jt:ipaddr; description "Static IP address of the device"; } leaf ipv6-address { type jt:ipv6addr; description "Static IPv6 address of the device for subject-alt-name"; } leaf domain-name { type string; description "Fully qualified domain name for subject-alt-name"; } leaf email { type string; description "Email address"; } leaf subject { type string; mandatory true; description "DC=<Domain component>,CN=<Common-Name>,OU=<Organizational-Unit-name>,O=<Organization-name>,SN=<Serial-Number>,L=<Locality>,ST=<state>,C=<Country>"; } leaf validity-start-time { type jt:time; status deprecated; description "Certificate validity start time (YYYY-MM-DD.HH:MM:SS)"; } leaf validity-end-time { type jt:time; status deprecated; description "Certificate validity end time (YYYY-MM-DD.HH:MM:SS)"; } leaf digest { type enumeration { enum "sha-1" { value 0; description "SHA-1 digests (default value)"; } enum "sha-256" { value 1; description "SHA-256 digests"; } } description "Hash algorithm for signing RSA certificates"; } } output { choice output_c { leaf output { type string; } anyxml local-certificate-enroll-scep; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-security-local-certificate-enroll-scep rpc request-security-local-certificate-re-enroll { description "Re-enroll router certificate with CA online"; output { choice output_c { leaf output { type string; } anyxml local-certificate-re-enroll; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-security-local-certificate-re-enroll rpc request-security-local-cert-re-enroll-cmpv2 { description "Enroll certificate using CMPv2 protocol"; input { uses command-forwarding; choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } leaf ca-profile { type string { length "1 .. 32"; } description "Certificate authority profile"; } leaf re-generate-keypair { type empty; description "Generate new keypair for re-enrollment"; } } output { choice output_c { leaf output { type string; } anyxml local-cert-re-enroll-cmpv2; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-security-local-cert-re-enroll-cmpv2 rpc request-security-local-cert-re-enroll-scep { description "Enroll end-entity certificate using SCEP protocol"; input { uses command-forwarding; choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } leaf ca-profile { type string { length "1 .. 32"; } description "Certificate authority profile"; } leaf challenge-password { type string; mandatory true; description "Password used by CA for enrollment and revocation"; } leaf re-generate-keypair { type empty; description "Generate new keypair for re-enrollment"; } leaf scep-encryption-algorithm { type enumeration { enum "des" { value 0; description "DES Encryption"; } enum "des3" { value 1; description "DES-3 Encryption (default)"; } } description "Encrypion algorithm used for SCEP-PKCS7"; } leaf scep-digest-algorithm { type enumeration { enum "md5" { value 0; description "MD-5 digest"; } enum "sha1" { value 1; description "SHA-1 digest (default)"; } } description "Hash algorithm used for SCEP-PKCS7"; } } output { choice output_c { leaf output { type string; } anyxml local-cert-re-enroll-scep; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-security-local-cert-re-enroll-scep rpc request-security-local-certificate-export { description "Export Certificate"; input { choice daemon-select { leaf logical-system { type string; description "Name of logical system, or 'all'"; } } // choice daemon-select leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } leaf filename { type string; mandatory true; description "Local location for copy of certificate."; } leaf type { type enumeration { enum "pem" { value 0; description "PEM format"; } enum "der" { value 1; description "DER format"; } } default "pem"; description "Type of certificate."; } } output { choice output_c { leaf output { type string; } anyxml local-certificate-export; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-security-local-certificate-export rpc load-pki-local-certificate { description "Load the certificate onto the routing platform"; input { uses command-forwarding; choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } leaf filename { type string; mandatory true; description "File pathname containing certificate to load"; } leaf key { type string; description "File pathname containing the private key/key-pair to load"; } leaf passphrase { type string; description "Passphrase of the private key/key-pair (PEM) file"; } } output { choice output_c { leaf output { type string; } anyxml cert-load-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc load-pki-local-certificate rpc verify-pki-local-certificate { description "Verify the certificate"; input { uses command-forwarding; choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc verify-pki-local-certificate rpc generate-pki-self-signed-local-certificate { description "Generate a self-signed certificate"; input { uses command-forwarding; choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } leaf domain-name { type string; mandatory true; description "Fully qualified domain name"; } leaf ip-address { type jt:ipaddr; description "Static IP address of the device"; } leaf email { type string; description "Email address of the entity owning the certificate"; } leaf subject { type string; mandatory true; description "DC=<Domain component>,CN=<Common-Name>,OU=<Organizational-Unit-name>,O=<Organization-name>,SN=<Serial-Number>,L=<Locality>,ST=<state>,C=<Country>"; } leaf add-ca-constraint { type empty; description "Certificate can be used for signing other certificates."; } leaf digest { type enumeration { enum "sha-1" { value 0; description "SHA-1 digests"; } enum "sha-256" { value 1; description "SHA-256 digests (default value)"; } } description "Hash algorithm for signing RSA certificates"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc generate-pki-self-signed-local-certificate rpc request-security-key-pair-export { description "Export Keypair in PEM format"; input { choice daemon-select { leaf logical-system { type string; description "Name of logical system, or 'all'"; } } // choice daemon-select leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier for keypair"; } leaf filename { type string; mandatory true; description "Local location for copy of keypair."; } leaf type { type enumeration { enum "pem" { value 0; description "PEM format"; } enum "der" { value 1; description "DER format"; } } default "pem"; description "Type of key-pair."; } leaf passphrase { type string; mandatory true; description "Passphrase of the private key/key-pair (PEM) file"; } } output { choice output_c { leaf output { type string; } anyxml key-pair-export; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-security-key-pair-export rpc load-pki-crl { description "Load the CRL onto the routing platform"; input { uses command-forwarding; choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select leaf ca-profile { type string { length "1 .. 32"; } mandatory true; description "Certificate authority profile"; } leaf filename { type string; mandatory true; description "Pathname of file containing CRL to load"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc load-pki-crl rpc request-security-pki-file-sync { description "Perform PKI file-sync with MN-HA remote node"; input { choice daemon-select { leaf logical-system { type string; description "Name of logical system, or 'all'"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml pki-file-sync; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-security-pki-file-sync rpc node-local-generate-key-pair { description "Generate RSA, DSA or ECDSA private and public key pair"; input { uses command-forwarding; choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } leaf size { type enumeration { enum "256" { value 0; description "256 bits (ECDSA only)"; } enum "384" { value 1; description "384 bits (ECDSA only)"; } enum "521" { value 2; description "521 bits (ECDSA only)"; } enum "512" { value 3; description "512 bits (RSA only)"; } enum "1024" { value 4; description "1024 bits (RSA/DSA only)"; } enum "2048" { value 5; description "2048 bits (RSA/DSA only)"; } enum "4096" { value 6; description "4096 bits (RSA/DSA only)"; } } units "bits"; default "2048"; description "Size of key"; } leaf type { type enumeration { enum "rsa" { value 0; description "RSA encryption"; } enum "dsa" { value 1; description "DSA encryption"; } enum "ecdsa" { value 2; description "ECDSA encryption"; } } default "rsa"; description "Algorithm for encrypting public private keys"; } } output { choice output_c { leaf output { type string; } anyxml cert-key-pair; anyxml multi-routing-engine-results; } // choice output_c } } // rpc node-local-generate-key-pair rpc node-local-generate-csr { description "Generate the certificate request in PKCS-10 format"; input { uses command-forwarding; leaf ip-address { type jt:ipaddr; description "Static IP address of the device"; } leaf ipv6-address { type jt:ipv6addr; description "Static IPv6 address of the device for subject-alt-name"; } choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } leaf domain-name { type string; description "Fully qualified domain name for subject-alt-name"; } leaf email { type string; description "Email address"; } leaf filename { type string; description "Local location for copy of certificate request"; } leaf subject { type string; mandatory true; description "DC=<Domain component>,CN=<Common-Name>,OU=<Organizational-Unit-name>,O=<Organization-name>,SN=<Serial-Number>,L=<Locality>,ST=<state>,C=<Country>"; } leaf digest { type enumeration { enum "sha-1" { value 0; description "SHA-1 digests (RSA/DSA only, default value for RSA/DSA)"; } enum "sha-256" { value 1; description "SHA-256 digests (RSA/ECDSA only, default value for ECDSA)"; } enum "sha-384" { value 2; description "SHA-384 digests (ECDSA only)"; } } description "Hash algorithm for signing RSA certificates"; } leaf validity-start-time { type jt:time; status deprecated; description "Certificate validity start time (YYYY-MM-DD.HH:MM:SS)"; } leaf validity-end-time { type jt:time; status deprecated; description "Certificate validity end time (YYYY-MM-DD.HH:MM:SS)"; } } output { choice output_c { leaf output { type string; } anyxml node-local-gen-csr; anyxml multi-routing-engine-results; } // choice output_c } } // rpc node-local-generate-csr rpc node-local-local-certificate-enroll { description "Enroll router certificate with CA online"; input { uses command-forwarding; leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } leaf domain-name { type string; description "Fully qualified domain name for subject-alt-name"; } leaf email { type string; description "Email address"; } leaf ca-profile { type string { length "1 .. 32"; } mandatory true; description "Certificate authority profile"; } leaf challenge-password { type string; mandatory true; description "Password used by CA for enrollment and revocation"; } leaf scep-encryption-algorithm { type enumeration { enum "des" { value 0; description "DES Encryption"; } enum "des3" { value 1; description "DES-3 Encryption (default)"; } } description "Encrypion algorithm used for SCEP-PKCS7"; } leaf scep-digest-algorithm { type enumeration { enum "md5" { value 0; description "MD-5 digest"; } enum "sha1" { value 1; description "SHA-1 digest (default)"; } } description "Hash algorithm used for SCEP-PKCS7"; } leaf ip-address { type jt:ipaddr; description "Static IP address of the device"; } leaf ipv6-address { type jt:ipv6addr; description "Static IPv6 address of the device for subject-alt-name"; } leaf subject { type string; mandatory true; description "DC=<Domain component>,CN=<Common-Name>,OU=<Organizational-Unit-name>,O=<Organization-name>,SN=<Serial-Number>,L=<Locality>,ST=<state>,C=<Country>"; } leaf validity-start-time { type jt:time; status deprecated; description "Certificate validity start time (YYYY-MM-DD.HH:MM:SS)"; } leaf validity-end-time { type jt:time; status deprecated; description "Certificate validity end time (YYYY-MM-DD.HH:MM:SS)"; } leaf digest { type enumeration { enum "sha-1" { value 0; description "SHA-1 digests (default value)"; } enum "sha-256" { value 1; description "SHA-256 digests"; } } description "Hash algorithm for signing RSA certificates"; } } output { choice output_c { leaf output { type string; } anyxml local-certificate-enroll; anyxml multi-routing-engine-results; } // choice output_c } } // rpc node-local-local-certificate-enroll rpc node-local-local-certificate-enroll-cmpv2 { description "Enroll certificate using CMPv2 protocol"; input { choice daemon-select { leaf logical-system { type string; description "Name of logical system, or 'all'"; } } // choice daemon-select leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } leaf ip-address { type jt:ipaddr; description "Static IP address of the device"; } leaf ipv6-address { type jt:ipv6addr; description "Static IPv6 address of the device for subject-alt-name"; } leaf domain-name { type string; description "Fully qualified domain name for subject-alt-name"; } leaf email { type string; description "Email address"; } leaf subject { type string; mandatory true; description "DC=<Domain component>,CN=<Common-Name>,OU=<Organizational-Unit-name>,O=<Organization-name>,SN=<Serial-Number>,L=<Locality>,ST=<state>,C=<Country>"; } leaf ca-profile { type string { length "1 .. 32"; } mandatory true; description "Certificate authority profile"; } leaf ca-dn { type string; description "Subject DN for CMPv2 server, if CA certificate is not enrolled"; } leaf ca-secret { type string; mandatory true; description "Initial Authentication Key, received from CMPv2 server"; } leaf ca-reference { type string; mandatory true; description "Reference value associated with secret, received from CMPv2 server"; } } output { choice output_c { leaf output { type string; } anyxml local-certificate-enroll-cmpv2; anyxml multi-routing-engine-results; } // choice output_c } } // rpc node-local-local-certificate-enroll-cmpv2 rpc node-local-local-certificate-enroll-scep { description "Enroll end-entity certificate using SCEP protocol"; input { leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } leaf ca-profile { type string { length "1 .. 32"; } mandatory true; description "Certificate authority profile"; } leaf challenge-password { type string; mandatory true; description "Password used by CA for enrollment and revocation"; } leaf scep-encryption-algorithm { type enumeration { enum "des" { value 0; description "DES Encryption"; } enum "des3" { value 1; description "DES-3 Encryption (default)"; } } description "Encrypion algorithm used for SCEP-PKCS7"; } leaf scep-digest-algorithm { type enumeration { enum "md5" { value 0; description "MD-5 digest"; } enum "sha1" { value 1; description "SHA-1 digest (default)"; } } description "Hash algorithm used for SCEP-PKCS7"; } leaf ip-address { type jt:ipaddr; description "Static IP address of the device"; } leaf ipv6-address { type jt:ipv6addr; description "Static IPv6 address of the device for subject-alt-name"; } leaf domain-name { type string; description "Fully qualified domain name for subject-alt-name"; } leaf email { type string; description "Email address"; } leaf subject { type string; mandatory true; description "DC=<Domain component>,CN=<Common-Name>,OU=<Organizational-Unit-name>,O=<Organization-name>,SN=<Serial-Number>,L=<Locality>,ST=<state>,C=<Country>"; } leaf validity-start-time { type jt:time; status deprecated; description "Certificate validity start time (YYYY-MM-DD.HH:MM:SS)"; } leaf validity-end-time { type jt:time; status deprecated; description "Certificate validity end time (YYYY-MM-DD.HH:MM:SS)"; } leaf digest { type enumeration { enum "sha-1" { value 0; description "SHA-1 digests (default value)"; } enum "sha-256" { value 1; description "SHA-256 digests"; } } description "Hash algorithm for signing RSA certificates"; } } output { choice output_c { leaf output { type string; } anyxml local-certificate-enroll-scep; anyxml multi-routing-engine-results; } // choice output_c } } // rpc node-local-local-certificate-enroll-scep rpc load-node-local-local-certificate { description "Load the certificate onto the routing platform"; input { uses command-forwarding; choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } leaf filename { type string; mandatory true; description "File pathname containing certificate to load"; } leaf key { type string; description "File pathname containing the private key/key-pair to load"; } leaf passphrase { type string; description "Passphrase of the private key/key-pair (PEM) file"; } } output { choice output_c { leaf output { type string; } anyxml cert-load-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc load-node-local-local-certificate rpc verify-pki-node-local-local-certificate { description "Verify the certificate"; input { uses command-forwarding; choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } } output { choice output_c { leaf output { type string; } anyxml node-local-verify-cert; anyxml multi-routing-engine-results; } // choice output_c } } // rpc verify-pki-node-local-local-certificate rpc generate-node-local-self-signed-certificate { description "Generate a self-signed certificate"; input { uses command-forwarding; choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } leaf domain-name { type string; mandatory true; description "Fully qualified domain name"; } leaf ip-address { type jt:ipaddr; description "Static IP address of the device"; } leaf email { type string; description "Email address of the entity owning the certificate"; } leaf subject { type string; mandatory true; description "DC=<Domain component>,CN=<Common-Name>,OU=<Organizational-Unit-name>,O=<Organization-name>,SN=<Serial-Number>,L=<Locality>,ST=<state>,C=<Country>"; } leaf add-ca-constraint { type empty; description "Certificate can be used for signing other certificates."; } leaf digest { type enumeration { enum "sha-1" { value 0; description "SHA-1 digests"; } enum "sha-256" { value 1; description "SHA-256 digests (default value)"; } } description "Hash algorithm for signing RSA certificates"; } } output { choice output_c { leaf output { type string; } anyxml node-local-self-signed; anyxml multi-routing-engine-results; } // choice output_c } } // rpc generate-node-local-self-signed-certificate rpc node-local-local-certificate-re-enroll { description "Re-enroll router certificate with CA online"; output { choice output_c { leaf output { type string; } anyxml local-certificate-re-enroll; anyxml multi-routing-engine-results; } // choice output_c } } // rpc node-local-local-certificate-re-enroll rpc node-local-local-cert-re-enroll-cmpv2 { description "Enroll certificate using CMPv2 protocol"; input { choice daemon-select { leaf logical-system { type string; description "Name of logical system, or 'all'"; } } // choice daemon-select leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } leaf ca-profile { type string { length "1 .. 32"; } description "Certificate authority profile"; } leaf re-generate-keypair { type empty; description "Generate new keypair for re-enrollment"; } } output { choice output_c { leaf output { type string; } anyxml local-cert-re-enroll-cmpv2; anyxml multi-routing-engine-results; } // choice output_c } } // rpc node-local-local-cert-re-enroll-cmpv2 rpc node-local-local-cert-re-enroll-scep { description "Enroll end-entity certificate using SCEP protocol"; input { choice daemon-select { leaf logical-system { type string; description "Name of logical system, or 'all'"; } } // choice daemon-select leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } leaf ca-profile { type string { length "1 .. 32"; } description "Certificate authority profile"; } leaf challenge-password { type string; mandatory true; description "Password used by CA for enrollment and revocation"; } leaf re-generate-keypair { type empty; description "Generate new keypair for re-enrollment"; } leaf scep-encryption-algorithm { type enumeration { enum "des" { value 0; description "DES Encryption"; } enum "des3" { value 1; description "DES-3 Encryption (default)"; } } description "Encrypion algorithm used for SCEP-PKCS7"; } leaf scep-digest-algorithm { type enumeration { enum "md5" { value 0; description "MD-5 digest"; } enum "sha1" { value 1; description "SHA-1 digest (default)"; } } description "Hash algorithm used for SCEP-PKCS7"; } } output { choice output_c { leaf output { type string; } anyxml local-cert-re-enroll-scep; anyxml multi-routing-engine-results; } // choice output_c } } // rpc node-local-local-cert-re-enroll-scep rpc node-local-local-certificate-export { description "Export Certificate"; input { uses command-forwarding; choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier"; } leaf filename { type string; mandatory true; description "Local location for copy of certificate."; } leaf type { type enumeration { enum "pem" { value 0; description "PEM format"; } enum "der" { value 1; description "DER format"; } } default "pem"; description "Type of certificate."; } } output { choice output_c { leaf output { type string; } anyxml local-certificate-export; anyxml multi-routing-engine-results; } // choice output_c } } // rpc node-local-local-certificate-export rpc node-local-key-pair-export { description "Export Keypair in PEM format"; input { uses command-forwarding; choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select leaf certificate-id { type string { length "1 .. 32"; } mandatory true; description "Certificate identifier for keypair"; } leaf filename { type string; mandatory true; description "Local location for copy of keypair."; } leaf type { type enumeration { enum "pem" { value 0; description "PEM format"; } enum "der" { value 1; description "DER format"; } } default "pem"; description "Type of key-pair."; } leaf passphrase { type string; mandatory true; description "Passphrase of the private key/key-pair (PEM) file"; } } output { choice output_c { leaf output { type string; } anyxml key-pair-export; anyxml multi-routing-engine-results; } // choice output_c } } // rpc node-local-key-pair-export rpc verify-integrity-status { description "Check the integrity of PKI files (in CC mode)"; input { uses command-forwarding; choice daemon-select { case logical-system { } // case logical-system } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml verify-integrity-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc verify-integrity-status rpc request-pki-debug-memory-profile { description "Enable or disable memory profile"; input { leaf profile-state { type enumeration { enum "enable" { value 0; description "Enable PKI memory profiling"; } enum "disable" { value 1; description "Disable PKI memory profiling"; } enum "dump" { value 2; description "Dump PKI memory profile debug info"; } } mandatory true; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-pki-debug-memory-profile rpc request-idp-policy-load { description "Load a compiled policy"; input { uses command-forwarding; leaf policy { type string; description "Compiled policy file name"; } leaf no-ai { type empty; description "Application identification flag"; } leaf detector { type string; description "Detector file name"; } } output { choice output_c { leaf output { type string; } anyxml request-idp-policy-load; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-idp-policy-load rpc request-idp-storage-cleanup { description "Delete non-essential idp files for freeing up disk space"; input { uses command-forwarding; choice cleanup-choice { leaf cache-files { type empty; description "Deletes DFA cache files used for optimizing idp policy compilation"; } leaf downloaded-files { type empty; description "Deletes downloaded security-package files (doesn't affect installed database)"; } } // choice cleanup-choice } output { choice output_c { leaf output { type string; } anyxml request-idp-storage-cleanup; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-idp-storage-cleanup rpc request-idp-security-package-install { description "Update attack database, active policy, detector with new package"; input { uses command-forwarding; choice re-selector-idpd { case re0 { } // case re0 case re1 { } // case re1 } // choice re-selector-idpd choice install-choice { leaf update-attack-database-only { type empty; description "Don't update/push active policy or detector to data plane"; } leaf policy-templates { type empty; description "Update previously installed policy-templates with newly downloaded ones"; } leaf precompiled-policy { type empty; description "Update dataplane 'Recommended' policy and detector for it with newly downloaded ones"; } leaf older-detector { type empty; description "Update dataplane with older detector"; } leaf status { type empty; description "Retrieve the status of security package load operation"; } leaf policy-template-result { type empty; description "Status of policy templates operation"; } } // choice install-choice } output { choice output_c { leaf output { type string; } anyxml secpack-update-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-idp-security-package-install rpc request-idp-security-package-download { description "Download security package (Package includes detector and deltas for attack table)"; input { uses command-forwarding; choice re-selector-idpd { case re0 { } // case re0 case re1 { } // case re1 } // choice re-selector-idpd choice download-choice { leaf full-update { type empty; description "Download package with complete attack table"; } leaf package-option { type enumeration { enum "check-server" { value 0; description "Retrieve version information for latest package on server"; } enum "policy-templates" { value 1; description "Download policy templates"; } enum "precompiled-policy" { value 2; description "Download pre-compiled 'Recommended' policy and detector for it"; } } } leaf status { type empty; description "Retrieve the status of security package download operation"; } leaf policy-template-file { type empty; description "Current status of policy template file"; } leaf policy-template-result { type empty; description "Status of policy templates operation"; } } // choice download-choice } output { choice output_c { leaf output { type string; } anyxml secpack-download-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-idp-security-package-download rpc request-idp-security-package-download-version { description "Version of package to download"; input { uses command-forwarding; choice re-selector-idpd { case re0 { } // case re0 case re1 { } // case re1 } // choice re-selector-idpd leaf version-value { type union { type uint32; type string { pattern "<.*>|$.*"; } } mandatory true; description "Version number"; } leaf full-update { type empty; description "Download package with complete attack table"; } } output { choice output_c { leaf output { type string; } anyxml secpack-download-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-idp-security-package-download-version rpc request-idp-security-package-offline-download { description "Unzip the security package and copy the xml files"; input { uses command-forwarding; choice re-selector-idpd { case re0 { } // case re0 case re1 { } // case re1 } // choice re-selector-idpd choice offline-download-choice { leaf package-path { type string; description "Package path of the zipped security package "; } leaf status { type empty; description "Retrieve the status of offline package download operation"; } } // choice offline-download-choice } output { choice output_c { leaf output { type string; } anyxml offline-download-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-idp-security-package-offline-download rpc request-idp-security-package-rollback { description "Rollback attack database, active policy, detector"; input { uses command-forwarding; choice re-selector-idpd { case re0 { } // case re0 case re1 { } // case re1 } // choice re-selector-idpd choice rollback-choice { leaf status { type empty; description "Retrieve the status of package rollback operation"; } } // choice rollback-choice } output { choice output_c { leaf output { type string; } anyxml request-idp-security-package-rollback-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-idp-security-package-rollback rpc jist-conversion-information { description "JIST conversion of snort rules to Juniper Signatures"; input { uses command-forwarding; choice re-selector-idpd { case re0 { } // case re0 case re1 { } // case re1 } // choice re-selector-idpd leaf input-file { type string; mandatory true; description "Snort rules file"; } leaf output-file { type string; description "Redirect converted attacks-set commands to this file"; } } output { choice output_c { leaf output { type string; } anyxml jist-conversion-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc jist-conversion-information rpc request-interface-operation { description "Perform interface operations"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-interface-operation rpc revert-redundancy-interface-to-primary { description "Revert redundancy interface to its primary"; input { leaf interface-name { type union { type jt:interface-wildcard; type string { pattern "<.*>|$.*"; } } mandatory true; description "Name of interface"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc revert-redundancy-interface-to-primary rpc switch-redundancy-interface-to-secondary { description "Switch redundancy interface over to its secondary"; input { leaf interface-name { type union { type jt:interface-wildcard; type string { pattern "<.*>|$.*"; } } mandatory true; description "Name of interface"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc switch-redundancy-interface-to-secondary rpc request-switch-anchor { description "Manually switch the anchoring device."; input { leaf anchoring-device-name { type string; description "Anchoring PFE or FPC name."; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-switch-anchor rpc request-intf-modem-reset { description "Reset the modem device"; input { leaf interface-name { type string; mandatory true; description "Name of physical interface"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-intf-modem-reset rpc request-load-balancing-revert { description "Revert load-balancing member interface"; input { leaf interface-name { type union { type jt:interface-wildcard; type string { pattern "<.*>|$.*"; } } mandatory true; description "Name of member-interface"; } } output { choice output_c { leaf output { type string; } anyxml load-balancing-revert; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-load-balancing-revert rpc request-load-balancing-switchover { description "Switch load-balancing member interface to backup"; input { leaf interface-name { type union { type jt:interface-wildcard; type string { pattern "<.*>|$.*"; } } mandatory true; description "Name of member interface"; } leaf force { type empty; description "Force a active member switchover"; } } output { choice output_c { leaf output { type string; } anyxml rdd-action-result; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-load-balancing-switchover rpc request-interface-mcae-switchover { description "Request MC-AE mastership switchover"; input { leaf mcae-id { type union { type uint16; type string { pattern "<.*>|$.*"; } } mandatory true; description "MC-AE id"; } } output { choice output_c { leaf output { type string; } anyxml interface-mcae-switchover; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-interface-mcae-switchover rpc request-interface-mcae-switchover-immediate { description "Request MC-AE mastership switchover immediate"; input { leaf mcae-id { type union { type uint16; type string { pattern "<.*>|$.*"; } } mandatory true; description "MC-AE id"; } } output { choice output_c { leaf output { type string; } anyxml interface-mcae-switchover-immediate; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-interface-mcae-switchover-immediate rpc request-interface-link-degade-recover { description "Perform manual link recovery"; input { leaf interface-name { type union { type jt:interface-device; type string { pattern "<.*>|$.*"; } } mandatory true; description "Name of interface"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-interface-link-degade-recover rpc request-rebalance-interface { description "Request rebalance of interfaces on the interface"; input { leaf interface-name { type string; mandatory true; description "Name of the interface"; } } output { choice output_c { leaf output { type string; } anyxml rebalance-interface; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-rebalance-interface rpc extension-service-start { description "Start JET application"; input { leaf invoke-debugger { type enumeration { enum "cli" { value 0; description "Invoke debugger in cli"; } } description "Invoke extension-service in debugger mode"; } leaf application-name { type jt:filename; mandatory true; description "Application name"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc extension-service-start rpc extension-service-stop { description "Stop JET application"; input { leaf application-name { type jt:filename; mandatory true; description "Application name"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc extension-service-stop rpc mgd-jnu-role { description "JNU Role"; input { uses command-forwarding; leaf jnu-role { type enumeration { enum "controller" { value 0; description "Controller"; } enum "satellite" { value 1; description "Satellite"; } } mandatory true; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc mgd-jnu-role rpc mgd-jnu-schema-delete { description "Delete a JNU satellite schema"; input { leaf model { type string; mandatory true; description "Satellite model"; } leaf version { type string; mandatory true; description "Satellite version"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc mgd-jnu-schema-delete rpc mgd-jnu-schema-merge { description "Merge JNU schema to this controller"; input { leaf satschema { type jt:filename; mandatory true; description "Satellite Schema Path"; } leaf conschema { type jt:filename; mandatory true; description "Controller Schema Path"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc mgd-jnu-schema-merge rpc mgd-jnu-schema-add { description "Add JNU schema to this controller"; input { leaf model { type string; mandatory true; description "Satellite model"; } leaf version { type string; mandatory true; description "Satellite version"; } leaf filename { type jt:filename; mandatory true; description "Satellite schema TLV package filename"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc mgd-jnu-schema-add rpc clear-jdaf-command-client-stats { description "Clear JDAF client side statistics"; output { choice output_c { leaf output { type string; } anyxml jdaf-request-no-response; anyxml multi-routing-engine-results; } // choice output_c } } // rpc clear-jdaf-command-client-stats rpc clear-jdaf-command-server-stats { description "Clear JDAF server statistics"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc clear-jdaf-command-server-stats rpc clear-jdaf-config-client-stats { description "Clear JDAF client side statistics"; output { choice output_c { leaf output { type string; } anyxml jdaf-request-no-response; anyxml multi-routing-engine-results; } // choice output_c } } // rpc clear-jdaf-config-client-stats rpc clear-jdaf-config-server-stats { description "Clear JDAF server statistics"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc clear-jdaf-config-server-stats rpc clear-jdaf-firewall-client-stats { description "Clear JDAF client side statistics"; input { leaf client-id { type union { type uint32; type string { pattern "<.*>|$.*"; } } default "0"; description "Client id"; } } output { choice output_c { leaf output { type string; } anyxml jdaf-request-no-response; anyxml multi-routing-engine-results; } // choice output_c } } // rpc clear-jdaf-firewall-client-stats rpc clear-jdaf-firewall-server-stats { description "Clear JDAF server statistics"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc clear-jdaf-firewall-server-stats rpc clear-jdaf-interface-client-stats { description "Clear JDAF client side statistics"; input { leaf client-id { type union { type uint32; type string { pattern "<.*>|$.*"; } } default "0"; description "Client id"; } } output { choice output_c { leaf output { type string; } anyxml jdaf-request-no-response; anyxml multi-routing-engine-results; } // choice output_c } } // rpc clear-jdaf-interface-client-stats rpc clear-jdaf-interface-server-stats { description "Clear JDAF server statistics"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc clear-jdaf-interface-server-stats rpc clear-jdaf-route-client-stats { description "Clear JDAF client side statistics"; input { leaf client-id { type union { type uint32; type string { pattern "<.*>|$.*"; } } default "0"; description "Client id"; } } output { choice output_c { leaf output { type string; } anyxml jdaf-request-no-response; anyxml multi-routing-engine-results; } // choice output_c } } // rpc clear-jdaf-route-client-stats rpc clear-jdaf-route-server-stats { description "Clear JDAF server statistics"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc clear-jdaf-route-server-stats rpc request-dhcp-server-reconfigure-information { description "Perform DHCP server reconfigure operation"; input { choice reconfigure-choice { leaf address { type string; description "IP address or MAC address or Session Id of DHCP client binding"; } leaf all { type empty; description "Reconfigure all clients"; } } // choice reconfigure-choice leaf routing-instance { type string; description "Name of routing instance"; } choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcp-server-reconfigure-information rpc request-dhcp-server-reconfigure-interface { description "Name of interface"; input { leaf interface-name { type string; mandatory true; description "Name of interface"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcp-server-reconfigure-interface rpc request-dhcp-server-regenerate-persistent-file { description "Triggers the flat file backup operation"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcp-server-regenerate-persistent-file rpc request-dhcp-server-restore-client-from-file { description "Triggers the flat file restore operation"; input { leaf from-file { type empty; mandatory true; description "Restore subscribers from file"; } choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcp-server-restore-client-from-file rpc request-dhcp-client-renew-information { description "Request DHCP client renew"; input { choice renew-choice { leaf interface { type string; description "Interface name of DHCP client"; } leaf all { type empty; description "Renew all clients"; } } // choice renew-choice leaf routing-instance { type string; description "Name of routing instance"; } choice lsys-tenant { } // choice lsys-tenant choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcp-client-renew-information rpc request-dhcp-relay-leasequery { description "Perform DHCP relay leasequery operation"; input { leaf address { type string; mandatory true; description "Query by IPv4 address or mac-address or Client-ID"; } leaf gateway-address { type string; mandatory true; description "Giaddr of leasequery packet"; } choice query-server { leaf server-address { type string; description "Send leasequery to server address"; } leaf server-group { type string; description "Send leasequery to servers in server-group"; } } // choice query-server leaf routing-instance { type string; description "Name of routing instance"; } choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcp-relay-leasequery rpc request-dhcp-relay-bulk-leasequery { description "Perform DHCP relay bulk leasequery operation"; input { leaf address { type string; description "Query by IPv4 address or mac-address or Client-ID"; } choice query-server { leaf server-address { type string; description "Send leasequery to server address"; } leaf server-group { type string; description "Send leasequery to servers in server-group"; } } // choice query-server leaf all-configured-ip { type empty; description "Query by all-configure-ip-addresss"; } leaf routing-instance { type string; description "Name of routing instance"; } choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcp-relay-bulk-leasequery rpc request-dhcp-relay-bulk-leasequery-relay-id { description "Query by relay-id"; input { leaf relay-id { type string; mandatory true; description "Query by relay-id"; } choice query-server { leaf server-address { type string; description "Send leasequery to server address"; } leaf server-group { type string; description "Send leasequery to servers in server-group"; } } // choice query-server leaf routing-instance { type string; description "Name of routing instance"; } choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcp-relay-bulk-leasequery-relay-id rpc request-dhcp-relay-bulk-leasequery-remote-id { description "Query by remote-id"; input { leaf remote-id { type string; mandatory true; description "Query by remote-id"; } choice query-server { leaf server-address { type string; description "Send leasequery to server address"; } leaf server-group { type string; description "Send leasequery to servers in server-group"; } } // choice query-server leaf routing-instance { type string; description "Name of routing instance"; } choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcp-relay-bulk-leasequery-remote-id rpc request-dhcp-relay-active-leasequery { description "Request DHCP active-leasequery operations"; input { leaf discover-neighbor { type empty; mandatory true; description "Discover neighbors capable of hosting subscribers"; } leaf routing-instance { type string; description "Name of routing instance"; } choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcp-relay-active-leasequery rpc request-dhcp-relay-alq-peer { description "Active-leasequery peer"; input { leaf peer-address { type jt:ipaddr; mandatory true; description "Active-leasequery peer address"; } leaf routing-instance { type string; description "Name of routing instance"; } choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcp-relay-alq-peer rpc request-dhcp-relay-alq-interface { description "Active-leasequery interface"; input { leaf interface-name { type string; mandatory true; description "Active-leasequery interface name"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcp-relay-alq-interface rpc request-dhcp-relay-regenerate-persistent-file { description "Triggers the flat file backup operation"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcp-relay-regenerate-persistent-file rpc request-dhcp-relay-restore-client-from-file { description "Triggers the flat file restore operation"; input { leaf from-file { type empty; mandatory true; description "Restore subscribers from file"; } choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcp-relay-restore-client-from-file rpc request-dhcp-regenerate-persistent-file { description "Triggers the flat file backup operation"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcp-regenerate-persistent-file rpc request-dhcp-restore-client-from-file { description "Triggers the flat file restore operation"; input { leaf from-file { type empty; mandatory true; description "Restore subscribers from file"; } choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcp-restore-client-from-file rpc request-dhcpv6-client-renew-information { description "Request DHCP client renew"; input { choice renew-choice { leaf interface { type string; description "Interface name of DHCP client"; } leaf all { type empty; description "Renew all clients"; } } // choice renew-choice leaf routing-instance { type string; description "Name of routing instance"; } choice lsys-tenant { } // choice lsys-tenant choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcpv6-client-renew-information rpc request-dhcpv6-server-reconfigure-information { description "Perform DHCPv6 server reconfigure operation"; input { choice reconfigure-choice { leaf address { type string; description "IPv6 Prefix, session-id or CID of DHCPv6 client binding"; } leaf all { type empty; description "Reconfigure all clients"; } } // choice reconfigure-choice leaf routing-instance { type string; description "Name of routing instance"; } choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcpv6-server-reconfigure-information rpc request-dhcpv6-server-reconfigure-interface { description "Name of interface"; input { leaf interface-name { type string; mandatory true; description "Name of interface"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcpv6-server-reconfigure-interface rpc request-dhcpv6-server-regenerate-persistent-file { description "Triggers the flat file backup operation"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcpv6-server-regenerate-persistent-file rpc request-dhcpv6-server-restore-client-from-file { description "Triggers the flat file restore operation"; input { leaf from-file { type empty; mandatory true; description "Restore subscribers from file"; } choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcpv6-server-restore-client-from-file rpc request-dhcpv6-relay-leasequery { description "Perform DHCPv6 relay leasequery operation"; input { leaf address { type string; mandatory true; description "Query by IPv6 Prefix or CID of DHCPv6 client binding"; } choice query-server { leaf server-address { type string; description "Send leasequery to server address"; } leaf server-group { type string; description "Send leasequery to servers in server-group"; } } // choice query-server leaf routing-instance { type string; description "Name of routing instance"; } choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcpv6-relay-leasequery rpc request-dhcpv6-relay-bulk-leasequery { description "Perform DHCPv6 relay bulk leasequery operation"; input { leaf address { type string; description "Query by IPv6 Prefix or CID of DHCPv6 client binding"; } choice query-server { leaf server-address { type string; description "Send leasequery to server address"; } leaf server-group { type string; description "Send leasequery to servers in server-group"; } } // choice query-server leaf routing-instance { type string; description "Name of routing instance"; } choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcpv6-relay-bulk-leasequery rpc request-dhcpv6-relay-bulk-leasequery-relay-id { description "Query by relay-id"; input { leaf relay-id { type string; mandatory true; description "Query by relay-id"; } choice query-server { leaf server-address { type string; description "Send leasequery to server address"; } leaf server-group { type string; description "Send leasequery to servers in server-group"; } } // choice query-server leaf routing-instance { type string; description "Name of routing instance"; } choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcpv6-relay-bulk-leasequery-relay-id rpc request-dhcpv6-relay-bulk-leasequery-link-addr { description "Query by link-address"; input { leaf link-addr { type string; mandatory true; description "Query by link-address"; } choice query-server { leaf server-address { type string; description "Send leasequery to server address"; } leaf server-group { type string; description "Send leasequery to servers in server-group"; } } // choice query-server leaf routing-instance { type string; description "Name of routing instance"; } choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcpv6-relay-bulk-leasequery-link-addr rpc request-dhcpv6-relay-bulk-leasequery-remote-id { description "Query by remote-id"; input { leaf remote-id { type string; mandatory true; description "Query by remote-id"; } choice query-server { leaf server-address { type string; description "Send leasequery to server address"; } leaf server-group { type string; description "Send leasequery to servers in server-group"; } } // choice query-server leaf routing-instance { type string; description "Name of routing instance"; } choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcpv6-relay-bulk-leasequery-remote-id rpc request-dhcpv6-relay-regenerate-persistent-file { description "Triggers the flat file backup operation"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcpv6-relay-regenerate-persistent-file rpc request-dhcpv6-relay-restore-client-from-file { description "Triggers the flat file restore operation"; input { leaf from-file { type empty; mandatory true; description "Restore subscribers from file"; } choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcpv6-relay-restore-client-from-file rpc request-dhcpv6-relay-active-leasequery { description "Request DHCP active-leasequery operations"; input { leaf discover-neighbor { type empty; mandatory true; description "Discover neighbors capable of hosting subscribers"; } leaf routing-instance { type string; description "Name of routing instance"; } choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcpv6-relay-active-leasequery rpc request-dhcpv6-relay-alq-peer { description "Active-leasequery peer"; input { leaf peer-address { type jt:ipaddr; mandatory true; description "Active-leasequery peer address"; } leaf routing-instance { type string; description "Name of routing instance"; } choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcpv6-relay-alq-peer rpc request-dhcpv6-relay-alq-interface { description "Active-leasequery interface"; input { leaf interface-name { type string; mandatory true; description "Active-leasequery interface name"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dhcpv6-relay-alq-interface rpc request-as-ra-guard-forward-interface { description "Name of interface"; input { leaf interface-name { type union { type jt:interface-name; type string { pattern "<.*>|$.*"; } } mandatory true; description "Name of interface"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-as-ra-guard-forward-interface rpc request-as-ra-guard-block-interface { description "Name of interface"; input { leaf interface-name { type union { type jt:interface-name; type string { pattern "<.*>|$.*"; } } mandatory true; description "Name of interface"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-as-ra-guard-block-interface rpc request-as-ra-guard-learn-interface { description "RA Guard Learn on an Interface"; input { leaf interface { type union { type jt:interface-name; type string { pattern "<.*>|$.*"; } } mandatory true; description "RA Guard Learn on an interface"; } leaf duration { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 3600"; } } units "seconds"; mandatory true; description "Time window for RA Guard learn"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-as-ra-guard-learn-interface rpc request-slaac-unblock-all { description "Unblock all interfaces"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-slaac-unblock-all rpc request-slaac-unblock-interface { description "Name of interface to unblock"; input { leaf interface-name { type union { type jt:interface-name; type string { pattern "<.*>|$.*"; } } mandatory true; description "Interface-name"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-slaac-unblock-interface rpc request-static-subscribers-login { description "Login static subscribers"; input { choice filter { leaf interface { type union { type jt:interface-name; type string { pattern "<.*>|$.*"; } } description "Interface name"; } leaf group { type string { length "1 .. 64"; } description "Group name"; } } // choice filter } output { choice output_c { leaf output { type string; } anyxml static-subscribers-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-static-subscribers-login rpc request-static-subscribers-logout { description "Logout static subscribers"; input { choice filter { leaf interface { type union { type jt:interface-name; type string { pattern "<.*>|$.*"; } } description "Interface name"; } leaf group { type string { length "1 .. 64"; } description "Group name"; } } // choice filter } output { choice output_c { leaf output { type string; } anyxml static-subscribers-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-static-subscribers-logout rpc twamp-test-start { description "Start TWAMP test sessions"; input { leaf control-connection { type string; default "all"; description "Name of the control connection"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc twamp-test-start rpc twamp-test-stop { description "Stop TWAMP test sessions"; input { leaf control-connection { type string; default "all"; description "Name of the control connection"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc twamp-test-stop rpc request-services-flow-collector-test-file-transfer { description "Transfer a test file to the current primary server"; input { leaf filename { type string; mandatory true; description "Specify the filename to use"; } leaf channel { type enumeration { enum "channel-zero" { value 0; description "Channel 0"; } enum "channel-one" { value 1; description "Channel 1"; } } description "File transfer channel to use"; } leaf destination-type { type enumeration { enum "primary" { value 0; description "Primary server"; } enum "secondary" { value 1; description "Secondary server"; } } } leaf interface { type string; mandatory true; description "Interface name"; } } output { choice output_c { leaf output { type string; } anyxml flow-collector-test-file-transfer-response; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-services-flow-collector-test-file-transfer rpc request-services-flow-collector-destination { description "Change to Destination server"; input { leaf destination-type { type enumeration { enum "primary" { value 0; description "Primary server"; } enum "secondary" { value 1; description "Secondary server"; } } mandatory true; description "Destination server"; } leaf interface { type union { type jt:interface-device; type string { pattern "<.*>|$.*"; } } mandatory true; description "Physical interface"; } leaf clear-files { type empty; description "Remove existing files"; } leaf clear-logs { type empty; description "Remove existing logs"; } leaf how-to-switch { type enumeration { enum "gracefully" { value 0; description "Retain existing FTP connections"; } enum "immediately" { value 1; description "Terminate existing FTP connections"; } } default "gracefully"; description "Options when switching destination"; } } output { choice output_c { leaf output { type string; } anyxml flow-collector-destination-response; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-services-flow-collector-destination rpc request-extensible-subscriber-services-reload-dictionary { description "Reload dictionary"; output { choice output_c { leaf output { type string; } anyxml extensible-subscriber-services-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-extensible-subscriber-services-reload-dictionary rpc request-appid-protocol-bundle-load { description "Load a QM protocols bundle dynamically"; input { uses command-forwarding; leaf proto_bundle { type string; description "Protocol Bundle file name"; } } output { choice output_c { leaf output { type string; } anyxml request-appid-protocol-bundle-load; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-appid-protocol-bundle-load rpc request-appid-protocol-bundle-unload { description "UnLoad a QM protocols bundle dynamically"; input { uses command-forwarding; leaf proto_bundle { type string; description "Protocol Bundle file name"; } } output { choice output_c { leaf output { type string; } anyxml request-appid-protocol-bundle-unload; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-appid-protocol-bundle-unload rpc request-appid-application-package-download { description "Download application package"; output { choice output_c { leaf output { type string; } anyxml appid-download-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-appid-application-package-download rpc request-appid-application-package-download-version { description "Version of application package to download"; input { leaf version-value { type union { type string { pattern "<.*>|$.*"; } type uint16 { range "1 .. 65535"; } } mandatory true; description "Version number (1 - 65535)"; } } output { choice output_c { leaf output { type string; } anyxml appid-download-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-appid-application-package-download-version rpc request-appid-application-package-download-status { description "Display download status"; output { choice output_c { leaf output { type string; } anyxml appid-download-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-appid-application-package-download-status rpc request-appid-application-package-download-check-server { description "Retrieve version information for latest package on server"; output { choice output_c { leaf output { type string; } anyxml appid-check-server; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-appid-application-package-download-check-server rpc request-appid-application-package-install { description "Install application package"; output { choice output_c { leaf output { type string; } anyxml appid-install-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-appid-application-package-install rpc request-appid-application-package-install-status { description "Display install status"; output { choice output_c { leaf output { type string; } anyxml appid-install-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-appid-application-package-install-status rpc request-appid-force-install { description "Ignore version check during sigpack installation"; output { choice output_c { leaf output { type string; } anyxml appid-force-install; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-appid-force-install rpc request-appid-sigpack-rollback { description "Rollback application package"; output { choice output_c { leaf output { type string; } anyxml appid-rollback-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-appid-sigpack-rollback rpc request-appid-sigpack-rollback-status { description "Display rollback status"; output { choice output_c { leaf output { type string; } anyxml appid-rollback-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-appid-sigpack-rollback-status rpc request-appid-application-package-uninstall { description "Uninstall predefined application package"; output { choice output_c { leaf output { type string; } anyxml appid-apppack-uinstall; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-appid-application-package-uninstall rpc request-appid-application-package-uninstall-status { description "Display uninstall status"; output { choice output_c { leaf output { type string; } anyxml appid-uninstall-status; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-appid-application-package-uninstall-status rpc request-appid-application-predefined-disable { description "Disable a predefined application"; input { uses command-forwarding; leaf application-name { type string; mandatory true; description "Predefined application name"; } leaf no-commit { type empty; status deprecated; description "Do not re-compile signatures"; } } output { choice output_c { leaf output { type string; } anyxml appid-application-predefined-disable; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-appid-application-predefined-disable rpc request-appid-application-predefined-enable { description "Enable a predefined application"; input { uses command-forwarding; leaf application-name { type string; mandatory true; description "Predefined application name"; } leaf no-commit { type empty; status deprecated; description "Do not re-compile signatures"; } } output { choice output_c { leaf output { type string; } anyxml appid-application-predefined-enable; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-appid-application-predefined-enable rpc request-appid-application-predefined-group-copy { description "Copy a predefined application group into junos configuration"; input { uses command-forwarding; leaf group-name { type string; mandatory true; description "Predefined application group name"; } } output { choice output_c { leaf output { type string; } anyxml appid-application-predefined-group-copy; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-appid-application-predefined-group-copy rpc request-appid-application-predefined-group-disable { description "Disable a predefined application group"; input { uses command-forwarding; leaf group-name { type string; mandatory true; description "Predefined application group name"; } } output { choice output_c { leaf output { type string; } anyxml appid-application-predefined-group-disable; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-appid-application-predefined-group-disable rpc request-appid-application-predefined-group-enable { description "Enable a predefined application group"; input { uses command-forwarding; leaf group-name { type string; mandatory true; description "Predefined application group name"; } } output { choice output_c { leaf output { type string; } anyxml appid-application-predefined-group-enable; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-appid-application-predefined-group-enable rpc rdm-reload-dictionary { description "Reload dictionary"; input { leaf dictionary-path { type jt:filename; mandatory true; description "Complete path with dictionary name"; } } output { choice output_c { leaf output { type string; } anyxml rdm-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc rdm-reload-dictionary rpc rdm-sd-reconfigure { description "Reconfigure service device"; input { leaf service-device-name { type string; mandatory true; description "Service device name"; } } output { choice output_c { leaf output { type string; } anyxml rdm-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc rdm-sd-reconfigure rpc request-netconf-trace { description "NETCONF tracing"; input { leaf on-demand { type enumeration { enum "start" { value 0; description "Start NETCONF tracing"; } enum "stop" { value 1; description "Stop NETCONF tracing"; } } mandatory true; description "Control on-demand tracing"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-netconf-trace rpc request-service-capture-snapshot { description "Request a snapshot of the current packet capture"; input { leaf interface { type string; mandatory true; description "Name of adaptive services interface"; } leaf file { type string; mandatory true; } } output { choice output_c { leaf output { type string; } anyxml service-service-capture-snapshot; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-service-capture-snapshot rpc request-service-capture-clear { description "Clear the current packet capture"; input { leaf interface { type string; mandatory true; description "Name of adaptive services interface"; } } output { choice output_c { leaf output { type string; } anyxml service-service-capture-clear; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-service-capture-clear rpc request-services-redundancy-set { description "Request services redundancy-set"; input { leaf id { type union { type uint32; type string { pattern "<.*>|$.*"; } } mandatory true; description "Set id"; } leaf trigger { type empty; mandatory true; description "Trigger a redundancy-event"; } leaf redundancy-event { type string; mandatory true; description "Redundancy event which needs to be triggered"; } leaf force { type empty; description "Trigger event forcefully overriding warnings"; } } output { choice output_c { leaf output { type string; } anyxml services-redundancy-set-request; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-services-redundancy-set rpc request-flb-maintenance-down { description "Request for destination to go in maintenance-down mode"; input { leaf destination { type string; description "Destination VSRX"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-flb-maintenance-down rpc request-traffic-loadbalance-real-service-rejoin { description "Rejoin for load-balance request"; input { leaf group { type string; default "all"; description "Group name"; } leaf instance { type string; default "all"; description "Instance name"; } leaf real-service { type string; default "all"; description "Real service name"; } leaf virtual-service { type string; default "all"; description "Virtual service name"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-traffic-loadbalance-real-service-rejoin rpc request-url-filter-force-dns-resolution-all { description "All profiles"; output { choice output_c { leaf output { type string; } anyxml force-dns-options; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-url-filter-force-dns-resolution-all rpc request-url-filter-force-dns-resolution-profile { description "Profile name"; input { leaf profile-name { type string; mandatory true; description "Profile name"; } leaf url-filter-template { type string; description "Template name"; } } output { choice output_c { leaf output { type string; } anyxml force-dns-options; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-url-filter-force-dns-resolution-profile rpc request-url-filter-database-update { description "Update the specific url-filter-database"; input { leaf file { type string; mandatory true; description "URL filter database file"; } } output { choice output_c { leaf output { type string; } anyxml update-db-filepath; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-url-filter-database-update rpc request-dns-filter-database-update { description "Update the specific dns-filter-database"; input { choice file_type { leaf file { type string; description "DNS filter database file"; } leaf multi-tenant-file { type enumeration { enum "plain-text" { value 0; description "DNS filter plain-text database file "; } enum "hashed" { value 1; description "DNS filter encrypted database file "; } } description "Multi-tenant-file"; } } // choice file_type } output { choice output_c { leaf output { type string; } anyxml update-db-filepath; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-dns-filter-database-update rpc request-url-filter-validate { description "Validate the web-filter database"; input { choice file { leaf all { type empty; description "Validate the url-filter database for all profiles"; } leaf url-filter-file-name { type string; description "URL filter database file"; } leaf dns-filter-file-name { type string; description "DNS filter database file"; } } // choice file leaf hash-method { type enumeration { enum "hmac-md5-96" { value 0; description "HMAC-MD5-96 algorithm"; } enum "hmac-sha1-96" { value 1; description "HMAC-SHA1-96 algorithm"; } enum "hmac-sha2-256" { value 2; description "HMAC-SHA2-256 algorithm"; } enum "hmac-sha-256-128" { value 3; description "HMAC-SHA-256-128 algorithm"; } } description "Hash method"; } leaf hash-key { type string; description "Hash key"; } } output { choice output_c { leaf output { type string; } anyxml validate-db-options; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-url-filter-validate rpc request-services-url-filter-delete-gencfg-data { description "Gencfg data"; output { choice output_c { leaf output { type string; } anyxml request-delete-gencfg; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-services-url-filter-delete-gencfg-data rpc request-lacp-link-protection-switchover { description "Request LACP link protection switchover"; input { leaf interface-name { type union { type jt:interface-wildcard; type string { pattern "<.*>|$.*"; } } mandatory true; description "Name of AE interface"; } } output { choice output_c { leaf output { type string; } anyxml lacp-link-switchover; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-lacp-link-protection-switchover rpc request-message { description "Send text message to other users"; input { leaf user { type string; mandatory true; description "Name of user (account@terminal) to receive message"; } leaf terminal { type string; description "Device name of target terminal (/dev/ttyXX)"; } leaf message { type string; description "Text of message"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-message rpc request-message-all { description "Send message to all logged-in users"; input { leaf message { type string; description "Text of message"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-message-all rpc request-compute-node-cleanup-log { description "Compute node cleanup /var/tmp and /var/log"; input { uses command-forwarding; leaf compute-cluster { type string { length "1 .. 15"; } description "Compute cluster name"; } leaf compute-node { type string { length "1 .. 15"; } description "Compute node name"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-compute-node-cleanup-log rpc request-compute-node-file-copy { description "Copy file from host to vjunos"; input { leaf host-path { type enumeration { enum "crash" { value 0; description "Files in /var/crash"; } enum "log" { value 1; description "Files in /var/log"; } } mandatory true; description "Copy files related to"; } leaf from-jhost { type string; mandatory true; description "Host file name"; } leaf to-vjunos { type string; mandatory true; description "Junos file name"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-compute-node-file-copy rpc request-guest-virtual-machine-package-copy { description "Copy guest virtual-machine package to Junos"; input { leaf package-name { type string; mandatory true; description "Name of the virtual-machine package"; } leaf destination-path { type string; mandatory true; description "Path to the destination directory in Junos"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-guest-virtual-machine-package-copy rpc request-vmhost-poweroff { description "Power off the software on RE"; input { leaf other-routing-engine { type empty; description "Power off other Routing Engine"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-poweroff rpc request-vmhost-halt { description "Halt the software on RE"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-halt rpc request-vmhost-power-on-other-re { description "Power on the system"; input { leaf other-routing-engine { type empty; mandatory true; description "Power on other Routing Engine"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-power-on-other-re rpc request-vmhost-power-cycle { description "Power cycle the vmhost"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-power-cycle rpc request-vmhost-reboot { description "Reboot RE vmhost"; input { uses command-forwarding; leaf media { type enumeration { enum "disk1" { value 0; description "Boot off disk1(primary) device"; } enum "disk2" { value 1; description "Boot off disk2(backup) device"; } enum "network" { value 2; description "Network boot via PXE"; } enum "usb" { value 3; description "Boot off USB device"; } } } leaf partition { type enumeration { enum "primary" { value 0; description "Boot from primary partition"; } enum "alternate" { value 1; description "Boot from alternate partition"; } } } leaf in { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 100"; } } description "Number of minutes to delay before reboot operation"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-reboot rpc request-vmhost-file-cleanup { description "RE vmhost cleanup /var/tmp, /var/crash and /var/log"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-file-cleanup rpc request-vmhost-file-copy { description "Copy file from vmhost to vjunos"; input { leaf node-path { type enumeration { enum "crash" { value 0; description "Files in /var/crash"; } enum "log" { value 1; description "Files in /var/log"; } } mandatory true; description "Copy files related to"; } leaf from-jnode { type string; mandatory true; description "Host file name"; } leaf to-vjunos { type string; mandatory true; description "Junos file name"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-file-copy rpc request-copy-vjunos-to-jnode { description "Copy file from vjunos to vmhost"; input { leaf from-vjunos { type string; mandatory true; description "Junos file name"; } leaf to-jnode { type string; mandatory true; description "Host file name"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-copy-vjunos-to-jnode rpc request-copy-jnode-to-vjunos { description "Copy file from vmhost to vjunos"; input { leaf from-jnode { type string; mandatory true; description "Host file name"; } leaf to-vjunos { type string; mandatory true; description "Junos file name"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-copy-jnode-to-vjunos rpc request-vmhost-package-add { description "Add extension or upgrade package"; input { leaf i40-driver { type empty; description "Upgrade only the i40 driver"; } choice package-options { leaf-list set { type jt:filename; ordered-by user; description "List of URLs or pathnames corresponding to packages"; } leaf package-name { type jt:filename; description "URL or pathname of package"; } } // choice package-options leaf reboot { type empty; description "Reboot RE vmhost after adding package"; } leaf in { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 100"; } } description "Number of minutes to delay before reboot operation"; } choice re-choice { leaf re0 { type empty; description "Install package on RE0"; } leaf re1 { type empty; description "Install package on RE1"; } } // choice re-choice choice validate_choice { leaf no-validate { type empty; description "Don't check compatibility with current configuration"; } } // choice validate_choice choice chassis { leaf dont-forward { type empty; } } // choice chassis leaf issu-internal { type empty; description "Internally executed by mgd, to allow software adds during issu"; } leaf upgrade-to-model { type string; description "Name of the model to upgrade to"; } leaf unlink { type empty; description "Remove the package after successful installation"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-package-add rpc request-vmhost-package-delete { description "Remove extension or upgrade package"; input { leaf force { type empty; description "Force removal of package (ignore warnings)"; } choice package-options { leaf-list set { type string; ordered-by user; description "List of package name"; } leaf package-name { type string; description "Name of package"; } leaf upgrade-group { type string; description "Satellite upgrade group name"; } leaf version { type string; description "Version of satellite package"; } } // choice package-options leaf reboot { type empty; description "Reboot system after package delete"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-package-delete rpc abort-vmhost-in-service-upgrade { description "Abort in-service software upgrade"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc abort-vmhost-in-service-upgrade rpc request-vmhost-package-in-service-upgrade { description "In-service software upgrade"; input { leaf package-name { type jt:filename; mandatory true; description "URL or pathname of package"; } leaf no-old-master-upgrade { type empty; description "Don't upgrade the old master after switchover"; } leaf verbose { type empty; description "Enable detailed output"; } leaf reboot { type empty; description "Reboot RE vmhost after adding package"; } leaf enhanced-mode { type empty; description "Try to upgrade without any traffic loss"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-package-in-service-upgrade rpc request-vmhost-nonstop-upgrade { description "Nonstop software upgrade"; input { leaf force-host { type empty; description "Force addition of host os package (ignore version check)"; } leaf no-auto-recovery { type empty; description "Will not recover in case of NSSU failure"; } choice package-options { leaf-list set { type jt:filename; ordered-by user; description "List of URLs or pathnames corresponding to packages"; } leaf package-name { type jt:filename; description "URL or pathname of package"; } } // choice package-options leaf no-copy { type empty; status deprecated; description "Don't save copies of package files"; } leaf unlink { type empty; status deprecated; description "Remove the package after successful installation"; } leaf no-validate { type empty; description "Don't check compatibility with current configuration"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-nonstop-upgrade rpc request-vmhost-package-validate { description "Verify package compatibility with current configuration"; input { choice package-options { leaf package-name { type jt:filename; description "URL or pathname of package"; } } // choice package-options choice chassis { leaf member { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Validate package on member"; } leaf dont-forward { type empty; } } // choice chassis } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-package-validate rpc request-vmhost-package-rollback { description "Attempt to roll back to previous set of packages"; input { uses command-forwarding; leaf reboot { type empty; description "Reboot system after rollback"; } } output { choice output_c { leaf output { type string; } anyxml rollback-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-package-rollback rpc request-vmhost-jdm-package-add { description "Install fresh JDM package or upgrade package"; input { leaf package-name { type jt:filename; mandatory true; description "JDM package name"; } leaf force { type empty; description "Force package add"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-jdm-package-add rpc request-vmhost-jdm-package-delete { description "Remove currently installed JDM package"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-jdm-package-delete rpc request-package-vmhost-jdm-start { description "Start the JDM"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-package-vmhost-jdm-start rpc request-package-vmhost-jdm-stop { description "Stop the JDM"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-package-vmhost-jdm-stop rpc request-vmhost-jdm-login { description "Login to JDM"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-jdm-login rpc request-vmhost-snapshot { description "Create a vmhost recovery snapshot"; output { choice output_c { leaf output { type string; } anyxml vmhost-snapshot-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-snapshot rpc request-vmhost-snapshot-partition { description "Partition the target media"; output { choice output_c { leaf output { type string; } anyxml vmhost-snapshot-partition-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-snapshot-partition rpc request-vmhost-snapshot-recovery { description "Recover the primary media from snapshot"; output { choice output_c { leaf output { type string; } anyxml vmhost-snapshot-recovery-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-snapshot-recovery rpc request-vmhost-snapshot-recovery-partition { description "Partition the media before snapshot"; output { choice output_c { leaf output { type string; } anyxml vmhost-snapshot-recovery-partition-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-snapshot-recovery-partition rpc request-vmhost-zeroize { description "Erase all data, including configuration and log files"; output { choice output_c { leaf output { type string; } anyxml vmhost-zeroize-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-zeroize rpc request-vmhost-hard-disk-test { description "Run smartd self tests on hard disks"; input { choice test-type { leaf short { type empty; description "Run short test"; } leaf long { type empty; description "Run SMART extended self test"; } leaf show-status { type empty; description "Display status of test"; } } // choice test-type leaf disk { type string; description "Name of hard disk"; } } output { choice output_c { leaf output { type string; } anyxml raid-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vmhost-hard-disk-test rpc request-snmp-spoof-trap { description "Generate artificial SNMP notification"; input { leaf trap { type string; mandatory true; description "The name of the trap to spoof"; } leaf variable-bindings { type string; description "The list of variables & values to include in the trap"; } } output { choice output_c { leaf output { type string; } anyxml snmp-spoof-trap-results; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-snmp-spoof-trap rpc request-snmp-utility-mib-set { description "Set values in utility mib objects"; input { leaf object-type { type enumeration { enum "counter" { value 0; description "Set counter value"; } enum "counter64" { value 1; description "Set 64 bit counter value"; } enum "integer" { value 2; description "Set signed integer value"; } enum "unsigned-integer" { value 3; description "Set unsigned integer value"; } enum "string" { value 4; description "Set string value"; } } mandatory true; } leaf instance { type string { length "1 .. 80"; } mandatory true; } leaf object-value { type string; mandatory true; } } output { choice output_c { leaf output { type string; } anyxml snmp-utility-mib-results; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-snmp-utility-mib-set rpc request-snmp-utility-mib-clear { description "Clear values in utility mib objects"; input { leaf object-type { type enumeration { enum "counter" { value 0; description "Set counter value"; } enum "counter64" { value 1; description "Set 64 bit counter value"; } enum "integer" { value 2; description "Set signed integer value"; } enum "unsigned-integer" { value 3; description "Set unsigned integer value"; } enum "string" { value 4; description "Set string value"; } } mandatory true; } leaf instance { type string { length "1 .. 80"; } mandatory true; } } output { choice output_c { leaf output { type string; } anyxml snmp-utility-mib-results; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-snmp-utility-mib-clear rpc request-ancp-oam-information { description "Request ANCP operation, administration, and management"; output { choice output_c { leaf output { type string; } anyxml ancp-oam-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-ancp-oam-information rpc request-ancp-oam-neighbor-information { description "Neighbor identifier"; input { choice neighbor-opts { leaf system-name { type string; description "MAC address of the neighbor"; } leaf ip-address { type jt:ipaddr; description "IP address of the neighbor"; } } // choice neighbor-opts leaf subscriber { type string; mandatory true; description "Subscriber identifier"; } leaf count { type union { type string { pattern "<.*>|$.*"; } type uint16 { range "1 .. 32"; } } default "1"; description "Number of local loopback messages"; } leaf timeout { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 255"; } } units "seconds"; default "30"; description "Timeout for loopback response from the neighbor"; } } output { choice output_c { leaf output { type string; } anyxml ancp-oam-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-ancp-oam-neighbor-information rpc request-ancp-oam-interface-information { description "ANCP interface specific options"; input { choice interface-opts { leaf interface-name { type string; description "Name of ANCP interface"; } leaf interface-set { type string; description "Name of ANCP interface set"; } } // choice interface-opts leaf count { type union { type string { pattern "<.*>|$.*"; } type uint16 { range "1 .. 32"; } } default "1"; description "Number of local loopback messages"; } leaf timeout { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 255"; } } units "seconds"; default "30"; description "Timeout for loopback response from the neighbor"; } } output { choice output_c { leaf output { type string; } anyxml ancp-oam-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-ancp-oam-interface-information rpc request-ancp-oam-port-up { description "ANCP port-up processing"; input { choice interface-opts { leaf neighbor { type jt:ipaddr; description "IP address of the neighbor"; } leaf subscriber-interface { type string; description "Subscriber-facing interface"; } } // choice interface-opts leaf circuit-id { type string; mandatory true; description "Access loop circuit id"; } leaf remote-id { type string; mandatory true; description "Access loop remote id"; } leaf outer-vlan-id { type union { type string { pattern "<.*>|$.*"; } type uint16 { range "1 .. 4094"; } } mandatory true; description "Access aggregation circuit id binary"; } } output { choice output_c { leaf output { type string; } anyxml ancp-oam-port-up; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-ancp-oam-port-up rpc request-ancp-oam-port-down { description "ANCP port-down processing"; input { choice interface-opts { leaf neighbor { type jt:ipaddr; description "IP address of the neighbor"; } leaf subscriber-interface { type string; description "Subscriber-facing interface"; } } // choice interface-opts leaf circuit-id { type string; description "Access loop circuit id"; } leaf remote-id { type string; description "Access loop remote id"; } leaf outer-vlan-id { type union { type string { pattern "<.*>|$.*"; } type uint16 { range "1 .. 4094"; } } description "Access aggregation circuit id binary"; } } output { choice output_c { leaf output { type string; } anyxml ancp-oam-port-down; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-ancp-oam-port-down rpc aaa-subscriber-add-service { description "Service activation"; input { leaf session-id { type union { type string { pattern "<.*>|$.*"; } type uint64 { range "1 .. 18446744073709551615"; } } mandatory true; description "Session id"; } leaf service-profile { type string; mandatory true; description "Name of service-profile"; } } output { choice output_c { leaf output { type string; } anyxml aaa-subscriber-add-service-results; anyxml multi-routing-engine-results; } // choice output_c } } // rpc aaa-subscriber-add-service rpc aaa-subscriber-delete-service { description "Service deactivation"; input { leaf session-id { type union { type string { pattern "<.*>|$.*"; } type uint64 { range "1 .. 18446744073709551615"; } } mandatory true; description "Session id"; } leaf service-profile { type string; mandatory true; description "Name of dynamic-profile"; } } output { choice output_c { leaf output { type string; } anyxml aaa-subscriber-delete-service-results; anyxml multi-routing-engine-results; } // choice output_c } } // rpc aaa-subscriber-delete-service rpc aaa-subscriber-modify-variable { description "Modify dynamic variable"; input { leaf session-id { type union { type string { pattern "<.*>|$.*"; } type uint64 { range "1 .. 18446744073709551615"; } } mandatory true; description "Session id"; } leaf junos-cos-traffic-control-profile { type string; description "Modify $junos-cos-traffic-control-profile variable"; } } output { choice output_c { leaf output { type string; } anyxml aaa-subscriber-modify-variable-results; anyxml multi-routing-engine-results; } // choice output_c } } // rpc aaa-subscriber-modify-variable rpc aaa-subscriber-set-parameters { description "Set AAA subscriber parameters"; input { leaf session-id { type union { type string { pattern "<.*>|$.*"; } type uint64 { range "1 .. 18446744073709551615"; } } mandatory true; description "Session id"; } leaf provisioning-state { type enumeration { enum "none" { value 0; description "Set provisioning to none"; } } mandatory true; description "Provisioning state"; } } output { choice output_c { leaf output { type string; } anyxml aaa-subscriber-set-parameters-results; anyxml multi-routing-engine-results; } // choice output_c } } // rpc aaa-subscriber-set-parameters rpc replay-pending-accounting-stops { description "Replay pending acct stops to radius"; output { choice output_c { leaf output { type string; } anyxml replay-pending-accounting-results; anyxml multi-routing-engine-results; } // choice output_c } } // rpc replay-pending-accounting-stops rpc request-accounting-action { description "Accounting suspend or baseline"; input { choice accounting_action { leaf suspend { type empty; description "Suspend accounting"; } leaf baseline { type empty; description "Baseline statistics"; } leaf resume { type empty; description "Resume accounting"; } } // choice accounting_action } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-accounting-action rpc request-auto-configuration-reconnect-pending { description "Request reconnect of pending out-of-band sessions"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-auto-configuration-reconnect-pending rpc request-system-mode-change { description "Change member's current system-mode configuration"; input { uses command-forwarding; leaf mode { type enumeration { enum "mode-104port" { value 0; description "104port-mode. This will restart PFE"; } enum "non-oversubscribed-mode" { value 1; description "Non-oversubscribed-mode. This will restart PFE"; } enum "flexi-pic-mode" { value 2; description "Flexi-pic-mode. This will restart PFE"; } enum "mode-2x100G" { value 3; description "PIC mode configuration 2x100G. This will restart PFE and disable VCP ports"; } enum "default-mode" { value 4; description "Default-mode is oversubscribed mode. This will restart PFE"; } } mandatory true; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-system-mode-change rpc request-chassis-mic { description "Change Media Interface Card status"; input { uses command-forwarding; leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "Slot number of FPC that houses MIC"; } leaf mic-slot { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 1"; } } mandatory true; description "MIC slot number"; } leaf cmd { type enumeration { enum "offline" { value 0; description "Take MIC offline"; } enum "online" { value 1; description "Bring MIC online"; } } mandatory true; } } output { choice output_c { leaf output { type string; } anyxml chassis-mic-state; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-mic rpc request-chassis-optics { description "Change linecard optics status"; input { uses command-forwarding; leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "Slot number of FPC that houses optics"; } leaf reactivate { type empty; mandatory true; description "Reactivate linecard optics"; } } output { choice output_c { leaf output { type string; } anyxml chassis-optics-state; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-optics rpc request-chassis-pic { description "Change Physical Interface Card status"; input { uses command-forwarding; leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "Slot number of FPC that houses PIC"; } leaf pic-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "PIC slot number"; } leaf cmd { type enumeration { enum "offline" { value 0; description "Take PIC offline"; } enum "online" { value 1; description "Bring PIC online"; } } mandatory true; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-pic rpc request-chassis-port-led-switch-on { description "Switch on LED"; input { uses command-forwarding; leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "Slot number of FPC that houses PIC"; } leaf pic-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "PIC slot number"; } container port { leaf all-10g { type empty; description "All 10Gig ports"; } leaf all-40g { type empty; description "All 40Gig ports"; } leaf all-100g { type empty; description "All 100Gig ports"; } leaf all-400g { type empty; description "All 400Gig ports"; } leaf all-ports { type empty; description "All PIC ports"; } leaf pic-port { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 127"; } } description "PIC port number"; } } // container port leaf duration { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 65535"; } } description "Duration (in seconds) to perform LED blinking"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-port-led-switch-on rpc request-chassis-port-led-switch-off { description "Switch off LED"; input { uses command-forwarding; leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "Slot number of FPC that houses PIC"; } leaf pic-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "PIC slot number"; } container port { leaf all-10g { type empty; description "All 10Gig ports"; } leaf all-25g { type empty; description "All 25Gig ports"; } leaf all-40g { type empty; description "All 40Gig ports"; } leaf all-100g { type empty; description "All 100Gig ports"; } leaf all-400g { type empty; description "All 400Gig ports"; } leaf all-ports { type empty; description "All PIC ports"; } leaf pic-port { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 127"; } } description "PIC port number"; } } // container port } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-port-led-switch-off rpc request-redundancy-feb { description "Change Forwarding Engine Board redundancy status"; input { leaf slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "FEB slot number"; } leaf cmd { type enumeration { enum "switch-to-backup" { value 0; description "Switch mastership to other FEB"; } enum "revert-from-backup" { value 1; description "Revert mastership back to configured default"; } } mandatory true; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-redundancy-feb rpc request-chassis-fpc { description "Change Flexible PIC Concentrator status"; input { uses command-forwarding; leaf slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "FPC slot number"; } leaf slc { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 2"; } } description "SLC ID"; } leaf force { type empty; description "Forcefully restart the FPC"; } leaf cmd { type enumeration { enum "offline" { value 0; description "Take FPC or PFE-instance offline"; } enum "online" { value 1; description "Bring FPC or PFE-instance online"; } enum "restart" { value 2; description "Restart FPC or PFE-instance"; } } mandatory true; } leaf no-confirm { type empty; description "Do not ask for confirmation"; } } output { choice output_c { leaf output { type string; } anyxml chassis-fpc-state; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-fpc rpc request-fpc-optical-module { description "Change optical module status"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-fpc-optical-module rpc request-fpc-optical-module-amplifier-chain { description "Change amplifier-chain status"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-fpc-optical-module-amplifier-chain rpc request-fpc-optical-module-ila { description "Change inline-amplifier status"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-fpc-optical-module-ila rpc request-fpc-optical-module-ila-firmware-upgrade { description "Change firmware bundle of inline-amplifier"; input { leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "FPC slot number"; } leaf ila-number { type union { type uint32; type string { pattern "<.*>|$.*"; } } mandatory true; description "In-line amplifier number"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-fpc-optical-module-ila-firmware-upgrade rpc request-fpc-optical-module-ila-soft-reset { description "Perform soft-reset on inline-amplifier"; input { leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "FPC slot number"; } leaf ila-number { type union { type uint32; type string { pattern "<.*>|$.*"; } } mandatory true; description "In-line amplifier number"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-fpc-optical-module-ila-soft-reset rpc request-fpc-optical-module-ila-hard-reset { description "Perform hard-reset on inline-amplifier"; input { leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "FPC slot number"; } leaf ila-number { type union { type uint32; type string { pattern "<.*>|$.*"; } } mandatory true; description "In-line amplifier number"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-fpc-optical-module-ila-hard-reset rpc request-fpc-optical-module-firmware-upgrade { description "Change firmware bundle of optical module"; input { leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "FPC slot number"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-fpc-optical-module-firmware-upgrade rpc request-chassis-fabric-plane-sfb { description "Change Switch Fabric Card status"; input { uses command-forwarding; leaf slot { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 7"; } } mandatory true; description "SFB slot number"; } leaf cmd { type enumeration { enum "offline" { value 0; description "Take SFB offline"; } enum "online" { value 1; description "Bring SFB online"; } } mandatory true; } } output { choice output_c { leaf output { type string; } anyxml chassis-fabric-plane-state; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-fabric-plane-sfb rpc request-chassis-afeb { description "Change Forwarding Engine Board status"; input { leaf cmd { type enumeration { enum "offline" { value 0; description "Take AFEB offline"; } enum "online" { value 1; description "Bring AFEB online"; } enum "restart" { value 2; description "Restart AFEB"; } } mandatory true; } } output { choice output_c { leaf output { type string; } anyxml chassis-afeb-state; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-afeb rpc request-chassis-tfeb { description "Change Taz Forwarding Engine Board status"; input { leaf cmd { type enumeration { enum "offline" { value 0; description "Take TFEB offline"; } enum "online" { value 1; description "Bring TFEB online"; } enum "restart" { value 2; description "Restart TFEB"; } } mandatory true; } } output { choice output_c { leaf output { type string; } anyxml chassis-tfeb-state; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-tfeb rpc request-chassis-fabric-plane { description "Change fabric plane status"; input { uses command-forwarding; leaf plane { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "Fabric plane number"; } leaf which-command { type enumeration { enum "offline" { value 0; description "Take fabric plane offline"; } enum "online" { value 1; description "Bring fabric plane online"; } } mandatory true; } } output { choice output_c { leaf output { type string; } anyxml chassis-fabric-plane-state; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-fabric-plane rpc request-chassis-fabric-pfe { description "Change PFE's fabric status"; input { leaf pfe { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 31"; } } mandatory true; description "PFE number"; } leaf fpc { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "FPC slot number"; } leaf which-command { type enumeration { enum "offline" { value 0; description "Offline FPC,PFE's fabric"; } } mandatory true; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-fabric-pfe rpc request-chassis-fabric-pfe-mask { description "Change PFE's fabric status"; input { leaf pfe { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 4095"; } } mandatory true; description "PFE mask"; } leaf fpc { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "FPC slot number"; } leaf slc { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 3"; } } mandatory true; description "SLC slot number"; } leaf which-command { type enumeration { enum "offline" { value 0; description "Offline FPC,PFE's fabric"; } enum "online" { value 1; description "Online FPC,PFE's fabric"; } enum "disable" { value 2; description "Disable FPC,PFE's fabric"; } enum "enable" { value 3; description "Enable FPC,PFE's fabric"; } } mandatory true; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-fabric-pfe-mask rpc request-chassis-fabric-upgrade-bandwidth-fpc { description "Flexible PIC Concentrator"; input { choice slot_type { leaf slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "FPC slot number for upgrade"; } leaf all { type empty; description "Upgrade all available/possible FPCs"; } } // choice slot_type } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-fabric-upgrade-bandwidth-fpc rpc request-chassis-fabric-upgrade-bandwidth-info { description "Status of FPC to fabric connections"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-fabric-upgrade-bandwidth-info rpc request-chassis-spmb { description "Change Switch Processor Mezzanine Board status"; input { uses command-forwarding; leaf slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "SPMB slot number"; } leaf cmd { type enumeration { enum "restart" { value 0; description "Restart SPMB"; } } mandatory true; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-spmb rpc request-chassis-sib { description "Change Switch Interface Board status"; input { uses command-forwarding; leaf slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "SIB slot number"; } choice cmd { leaf online-offline { type enumeration { enum "offline" { value 0; description "Take SIB offline"; } enum "online" { value 1; description "Bring SIB online"; } } } leaf start-receiver { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Start SIB optical receiver"; } leaf stop-receiver { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Stop SIB optical receiver"; } leaf train-rx-tx { type enumeration { enum "train-link-receive" { value 0; description "Train link receiver"; } enum "train-link-transmit" { value 1; description "Train link transmitter"; } } } } // choice cmd } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-sib rpc request-chassis-ccg { description "Change clock generator status"; input { leaf slot { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 1"; } } mandatory true; description "CCG slot number"; } leaf cmd { type enumeration { enum "offline" { value 0; description "Take CCG offline"; } enum "online" { value 1; description "Bring CCG online"; } } mandatory true; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-ccg rpc request-chassis-routing-engine { description "Change Routing Engine status"; output { choice output_c { leaf output { type string; } anyxml chassis-routing-engine-state; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-routing-engine rpc request-chassis-routing-engine-hard-disk-test { description "Run smartd self tests on hard disks"; input { choice test-type { leaf short { type empty; description "Run short test"; } leaf long { type empty; description "Run SMART extended self test"; } leaf show-status { type empty; description "Display status of test"; } } // choice test-type leaf disk { type string; description "Name of hard disk"; } } output { choice output_c { leaf output { type string; } anyxml raid-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-routing-engine-hard-disk-test rpc request-chassis-routing-engine-acquire { description "Attempt to become master Routing Engine"; input { uses command-forwarding; leaf no-confirm { type empty; description "Do not ask for confirmation"; } leaf check { type empty; description "Check status of graceful switchover"; } } output { choice output_c { leaf output { type string; } anyxml chassis-routing-engine-state; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-routing-engine-acquire rpc request-chassis-routing-engine-release { description "Request that other Routing Engine become master"; input { uses command-forwarding; leaf no-confirm { type empty; description "Do not ask for confirmation"; } leaf check { type empty; description "Check status of graceful switchover"; } } output { choice output_c { leaf output { type string; } anyxml chassis-routing-engine-state; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-routing-engine-release rpc request-chassis-routing-engine-switch { description "Toggle mastership between Routing Engines"; input { uses command-forwarding; leaf no-confirm { type empty; description "Do not ask for confirmation"; } leaf check { type empty; description "Check status of graceful switchover"; } } output { choice output_c { leaf output { type string; } anyxml chassis-routing-engine-state; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-routing-engine-switch rpc request-feb { description "Change Forwarding Engine Board status"; input { leaf slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "FEB slot number"; } leaf cmd { type enumeration { enum "offline" { value 0; description "Take FEB offline"; } enum "online" { value 1; description "Bring FEB online"; } enum "restart" { value 2; description "Restart FEB"; } } mandatory true; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-feb rpc request-chassis-cb { description "Change Control Board status"; input { uses command-forwarding; leaf slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "CB slot number"; } leaf cmd { type enumeration { enum "offline" { value 0; description "Take CB offline"; } enum "online" { value 1; description "Bring CB online"; } } mandatory true; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-cb rpc request-chassis-fpm { description "Change craft interface status"; input { uses command-forwarding; leaf cmd { type enumeration { enum "resync" { value 0; description "Resynchronize craft interface"; } } mandatory true; } } output { choice output_c { leaf output { type string; } anyxml chassis-fpm; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-fpm rpc request-chassis-beacon { description "Change beacon status"; input { leaf cmd { type enumeration { enum "off" { value 0; description "Turn beacon off"; } enum "on" { value 1; description "Turn beacon on"; } } mandatory true; } leaf timer { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 120"; } } description "Set timer for beacon LED"; } choice which-arg { leaf all { type empty; description "All beacons"; } leaf fpc { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Flexible PIC Controller slot number"; } leaf cb { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Control Board slot number"; } leaf service-node { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 1"; } } description "Service node slot number"; } } // choice which-arg leaf pic-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "PIC slot number"; } choice port-num { leaf port { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Port number"; } leaf port-range { type empty; description "Port range"; } } // choice port-num leaf lower-limit { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Port range lower limit"; } leaf upper-limit { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Port range upper limit"; } } output { choice output_c { leaf output { type string; } anyxml chassis-beacon-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-beacon rpc request-chassis-satellite-device-mode { description "Satellite device specific commands"; input { leaf interface { type string; mandatory true; description "Interface name"; } leaf device-mode { type enumeration { enum "satellite" { value 0; description "Satellite Mode"; } } mandatory true; description "Device Mode"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-satellite-device-mode rpc request-chassis-satellite-reboot { description "Reboot one or more satellite"; input { choice arg { leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "65 .. 254"; } } description "Satellite slot number"; } leaf range { type string; description "Slot range as <start-end> slot number (e.g. 100-110)"; } } // choice arg } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-satellite-reboot rpc request-chassis-satellite-restart { description "Restart a process on one or more satellite"; input { choice arg { leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "65 .. 254"; } } description "Satellite slot number"; } leaf range { type string; description "Slot range as <start-end> slot number (e.g. 100-110)"; } } // choice arg leaf process { type enumeration { enum "packet-forwarding-engine" { value 0; description "SPFE process"; } enum "discovery-and-provisioning-daemon" { value 1; description "DPD process"; } enum "chassis-management-daemon" { value 2; description "LCMD process"; } enum "api-management-daemon" { value 3; description "AMD process"; } enum "ppman" { value 4; description "PPMAN process"; } enum "ppman-lite" { value 5; description "PPMAN-lite process"; } } mandatory true; description "Remote fpc shell command"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-satellite-restart rpc request-chassis-satellite-shell-command { description "Execute shell command on one or more satellite"; input { choice arg { leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "65 .. 254"; } } description "Satellite slot number"; } leaf range { type string; description "Slot range as <start-end> slot number (e.g. 100-110)"; } } // choice arg leaf remote-command { type string; mandatory true; description "Remote fpc shell command"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-satellite-shell-command rpc request-chassis-satellite-file-copy { description "File copy"; input { leaf cmd { type enumeration { enum "local" { value 0; description "Local user"; } enum "remote" { value 1; description "Remote user"; } } } leaf source { type string; description "URL of source file e.g. For SD, use sd100:/.."; } leaf destination { type string; description "URL of destination file e.g. For SD, use sd100:/.."; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-satellite-file-copy rpc request-chassis-satellite-login { description "Connect to satellite device"; input { leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "65 .. 254"; } } description "Satellite slot number"; } leaf interface-name { type string; description "Name of the interface"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-satellite-login rpc request-chassis-satellite-beacon { description "Change beacon status"; input { choice arg { leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "65 .. 254"; } } description "Satellite slot number"; } leaf range { type string; description "Slot range as <start-end> slot number (e.g. 100-110)"; } } // choice arg leaf cmd { type enumeration { enum "off" { value 0; description "Beacon(s) in OFF state"; } enum "on" { value 1; description "Beacon(s) in ON state"; } } mandatory true; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-satellite-beacon rpc request-chassis-satellite-disable { description "Disable satellite"; input { choice arg { leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "65 .. 254"; } } description "Satellite slot number"; } leaf device-alias { type string; description "Device alias"; } } // choice arg } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-satellite-disable rpc request-chassis-satellite-enable { description "Enable satellite"; input { choice arg { leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "65 .. 254"; } } description "Satellite slot number"; } leaf device-alias { type string; description "Device alias"; } } // choice arg } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-satellite-enable rpc request-chassis-satellite-install { description "Convert satellite device to standalone Junos device"; input { choice arg { leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "65 .. 254"; } } description "Satellite slot number"; } leaf device-alias { type string; description "Device alias"; } } // choice arg leaf package-name { type jt:filename; description "URL or pathname of package"; } leaf no-confirm { type empty; description "Do not ask for confirmation"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-chassis-satellite-install rpc request-protection-group-ethernet-aps { description "Ethernet APS related operations"; input { leaf maintenance-domain { type string { length "1 .. 45"; } mandatory true; description "Name of maintenance domain"; } leaf maintenance-association { type string { length "1 .. 45"; } mandatory true; description "Name of maintenance association"; } leaf eaps-action { type enumeration { enum "switch-to-working" { value 0; description "Switch data path to use working path"; } enum "switch-to-protect" { value 1; description "Switch data path to use protection path"; } enum "lockout" { value 2; description "Lockout protection"; } enum "force-switch" { value 3; description "Force switch data path to use protection path"; } enum "manual-switch" { value 4; description "Manual switch data path to use protection path"; } enum "exercise" { value 5; description "Excercise APS protocol"; } enum "clear" { value 6; description "Clears active local command"; } } mandatory true; } choice daemon-select { leaf logical-system { type string; description "Name of logical system, or 'all'"; } } // choice daemon-select } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-protection-group-ethernet-aps rpc request-protection-group-erps-clear { description "Clears active local commands"; input { leaf group-name { type string { length "1 .. 32"; } description "Name of protection group"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-protection-group-erps-clear rpc request-protection-group-erps-manual-switch { description "Manual switch data path to use protection path"; input { leaf interface-name { type union { type jt:interface-wildcard; type string { pattern "<.*>|$.*"; } } mandatory true; description "Name of interface"; } leaf group-name { type string { length "1 .. 32"; } description "Name of protection group"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-protection-group-erps-manual-switch rpc request-protection-group-erps-force-switch { description "Force switch data path to use protection path"; input { leaf interface-name { type union { type jt:interface-wildcard; type string { pattern "<.*>|$.*"; } } mandatory true; description "Name of interface"; } leaf group-name { type string { length "1 .. 32"; } description "Name of protection group"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-protection-group-erps-force-switch rpc get-flight-recorder-information { description "Debug high cpu issues and scheduler slips"; input { leaf disable { type empty; description "Disable the flight recorder"; } leaf logical-system { type empty; description "Enable logical systems"; } leaf cpu-threshold { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 400"; } } description "Threshold over which the collection is triggered"; } leaf polling-frequency { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "5 .. 100"; } } description "Frequency of polling for high cpu"; } leaf backoff-duration { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "10 .. 1000"; } } description "Time to wait between two snapshots"; } leaf collect-core { type empty; description "Whether to take a running core with every snapshot"; } leaf num-snapshots { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 20"; } } description "How many snapshots to collect before quitting"; } } output { choice output_c { leaf output { type string; } anyxml flight-recorder-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc get-flight-recorder-information rpc request-l2ckt-switchover { description "Perform l2circuit switchover"; input { choice daemon-select { leaf logical-system { type string; description "Name of logical system, or 'all'"; } } // choice daemon-select leaf neighbor { type jt:ipv4addr; mandatory true; description "IP address of neighbor"; } leaf virtual-circuit-id { type string; default "all"; description "Layer 2 circuit ID"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-l2ckt-switchover rpc request-vpls-switchover { description "Perform LDP VPLS pseudowire switchover"; input { choice daemon-select { leaf logical-system { type string; description "Name of logical system, or 'all'"; } } // choice daemon-select leaf instance { type string; mandatory true; description "Name of VPLS instance"; } leaf neighbor { type jt:ipv4addr; mandatory true; description "IP address of neighbor"; } leaf vpls-id { type string; default "all"; description "Layer 2 circuit ID"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-vpls-switchover rpc request-mpls-lsp-autobandwidth-adjust { description "Request LSP autobandwidth adjustment now"; input { choice daemon-select { leaf logical-system { type string; description "Name of logical system, or 'all'"; } } // choice daemon-select leaf regex { type string; description "Regular expression for LSP names to match"; } leaf instance { type string; description "Name of routing instance"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-mpls-lsp-autobandwidth-adjust rpc request-mpls-container-lsp-autobandwidth-adjust { description "Request LSP autobandwidth adjustment now"; input { choice daemon-select { leaf logical-system { type string; description "Name of logical system, or 'all'"; } } // choice daemon-select leaf regex { type string; description "Regular expression for LSP names to match"; } leaf instance { type string; description "Name of routing instance"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-mpls-container-lsp-autobandwidth-adjust rpc request-mpls-container-lsp-normalization { description "Request container LSP normalization now"; input { choice daemon-select { leaf logical-system { type string; description "Name of logical system, or 'all'"; } } // choice daemon-select leaf regex { type string; description "Regular expression for LSP names to match"; } leaf instance { type string; description "Name of routing instance"; } leaf bandwidth { type union { type uint64; type string { pattern "<.*>|$.*"; } } description "Use the bandwidth for manual normalization"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-mpls-container-lsp-normalization rpc request-mpls-lable-range-reserve { description "Request label space repartition now"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-mpls-lable-range-reserve rpc pim-multicast-tunnel { description "Request PIM MT rebalance"; input { choice daemon-select { leaf logical-system { type string; description "Name of logical system, or 'all'"; } } // choice daemon-select leaf instance { type string; description "Name of instance"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc pim-multicast-tunnel rpc request-validation-policy { description "Request policy reevaluation"; input { choice daemon-select { leaf logical-system { type string; description "Name of logical system"; } } // choice daemon-select leaf record { type jt:ipprefix; description "Filter by record"; } leaf instance { type string; description "Name of route validation instance"; } } output { choice output_c { leaf output { type string; } anyxml rv-request-policy-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-validation-policy rpc monitor-mobile-gateways-call-trace-start { description "Trace subscriber events"; output { choice output_c { leaf output { type string; } anyxml mobile-gateway-sm-af-call-trace-start; anyxml multi-routing-engine-results; } // choice output_c } } // rpc monitor-mobile-gateways-call-trace-start rpc get-mobile-gateways-call-trace-start-information { description "Start subscriber events trace"; input { leaf msisdn { type string { length "3 .. 15"; } description "Trace events for a specific msisdn"; } leaf imsi { type string { length "5 .. 15"; } description "Trace events for a specific imsi"; } leaf next-call { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 50"; } } default "1"; description "Trace the next call events"; } leaf fpc-slot { type union { type uint32; type string { pattern "<.*>|$.*"; } } description "FPC slot number"; } leaf pic-slot { type union { type uint32; type string { pattern "<.*>|$.*"; } } description "PIC slot number"; } leaf apn-name { type string { length "1 .. 100"; } description "Name of APN"; } leaf file-name-prefix { type string { length "4 .. 24"; } description "Name of file prefix"; } leaf comment { type string { length "4 .. 100"; } description "Comment to be added in the file"; } } output { choice output_c { leaf output { type string; } anyxml mobile-gateways-call-trace-start-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc get-mobile-gateways-call-trace-start-information rpc get-mobile-gateways-call-trace-stop-information { description "Stop subscriber events trace"; input { leaf identifier { type string { length "1 .. 100"; } description "Name of identifier"; } leaf all { type empty; description "All call traces"; } } output { choice output_c { leaf output { type string; } anyxml mobile-gateways-call-trace-stop-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc get-mobile-gateways-call-trace-stop-information rpc get-mobile-gateways-call-trace-clear { description "Clear subscriber events trace"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc get-mobile-gateways-call-trace-clear rpc get-mobile-gateways-call-trace-information { description "Show subscriber events trace"; input { leaf selector { type enumeration { enum "current" { value 0; description "Display information about current traces"; } enum "completed" { value 1; description "Display information about completed traces"; } enum "all" { value 2; description "Display information about all trace"; } } default "all"; } leaf verbosity-level { type enumeration { enum "brief" { value 0; description "Display brief output (default)"; } enum "detail" { value 1; description "Display detailed output"; } } default "brief"; description "Select the verbosity level"; } } output { choice output_c { leaf output { type string; } anyxml mobile-gateways-call-trace-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc get-mobile-gateways-call-trace-information rpc get-mobile-gateways-sgw-call-trace-start-information { description "Start subscriber events trace"; input { leaf msisdn { type string { length "3 .. 15"; } description "Trace events for a specific msisdn"; } leaf imsi { type string { length "5 .. 15"; } description "Trace events for a specific imsi"; } leaf next-call { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 50"; } } default "1"; description "Trace the next call events"; } leaf fpc-slot { type union { type uint32; type string { pattern "<.*>|$.*"; } } description "FPC slot number"; } leaf pic-slot { type union { type uint32; type string { pattern "<.*>|$.*"; } } description "PIC slot number"; } } output { choice output_c { leaf output { type string; } anyxml mobile-gateways-call-trace-start-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc get-mobile-gateways-sgw-call-trace-start-information rpc get-mobile-gateways-sgw-call-trace-stop-information { description "Stop subscriber events trace"; input { leaf identifier { type string { length "1 .. 100"; } description "Name of identifier"; } leaf all { type empty; description "All call traces"; } } output { choice output_c { leaf output { type string; } anyxml mobile-gateways-call-trace-stop-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc get-mobile-gateways-sgw-call-trace-stop-information rpc get-mobile-gateways-sgw-call-trace-clear { description "Clear subscriber events trace"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc get-mobile-gateways-sgw-call-trace-clear rpc get-mobile-gateways-sgw-call-trace-information { description "Show subscriber events trace"; input { leaf selector { type enumeration { enum "current" { value 0; description "Display information about current traces"; } enum "completed" { value 1; description "Display information about completed traces"; } enum "all" { value 2; description "Display information about all trace"; } } default "all"; } leaf verbosity-level { type enumeration { enum "brief" { value 0; description "Display brief output (default)"; } enum "detail" { value 1; description "Display detailed output"; } } default "brief"; description "Select the verbosity level"; } } output { choice output_c { leaf output { type string; } anyxml mobile-gateways-call-trace-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc get-mobile-gateways-sgw-call-trace-information rpc get-mobile-gateways-tdf-call-trace-start-information { description "Start subscriber events trace"; input { leaf msisdn { type string { length "3 .. 15"; } description "Trace events for a specific msisdn"; } leaf imsi { type string { length "5 .. 15"; } description "Trace events for a specific imsi"; } leaf next-call { type empty; description "Trace the next call events on each session PIC"; } leaf v4-addr { type jt:ipaddr; description "Trace events for a specific IPV4 subscriber"; } leaf v6-addr { type jt:ipv6addr; description "Trace events for a specific IPV6 subscriber"; } leaf routing-instance { type string; description "Routing Instance which the subscriber belong to"; } leaf user-name { type string; description "Subscriber User Name"; } leaf subscriber-name { type string; description "Non-IP Subscriber Name"; } } output { choice output_c { leaf output { type string; } anyxml mobile-gateways-call-trace-start-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc get-mobile-gateways-tdf-call-trace-start-information rpc get-mobile-gateways-tdf-call-trace-stop-information { description "Stop subscriber events trace"; input { leaf identifier { type string { length "1 .. 100"; } description "Name of identifier"; } leaf all { type empty; description "All call traces"; } } output { choice output_c { leaf output { type string; } anyxml mobile-gateways-call-trace-stop-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc get-mobile-gateways-tdf-call-trace-stop-information rpc get-mobile-gateways-tdf-call-trace-clear { description "Clear subscriber events trace"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc get-mobile-gateways-tdf-call-trace-clear rpc get-mobile-gateways-tdf-call-trace-information { description "Show subscriber events trace"; input { leaf selector { type enumeration { enum "current" { value 0; description "Display information about current traces"; } enum "completed" { value 1; description "Display information about completed traces"; } enum "all" { value 2; description "Display information about all traces"; } } default "all"; } leaf verbosity-level { type enumeration { enum "brief" { value 0; description "Display brief output (default)"; } enum "detail" { value 1; description "Display detailed output"; } } default "brief"; description "Select the verbosity level"; } } output { choice output_c { leaf output { type string; } anyxml mobile-gateways-call-trace-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc get-mobile-gateways-tdf-call-trace-information rpc request-path-computation-client-main-pce { description "Request new active PCE"; input { leaf pce-id { type string; mandatory true; description "PCE ID from configuration"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-path-computation-client-main-pce rpc request-path-computation-retry-delegation { description "Request retry delegation"; input { leaf lsp-name { type string; mandatory true; description "Name of static label-switched-path"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-path-computation-retry-delegation rpc request-line-card-login { description "Connect to line card"; input { leaf member { type union { type string { pattern "<.*>|$.*"; } type int32; } mandatory true; description "Member ID"; } } output { choice output_c { leaf output { type string; } anyxml run-command; anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-line-card-login rpc request-virtual-chassis-reactivate { description "Make active from inactive-split mode"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-virtual-chassis-reactivate rpc request-virtual-chassis-renumber { description "Change member ID"; input { leaf member-id { type union { type string { pattern "<.*>|$.*"; } type int32; } mandatory true; description "Current member ID"; } leaf new-member-id { type union { type string { pattern "<.*>|$.*"; } type int32; } mandatory true; description "New member ID"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-virtual-chassis-renumber rpc request-virtual-chassis-recycle { description "Recycle member ID"; input { leaf member-id { type union { type string { pattern "<.*>|$.*"; } type int32; } mandatory true; description "Member ID"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-virtual-chassis-recycle rpc request-virtual-chassis-vc-port-set-interface { description "Member's virtual chassis interface"; input { uses command-forwarding; leaf interface-name { type string; mandatory true; description "Name of dedicated virtual chassis interface"; } leaf disable { type empty; description "Disable virtual chassis interface"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-virtual-chassis-vc-port-set-interface rpc request-virtual-chassis-vc-port-set-pic-slot { description "Member's PIC slot"; input { uses command-forwarding; leaf pic-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "PIC slot number"; } leaf port { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "Port number"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-virtual-chassis-vc-port-set-pic-slot rpc request-virtual-chassis-vc-port-set-fpc-slot { description "Member's FPC slot"; input { uses command-forwarding; leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "FPC slot number"; } leaf pic-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "PIC slot number"; } leaf port { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "Port number"; } leaf channel { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 3"; } } description "Channel number"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-virtual-chassis-vc-port-set-fpc-slot rpc request-virtual-chassis-vc-port-delete-pic-slot { description "Member's PIC slot"; input { uses command-forwarding; leaf pic-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "PIC slot number"; } leaf port { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "Port number"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-virtual-chassis-vc-port-delete-pic-slot rpc request-virtual-chassis-vc-port-delete-fpc-slot { description "Member's FPC slot"; input { uses command-forwarding; leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "FPC slot number"; } leaf pic-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "PIC slot number"; } leaf port { type union { type string { pattern "<.*>|$.*"; } type uint32; } mandatory true; description "Port number"; } leaf channel { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 3"; } } description "Channel number"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-virtual-chassis-vc-port-delete-fpc-slot rpc request-virtual-chassis-vc-port-diag-optics { description "Virtual chassis port diagnostics optics"; input { uses command-forwarding; leaf interface-name { type string; description "Name of virtual chassis port"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc request-virtual-chassis-vc-port-diag-optics rpc req-virtual-chassis-mode { description "Set a member's mode (Warning: member's mode must be consistent)"; input { uses command-forwarding; leaf fabric { type empty; description "Set to virtual chassis fabric mode"; } leaf mixed { type empty; description "Allow devices from different product families to become members"; } leaf disable { type empty; description "Disable specified mode"; } leaf reboot { type empty; description "Reboot system after changing mode"; } leaf ieee-clause-82 { type empty; description "Allow devices to operate in ieee-clause-82 PCS encoding"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc req-virtual-chassis-mode rpc set-virtual-chassis-member-id { description "Set virtual-chassis information"; input { leaf member { type union { type string { pattern "<.*>|$.*"; } type int32; } mandatory true; description "Virtual-Chassis member number"; } leaf slots-per-chassis { type enumeration { enum "12" { value 0; description "12 FPC slots per chassis"; } enum "20" { value 1; description "20 FPC slots per chassis"; } } description "Virtual-Chassis FPC slots per chassis number"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc set-virtual-chassis-member-id rpc delete-virtual-chassis-member-id { description "Delete virtual-chassis information"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc delete-virtual-chassis-member-id rpc get-virtual-chassis-diagnostic-information { description "Device reachability diagnostics"; input { leaf test-name { type string { length "1 .. 20"; } mandatory true; description "Name of the test"; } leaf destination-device { type union { type uint32; type string { pattern "<.*>|$.*"; } } description "Probe destination (global) device ID"; } leaf destination-fpc { type union { type uint32; type string { pattern "<.*>|$.*"; } } description "Probe destination FPC"; } leaf destination-ip-address { type jt:ipaddr; description "IP address of destination FPC"; } leaf source-fpc { type union { type uint32; type string { pattern "<.*>|$.*"; } } description "Probe initiator FPC"; } leaf source-ip-address { type jt:ipaddr; description "IP address of source FPC"; } leaf probe-size { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "56 .. 1500"; } } default "56"; description "Size of one probe in bytes"; } leaf probe-count { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 10"; } } default "5"; description "Number of probes in a test"; } leaf probe-pattern { type string; default "0x00"; description "Payload pattern byte in the probe (0x00-0xff)"; } leaf probe-interval { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 3"; } } units "seconds"; default "1"; description "Duration between successive probes"; } leaf test-interval { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 5"; } } units "seconds"; default "1"; description "Time interval to perform this test again"; } leaf test-count { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 3"; } } default "1"; description "Number of times this test to be performed"; } } output { choice output_c { leaf output { type string; } anyxml virtual-chassis-diagnostic-information; anyxml multi-routing-engine-results; } // choice output_c } } // rpc get-virtual-chassis-diagnostic-information rpc switch-vc-routing-engine-protocol-master { description "Toggle mastership between VC members"; input { leaf check { type empty; description "Check status of graceful switchover"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc switch-vc-routing-engine-protocol-master rpc upgrade-vc-cancel { description "Terminate sequential upgrade, rollback software image on protocol-backup"; output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc upgrade-vc-cancel rpc upgrade-vc-protocol-backup { description "Upgrade protocol-backup member chassis"; input { leaf halt-re { type empty; description "Halt routing-engines instead of restarting; manual restart required"; } leaf package-name { type jt:filename; mandatory true; description "URL or pathname of package"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc upgrade-vc-protocol-backup rpc upgrade-vc-protocol-master { description "Upgrade protocol-master member chassis"; input { leaf halt-re { type empty; description "Halt routing-engines instead of restarting; manual restart required"; } leaf package-name { type jt:filename; mandatory true; description "URL or pathname of package"; } } output { choice output_c { leaf output { type string; } anyxml multi-routing-engine-results; } // choice output_c } } // rpc upgrade-vc-protocol-master grouping command-forwarding { choice chassis-selector { leaf all-chassis { type empty; description "All chassis"; } leaf all-lcc { type empty; description "All LCC chassis"; } leaf scc { type empty; description "SCC"; } leaf sfc { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "SFC"; } leaf lcc { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Specific LCC"; } leaf node { type string; description "Specific node"; } leaf bsys { type empty; description "Base system"; } leaf gnf { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 10"; } } description "Specific guest network function"; } leaf all-gnfs { type empty; description "All guest network functions"; } leaf all-system { type empty; description "All system (BSYS and GNFs)"; } leaf server { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 1"; } } description "Specific server slot"; } leaf all-servers { type empty; description "All servers"; } leaf vnf { type string; description "Specific virtual-network-function"; } leaf all-vnfs { type empty; description "All virtual-network-functions"; } } // choice chassis-selector choice re-selector { leaf re0 { type empty; description "RE0"; } leaf re1 { type empty; description "RE1"; } leaf routing-engine { type enumeration { enum "local" { value 0; description "Local routing engine"; } enum "other" { value 1; description "Other routing engine"; } enum "master" { value 2; description "Master routing engine"; } enum "backup" { value 3; description "Backup routing engine"; } enum "both" { value 4; description "Both routing engines"; } } description "Specific routing engine"; } } // choice re-selector choice lr-selector { leaf logical-system { type string; description "Name of logical system, or 'all'"; } } // choice lr-selector choice tenant-selector { leaf tenant { type string; description "Name of tenant, or 'all'"; } } // choice tenant-selector choice vc-selector { leaf local { type empty; description "Local virtual chassis member"; } leaf all-members { type empty; description "All virtual chassis members"; } leaf member { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Specific virtual chassis member"; } } // choice vc-selector } // grouping command-forwarding } // module junos-rpc-request
© 2023 YumaWorks, Inc. All rights reserved.