Main Page | Namespace List | Class Hierarchy | Data Structures | Directories | File List | Namespace Members | Data Fields | Globals

Accessibility::LoginHelper Interface Reference

An interface for use by assistive technologies by which they can access system information and services on a 'need to know' basis while the screen is locked, during user authentication, or during other sensitive operations. More...

import "Accessibility_LoginHelper.idl";

Public Types

typedef sequence< WindowInfoWindowList
typedef sequence< DeviceReqDeviceReqList
enum  DeviceReq {

Public Member Functions

boolean setSafe (in boolean safe_mode)
DeviceReqList getDeviceReqs ()
WindowList getRaiseWindows ()

Data Structures

struct  WindowInfo

Detailed Description

An interface for use by assistive technologies by which they can access system information and services on a 'need to know' basis while the screen is locked, during user authentication, or during other sensitive operations.

This interface is intended for use by assistive technologies and related user-enabling services, and by applications and utilities which may wish to restrict access to certain system devices and services during security-sensitive states, e.g. when the screen is locked or during authentication into some secure service.

Such 'applications' (for instance, screen lock dialogs and security-enabled web browsers) use the LoginHelper client interfaces, and the bonobo-activation query service, to query for assistive technologies which advertise the LoginHelper service. The client then queries these assistive technologies for their device I/O requirements, via the getDeviceReqs call. The client may then issue the advisory request setSafe (TRUE), which requests that the LoginHelper -implementing service make a best-effort attempt to make itself more secure (for instance, an onscreen keyboard might turn off word prediction, and a screenreader may turn off keyboard echo via speech). The return value of setSafe is an advisory indication of whether this attempt was successful (no specific guarantees are implied). Once the 'security sensitive' state is exited, the client should call setSafe (FALSE).

The return values from getDeviceReqs inform the client of which services the LoginHelper service (e. g. assistive technology) needs in order to do its job. The client may use this information to loosen any restrictions on access which it may currently have in place (for instance, keyboard grabs, etc.). If it does not do so, the likely outcome is that the end-user will experience loss of access to the system.

Member Typedef Documentation

typedef sequence<DeviceReq> Accessibility::LoginHelper::DeviceReqList

typedef sequence<WindowInfo> Accessibility::LoginHelper::WindowList

Member Enumeration Documentation

enum Accessibility::LoginHelper::DeviceReq

GUI_EVENTS  : Needs access to the GUI event subsystem (e.g. Xserver)
CORE_KEYBOARD  : Needs access to the system keyboard events (read and write)
CORE_POINTER  : Needs access to the onscreen pointer (e.g. mouse pointer)
EXT_INPUT  : Reads XInput extended input devices
POST_WINDOWS  : Posts Windows, and needs for toplevel windows to be visible
AUDIO_OUT  : Writes to audio device
AUDIO_IN  : Reads from audio device
NETWORK  : Requires access to general network services, including remote access
LOCALHOST  : Requires network services hosted on LOCALHOST only
SERIAL_OUT  : Writes to a serial port
SERIAL_IN  : Reads from a serial port

Member Function Documentation

DeviceReqList Accessibility::LoginHelper::getDeviceReqs  ) 


Query a LoginHelper for the types of device I/O it requires, in order to do its job. For instance, a LoginHelper which needs to receive keyboard events will include Accessibility_LoginHelper_CORE_KEYBOARD in this list.

: A sequence of LoginHelper_DeviceReq indicating the device I/O required in order to facilitate end-user access to the system.

WindowList Accessibility::LoginHelper::getRaiseWindows  ) 


Get a list of window IDs that need raising on login.

: a sequence containing window IDS for toplevels which need to be raised/made visible during user authentication, in order for the LoginHelper to facilitate end-user access to the system.

boolean Accessibility::LoginHelper::setSafe in boolean  safe_mode  ) 


safe_mode,: TRUE if the client is requesting that 'safe mode' be initiated, FALSE if the client is advising that 'safe mode' may be exited, i.e. normal operation may be resumed.
Request a LoginHelper to enter "safe" mode, or inform LoginHelper that "safe" mode may be exited. If safe_mode is TRUE, but the return value is FALSE, the requesting client may wish to deny services to the LoginHelper, for instance avoid raising its toplevels. The return value is purely advisory, and no guarantees are intended about what the implementing LoginHelper will do to improve security when in "safe" mode.

: whether the LoginHelper is now "safe" or not.

The documentation for this interface was generated from the following file:
Generated on Tue Jul 18 16:56:16 2006 for at-spi-idl by  doxygen 1.4.3