smartmontools SVN Rev 5618
Utility to control and monitor storage systems with "S.M.A.R.T."
|
#include <dev_areca.h>
Public Member Functions | |
areca_scsi_device (smart_interface *intf, const char *dev_name, int disknum, int encnum=1) | |
~areca_scsi_device () | |
bool | arcmsr_lock () override |
bool | arcmsr_unlock () override |
int | arcmsr_do_scsi_io (struct scsi_cmnd_io *) override |
Public Member Functions inherited from scsi_device | |
virtual bool | scsi_pass_through (scsi_cmnd_io *iop)=0 |
SCSI pass through. | |
bool | scsi_pass_through_and_check (scsi_cmnd_io *iop, const char *msg="") |
void | set_rcap16_first () |
Always try READ CAPACITY(10) (rcap10) first but once we know rcap16 is needed, use it instead. | |
bool | use_rcap16 () const |
void | set_spc4_or_higher () |
bool | is_spc4_or_higher () const |
bool | query_cmd_support () |
bool | checked_cmd_support () const |
enum scsi_cmd_support | cmd_support_level (uint8_t opcode, bool sa_valid, uint16_t sa, bool for_lsense_spc=false) const |
Public Member Functions inherited from smart_device | |
virtual | ~smart_device () |
bool | is_ata () const |
Return true if ATA device. | |
bool | is_scsi () const |
Return true if SCSI device. | |
bool | is_nvme () const |
Return true if NVMe device. | |
ata_device * | to_ata () |
Downcast to ATA device. | |
const ata_device * | to_ata () const |
Downcast to ATA device (const). | |
scsi_device * | to_scsi () |
Downcast to SCSI device. | |
const scsi_device * | to_scsi () const |
Downcast to SCSI device (const). | |
nvme_device * | to_nvme () |
Downcast to NVMe device. | |
const nvme_device * | to_nvme () const |
Downcast to NVMe device (const). | |
const device_info & | get_info () const |
Get device info struct. | |
const char * | get_dev_name () const |
Get device (path)name. | |
const char * | get_info_name () const |
Get informal name. | |
const char * | get_dev_type () const |
Get device type. | |
const char * | get_req_type () const |
Get type requested by user, empty if none. | |
const error_info & | get_err () const |
Get last error info struct. | |
int | get_errno () const |
Get last error number. | |
const char * | get_errmsg () const |
Get last error message. | |
virtual bool | is_syscall_unsup () const |
Return true if last error indicates an unsupported system call. | |
bool | set_err (int no, const char *msg,...) __attribute_format_printf(3 |
Set last error number and message. | |
bool bool | set_err (const error_info &err) |
Set last error info struct. | |
void | clear_err () |
Clear last error info. | |
bool | set_err (int no) |
Set last error number and default message. | |
virtual bool | is_open () const =0 |
Return true if device is open. | |
virtual bool | open ()=0 |
Open device, return false on error. | |
virtual bool | close ()=0 |
Close device, return false on error. | |
virtual smart_device * | autodetect_open () |
Open device with autodetection support. | |
virtual bool | is_powered_down () |
Early test if device is powered up or down. | |
virtual bool | owns (const smart_device *dev) const |
Return true if other device is owned by this device. | |
virtual void | release (const smart_device *dev) |
Release ownership of other device. | |
Public Member Functions inherited from generic_areca_device | |
generic_areca_device (smart_interface *intf, const char *dev_name, int disknum, int encnum=1) | |
~generic_areca_device () | |
virtual bool | arcmsr_lock ()=0 |
virtual bool | arcmsr_unlock ()=0 |
virtual int | arcmsr_do_scsi_io (struct scsi_cmnd_io *iop)=0 |
virtual int | arcmsr_command_handler (unsigned long arcmsr_cmd, unsigned char *data, int data_len) |
virtual int | arcmsr_ui_handler (unsigned char *areca_packet, int areca_packet_len, unsigned char *result) |
virtual bool | arcmsr_probe () |
virtual int | arcmsr_get_dev_type () |
virtual int | arcmsr_get_controller_type () |
virtual bool | arcmsr_scsi_pass_through (scsi_cmnd_io *iop) |
virtual bool | arcmsr_ata_pass_through (const ata_cmd_in &in, ata_cmd_out &out) |
Protected Member Functions | |
areca_scsi_device () | |
virtual bool | scsi_pass_through (scsi_cmnd_io *iop) override |
SCSI pass through. | |
Protected Member Functions inherited from scsi_device | |
void | hide_scsi (bool hide=true) |
Hide/unhide SCSI interface. | |
scsi_device () | |
Default constructor, registers device as SCSI. | |
Protected Member Functions inherited from smart_device | |
smart_device (smart_interface *intf, const char *dev_name, const char *dev_type, const char *req_type) | |
Constructor to init interface and device info. | |
smart_device (do_not_use_in_implementation_classes) | |
Dummy constructor for abstract classes. | |
device_info & | set_info () |
R/W access to device info struct. | |
smart_interface * | smi () |
Get interface which produced this object. | |
const smart_interface * | smi () const |
Get interface which produced this object (const). | |
Protected Member Functions inherited from generic_areca_device | |
generic_areca_device () | |
void | set_disknum (int disknum) |
void | set_encnum (int encnum) |
int | get_disknum () |
int | get_encnum () |
Additional Inherited Members | |
Static Public Member Functions inherited from smart_device | |
static int | get_num_objects () |
Get current number of allocated 'smart_device' objects. | |
Protected Types inherited from smart_device | |
enum | do_not_use_in_implementation_classes { never_called } |
Dummy enum for dummy constructor. More... | |
Definition at line 158 of file dev_areca.h.
areca_scsi_device::areca_scsi_device | ( | smart_interface * | intf, |
const char * | dev_name, | ||
int | disknum, | ||
int | encnum = 1 |
||
) |
Definition at line 675 of file dev_areca.cpp.
areca_scsi_device::~areca_scsi_device | ( | ) |
Definition at line 683 of file dev_areca.cpp.
|
inlineprotected |
Definition at line 172 of file dev_areca.h.
|
inlineoverridevirtual |
Implements generic_areca_device.
Reimplemented in os_freebsd::freebsd_areca_scsi_device, os_linux::linux_areca_scsi_device, and os_win32::win_areca_scsi_device.
Definition at line 167 of file dev_areca.h.
|
inlineoverridevirtual |
Implements generic_areca_device.
Reimplemented in os_freebsd::freebsd_areca_scsi_device, os_linux::linux_areca_scsi_device, and os_win32::win_areca_scsi_device.
Definition at line 165 of file dev_areca.h.
|
inlineoverridevirtual |
Implements generic_areca_device.
Reimplemented in os_freebsd::freebsd_areca_scsi_device, os_linux::linux_areca_scsi_device, and os_win32::win_areca_scsi_device.
Definition at line 166 of file dev_areca.h.
|
overrideprotectedvirtual |
SCSI pass through.
Returns false on error.
Implements scsi_device.
Definition at line 688 of file dev_areca.cpp.