# phpman > man > sg_read_buffer(8)

[SG_READ_BUFFER(8)](https://www.chedong.com/phpMan.php/man/SGREADBUFFER/8/markdown)                             SG3_UTILS                            [SG_READ_BUFFER(8)](https://www.chedong.com/phpMan.php/man/SGREADBUFFER/8/markdown)



## NAME
       sg_read_buffer - send SCSI READ BUFFER command

## SYNOPSIS
       **sg**___**read**___**buffer**  [_--help_]  [_--hex_]  [_--id=ID_]  [_--inhex=FN_] [_--length=LEN_] [_--mode=MO_] [_--off__‐
       _set=OFF_] [_--raw_] [_--readonly_] [_--specific=MS_] [_--verbose_] [_--version_] _DEVICE_

## DESCRIPTION
       Sends a SCSI READ BUFFER command to the _DEVICE_, and if there is a response either decodes it,
       prints  it  in  hexadecimal  or sends it in binary to stdout. If a response is received for a
       "descriptor" mode then, in the absence of _--hex_  and  _--raw_,  it  is  decoded.  Response  for
       non-descriptor modes are output in hexadecimal unless the _--raw_ option is given.

       This  utility  may be called without a _DEVICE_ but with a _--inhex=FN_ option instead. _FN_ is ex‐
       pected to be a file name (or '-' for stdin). The contents of the file (or  stdin  stream)  is
       assumed  to  be  hexadecimal  (or binary) data that represents a SCSI READ BUFFER command re‐
       sponse and is decoded as such.

## OPTIONS
       Arguments to long options are mandatory for short options as well.

### -h --help
              output the usage message then exit. If used multiple times also prints the mode  names
              and their acronyms.

### -H --hex
              output  the  response  in  hexadecimal. When given twice the response is output in hex
              with the corresponding representation in ASCII to the right of each line.

### -i --id
              this option sets the buffer id field in the cdb. _ID_ is a value between 0 (default) and
              255 inclusive.

### -I --inhex
              _FN_  is  expected to be a file name (or '-' for stdin) which contains ASCII hexadecimal
              or binary representing a READ BUFFER response. If known this utility will then  decode
              that  response.  It  is  preferable to also supply the _--mode=MO_ and _--specific=MS_ op‐
              tions, since these are not present in the response. The hexadecimal should be arranged
              as  1  or 2 digits representing a byte each of which is whitespace or comma separated.
              Anything from and including a hash mark to the end of line is ignored.  If  the  _--raw_
              option is also given then _FN_ is treated as binary.

### -l --length
              where  _LEN_ is the length, in bytes, that is placed in the "allocation length" field in
              the cdb. The default value is 4 (bytes). The device may respond with less bytes.

### -m --mode
              this option sets the mode field in the cdb. _MO_ is a value between 0 (default)  and  31
              inclusive.  Alternatively  an abbreviation can be given.  See the MODES section below.
              To list the available mode abbreviations use an invalid one (e.g. '--mode=xxx'). As an
              example, to fetch the read buffer descriptor give '--mode=desc' .

### -o --offset
              this  option  sets  the  buffer offset field in the cdb. _OFF_ is a value between 0 (de‐
              fault) and 2**24-1 . It is a byte offset.

### -r --raw
              if a response is received then it is sent in binary to stdout.

### -R --readonly
              open the _DEVICE_ read-only (e.g. in Unix with the O_RDONLY flag).  The  default  is  to
              open it read-write.

### -S --specific
              this  option sets the mode specific field in the cdb. _MS_ is a value between 0 and 7 as
              this is a 3 bit field.

### -v --verbose
              increase the level of verbosity, (i.e. debug output).

### -V --version
              print the version string and then exit.

## MODES
       Following is a list of READ BUFFER command settings for the MODE field.  First is an  acronym
       accepted  by  the  _MO_ argument of this utility.  Following the acronym in square brackets are
       the corresponding decimal and hex values that may also be given for  _MO_.  The  following  are
       listed in numerical order.

       hd  [0, 0x0]
              Combined header and data (obsolete in SPC-4).

       vendor  [1, 0x1]
              Vendor specific.

       data  [2, 0x2]
              Data.

       desc  [3, 0x3]
              Descriptor:  yields  4 bytes that contain an offset boundary field (1 byte) and buffer
              capacity (3 bytes).

       echo  [10, 0xa]
              Read data from echo buffer (was called "Echo buffer" in SPC-3).

       echo_desc  [11, 0xb]
              Echo buffer descriptor: yields 4 bytes of which the last (lowest)  13  bits  represent
              the echo buffer capacity. The maximum echo buffer size is 4096 bytes.

       rd_microc_st  [15, 0xf]
              Read microcode status. Added in spc5r20 .

       en_ex  [26, 0x1a]
              Enable expander communications protocol and Echo buffer. Made obsolete in SPC-4.

       err_hist  [28, 0x1c]
              Error history. Introduced in SPC-4.

## NOTES
       All numbers given with options are assumed to be decimal.  Alternatively numerical values can
       be given in hexadecimal preceded by either "0x" or "0X" (or has a trailing "h" or "H").

## EXIT STATUS
       The exit status of sg_read_buffer is 0 when it is successful. Otherwise see the  [sg3_utils(8)](https://www.chedong.com/phpMan.php/man/sg3utils/8/markdown)
       man page.

## AUTHORS
       Written by Luben Tuikov and Douglas Gilbert.

## REPORTING BUGS
       Report bugs to <dgilbert at interlog dot com>.

## COPYRIGHT
       Copyright © 2006-2019 Luben Tuikov and Douglas Gilbert
       This software is distributed under a FreeBSD license. There is NO warranty; not even for MER‐
       CHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

## SEE ALSO
       **sg**___**write**___**buffer(sg3**___**utils)**



sg3_utils-1.45                                May 2019                             [SG_READ_BUFFER(8)](https://www.chedong.com/phpMan.php/man/SGREADBUFFER/8/markdown)
