xenocara/dist/xkeyboard-config/compat
sthen 3890ec0e28 Workaround CVE-2012-0064, password-locked X screen savers can be bypassed
with Ctrl Alt *.

This is not the complete fix but mitigates the issue for now.

Bug was introduced to OpenBSD in the xserver update on 2011/11/05
(commit 7d2543a3cb3 upstream), so it affects -current since that date,
but no OpenBSD releases.

ok matthieu@ phessler@ dcoppa@, also tested by schwarze@, jj@

If you want this fix before new snapshots are available, copy the new
file to /usr/X11R6/share/X11/xkb/compat/xfree86 and reload the kbmap e.g.
setxkbmap $(setxkbmap -query | awk '/layout/ { print $2 }')
2012-01-19 16:18:55 +00:00
..
accessx Update xkeyboard-config to 2.2.1 2011-04-10 17:08:49 +00:00
basic Update xkeyboard-config to 2.2.1 2011-04-10 17:08:49 +00:00
caps Update xkeyboard-config to 2.0 2011-01-10 14:25:56 +00:00
compat.dir Update xkeyboard-config to 2.3 2011-07-01 14:25:24 +00:00
complete Update xkeyboard-config to 2.2.1 2011-04-10 17:08:49 +00:00
default Update xkeyboard-config to 2.2.1 2011-04-10 17:08:49 +00:00
iso9995 Update xkeyboard-config to 2.2.1 2011-04-10 17:08:49 +00:00
japan Update xkeyboard-config to 2.2.1 2011-04-10 17:08:49 +00:00
keypad Update xkeyboard-config to 2.2.1 2011-04-10 17:08:49 +00:00
ledcaps Import xkeyboard-config version 1.6. 2009-06-06 17:52:23 +00:00
lednum Import xkeyboard-config version 1.6. 2009-06-06 17:52:23 +00:00
ledscroll Import xkeyboard-config version 1.6. 2009-06-06 17:52:23 +00:00
level5 Update xkeyboard-config to 2.2.1 2011-04-10 17:08:49 +00:00
Makefile.am Update xkeyboard-config to 2.0 2011-01-10 14:25:56 +00:00
Makefile.in Update to 2.4.1 2011-10-16 17:18:56 +00:00
misc Update xkeyboard-config to 2.2.1 2011-04-10 17:08:49 +00:00
mousekeys Update xkeyboard-config to 2.2.1 2011-04-10 17:08:49 +00:00
norepeat Update xkeyboard-config to 2.2.1 2011-04-10 17:08:49 +00:00
olpc Update xkeyboard-config to 2.2.1 2011-04-10 17:08:49 +00:00
pc Update xkeyboard-config to 2.2.1 2011-04-10 17:08:49 +00:00
pc98 Update xkeyboard-config to 2.2.1 2011-04-10 17:08:49 +00:00
README Import xkeyboard-config version 1.6. 2009-06-06 17:52:23 +00:00
xfree86 Workaround CVE-2012-0064, password-locked X screen savers can be bypassed 2012-01-19 16:18:55 +00:00
xtest Update xkeyboard-config to 2.2.1 2011-04-10 17:08:49 +00:00

The core protocol interpretation of keyboard modifiers does not include direct
support for multiple keyboard groups, so XKB reports the effective keyboard
group to XKB-aware clients using some of reserved bits in the state field of
some core protocol events. This modified state field would not be interpreted
correctly by XKB-unaware clients, so XKB provides a group compatibility mapping
which remaps the keyboard group into a core modifier mask that has similar
effects, when possible.

XKB maintains three compatibility state components that are used to make
XKB-unaware clients(*) work as well as possible:
- The compatibility state which corresponds to the effective modifier and
  effective group state.
- The compatibility lookup state which is the core-protocol equivalent of the
  lookup state.
- The compatibility grab state which is the nearest core-protocol equivalent
  of the grab state.

Compatibility state are essentially the corresponding XKB states, but with
keyboard group possibly encoded as one or more modifiers. 

Modifiers that correspond to each keyboard group are described in this
group compatibility map.


----
(*) The implementation of XKB invisibly extends the X library to use the
keyboard extension if it is present. That means, clients that use library or
toolkit routines to interpret keyboard events automatically use all of XKB
features; clients that directly interpret the state field of core protocol
events or the keymap direcly may be affected by some of the XKB differences.
Thus most clients can take all advantages without modification but it also
means that XKB state can be reported to clients that have not explicitly
requested the keyboard extension.