These tools are no longer actively maintained. These scripts may only work with previous versions of iDRAC/LC or they may not address new functionality in the most recent releases of iDRAC/LC firmware or new PowerEdge Server platforms.
WSL (a.k.a. "whistle") contains various scripts that serve as a client interface to WSMAN or "Web Services for Management" protocol based on DMTF standard specification. WSMAN provides standards based messaging for systems management CIM-style objects.
Typing "wsl" will show you the help information.
Wsman Shell commandLine, version 0.1.0
USAGE: wsl COMMAND [PARAMS...]
identify - WS-Identify
enum - WS-Enumerate
get - WS-Get
put - WS-Put
invoke - WS-Invoke
xclean - Delete all generated files
xcred - Create or display credential file
PARAMS specification is specific to a COMMAND.
You can get more help for a particular command by typing the command, "wsl enum" for example will show you more help about enum. Some commands as you might notice use another script, for example "wsl enum" calls "wslenum".
See: attached LICENSE file
Or you can get the latest from git:
$ git clone http://linux.dell.com/git/wsl.git
To get help or feedback, send a note to the mailing list
You can sign up for the mailing list at
$ WSENDPOINT=192.168.7.31 WSUSER=admin WSPASS=*** wsl identify check
Create Encrypted Credential File
You will be prompted for name and password but you can also provide them as parameter to wsl.
$ wsl xcred admin.cred
Using Encrypted Credential File
$ WSENDPOINT=192.168.7.31 WSUSER=FILE:admin.cred wsl identify check
Target IP address and user credential may be provided through shell environment or entered once and remembered through a history file so you don't have to provide them each subsequent use. See the customize section for more options.
$ wsl enum CIM_ComputerSystem
WSMAN Enumerate – Optimized
The default mode for an enumeration is a pull transaction. The first response gives you an Enumeration context which is used to send a Pull operation. The subsequent response gives you one instance of the class enumerated. It includes the Enumeration context which indicates a need for more pull until all instances have been sent to you. The last instance will not contain the Enumeration context. If you like to get one response that contains all instances, you need to instruct the server with an Optimization command and the maximum instances to return. If the maximum number you provided is less than the instance count, it will require Pull.
$ WSENUMOPTIMIZE=1 WSENUMMAXELEM=512 wsl enum CIM_ComputerSystem
WSMAN Enumerate – Default Schema
A default schema may be defined in the configuration file. If the prefix is not "CIM_", the default schema is prepended to the class name. If the target schema is not the same as the default, you may specify the absolute class URI.
$ wsl enum DCIM_ComputerSystem
WSMAN Enumerate – CQL Filter
$ wsl enum CIM_ComputerSystem -filter "select * from CIM_ComputerSystem where Name='systemmc'"
WSMAN Enumerate – EPR (Endpoint Reference)
$ wsl enum CIM_ComputerSystem -mode epr
$ wsl get DCIM_SPComputerSystem CreationClassName=DCIM_SPComputerSystem Name=systemmc
$ wsl put DCIM_ActiveDirectoryService DomainControllerAddresses=XX –filter "select * from DCIM_ActiveDirectoryService where Name='systemmc'"
WSMAN Put/Set – Array
$ wsl put DCIM_ActiveDirectoryService DomainControllerAddresses=XX DomainControllerAddresses=YY
$ wsl invoke CIM_Log ClearLog -filter "select * from CIM_Log where InstanceID='DCIM:LifeCycleLog'"
WSMAN Enumerate – References
Enumeration of class association instance (or References) is a 2 step process. First is to acquire the EPR of the class instance you are interested in. Second is to use that EPR to enumerate its references.
$ wsl enum CIM_ComputerSystem -mode epr -filter "select * from CIM_ComputerSystem where Name='systemmc'"
$ wsl enum -references DCIM_SPComputerSystem CreationClassName=DCIM_SPComputerSystem Name=systemmc
WSMAN Enumerate – Associators
Enumeration of class associated instances (or Associators) is a 2 step process. First is to acquire the EPR of the class instance you are interested in. Second is to use that EPR to enumerate its associators.
$ wsl enum CIM_ComputerSystem -mode epr -filter "select * from CIM_ComputerSystem where Name='systemmc'"$ wsl enum -associators DCIM_SPComputerSystem CreationClassName=DCIM_SPComputerSystem Name=systemmc
You can customize run-time experience by defining variables in the shell environment or in a "wsl-config" file located in the current or program directory.
Article ID: SLN312369
Last Date Modified: 08/14/2018 06:03 AM
Thank you for your feedback.