smi Namespace Reference


Classes

class  SmiFactory
class  ISmi
class  IDellCallingInterfaceSmi
class  SmiFactoryImpl
class  SmiStrategy
class  SmiMockStrategy
class  SmiArchStrategy
class  DellCallingInterfaceSmiImpl
struct  callintf_cmd
struct  calling_interface_command_buffer

Enumerations

enum  { cbARG1 = 0, cbARG2 = 1, cbARG3 = 2, cbARG4 = 3 }
enum  { cbRES1 = 0, cbRES2 = 1, cbRES3 = 2, cbRES4 = 3 }
enum  password_format_enum { PW_FORMAT_UNKNOWN, PW_FORMAT_SCAN_CODE, PW_FORMAT_ASCII }
enum  radioNum { WLAN_RADIO_NUM = 1, BLUETOOTH_RADIO_NUM = 2, WWAN_RADIO_NUM = 3 }
enum  { WLAN_SWITCH_CTL = 1, BLUETOOTH_SWITCH_CTL = 2, WWAN_SWITCH_CTL = 4, LOCATOR_SWITCH_CTL = 5 }
enum  radioStatusCode {
  STATUS_ENABLED, STATUS_DISABLED, STATUS_NOT_PRESENT, STATUS_UNSUPPORTED,
  STATUS_UNKNOWN
}
enum  { class_user_password = 9, class_admin_password = 10 }

Functions

 DECLARE_EXCEPTION (SmiException)
 Abstract base class for the smi read write operations.
 DECLARE_EXCEPTION_EX (InvalidSmiMode, smi, SmiException)
 DECLARE_EXCEPTION_EX (ParameterError, smi, SmiException)
 DECLARE_EXCEPTION_EX (UnhandledSmi, smi, SmiException)
 DECLARE_EXCEPTION_EX (UnsupportedSmi, smi, SmiException)
 DECLARE_EXCEPTION_EX (SmiExecutedWithError, smi, SmiException)
 DECLARE_EXCEPTION_EX (PasswordVerificationFailed, smi, SmiException)
 DECLARE_EXCEPTION_EX (ConfigError, smi, SmiException)
void doSimpleCallingInterfaceSmi (u16 smiClass, u16 select, const u32 args[4], u32 res[4])
std::auto_ptr< smi::IDellCallingInterfaceSmisetupCallingInterfaceSmi (u16 smiClass, u16 select, const u32 args[4])
u32 getAuthenticationKey (const std::string &password)
password_format_enum getPasswordFormat ()
std::string getServiceTag ()
void setServiceTag (const std::string &password, const std::string &newTag)
std::string getAssetTag ()
void setAssetTag (const std::string &password, const std::string &newTag)
u32 readNVStorage (u32 location, u32 *minValue, u32 *maxValue)
u32 readBatteryModeSetting (u32 location, u32 *minValue, u32 *maxValue)
u32 readACModeSetting (u32 location, u32 *minValue, u32 *maxValue)
u32 readSystemStatus (u32 *failingSensorHandle)
u32 writeNVStorage (const std::string &password, u32 location, u32 value, u32 *minValue, u32 *maxValue)
u32 writeBatteryModeSetting (const std::string &password, u32 location, u32 value, u32 *minValue, u32 *maxValue)
u32 writeACModeSetting (const std::string &password, u32 location, u32 value, u32 *minValue, u32 *maxValue)
void getDisplayType (u32 &type, u32 &resolution, u32 &memSizeX256kb)
void getPanelResolution (u32 &horiz, u32 &vert)
void getActiveDisplays (u32 &bits)
void setActiveDisplays (u32 &bits)
void getPropertyOwnershipTag (char *tagBuf, size_t size)
void setPropertyOwnershipTag (const std::string password, const char *newTag, size_t size)
void wirelessRadioControl (bool enable, bool boot, bool runtime, int enable_token, int disable_token, int radioNum, std::string password)
void wirelessSwitchControl (bool enable, bool boot, bool runtime, int enable_token, int disable_token, int switchNum, std::string password)
radioStatusCode wirelessRadioStatus (radioNum which, std::ostream &cout=std::cout, u32 defRes2=0)
static bool getPasswordPropertiesII (u16 which, u8 &maxLen, u8 &minLen, u8 &props)
static u32 getAuthenticationKeyII (const string &password)
u32 getAuthenticationKey (const string &password)
static u32 readSetting (u16 select, u32 location, u32 *minValue, u32 *maxValue)
static u32 writeSetting (const std::string &password, u16 select, u32 location, u32 newValue, u32 *minValue, u32 *maxValue)
void setPropertyOwnershipTag (const string password, const char *newTag, size_t size)
static void switchControl (u32 whichConfig, u32 whichSwitch, bool enable)
 DEFINE_EXCEPTION_EX (SmiExceptionImpl, smi, SmiException)
 DEFINE_EXCEPTION_EX (InvalidSmiModeImpl, smi, InvalidSmiMode)
 DEFINE_EXCEPTION_EX (ParameterErrorImpl, smi, ParameterError)
 DEFINE_EXCEPTION_EX (UnsupportedSmiImpl, smi, UnsupportedSmi)
 DEFINE_EXCEPTION_EX (UnhandledSmiImpl, smi, UnhandledSmi)
 DEFINE_EXCEPTION_EX (SmiExecutedWithErrorImpl, smi, SmiExecutedWithError)
 DEFINE_EXCEPTION_EX (PasswordVerificationFailedImpl, smi, PasswordVerificationFailed)
 DEFINE_EXCEPTION_EX (ConfigErrorImpl, smi, ConfigError)

Variables

const int Bluetooth_Devices_Disable
const int Bluetooth_Devices_Enable
const int Cellular_Radio_Disable
const int Cellular_Radio_Enable
const int WiFi_Locator_Disable
const int WiFi_Locator_Enable
const int Wireless_LAN_Disable
const int Wireless_LAN_Enable
const int Wireless_Switch_Bluetooth_Control_Disable
const int Wireless_Switch_Bluetooth_Control_Enable
const int Wireless_Switch_Cellular_Control_Disable
const int Wireless_Switch_Cellular_Control_Enable
const int Wireless_Switch_Wireless_LAN_Control_Disable
const int Wireless_Switch_Wireless_LAN_Control_Enable
const int Radio_Transmission_Enable
const int Radio_Transmission_Disable
const int Wireless_Device_Disable
const int Wireless_Device_App_Control
const int Wireless_Device_App_Or_Hotkey_Control
const int Bluetooth_Devices_Disable = 0x0153
const int Bluetooth_Devices_Enable = 0x0152
const int Cellular_Radio_Disable = 0x017B
const int Cellular_Radio_Enable = 0x017C
const int WiFi_Locator_Disable = 0x017D
const int WiFi_Locator_Enable = 0x017E
const int Wireless_LAN_Disable = 0x017F
const int Wireless_LAN_Enable = 0x0180
const int Wireless_Switch_Bluetooth_Control_Disable = 0x0181
const int Wireless_Switch_Bluetooth_Control_Enable = 0x0182
const int Wireless_Switch_Cellular_Control_Disable = 0x0183
const int Wireless_Switch_Cellular_Control_Enable = 0x0184
const int Wireless_Switch_Wireless_LAN_Control_Disable = 0x0185
const int Wireless_Switch_Wireless_LAN_Control_Enable = 0x0186
const int Radio_Transmission_Enable = 0x010c
const int Radio_Transmission_Disable = 0x010d
const int Wireless_Device_Disable = 0x0114
const int Wireless_Device_App_Control = 0x0115
const int Wireless_Device_App_Or_Hotkey_Control = 0x0116
smi::callintf_cmd LIBSMBIOS_PACKED_ATTR
smi::calling_interface_command_buffer LIBSMBIOS_PACKED_ATTR


Enumeration Type Documentation

anonymous enum

Enumerator:
class_user_password 
class_admin_password 

Definition at line 81 of file SmiLowLevel.h.

anonymous enum

Enumerator:
cbARG1 
cbARG2 
cbARG3 
cbARG4 

Definition at line 95 of file ISmi.h.

anonymous enum

Enumerator:
cbRES1 
cbRES2 
cbRES3 
cbRES4 

Definition at line 96 of file ISmi.h.

anonymous enum

Enumerator:
WLAN_SWITCH_CTL 
BLUETOOTH_SWITCH_CTL 
WWAN_SWITCH_CTL 
LOCATOR_SWITCH_CTL 

Definition at line 156 of file ISmi.h.

enum password_format_enum

Enumerator:
PW_FORMAT_UNKNOWN 
PW_FORMAT_SCAN_CODE 
PW_FORMAT_ASCII 

Definition at line 105 of file ISmi.h.

enum radioNum

Enumerator:
WLAN_RADIO_NUM 
BLUETOOTH_RADIO_NUM 
WWAN_RADIO_NUM 

Definition at line 153 of file ISmi.h.

enum radioStatusCode

Enumerator:
STATUS_ENABLED 
STATUS_DISABLED 
STATUS_NOT_PRESENT 
STATUS_UNSUPPORTED 
STATUS_UNKNOWN 

Definition at line 159 of file ISmi.h.


Function Documentation

smi::DECLARE_EXCEPTION ( SmiException   ) 

Abstract base class for the smi read write operations.

smi::DECLARE_EXCEPTION_EX ( ConfigError  ,
smi  ,
SmiException   
)

smi::DECLARE_EXCEPTION_EX ( PasswordVerificationFailed  ,
smi  ,
SmiException   
)

smi::DECLARE_EXCEPTION_EX ( SmiExecutedWithError  ,
smi  ,
SmiException   
)

smi::DECLARE_EXCEPTION_EX ( UnsupportedSmi  ,
smi  ,
SmiException   
)

smi::DECLARE_EXCEPTION_EX ( UnhandledSmi  ,
smi  ,
SmiException   
)

smi::DECLARE_EXCEPTION_EX ( ParameterError  ,
smi  ,
SmiException   
)

smi::DECLARE_EXCEPTION_EX ( InvalidSmiMode  ,
smi  ,
SmiException   
)

smi::DEFINE_EXCEPTION_EX ( ConfigErrorImpl  ,
smi  ,
ConfigError   
)

smi::DEFINE_EXCEPTION_EX ( PasswordVerificationFailedImpl  ,
smi  ,
PasswordVerificationFailed   
)

smi::DEFINE_EXCEPTION_EX ( SmiExecutedWithErrorImpl  ,
smi  ,
SmiExecutedWithError   
)

smi::DEFINE_EXCEPTION_EX ( UnhandledSmiImpl  ,
smi  ,
UnhandledSmi   
)

smi::DEFINE_EXCEPTION_EX ( UnsupportedSmiImpl  ,
smi  ,
UnsupportedSmi   
)

smi::DEFINE_EXCEPTION_EX ( ParameterErrorImpl  ,
smi  ,
ParameterError   
)

smi::DEFINE_EXCEPTION_EX ( InvalidSmiModeImpl  ,
smi  ,
InvalidSmiMode   
)

smi::DEFINE_EXCEPTION_EX ( SmiExceptionImpl  ,
smi  ,
SmiException   
)

void doSimpleCallingInterfaceSmi ( u16  smiClass,
u16  select,
const u32  args[4],
u32  res[4] 
)

Definition at line 220 of file Smi.cpp.

References setupCallingInterfaceSmi().

Referenced by getActiveDisplays(), getAuthenticationKey(), getDisplayType(), getPanelResolution(), getPasswordFormat(), getPasswordPropertiesII(), getTagFromSMI(), readSetting(), setActiveDisplays(), setTagUsingSMI(), wirelessRadioControl(), wirelessRadioStatus(), and writeSetting().

Here is the call graph for this function:

void getActiveDisplays ( u32 bits  ) 

Definition at line 555 of file Smi.cpp.

References doSimpleCallingInterfaceSmi().

Here is the call graph for this function:

std::string smi::getAssetTag (  ) 

u32 smi::getAuthenticationKey ( const string &  password  ) 

Definition at line 338 of file Smi.cpp.

References class_admin_password, class_user_password, DCERR, doSimpleCallingInterfaceSmi(), and getAuthenticationKeyII().

Here is the call graph for this function:

u32 smi::getAuthenticationKey ( const std::string &  password  ) 

Referenced by smbios::executeWithPassword(), setPropertyOwnershipTag(), setTagUsingSMI(), and writeSetting().

static u32 smi::getAuthenticationKeyII ( const string &  password  )  [static]

Definition at line 277 of file Smi.cpp.

References class_admin_password, class_user_password, DCERR, getPasswordPropertiesII(), and setupCallingInterfaceSmi().

Referenced by getAuthenticationKey().

Here is the call graph for this function:

void getDisplayType ( u32 type,
u32 resolution,
u32 memSizeX256kb 
)

Definition at line 536 of file Smi.cpp.

References doSimpleCallingInterfaceSmi().

Here is the call graph for this function:

void getPanelResolution ( u32 horiz,
u32 vert 
)

Definition at line 546 of file Smi.cpp.

References doSimpleCallingInterfaceSmi().

Here is the call graph for this function:

password_format_enum getPasswordFormat (  ) 

Definition at line 400 of file Smi.cpp.

References class_admin_password, class_user_password, doSimpleCallingInterfaceSmi(), getPasswordPropertiesII(), PW_FORMAT_ASCII, PW_FORMAT_SCAN_CODE, and PW_FORMAT_UNKNOWN.

Referenced by SMBIOSGetSmiPasswordCoding().

Here is the call graph for this function:

static bool smi::getPasswordPropertiesII ( u16  which,
u8 maxLen,
u8 minLen,
u8 props 
) [static]

Definition at line 246 of file Smi.cpp.

References DCERR, and doSimpleCallingInterfaceSmi().

Referenced by getAuthenticationKeyII(), and getPasswordFormat().

Here is the call graph for this function:

void getPropertyOwnershipTag ( char *  tagBuf,
size_t  size 
)

Definition at line 569 of file Smi.cpp.

References setupCallingInterfaceSmi().

Here is the call graph for this function:

std::string smi::getServiceTag (  ) 

u32 readACModeSetting ( u32  location,
u32 minValue,
u32 maxValue 
)

Definition at line 473 of file Smi.cpp.

References readSetting().

Here is the call graph for this function:

u32 readBatteryModeSetting ( u32  location,
u32 minValue,
u32 maxValue 
)

Definition at line 468 of file Smi.cpp.

References readSetting().

Here is the call graph for this function:

u32 readNVStorage ( u32  location,
u32 minValue,
u32 maxValue 
)

Definition at line 463 of file Smi.cpp.

References readSetting().

Referenced by SmiTokenDA::isActive().

Here is the call graph for this function:

static u32 smi::readSetting ( u16  select,
u32  location,
u32 minValue,
u32 maxValue 
) [static]

Definition at line 452 of file Smi.cpp.

References doSimpleCallingInterfaceSmi().

Referenced by readACModeSetting(), readBatteryModeSetting(), readNVStorage(), and readSystemStatus().

Here is the call graph for this function:

u32 readSystemStatus ( u32 failingSensorHandle  ) 

Definition at line 478 of file Smi.cpp.

References readSetting().

Here is the call graph for this function:

void setActiveDisplays ( u32 bits  ) 

Definition at line 563 of file Smi.cpp.

References doSimpleCallingInterfaceSmi().

Here is the call graph for this function:

void smi::setAssetTag ( const std::string &  password,
const std::string &  newTag 
)

void smi::setPropertyOwnershipTag ( const string  password,
const char *  newTag,
size_t  size 
)

Definition at line 580 of file Smi.cpp.

References getAuthenticationKey(), and setupCallingInterfaceSmi().

Here is the call graph for this function:

void smi::setPropertyOwnershipTag ( const std::string  password,
const char *  newTag,
size_t  size 
)

void smi::setServiceTag ( const std::string &  password,
const std::string &  newTag 
)

std::auto_ptr< smi::IDellCallingInterfaceSmi > setupCallingInterfaceSmi ( u16  smiClass,
u16  select,
const u32  args[4] 
)

Definition at line 198 of file Smi.cpp.

References SmiFactory::DELL_CALLING_INTERFACE_SMI, SmiFactory::getFactory(), SmbiosFactory::getFactory(), SmiFactory::makeNew(), IDellCallingInterfaceSmi::setArg(), IDellCallingInterfaceSmi::setClass(), and IDellCallingInterfaceSmi::setSelect().

Referenced by doSimpleCallingInterfaceSmi(), getAuthenticationKeyII(), getPropertyOwnershipTag(), and setPropertyOwnershipTag().

Here is the call graph for this function:

static void smi::switchControl ( u32  whichConfig,
u32  whichSwitch,
bool  enable 
) [static]

Definition at line 671 of file Smi.cpp.

References cbARG1, cbRES2, SmiFactory::DELL_CALLING_INTERFACE_SMI, ISmi::execute(), SmiFactory::getFactory(), IDellCallingInterfaceSmi::getRes(), SmiFactory::makeNew(), IDellCallingInterfaceSmi::setArg(), IDellCallingInterfaceSmi::setClass(), and IDellCallingInterfaceSmi::setSelect().

Referenced by wirelessSwitchControl().

Here is the call graph for this function:

void wirelessRadioControl ( bool  enable,
bool  boot,
bool  runtime,
int  enable_token,
int  disable_token,
int  radioNum,
std::string  password 
)

Definition at line 650 of file Smi.cpp.

References smbios::activateToken(), doSimpleCallingInterfaceSmi(), and smbios::isTokenActive().

Here is the call graph for this function:

radioStatusCode wirelessRadioStatus ( radioNum  which,
std::ostream &  cout = std::cout,
u32  defRes2 = 0 
)

Definition at line 750 of file Smi.cpp.

References BLUETOOTH_RADIO_NUM, cbRES2, doSimpleCallingInterfaceSmi(), STATUS_DISABLED, STATUS_ENABLED, STATUS_NOT_PRESENT, STATUS_UNKNOWN, STATUS_UNSUPPORTED, WLAN_RADIO_NUM, and WWAN_RADIO_NUM.

Here is the call graph for this function:

void wirelessSwitchControl ( bool  enable,
bool  boot,
bool  runtime,
int  enable_token,
int  disable_token,
int  switchNum,
std::string  password 
)

Definition at line 715 of file Smi.cpp.

References smbios::activateToken(), BLUETOOTH_SWITCH_CTL, LOCATOR_SWITCH_CTL, switchControl(), WLAN_SWITCH_CTL, and WWAN_SWITCH_CTL.

Here is the call graph for this function:

u32 writeACModeSetting ( const std::string &  password,
u32  location,
u32  value,
u32 minValue,
u32 maxValue 
)

Definition at line 531 of file Smi.cpp.

References writeSetting().

Here is the call graph for this function:

u32 writeBatteryModeSetting ( const std::string &  password,
u32  location,
u32  value,
u32 minValue,
u32 maxValue 
)

Definition at line 526 of file Smi.cpp.

References writeSetting().

Here is the call graph for this function:

u32 writeNVStorage ( const std::string &  password,
u32  location,
u32  value,
u32 minValue,
u32 maxValue 
)

Definition at line 521 of file Smi.cpp.

References writeSetting().

Referenced by SmiTokenDA::activate().

Here is the call graph for this function:

static u32 smi::writeSetting ( const std::string &  password,
u16  select,
u32  location,
u32  newValue,
u32 minValue,
u32 maxValue 
) [static]

Definition at line 487 of file Smi.cpp.

References DCERR, doSimpleCallingInterfaceSmi(), and getAuthenticationKey().

Referenced by writeACModeSetting(), writeBatteryModeSetting(), and writeNVStorage().

Here is the call graph for this function:


Variable Documentation

const int Bluetooth_Devices_Disable = 0x0153

Definition at line 611 of file Smi.cpp.

const int Bluetooth_Devices_Disable

Definition at line 611 of file Smi.cpp.

const int Bluetooth_Devices_Enable = 0x0152

Definition at line 612 of file Smi.cpp.

const int Bluetooth_Devices_Enable

Definition at line 612 of file Smi.cpp.

const int Cellular_Radio_Disable = 0x017B

Definition at line 613 of file Smi.cpp.

const int Cellular_Radio_Disable

Definition at line 613 of file Smi.cpp.

const int Cellular_Radio_Enable = 0x017C

Definition at line 614 of file Smi.cpp.

const int Cellular_Radio_Enable

Definition at line 614 of file Smi.cpp.

struct smi::calling_interface_command_buffer LIBSMBIOS_PACKED_ATTR

struct smi::callintf_cmd LIBSMBIOS_PACKED_ATTR

const int Radio_Transmission_Disable = 0x010d

Definition at line 626 of file Smi.cpp.

const int Radio_Transmission_Disable

Definition at line 626 of file Smi.cpp.

const int Radio_Transmission_Enable = 0x010c

Definition at line 625 of file Smi.cpp.

const int Radio_Transmission_Enable

Definition at line 625 of file Smi.cpp.

const int WiFi_Locator_Disable = 0x017D

Definition at line 615 of file Smi.cpp.

const int WiFi_Locator_Disable

Definition at line 615 of file Smi.cpp.

const int WiFi_Locator_Enable = 0x017E

Definition at line 616 of file Smi.cpp.

const int WiFi_Locator_Enable

Definition at line 616 of file Smi.cpp.

const int Wireless_Device_App_Control = 0x0115

Definition at line 628 of file Smi.cpp.

const int Wireless_Device_App_Control

Definition at line 628 of file Smi.cpp.

const int Wireless_Device_App_Or_Hotkey_Control = 0x0116

Definition at line 629 of file Smi.cpp.

const int Wireless_Device_App_Or_Hotkey_Control

Definition at line 629 of file Smi.cpp.

const int Wireless_Device_Disable = 0x0114

Definition at line 627 of file Smi.cpp.

const int Wireless_Device_Disable

Definition at line 627 of file Smi.cpp.

const int Wireless_LAN_Disable = 0x017F

Definition at line 617 of file Smi.cpp.

const int Wireless_LAN_Disable

Definition at line 617 of file Smi.cpp.

const int Wireless_LAN_Enable = 0x0180

Definition at line 618 of file Smi.cpp.

const int Wireless_LAN_Enable

Definition at line 618 of file Smi.cpp.

const int Wireless_Switch_Bluetooth_Control_Disable = 0x0181

Definition at line 619 of file Smi.cpp.

const int Wireless_Switch_Bluetooth_Control_Disable

Definition at line 619 of file Smi.cpp.

const int Wireless_Switch_Bluetooth_Control_Enable = 0x0182

Definition at line 620 of file Smi.cpp.

const int Wireless_Switch_Bluetooth_Control_Enable

Definition at line 620 of file Smi.cpp.

const int Wireless_Switch_Cellular_Control_Disable = 0x0183

Definition at line 621 of file Smi.cpp.

const int Wireless_Switch_Cellular_Control_Disable

Definition at line 621 of file Smi.cpp.

const int Wireless_Switch_Cellular_Control_Enable = 0x0184

Definition at line 622 of file Smi.cpp.

const int Wireless_Switch_Cellular_Control_Enable

Definition at line 622 of file Smi.cpp.

const int Wireless_Switch_Wireless_LAN_Control_Disable = 0x0185

Definition at line 623 of file Smi.cpp.

const int Wireless_Switch_Wireless_LAN_Control_Disable

Definition at line 623 of file Smi.cpp.

const int Wireless_Switch_Wireless_LAN_Control_Enable = 0x0186

Definition at line 624 of file Smi.cpp.

const int Wireless_Switch_Wireless_LAN_Control_Enable

Definition at line 624 of file Smi.cpp.


Generated on Tue Aug 14 01:31:59 2007 for SMBIOS Library by  doxygen 1.5.2