2.2.4.14 SMB_COM_UNLOCK_BYTE_RANGE (0x0D)

This is an original Core Protocol command. This command is deprecated. Clients SHOULD use the SMB_COM_LOCKING_ANDX (section 2.2.4.32) command.

This command is not compatible with files having greater than 32-bit offsets. The SMB_COM_LOCKING_ANDX command introduced in the LAN Manager 1.0 dialect was modified in the NT LAN Manager dialect to support files having 64-bit offsets. SMB_COM_LOCKING_ANDX is the preferred method of locking and unlocking byte ranges for clients that negotiate the LAN Manager 1.0 dialect or later. The client MUST negotiate the NT LAN Manager or later dialect to access the support for 64-bit file offsets.

This command is used to explicitly unlock a contiguous range of bytes in an open regular file. The byte range specified MUST be exactly the same as that specified in a previous successful lock request from the same CIFS client and process; the FID and PID MUST be the same as the lock request. An unlock request for a range that was not locked is treated as an error.

If the server cannot immediately (within 200-300 milliseconds) grant the unlock on the byte range, an error MUST be returned to the client. Because this client request supports 32-bit offsets only, it is inappropriate for files that have 64-bit offsets. The client MUST have at least read access to the file.