smartmontools SVN Rev 3317
Utility to control and monitor storage systems with "S.M.A.R.T."
Classes | Enumerations | Functions
os_win32 Namespace Reference

Classes

class  win_smart_device
class  win_ata_device
class  win_scsi_device
class  csmi_device
class  csmi_ata_device
class  win_csmi_device
class  win_tw_cli_device
class  win_areca_ata_device
 Areca RAID support. More...
class  win_areca_scsi_device
class  win_smart_interface
union  STORAGE_DEVICE_DESCRIPTOR_DATA
struct  SCSI_PASS_THROUGH_DIRECT_WITH_BUFFER

Enumerations

enum  win_dev_type { DEV_UNKNOWN = 0, DEV_ATA, DEV_SCSI, DEV_USB }

Functions

static bool is_wow64 ()
static win_dev_type get_phy_drive_type (int drive)
static win_dev_type get_phy_drive_type (int drive, GETVERSIONINPARAMS_EX *ata_version_ex)
static win_dev_type get_log_drive_type (int drive)
static bool get_usb_id (int drive, unsigned short &vendor_id, unsigned short &product_id)
static const char * ata_get_def_options (void)
static int is_permissive ()
static int drive_letter (const char *s)
static const char * skipdev (const char *s)
static int sdxy_to_phydrive (const char(&xy)[2+1])
static win_dev_type get_dev_type (const char *name, int &phydrive)
static void print_ide_regs (const IDEREGS *r, int out)
static void print_ide_regs_io (const IDEREGS *ri, const IDEREGS *ro)
static int smart_get_version (HANDLE hdevice, GETVERSIONINPARAMS_EX *ata_version_ex=0)
static int smart_ioctl (HANDLE hdevice, IDEREGS *regs, char *data, unsigned datasize, int port)
static int ide_pass_through_ioctl (HANDLE hdevice, IDEREGS *regs, char *data, unsigned datasize)
static int ata_pass_through_ioctl (HANDLE hdevice, IDEREGS *regs, IDEREGS *prev_regs, char *data, int datasize)
static int ata_via_scsi_miniport_smart_ioctl (HANDLE hdevice, IDEREGS *regs, char *data, int datasize)
static int ata_via_3ware_miniport_ioctl (HANDLE hdevice, IDEREGS *regs, char *data, int datasize, int port)
static int update_3ware_devicemap_ioctl (HANDLE hdevice)
static int get_clipboard (char *data, int datasize)
static int run_cmd (const char *cmd, char *dataout, int outsize)
static const char * findstr (const char *str, const char *sub)
static void copy_swapped (unsigned char *dest, const char *src, int destsize)
static int storage_query_property_ioctl (HANDLE hdevice, STORAGE_DEVICE_DESCRIPTOR_DATA *data)
static int storage_predict_failure_ioctl (HANDLE hdevice, char *data=0)
static bool is_intel_raid_volume (const STORAGE_DEVICE_DESCRIPTOR_DATA *data)
static win_dev_type get_controller_type (HANDLE hdevice, bool admin, GETVERSIONINPARAMS_EX *ata_version_ex)
static win_dev_type get_controller_type (const char *path, GETVERSIONINPARAMS_EX *ata_version_ex=0)
static int get_identify_from_device_property (HANDLE hdevice, ata_identify_device *id)
static bool get_serial_from_wmi (int drive, ata_identify_device *id)
static int get_device_power_state (HANDLE hdevice)
static long scsi_pass_through_indirect (HANDLE h, SCSI_PASS_THROUGH_DIRECT_WITH_BUFFER *sbd)
static long scsi_pass_through_direct (HANDLE fd, UCHAR targetid, struct scsi_cmnd_io *iop)

Enumeration Type Documentation

Enumerator:
DEV_UNKNOWN 
DEV_ATA 
DEV_SCSI 
DEV_USB 

Definition at line 684 of file os_win32.cpp.


Function Documentation

static const char * os_win32::ata_get_def_options ( void  ) [static]

Definition at line 2318 of file os_win32.cpp.

static int os_win32::ata_pass_through_ioctl ( HANDLE  hdevice,
IDEREGS regs,
IDEREGS prev_regs,
char *  data,
int  datasize 
) [static]

Definition at line 1325 of file os_win32.cpp.

static int os_win32::ata_via_3ware_miniport_ioctl ( HANDLE  hdevice,
IDEREGS regs,
char *  data,
int  datasize,
int  port 
) [static]

Definition at line 1568 of file os_win32.cpp.

static int os_win32::ata_via_scsi_miniport_smart_ioctl ( HANDLE  hdevice,
IDEREGS regs,
char *  data,
int  datasize 
) [static]

Definition at line 1437 of file os_win32.cpp.

static void os_win32::copy_swapped ( unsigned char *  dest,
const char *  src,
int  destsize 
) [static]

Definition at line 1756 of file os_win32.cpp.

static int os_win32::drive_letter ( const char *  s) [static]

Definition at line 708 of file os_win32.cpp.

static const char* os_win32::findstr ( const char *  str,
const char *  sub 
) [static]

Definition at line 1749 of file os_win32.cpp.

static int os_win32::get_clipboard ( char *  data,
int  datasize 
) [static]

Definition at line 1672 of file os_win32.cpp.

static win_dev_type os_win32::get_controller_type ( HANDLE  hdevice,
bool  admin,
GETVERSIONINPARAMS_EX ata_version_ex 
) [static]

Definition at line 2016 of file os_win32.cpp.

static win_dev_type os_win32::get_controller_type ( const char *  path,
GETVERSIONINPARAMS_EX ata_version_ex = 0 
) [static]

Definition at line 2055 of file os_win32.cpp.

static win_dev_type os_win32::get_dev_type ( const char *  name,
int &  phydrive 
) [static]

Definition at line 746 of file os_win32.cpp.

static int os_win32::get_device_power_state ( HANDLE  hdevice) [static]

Definition at line 2295 of file os_win32.cpp.

static int os_win32::get_identify_from_device_property ( HANDLE  hdevice,
ata_identify_device id 
) [static]

Definition at line 2096 of file os_win32.cpp.

static win_dev_type os_win32::get_log_drive_type ( int  drive) [static]

Definition at line 2088 of file os_win32.cpp.

static win_dev_type os_win32::get_phy_drive_type ( int  drive) [static]

Definition at line 2082 of file os_win32.cpp.

static win_dev_type os_win32::get_phy_drive_type ( int  drive,
GETVERSIONINPARAMS_EX ata_version_ex 
) [static]

Definition at line 2075 of file os_win32.cpp.

static bool os_win32::get_serial_from_wmi ( int  drive,
ata_identify_device id 
) [static]

Definition at line 2138 of file os_win32.cpp.

static bool os_win32::get_usb_id ( int  drive,
unsigned short &  vendor_id,
unsigned short &  product_id 
) [static]

Definition at line 2167 of file os_win32.cpp.

static int os_win32::ide_pass_through_ioctl ( HANDLE  hdevice,
IDEREGS regs,
char *  data,
unsigned  datasize 
) [static]

Definition at line 1240 of file os_win32.cpp.

static bool os_win32::is_intel_raid_volume ( const STORAGE_DEVICE_DESCRIPTOR_DATA *  data) [static]

Definition at line 2003 of file os_win32.cpp.

static int os_win32::is_permissive ( ) [static]

Definition at line 695 of file os_win32.cpp.

static bool os_win32::is_wow64 ( ) [static]

Definition at line 573 of file os_win32.cpp.

static void os_win32::print_ide_regs ( const IDEREGS r,
int  out 
) [static]

Definition at line 1083 of file os_win32.cpp.

static void os_win32::print_ide_regs_io ( const IDEREGS ri,
const IDEREGS ro 
) [static]

Definition at line 1090 of file os_win32.cpp.

static int os_win32::run_cmd ( const char *  cmd,
char *  dataout,
int  outsize 
) [static]

inherit

Definition at line 1695 of file os_win32.cpp.

static long os_win32::scsi_pass_through_direct ( HANDLE  fd,
UCHAR  targetid,
struct scsi_cmnd_io iop 
) [static]

Definition at line 3430 of file os_win32.cpp.

static long os_win32::scsi_pass_through_indirect ( HANDLE  h,
SCSI_PASS_THROUGH_DIRECT_WITH_BUFFER *  sbd 
) [static]

Definition at line 3260 of file os_win32.cpp.

static int os_win32::sdxy_to_phydrive ( const char(&)  xy[2+1]) [static]

Definition at line 738 of file os_win32.cpp.

static const char* os_win32::skipdev ( const char *  s) [static]

Definition at line 718 of file os_win32.cpp.

static int os_win32::smart_get_version ( HANDLE  hdevice,
GETVERSIONINPARAMS_EX ata_version_ex = 0 
) [static]

Definition at line 1102 of file os_win32.cpp.

static int os_win32::smart_ioctl ( HANDLE  hdevice,
IDEREGS regs,
char *  data,
unsigned  datasize,
int  port 
) [static]

Definition at line 1137 of file os_win32.cpp.

static int os_win32::storage_predict_failure_ioctl ( HANDLE  hdevice,
char *  data = 0 
) [static]

Definition at line 1971 of file os_win32.cpp.

static int os_win32::storage_query_property_ioctl ( HANDLE  hdevice,
STORAGE_DEVICE_DESCRIPTOR_DATA *  data 
) [static]

Definition at line 1933 of file os_win32.cpp.

static int os_win32::update_3ware_devicemap_ioctl ( HANDLE  hdevice) [static]

Definition at line 1631 of file os_win32.cpp.