smp_conf_zone_man_pass [--expected=EX] [--fpass=FP] [--help] [--hex] [--interface=PARAMS] [--new-fpass=NF] [--new-pass=NP] [--password=PA] [--raw] [--sa=SAS_ADDR] [--save=SAV] [--verbose] [--version] SMP_DEVICE[,N]
Sends a SAS Serial Management Protocol (SMP) CONFIGURE ZONE MANAGER PASSWORD function request to an SMP target. The SMP target is identified by the SMP_DEVICE and the --sa=SAS_ADDR. Depending on the interface, the SAS_ADDR may be deduced from the SMP_DEVICE. The mpt interface uses SMP_DEVICE to identify a HBA (an SMP initiator) and needs the additional ,N to differentiate between HBAs if there are multiple present.
Mandatory arguments to long options are mandatory for short options as well.
- -E, --expected=EX
set the 'expected expander change count' field in the SMP request. The value EX is from 0 to 65535 inclusive with 0 being the default value. When EX is greater than zero then if the value doesn't match the expander change count of the SMP target (i.e. the expander) when the request arrives then the target ignores the request and sets a function result of "invalid expander change count" in the response.
- -F, --fpass=FP
where FP is the name of a file which contains the existing password. The password may be in ASCII in which case it is on one line surrounded by either single quotes are double quotes. Alternatively the password may be given in ASCII hexadecimal; either as bytes separated by space, tab, comma or newline, or as longer strings of hexadecimal bytes in which every 2 digits represents a byte. Empty lines and those starting with "#" are ignored. A line starting with '-1' causes all remaining bytes in the password to be filled with 0xff.
- -h, --help
output the usage message then exit.
- -H, --hex
output the response (less the CRC field) in hexadecimal.
- -I, --interface=PARAMS
interface specific parameters. In this case "interface" refers to the path through the operating system to the SMP initiator. See the smp_utils man page for more information.
- -N, --new-fpass=NF
where NF is the name of a file which contains the new password. The format of this file is the same as the file given in --fpass=FP.
- -n, --new-pass=NP
where NP is the new zone manager password which may be up to 32 bytes long. This option cannot be give together with the --new-fpass=NF option. The default password is 32 NULLs (zero bytes) and PA is padded with NULLs to the right (to make it 32 bytes long in the request).
- -P, --password=PA
where PA is the existing zone manager password which may be up to 32 bytes long. This option cannot be give together with the --fpass=FP option. The default password is 32 NULLs (zero bytes) and PA is padded with NULLs to the right (to make it 32 bytes long in the request).
- -r, --raw
send the response (less the CRC field) to stdout in binary. All error messages are sent to stderr.
- -s, --sa=SAS_ADDR
specifies the SAS address of the SMP target device. The mpt interface needs this option and it will typically be an expander's SAS address. The SAS_ADDR is in decimal but most SAS addresses are shown in hexadecimal. To give a number in hexadecimal either prefix it with '0x' or put a trailing 'h' on it.
- -S, --save=SAV
set the 'save' field in the SMP request. SAV may take these values: 0 for updating the shadow values (default), 1 for updating the saved values, 2 for updating shadow values and if available the saved values, 3 for updating both saved and shadow values.
- -v, --verbose
increase the verbosity of the output. Can be used multiple times.
- -V, --version
print the version string and then exit.
Hexadecimal bytes (or longer hexadecimal strings) should not have a leading "0x" or trailing "h" decoration.
The "well known" DISABLE password is 32 bytes of 0xff. The new password can only be DISABLED if physical presence is supported and asserted.
The SMP CONFIGURE ZONE MANAGER PASSWORD function was introduced in SAS-2 .
Written by Douglas Gilbert.
Report bugs to <dgilbert at interlog dot com>.
Copyright © 2011 Douglas Gilbert
This software is distributed under a FreeBSD license. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
smp_utils, smp_zone_lock, smp_rep_zone_man_pass(smp_utils)