From 3744281b9ae8aa0ab86ceaee1afe8a603e3aeb2c Mon Sep 17 00:00:00 2001 From: marha Date: Mon, 19 Nov 2012 10:16:38 +0100 Subject: dos -> unix --- xorg-server/README | 76 +- xorg-server/Xext/xvdisp.h | 4 +- xorg-server/Xi/Makefile.am | 216 +- xorg-server/composite/Makefile.am | 30 +- xorg-server/config/10-evdev.conf | 80 +- xorg-server/config/dbus-api | 80 +- xorg-server/config/fdi2iclass.py | 404 +- xorg-server/config/x11-input.fdi | 186 +- xorg-server/config/xorg-server.conf | 26 +- xorg-server/dbe/Makefile.am | 26 +- xorg-server/dix/BuiltInAtoms | 658 +- xorg-server/dix/buildatoms | 86 +- xorg-server/dix/protocol.txt | 2206 +++--- xorg-server/doc/smartsched | 408 +- xorg-server/exa/Makefile.am | 60 +- xorg-server/fix-miregion | 58 +- xorg-server/fix-miregion-private | 28 +- xorg-server/fix-patch-whitespace | 8 +- xorg-server/fix-region | 76 +- xorg-server/hw/Makefile.am | 82 +- xorg-server/hw/dmx/.gitignore | 4 +- xorg-server/hw/dmx/config/.gitignore | 14 +- xorg-server/hw/dmx/config/TODO | 14 +- xorg-server/hw/dmx/config/dmxcompat.h | 88 +- xorg-server/hw/dmx/config/parser.y | 452 +- xorg-server/hw/dmx/config/test-a.in | 2 +- xorg-server/hw/dmx/config/test-a.out | 4 +- xorg-server/hw/dmx/config/test-b.in | 2 +- xorg-server/hw/dmx/config/test-b.out | 2 +- xorg-server/hw/dmx/config/test-c.in | 2 +- xorg-server/hw/dmx/config/test-c.out | 4 +- xorg-server/hw/dmx/config/test-d.in | 2 +- xorg-server/hw/dmx/config/test-d.out | 4 +- xorg-server/hw/dmx/config/test-e.in | 2 +- xorg-server/hw/dmx/config/test-e.out | 4 +- xorg-server/hw/dmx/config/test-f.in | 4 +- xorg-server/hw/dmx/config/test-g.in | 8 +- xorg-server/hw/dmx/config/test-g.out | 8 +- xorg-server/hw/dmx/config/test-h.in | 14 +- xorg-server/hw/dmx/config/test-h.out | 14 +- xorg-server/hw/dmx/config/test-i.in | 6 +- xorg-server/hw/dmx/config/test-i.out | 6 +- xorg-server/hw/dmx/config/test-j.in | 26 +- xorg-server/hw/dmx/config/test-j.out | 22 +- xorg-server/hw/dmx/config/test-k.in | 6 +- xorg-server/hw/dmx/config/test-k.out | 6 +- xorg-server/hw/dmx/config/test-l.in | 24 +- xorg-server/hw/dmx/config/test-l.out | 24 +- xorg-server/hw/dmx/doc/DMXSpec-v1.txt | 916 +-- xorg-server/hw/dmx/doc/DMXSpec.txt | 1750 ++--- xorg-server/hw/dmx/examples/.gitignore | 34 +- xorg-server/hw/dmx/input/Makefile.am | 134 +- xorg-server/hw/dmx/input/dmxdummy.h | 86 +- xorg-server/hw/kdrive/Makefile.am | 60 +- xorg-server/hw/kdrive/Xkdrive.man | 114 +- xorg-server/hw/kdrive/ephyr/README | 146 +- xorg-server/hw/kdrive/fake/.gitignore | 4 +- xorg-server/hw/kdrive/fake/Makefile.am | 60 +- xorg-server/hw/kdrive/fbdev/.gitignore | 4 +- xorg-server/hw/kdrive/fbdev/Makefile.am | 58 +- xorg-server/hw/kdrive/fbdev/Xfbdev.man | 56 +- xorg-server/hw/kdrive/linux/Makefile.am | 54 +- xorg-server/hw/kdrive/src/Makefile.am | 56 +- xorg-server/hw/xfree86/common/.gitignore | 6 +- xorg-server/hw/xfree86/common/extramodes | 54 +- xorg-server/hw/xfree86/common/modeline2c.awk | 186 +- xorg-server/hw/xfree86/common/vesamodes | 222 +- xorg-server/hw/xfree86/common/xf86Build.h.in | 4 +- xorg-server/hw/xfree86/ddc/DDC.HOWTO | 194 +- xorg-server/hw/xfree86/ddc/Makefile.am | 22 +- xorg-server/hw/xfree86/fbdevhw/README | 32 +- xorg-server/hw/xfree86/i2c/i2c_def.h | 12 +- xorg-server/hw/xfree86/int10/INT10.HOWTO | 688 +- xorg-server/hw/xfree86/int10/Makefile.am | 92 +- xorg-server/hw/xfree86/int10/x86emu.c | 24 +- xorg-server/hw/xfree86/int10/xf86x86emu.h | 108 +- xorg-server/hw/xfree86/modes/Makefile.am | 70 +- xorg-server/hw/xfree86/os-support/bsd/Makefile.am | 152 +- xorg-server/hw/xfree86/os-support/hurd/Makefile.am | 30 +- xorg-server/hw/xfree86/os-support/hurd/hurd_bell.c | 74 +- xorg-server/hw/xfree86/os-support/int10Defines.h | 178 +- xorg-server/hw/xfree86/os-support/misc/Makefile.am | 24 +- .../hw/xfree86/os-support/solaris/Makefile.am | 74 +- .../hw/xfree86/os-support/solaris/apSolaris.shar | 1612 ++-- .../hw/xfree86/os-support/solaris/sun_inout.s | 248 +- xorg-server/hw/xfree86/ramdac/CURSOR.NOTES | 382 +- xorg-server/hw/xfree86/vgahw/Makefile.am | 18 +- xorg-server/hw/xfree86/x86emu/Makefile.am | 58 +- xorg-server/hw/xnest/icon | 28 +- xorg-server/hw/xnest/screensaver | 1372 ++-- xorg-server/hw/xquartz/bundle/.gitignore | 2 +- xorg-server/hw/xquartz/bundle/X11.sh | 30 +- xorg-server/hw/xquartz/bundle/Xquartz.plist | 54 +- xorg-server/hw/xquartz/mach-startup/.gitignore | 16 +- .../hw/xquartz/mach-startup/mach_startup.defs | 100 +- xorg-server/hw/xquartz/pbproxy/.gitignore | 2 +- xorg-server/hw/xquartz/xpr/Makefile.am | 64 +- xorg-server/hw/xwin/glx/winpriv.h | 22 +- xorg-server/hw/xwin/system.XWinrc | 256 +- xorg-server/include/.gitignore | 10 +- xorg-server/include/dix-config-apple-verbatim.h | 16 +- xorg-server/include/kdrive-config.h.in | 80 +- xorg-server/include/version-config.h.in | 32 +- xorg-server/include/xsha1.h | 38 +- xorg-server/m4/ac_define_dir.m4 | 98 +- xorg-server/miext/rootless/README.txt | 668 +- xorg-server/miext/shadow/shrot16pack.c | 60 +- xorg-server/miext/shadow/shrot16pack_180.c | 62 +- xorg-server/miext/shadow/shrot16pack_270.c | 62 +- xorg-server/miext/shadow/shrot16pack_270YX.c | 62 +- xorg-server/miext/shadow/shrot16pack_90.c | 62 +- xorg-server/miext/shadow/shrot16pack_90YX.c | 62 +- xorg-server/miext/shadow/shrot32pack.c | 60 +- xorg-server/miext/shadow/shrot32pack_180.c | 62 +- xorg-server/miext/shadow/shrot32pack_270.c | 62 +- xorg-server/miext/shadow/shrot32pack_90.c | 62 +- xorg-server/miext/shadow/shrot8pack.c | 60 +- xorg-server/miext/shadow/shrot8pack_180.c | 62 +- xorg-server/miext/shadow/shrot8pack_270.c | 62 +- xorg-server/miext/shadow/shrot8pack_90.c | 62 +- xorg-server/miext/sync/Makefile.am | 28 +- xorg-server/record/Makefile.am | 14 +- xorg-server/render/Makefile.am | 40 +- xorg-server/test/README | 72 +- xorg-server/xfixes/Makefile.am | 32 +- xorg-server/xkb/Makefile.am | 86 +- xorg-server/xkb/README.compiled | 26 +- xorg-server/xkb/XKM_file_format.txt | 1368 ++-- xorg-server/xkeyboard-config/AUTHORS | 16 +- xorg-server/xkeyboard-config/BUGS | 140 +- xorg-server/xkeyboard-config/COPYING | 380 +- xorg-server/xkeyboard-config/CREDITS | 6 +- xorg-server/xkeyboard-config/ChangeLog | 2 +- xorg-server/xkeyboard-config/ChangeLog.old | 7782 ++++++++++---------- xorg-server/xkeyboard-config/README | 56 +- xorg-server/xkeyboard-config/TODO | 12 +- xorg-server/xkeyboard-config/compat/README | 66 +- xorg-server/xkeyboard-config/compat/caps | 24 +- xorg-server/xkeyboard-config/compat/ledcaps | 46 +- xorg-server/xkeyboard-config/compat/lednum | 46 +- xorg-server/xkeyboard-config/compat/ledscroll | 46 +- xorg-server/xkeyboard-config/docs/HOWTO.testing | 44 +- xorg-server/xkeyboard-config/docs/HOWTO.transition | 38 +- xorg-server/xkeyboard-config/docs/Makefile.am | 2 +- xorg-server/xkeyboard-config/docs/README.config | 390 +- xorg-server/xkeyboard-config/docs/README.symbols | 102 +- xorg-server/xkeyboard-config/docs/iso15924.csv | 210 +- xorg-server/xkeyboard-config/docs/iso3166-3.csv | 492 +- xorg-server/xkeyboard-config/docs/iso3166.csv | 480 +- xorg-server/xkeyboard-config/docs/iso639.csv | 1002 +-- xorg-server/xkeyboard-config/geometry/README | 12 +- .../geometry/digital_vndr/Makefile.am | 8 +- xorg-server/xkeyboard-config/geometry/nokia | 106 +- .../xkeyboard-config/geometry/sgi_vndr/Makefile.am | 8 +- xorg-server/xkeyboard-config/geometry/typematrix | 1490 ++-- xorg-server/xkeyboard-config/keycodes/README | 12 +- xorg-server/xkeyboard-config/keycodes/aliases | 198 +- .../keycodes/digital_vndr/Makefile.am | 8 +- .../xkeyboard-config/keycodes/sgi_vndr/Makefile.am | 8 +- xorg-server/xkeyboard-config/po/ChangeLog | 528 +- xorg-server/xkeyboard-config/po/Makevars | 82 +- xorg-server/xkeyboard-config/po/POTFILES.in | 4 +- xorg-server/xkeyboard-config/po/POTFILES.skip | 4 +- xorg-server/xkeyboard-config/po/af.po | 2928 ++++---- xorg-server/xkeyboard-config/po/az.po | 2930 ++++---- xorg-server/xkeyboard-config/po/crh.po | 5748 +++++++-------- xorg-server/xkeyboard-config/po/el.po | 5746 +++++++-------- xorg-server/xkeyboard-config/po/en_GB.po | 3734 +++++----- xorg-server/xkeyboard-config/po/fi.po | 6918 ++++++++--------- xorg-server/xkeyboard-config/po/ka.po | 4548 ++++++------ xorg-server/xkeyboard-config/po/ky.po | 6034 +++++++-------- xorg-server/xkeyboard-config/po/nb.po | 5378 +++++++------- xorg-server/xkeyboard-config/po/ro.po | 6158 ++++++++-------- xorg-server/xkeyboard-config/po/rw.po | 3654 ++++----- xorg-server/xkeyboard-config/po/sk.po | 5562 +++++++------- xorg-server/xkeyboard-config/po/sq.po | 2930 ++++---- xorg-server/xkeyboard-config/po/sr.po | 4132 +++++------ xorg-server/xkeyboard-config/po/tr.po | 5190 ++++++------- xorg-server/xkeyboard-config/po/vi.po | 6060 +++++++-------- xorg-server/xkeyboard-config/po/zh_TW.po | 3342 ++++----- xorg-server/xkeyboard-config/rules/HDR | 66 +- xorg-server/xkeyboard-config/rules/README | 4 +- xorg-server/xkeyboard-config/rules/base.l1_k.part | 6 +- xorg-server/xkeyboard-config/rules/base.l1o_s.part | 4 +- xorg-server/xkeyboard-config/rules/base.l2o_s.part | 4 +- xorg-server/xkeyboard-config/rules/base.l3o_s.part | 4 +- xorg-server/xkeyboard-config/rules/base.l4o_s.part | 4 +- xorg-server/xkeyboard-config/rules/base.l_k.part | 6 +- xorg-server/xkeyboard-config/rules/base.lo_s.part | 4 +- xorg-server/xkeyboard-config/rules/base.m_g.part | 54 +- xorg-server/xkeyboard-config/rules/base.m_k.part | 28 +- xorg-server/xkeyboard-config/rules/base.m_s.part | 102 +- xorg-server/xkeyboard-config/rules/base.m_t.part | 8 +- xorg-server/xkeyboard-config/rules/base.ml1_c.part | 2 +- xorg-server/xkeyboard-config/rules/base.ml1_s.part | 30 +- xorg-server/xkeyboard-config/rules/base.ml2_s.part | 6 +- xorg-server/xkeyboard-config/rules/base.ml3_s.part | 6 +- xorg-server/xkeyboard-config/rules/base.ml4_s.part | 6 +- xorg-server/xkeyboard-config/rules/base.ml_c.part | 8 +- xorg-server/xkeyboard-config/rules/base.ml_g.part | 2 +- xorg-server/xkeyboard-config/rules/base.mlv_s.part | 8 +- xorg-server/xkeyboard-config/rules/base.o_t.part | 16 +- xorg-server/xkeyboard-config/rules/bin/Makefile.am | 20 +- xorg-server/xkeyboard-config/rules/bin/ml1_s.sh | 36 +- xorg-server/xkeyboard-config/rules/bin/ml1v1_s.sh | 20 +- xorg-server/xkeyboard-config/rules/bin/ml1v_s.sh | 20 +- xorg-server/xkeyboard-config/rules/bin/ml_s.sh | 28 +- xorg-server/xkeyboard-config/rules/bin/mln_s.sh | 40 +- xorg-server/xkeyboard-config/rules/bin/mlnvn_s.sh | 24 +- xorg-server/xkeyboard-config/rules/bin/mlv_s.sh | 20 +- .../xkeyboard-config/rules/compat/.gitignore | 12 +- .../xkeyboard-config/rules/compat/base.l1v1_c.part | 2 +- .../xkeyboard-config/rules/compat/base.l2v2_c.part | 2 +- .../xkeyboard-config/rules/compat/base.l3v3_c.part | 2 +- .../xkeyboard-config/rules/compat/base.l4v4_c.part | 2 +- .../xkeyboard-config/rules/compat/base.lists.part | 4 +- .../xkeyboard-config/rules/compat/base.lv_c.part | 2 +- .../xkeyboard-config/rules/compat/base.o_s.part | 2 +- .../rules/compat/layoutsMapping.lst | 54 +- xorg-server/xkeyboard-config/rules/evdev.m_k.part | 6 +- xorg-server/xkeyboard-config/rules/evdev.m_s.part | 6 +- xorg-server/xkeyboard-config/rules/merge.sh | 50 +- .../symbols/digital_vndr/Makefile.am | 10 +- .../xkeyboard-config/symbols/extractGroupNames.sh | 6 +- .../symbols/fujitsu_vndr/Makefile.am | 8 +- .../xkeyboard-config/symbols/hp_vndr/Makefile.am | 8 +- .../symbols/macintosh_vndr/Makefile.am | 16 +- .../xkeyboard-config/symbols/macintosh_vndr/fr | 220 +- .../xkeyboard-config/symbols/macintosh_vndr/jp | 70 +- .../xkeyboard-config/symbols/nec_vndr/Makefile.am | 8 +- .../symbols/nokia_vndr/Makefile.am | 12 +- .../xkeyboard-config/symbols/nokia_vndr/rx-44 | 606 +- .../xkeyboard-config/symbols/sgi_vndr/Makefile.am | 8 +- .../xkeyboard-config/symbols/sony_vndr/Makefile.am | 8 +- .../xkeyboard-config/symbols/sun_vndr/Makefile.am | 20 +- .../xkeyboard-config/symbols/sun_vndr/solaris | 426 +- .../symbols/xfree68_vndr/Makefile.am | 8 +- xorg-server/xkeyboard-config/tests/listCI2.xsl | 42 +- xorg-server/xkeyboard-config/tests/listCIs.xsl | 40 +- .../xkeyboard-config/tests/mxkbledpanel/Imakefile | 16 +- .../tests/mxkbledpanel/mxkbledpanel.c | 1210 +-- xorg-server/xkeyboard-config/tests/ruby/README | 6 +- .../xkeyboard-config/tests/ruby/find_fragments.rb | 104 +- .../xkeyboard-config/tests/ruby/find_match.rb | 84 +- xorg-server/xkeyboard-config/tests/ruby/utils.rb | 128 +- .../xkeyboard-config/tests/ruby/xkbparser.rb | 370 +- xorg-server/xkeyboard-config/tests/testLayouts.pl | 34 +- xorg-server/xkeyboard-config/tests/testModels.pl | 30 +- xorg-server/xkeyboard-config/tests/testOptions.pl | 30 +- .../xkeyboard-config/tests/testShortDescriptions | 12 +- xorg-server/xkeyboard-config/tests/xkbTestFunc.pm | 330 +- xorg-server/xkeyboard-config/types/README | 8 +- xorg-server/xkeyboard-config/types/nokia | 28 +- .../xkeyboard-config/xkeyboard-config.pc.in | 16 +- xorg-server/xkeyboard-config/xslt/xfree86.xsl | 100 +- 255 files changed, 59336 insertions(+), 59336 deletions(-) (limited to 'xorg-server') diff --git a/xorg-server/README b/xorg-server/README index 58abd8e87..b2499a059 100644 --- a/xorg-server/README +++ b/xorg-server/README @@ -1,38 +1,38 @@ - X Server - -The X server accepts requests from client applications to create windows, -which are (normally rectangular) "virtual screens" that the client program -can draw into. - -Windows are then composed on the actual screen by the X server -(or by a separate composite manager) as directed by the window manager, -which usually communicates with the user via graphical controls such as buttons -and draggable titlebars and borders. - -For a comprehensive overview of X Server and X Window System, consult the -following article: -http://en.wikipedia.org/wiki/X_server - -All questions regarding this software should be directed at the -Xorg mailing list: - - http://lists.freedesktop.org/mailman/listinfo/xorg - -Please submit bug reports to the Xorg bugzilla: - - https://bugs.freedesktop.org/enter_bug.cgi?product=xorg - -The master development code repository can be found at: - - git://anongit.freedesktop.org/git/xorg/xserver - - http://cgit.freedesktop.org/xorg/xserver - -For patch submission instructions, see: - - http://www.x.org/wiki/Development/Documentation/SubmittingPatches - -For more information on the git code manager, see: - - http://wiki.x.org/wiki/GitPage - + X Server + +The X server accepts requests from client applications to create windows, +which are (normally rectangular) "virtual screens" that the client program +can draw into. + +Windows are then composed on the actual screen by the X server +(or by a separate composite manager) as directed by the window manager, +which usually communicates with the user via graphical controls such as buttons +and draggable titlebars and borders. + +For a comprehensive overview of X Server and X Window System, consult the +following article: +http://en.wikipedia.org/wiki/X_server + +All questions regarding this software should be directed at the +Xorg mailing list: + + http://lists.freedesktop.org/mailman/listinfo/xorg + +Please submit bug reports to the Xorg bugzilla: + + https://bugs.freedesktop.org/enter_bug.cgi?product=xorg + +The master development code repository can be found at: + + git://anongit.freedesktop.org/git/xorg/xserver + + http://cgit.freedesktop.org/xorg/xserver + +For patch submission instructions, see: + + http://www.x.org/wiki/Development/Documentation/SubmittingPatches + +For more information on the git code manager, see: + + http://wiki.x.org/wiki/GitPage + diff --git a/xorg-server/Xext/xvdisp.h b/xorg-server/Xext/xvdisp.h index b3580a8ef..298d39560 100644 --- a/xorg-server/Xext/xvdisp.h +++ b/xorg-server/Xext/xvdisp.h @@ -1,2 +1,2 @@ -extern void XineramifyXv(void); -extern void XvResetProcVector(void); +extern void XineramifyXv(void); +extern void XvResetProcVector(void); diff --git a/xorg-server/Xi/Makefile.am b/xorg-server/Xi/Makefile.am index 499e7056d..69c7886b9 100644 --- a/xorg-server/Xi/Makefile.am +++ b/xorg-server/Xi/Makefile.am @@ -1,108 +1,108 @@ -noinst_LTLIBRARIES = libXi.la - -AM_CFLAGS = $(DIX_CFLAGS) - -libXi_la_SOURCES = \ - allowev.c \ - allowev.h \ - chgdctl.c \ - chgdctl.h \ - chgfctl.c \ - chgfctl.h \ - chgkbd.c \ - chgkbd.h \ - chgkmap.c \ - chgkmap.h \ - chgprop.c \ - chgprop.h \ - chgptr.c \ - chgptr.h \ - closedev.c \ - closedev.h \ - devbell.c \ - devbell.h \ - exevents.c \ - exglobals.h \ - extinit.c \ - getbmap.c \ - getbmap.h \ - getdctl.c \ - getdctl.h \ - getfctl.c \ - getfctl.h \ - getfocus.c \ - getfocus.h \ - getkmap.c \ - getkmap.h \ - getmmap.c \ - getmmap.h \ - getprop.c \ - getprop.h \ - getselev.c \ - getselev.h \ - getvers.c \ - getvers.h \ - grabdev.c \ - grabdev.h \ - grabdevb.c \ - grabdevb.h \ - grabdevk.c \ - grabdevk.h \ - gtmotion.c \ - gtmotion.h \ - listdev.c \ - listdev.h \ - opendev.c \ - opendev.h \ - queryst.c \ - queryst.h \ - selectev.c \ - selectev.h \ - sendexev.c \ - sendexev.h \ - setbmap.c \ - setbmap.h \ - setdval.c \ - setdval.h \ - setfocus.c \ - setfocus.h \ - setmmap.c \ - setmmap.h \ - setmode.c \ - setmode.h \ - ungrdev.c \ - ungrdev.h \ - ungrdevb.c \ - ungrdevb.h \ - ungrdevk.c \ - ungrdevk.h \ - xiallowev.c \ - xiallowev.h \ - xichangecursor.c \ - xichangecursor.h \ - xichangehierarchy.c \ - xichangehierarchy.h \ - xigetclientpointer.c \ - xigetclientpointer.h \ - xigrabdev.c \ - xigrabdev.h \ - xipassivegrab.h \ - xipassivegrab.c \ - xiproperty.c \ - xiproperty.h \ - xiquerydevice.c \ - xiquerydevice.h \ - xiquerypointer.c \ - xiquerypointer.h \ - xiqueryversion.c \ - xiqueryversion.h \ - xiselectev.c \ - xiselectev.h \ - xisetclientpointer.c \ - xisetclientpointer.h \ - xisetdevfocus.c \ - xisetdevfocus.h \ - xiwarppointer.c \ - xiwarppointer.h - -EXTRA_DIST = stubs.c +noinst_LTLIBRARIES = libXi.la + +AM_CFLAGS = $(DIX_CFLAGS) + +libXi_la_SOURCES = \ + allowev.c \ + allowev.h \ + chgdctl.c \ + chgdctl.h \ + chgfctl.c \ + chgfctl.h \ + chgkbd.c \ + chgkbd.h \ + chgkmap.c \ + chgkmap.h \ + chgprop.c \ + chgprop.h \ + chgptr.c \ + chgptr.h \ + closedev.c \ + closedev.h \ + devbell.c \ + devbell.h \ + exevents.c \ + exglobals.h \ + extinit.c \ + getbmap.c \ + getbmap.h \ + getdctl.c \ + getdctl.h \ + getfctl.c \ + getfctl.h \ + getfocus.c \ + getfocus.h \ + getkmap.c \ + getkmap.h \ + getmmap.c \ + getmmap.h \ + getprop.c \ + getprop.h \ + getselev.c \ + getselev.h \ + getvers.c \ + getvers.h \ + grabdev.c \ + grabdev.h \ + grabdevb.c \ + grabdevb.h \ + grabdevk.c \ + grabdevk.h \ + gtmotion.c \ + gtmotion.h \ + listdev.c \ + listdev.h \ + opendev.c \ + opendev.h \ + queryst.c \ + queryst.h \ + selectev.c \ + selectev.h \ + sendexev.c \ + sendexev.h \ + setbmap.c \ + setbmap.h \ + setdval.c \ + setdval.h \ + setfocus.c \ + setfocus.h \ + setmmap.c \ + setmmap.h \ + setmode.c \ + setmode.h \ + ungrdev.c \ + ungrdev.h \ + ungrdevb.c \ + ungrdevb.h \ + ungrdevk.c \ + ungrdevk.h \ + xiallowev.c \ + xiallowev.h \ + xichangecursor.c \ + xichangecursor.h \ + xichangehierarchy.c \ + xichangehierarchy.h \ + xigetclientpointer.c \ + xigetclientpointer.h \ + xigrabdev.c \ + xigrabdev.h \ + xipassivegrab.h \ + xipassivegrab.c \ + xiproperty.c \ + xiproperty.h \ + xiquerydevice.c \ + xiquerydevice.h \ + xiquerypointer.c \ + xiquerypointer.h \ + xiqueryversion.c \ + xiqueryversion.h \ + xiselectev.c \ + xiselectev.h \ + xisetclientpointer.c \ + xisetclientpointer.h \ + xisetdevfocus.c \ + xisetdevfocus.h \ + xiwarppointer.c \ + xiwarppointer.h + +EXTRA_DIST = stubs.c diff --git a/xorg-server/composite/Makefile.am b/xorg-server/composite/Makefile.am index a7c0804e8..c2f5123f2 100644 --- a/xorg-server/composite/Makefile.am +++ b/xorg-server/composite/Makefile.am @@ -1,15 +1,15 @@ -noinst_LTLIBRARIES = libcomposite.la - -AM_CFLAGS = $(DIX_CFLAGS) - -if XORG -sdk_HEADERS = compositeext.h -endif - -libcomposite_la_SOURCES = \ - compalloc.c \ - compext.c \ - compint.h \ - compinit.c \ - compoverlay.c \ - compwindow.c +noinst_LTLIBRARIES = libcomposite.la + +AM_CFLAGS = $(DIX_CFLAGS) + +if XORG +sdk_HEADERS = compositeext.h +endif + +libcomposite_la_SOURCES = \ + compalloc.c \ + compext.c \ + compint.h \ + compinit.c \ + compoverlay.c \ + compwindow.c diff --git a/xorg-server/config/10-evdev.conf b/xorg-server/config/10-evdev.conf index 144110846..cc83ab232 100644 --- a/xorg-server/config/10-evdev.conf +++ b/xorg-server/config/10-evdev.conf @@ -1,40 +1,40 @@ -# -# Catch-all evdev loader for udev-based systems -# We don't simply match on any device since that also adds accelerometers -# and other devices that we don't really want to use. The list below -# matches everything but joysticks. - -Section "InputClass" - Identifier "evdev pointer catchall" - MatchIsPointer "on" - MatchDevicePath "/dev/input/event*" - Driver "evdev" -EndSection - -Section "InputClass" - Identifier "evdev keyboard catchall" - MatchIsKeyboard "on" - MatchDevicePath "/dev/input/event*" - Driver "evdev" -EndSection - -Section "InputClass" - Identifier "evdev touchpad catchall" - MatchIsTouchpad "on" - MatchDevicePath "/dev/input/event*" - Driver "evdev" -EndSection - -Section "InputClass" - Identifier "evdev tablet catchall" - MatchIsTablet "on" - MatchDevicePath "/dev/input/event*" - Driver "evdev" -EndSection - -Section "InputClass" - Identifier "evdev touchscreen catchall" - MatchIsTouchscreen "on" - MatchDevicePath "/dev/input/event*" - Driver "evdev" -EndSection +# +# Catch-all evdev loader for udev-based systems +# We don't simply match on any device since that also adds accelerometers +# and other devices that we don't really want to use. The list below +# matches everything but joysticks. + +Section "InputClass" + Identifier "evdev pointer catchall" + MatchIsPointer "on" + MatchDevicePath "/dev/input/event*" + Driver "evdev" +EndSection + +Section "InputClass" + Identifier "evdev keyboard catchall" + MatchIsKeyboard "on" + MatchDevicePath "/dev/input/event*" + Driver "evdev" +EndSection + +Section "InputClass" + Identifier "evdev touchpad catchall" + MatchIsTouchpad "on" + MatchDevicePath "/dev/input/event*" + Driver "evdev" +EndSection + +Section "InputClass" + Identifier "evdev tablet catchall" + MatchIsTablet "on" + MatchDevicePath "/dev/input/event*" + Driver "evdev" +EndSection + +Section "InputClass" + Identifier "evdev touchscreen catchall" + MatchIsTouchscreen "on" + MatchDevicePath "/dev/input/event*" + Driver "evdev" +EndSection diff --git a/xorg-server/config/dbus-api b/xorg-server/config/dbus-api index 3c5ea32a6..018e98657 100644 --- a/xorg-server/config/dbus-api +++ b/xorg-server/config/dbus-api @@ -1,40 +1,40 @@ -D-BUS Configuration API v2 ----------------------------- - -The X server will register the bus name org.x.config.displayN, and the -object /org/x/config/N, where N is the display number. - -Currently only hotplugging of input devices is supported. - -org.x.config.input: - org.x.config.input.version: - Returns one unsigned int32, which is the API version. - - org.x.config.input.add: - Takes an argument of key/value option pairs in arrays, e.g.: - [ss][ss][ss][ss] - is the signature for four options. These options will be passed - to the input driver as with any others. - Option names beginning with _ are not allowed; they are reserved - for internal use. - - Returns a number of signed int32s. Positive integers are the - device IDs of new devices; negative numbers are X error codes, - as defined in X.h. BadMatch will be returned if the options - given do not match any device. BadValue is returned for a malformed - message. (Example: 8 is new device ID 8; -8 is BadMatch.) - - Notably, BadAlloc is never returned: the server internally signals - to D-BUS that the attempt failed for lack of memory. - - org.x.config.input.remove: - Takes one uint32 argument, which is the device ID to remove, i.e.: - u - is the signature. - - Returns one signed int32 which represents an X status as defined in - X.h. See org.x.config.input.add. Error codes are negative numbers. - - org.x.config.input.listDevices: - Lists the currently active devices. No argument. - Return value is sequence of [ ] [ ] ..., i.e. [us]. +D-BUS Configuration API v2 +---------------------------- + +The X server will register the bus name org.x.config.displayN, and the +object /org/x/config/N, where N is the display number. + +Currently only hotplugging of input devices is supported. + +org.x.config.input: + org.x.config.input.version: + Returns one unsigned int32, which is the API version. + + org.x.config.input.add: + Takes an argument of key/value option pairs in arrays, e.g.: + [ss][ss][ss][ss] + is the signature for four options. These options will be passed + to the input driver as with any others. + Option names beginning with _ are not allowed; they are reserved + for internal use. + + Returns a number of signed int32s. Positive integers are the + device IDs of new devices; negative numbers are X error codes, + as defined in X.h. BadMatch will be returned if the options + given do not match any device. BadValue is returned for a malformed + message. (Example: 8 is new device ID 8; -8 is BadMatch.) + + Notably, BadAlloc is never returned: the server internally signals + to D-BUS that the attempt failed for lack of memory. + + org.x.config.input.remove: + Takes one uint32 argument, which is the device ID to remove, i.e.: + u + is the signature. + + Returns one signed int32 which represents an X status as defined in + X.h. See org.x.config.input.add. Error codes are negative numbers. + + org.x.config.input.listDevices: + Lists the currently active devices. No argument. + Return value is sequence of [ ] [ ] ..., i.e. [us]. diff --git a/xorg-server/config/fdi2iclass.py b/xorg-server/config/fdi2iclass.py index 9dc06a76f..897444068 100644 --- a/xorg-server/config/fdi2iclass.py +++ b/xorg-server/config/fdi2iclass.py @@ -1,202 +1,202 @@ -#!/usr/bin/python -# -# Convert xorg keys from hal FDIs files to xorg.conf InputClass sections. -# Modified from Martin Pitt's original fdi2mpi.py script: -# http://cgit.freedesktop.org/media-player-info/tree/tools/fdi2mpi.py -# -# (C) 2010 Dan Nicholson -# (C) 2009 Canonical Ltd. -# Author: Dan Nicholson -# Author: Martin Pitt -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to -# deal in the Software without restriction, including without limitation the -# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -# sell copies of the Software, and to permit persons to whom the Software is -# fur- nished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FIT- NESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CON- -# NECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -import sys, xml.dom.minidom - -# dict converting tags to Match* entries -match_table = { - 'info.product': 'MatchProduct', - 'input.product': 'MatchProduct', - 'info.vendor': 'MatchVendor', - 'input.vendor': 'MatchVendor', - 'info.device': 'MatchDevicePath', - 'linux.device_file': 'MatchDevicePath', - '/org/freedesktop/Hal/devices/computer:system.kernel.name': 'MatchOS', - '@info.parent:pnp.id': 'MatchPnPID', -} - -# dict converting info.capabilities list to Match* entries -cap_match_table = { - 'input.keys': 'MatchIsKeyboard', - 'input.keyboard': 'MatchIsKeyboard', - 'input.keypad': 'MatchIsKeyboard', - 'input.mouse': 'MatchIsPointer', - 'input.joystick': 'MatchIsJoystick', - 'input.tablet': 'MatchIsTablet', - 'input.touchpad': 'MatchIsTouchpad', - 'input.touchscreen': 'MatchIsTouchscreen', -} - -def device_glob(path): - '''Convert a contains device path to a glob entry''' - if path[0] != '/': - path = '*' + path - return path + '*' - -def parse_match(node): - '''Parse a tag to a tuple with InputClass values''' - match = None - value = None - booltype = False - - # see what type of key we have - if node.attributes.has_key('key'): - key = node.attributes['key'].nodeValue - if key in match_table: - match = match_table[key] - elif key == 'info.capabilities': - booltype = True - - # bail out now if it's unrecognized - if not match and not booltype: - return (match, value) - - if node.attributes.has_key('string'): - value = node.attributes['string'].nodeValue - elif node.attributes.has_key('contains'): - value = node.attributes['contains'].nodeValue - if match == 'MatchDevicePath': - value = device_glob(value) - elif booltype and value in cap_match_table: - match = cap_match_table[value] - value = 'yes' - elif node.attributes.has_key('string_outof'): - value = node.attributes['string_outof'].nodeValue.replace(';','|') - elif node.attributes.has_key('contains_outof'): - all_values = node.attributes['contains_outof'].nodeValue.split(';') - for v in all_values: - if match == 'MatchDevicePath': - v = device_glob(v) - elif match == 'MatchPnPID' and len(v) < 7: - v += '*' - if value: - value += '|' + v - else: - value = v - - return (match, value) - -def parse_options(node): - '''Parse the x11_* options and return InputClass entries''' - driver = '' - ignore = False - options = [] - for n in node.childNodes: - if n.nodeType != xml.dom.minidom.Node.ELEMENT_NODE: - continue - - tag = n.tagName - key = n.attributes['key'].nodeValue - value = '' - - if n.hasChildNodes(): - content_node = n.childNodes[0] - assert content_node.nodeType == xml.dom.Node.TEXT_NODE - value = content_node.nodeValue - - if tag == 'match': - continue - assert tag in ('addset', 'merge', 'append', 'remove') - - if tag == 'remove' and key == 'input.x11_driver': - ignore = True - elif key == 'input.x11_driver': - driver = value - elif key.startswith('input.x11_options.'): - option = key.split('.', 2)[2] - options.append((option, value)) - - return (driver, ignore, options) - -def is_match_node(node): - '''Check if a node is a element''' - return node.nodeType == xml.dom.minidom.Node.ELEMENT_NODE and \ - node.tagName == 'match' - -def parse_all_matches(node): - '''Parse a x11 match tag and any parents that don't supply their - own options''' - matches = [] - - while True: - (key, value) = parse_match(node) - if key and value: - matches.append((key, value)) - - # walk up to a parent match node - node = node.parentNode - if node == None or not is_match_node(node): - break - - # leave if there other options at this level - children = set([n.tagName for n in node.childNodes - if n.nodeType == xml.dom.minidom.Node.ELEMENT_NODE]) - if children & set(['addset', 'merge', 'append']): - break - - return matches - -# stupid counter to give "unique" rule names -num_sections = 1 -def print_section(matches, driver, ignore, options): - '''Print a valid InputClass section to stdout''' - global num_sections - print 'Section "InputClass"' - print '\tIdentifier "Converted Class %d"' % num_sections - num_sections += 1 - for m, v in matches: - print '\t%s "%s"' % (m, v) - if driver: - print '\tDriver "%s"' % driver - if ignore: - print '\tOption "Ignore" "yes"' - for o, v in options: - print '\tOption "%s" "%s"' % (o, v) - print 'EndSection' - -def parse_fdi(fdi): - '''Parse x11 matches from fdi''' - # find all leaf nodes - num = 0 - for match_node in fdi.getElementsByTagName('match'): - children = set([n.tagName for n in match_node.childNodes - if n.nodeType == xml.dom.minidom.Node.ELEMENT_NODE]) - - # see if there are any options at this level - (driver, ignore, options) = parse_options(match_node) - if not driver and not ignore and not options: - continue - - matches = parse_all_matches(match_node) - if num > 0: - print - print_section(matches, driver, ignore, options) - num += 1 - -for f in sys.argv[1:]: - parse_fdi(xml.dom.minidom.parse(f)) +#!/usr/bin/python +# +# Convert xorg keys from hal FDIs files to xorg.conf InputClass sections. +# Modified from Martin Pitt's original fdi2mpi.py script: +# http://cgit.freedesktop.org/media-player-info/tree/tools/fdi2mpi.py +# +# (C) 2010 Dan Nicholson +# (C) 2009 Canonical Ltd. +# Author: Dan Nicholson +# Author: Martin Pitt +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to +# deal in the Software without restriction, including without limitation the +# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +# sell copies of the Software, and to permit persons to whom the Software is +# fur- nished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FIT- NESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +# THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CON- +# NECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +import sys, xml.dom.minidom + +# dict converting tags to Match* entries +match_table = { + 'info.product': 'MatchProduct', + 'input.product': 'MatchProduct', + 'info.vendor': 'MatchVendor', + 'input.vendor': 'MatchVendor', + 'info.device': 'MatchDevicePath', + 'linux.device_file': 'MatchDevicePath', + '/org/freedesktop/Hal/devices/computer:system.kernel.name': 'MatchOS', + '@info.parent:pnp.id': 'MatchPnPID', +} + +# dict converting info.capabilities list to Match* entries +cap_match_table = { + 'input.keys': 'MatchIsKeyboard', + 'input.keyboard': 'MatchIsKeyboard', + 'input.keypad': 'MatchIsKeyboard', + 'input.mouse': 'MatchIsPointer', + 'input.joystick': 'MatchIsJoystick', + 'input.tablet': 'MatchIsTablet', + 'input.touchpad': 'MatchIsTouchpad', + 'input.touchscreen': 'MatchIsTouchscreen', +} + +def device_glob(path): + '''Convert a contains device path to a glob entry''' + if path[0] != '/': + path = '*' + path + return path + '*' + +def parse_match(node): + '''Parse a tag to a tuple with InputClass values''' + match = None + value = None + booltype = False + + # see what type of key we have + if node.attributes.has_key('key'): + key = node.attributes['key'].nodeValue + if key in match_table: + match = match_table[key] + elif key == 'info.capabilities': + booltype = True + + # bail out now if it's unrecognized + if not match and not booltype: + return (match, value) + + if node.attributes.has_key('string'): + value = node.attributes['string'].nodeValue + elif node.attributes.has_key('contains'): + value = node.attributes['contains'].nodeValue + if match == 'MatchDevicePath': + value = device_glob(value) + elif booltype and value in cap_match_table: + match = cap_match_table[value] + value = 'yes' + elif node.attributes.has_key('string_outof'): + value = node.attributes['string_outof'].nodeValue.replace(';','|') + elif node.attributes.has_key('contains_outof'): + all_values = node.attributes['contains_outof'].nodeValue.split(';') + for v in all_values: + if match == 'MatchDevicePath': + v = device_glob(v) + elif match == 'MatchPnPID' and len(v) < 7: + v += '*' + if value: + value += '|' + v + else: + value = v + + return (match, value) + +def parse_options(node): + '''Parse the x11_* options and return InputClass entries''' + driver = '' + ignore = False + options = [] + for n in node.childNodes: + if n.nodeType != xml.dom.minidom.Node.ELEMENT_NODE: + continue + + tag = n.tagName + key = n.attributes['key'].nodeValue + value = '' + + if n.hasChildNodes(): + content_node = n.childNodes[0] + assert content_node.nodeType == xml.dom.Node.TEXT_NODE + value = content_node.nodeValue + + if tag == 'match': + continue + assert tag in ('addset', 'merge', 'append', 'remove') + + if tag == 'remove' and key == 'input.x11_driver': + ignore = True + elif key == 'input.x11_driver': + driver = value + elif key.startswith('input.x11_options.'): + option = key.split('.', 2)[2] + options.append((option, value)) + + return (driver, ignore, options) + +def is_match_node(node): + '''Check if a node is a element''' + return node.nodeType == xml.dom.minidom.Node.ELEMENT_NODE and \ + node.tagName == 'match' + +def parse_all_matches(node): + '''Parse a x11 match tag and any parents that don't supply their + own options''' + matches = [] + + while True: + (key, value) = parse_match(node) + if key and value: + matches.append((key, value)) + + # walk up to a parent match node + node = node.parentNode + if node == None or not is_match_node(node): + break + + # leave if there other options at this level + children = set([n.tagName for n in node.childNodes + if n.nodeType == xml.dom.minidom.Node.ELEMENT_NODE]) + if children & set(['addset', 'merge', 'append']): + break + + return matches + +# stupid counter to give "unique" rule names +num_sections = 1 +def print_section(matches, driver, ignore, options): + '''Print a valid InputClass section to stdout''' + global num_sections + print 'Section "InputClass"' + print '\tIdentifier "Converted Class %d"' % num_sections + num_sections += 1 + for m, v in matches: + print '\t%s "%s"' % (m, v) + if driver: + print '\tDriver "%s"' % driver + if ignore: + print '\tOption "Ignore" "yes"' + for o, v in options: + print '\tOption "%s" "%s"' % (o, v) + print 'EndSection' + +def parse_fdi(fdi): + '''Parse x11 matches from fdi''' + # find all leaf nodes + num = 0 + for match_node in fdi.getElementsByTagName('match'): + children = set([n.tagName for n in match_node.childNodes + if n.nodeType == xml.dom.minidom.Node.ELEMENT_NODE]) + + # see if there are any options at this level + (driver, ignore, options) = parse_options(match_node) + if not driver and not ignore and not options: + continue + + matches = parse_all_matches(match_node) + if num > 0: + print + print_section(matches, driver, ignore, options) + num += 1 + +for f in sys.argv[1:]: + parse_fdi(xml.dom.minidom.parse(f)) diff --git a/xorg-server/config/x11-input.fdi b/xorg-server/config/x11-input.fdi index 42489821d..b263f36cb 100644 --- a/xorg-server/config/x11-input.fdi +++ b/xorg-server/config/x11-input.fdi @@ -1,93 +1,93 @@ - - - - - - - - mouse - - evdev - - - - usbms - VUID - - - - - - base - - - kbd - pc105 - - evdev - evdev - - - - usbkbm - VUID - - - - us - - - - - + + + + + + + + mouse + + evdev + + + + usbms + VUID + + + + + + base + + + kbd + pc105 + + evdev + evdev + + + + usbkbm + VUID + + + + us + + + + + diff --git a/xorg-server/config/xorg-server.conf b/xorg-server/config/xorg-server.conf index e80f8df08..47a9a7824 100644 --- a/xorg-server/config/xorg-server.conf +++ b/xorg-server/config/xorg-server.conf @@ -1,13 +1,13 @@ - - - - - - - - - - - + + + + + + + + + + + diff --git a/xorg-server/dbe/Makefile.am b/xorg-server/dbe/Makefile.am index 965d2fa26..043555b8c 100644 --- a/xorg-server/dbe/Makefile.am +++ b/xorg-server/dbe/Makefile.am @@ -1,13 +1,13 @@ -noinst_LTLIBRARIES = libdbe.la - -AM_CFLAGS = $(DIX_CFLAGS) - -if XORG -sdk_HEADERS = dbestruct.h -endif - -libdbe_la_SOURCES = \ - dbe.c \ - midbe.c \ - midbe.h \ - midbestr.h +noinst_LTLIBRARIES = libdbe.la + +AM_CFLAGS = $(DIX_CFLAGS) + +if XORG +sdk_HEADERS = dbestruct.h +endif + +libdbe_la_SOURCES = \ + dbe.c \ + midbe.c \ + midbe.h \ + midbestr.h diff --git a/xorg-server/dix/BuiltInAtoms b/xorg-server/dix/BuiltInAtoms index 473990e7b..910c62706 100644 --- a/xorg-server/dix/BuiltInAtoms +++ b/xorg-server/dix/BuiltInAtoms @@ -1,329 +1,329 @@ -File: .../x11/server/dix/BuiltInAtoms - -This file is of a fixed format and is used to generate both the file -include/XAtom.h and dix/initatoms.c. Neither of those files should be -edited directly. Changing the atoms in this file, or even the order in -which they occur, is equivalent to forcing a new (minor) version number -on the server. Take care. - -The format of the file is that each built in atom starts in column 1 -with no text, other than spaces and tabs, on that line other than a -mandatory trailing "@" at the end of the line. For each atom (Foo) -below the defines will be of the form - #define XA_Foo -and the string value of the atom will be "Foo". - -The comment lines in this file are not guaranteed to be accurate. To see the -current truth, look at the Xlib documentation as well as the protocol spec. - -Atoms occur in five distinct name spaces within the protocol. Any particular -atom may or may not have some client interpretation within each of the name -spaces. For each of the built in atoms, the intended semantics and the space -within which it is defined is indicated. - -Those name spaces are - Property names - Property types - Selections - Font properties - Type of a ClientMessage event (none built into server) - -For the font properties mentioned here, see the spec for more information. - - -- Selections -- - -PRIMARY @ - Selection. -SECONDARY @ - Selection. - - -- Property types and names -- - -ARC @ - Property type: - x, y: INT16 - width, height: CARD16, - angle1, angle2: INT16 -ATOM @ - Property type: - atom: ATOM -BITMAP @ - Property type: - bitmap: PIXMAP - This is asserted to be of depth 1. -CARDINAL @ - Property type: - card: CARD32 or CARD16 or CARD8 - the datum size is dependent on the property format -COLORMAP @ - Property type: - colormap: COLORMAP -CURSOR @ - Property type: - cursor: CURSOR -CUT_BUFFER0 @ -CUT_BUFFER1 @ -CUT_BUFFER2 @ -CUT_BUFFER3 @ -CUT_BUFFER4 @ -CUT_BUFFER5 @ -CUT_BUFFER6 @ -CUT_BUFFER7 @ - Property name: (type: STRING) - Used to implement cut buffer ring, in particular Andrew uses - this mechanism. Anyone else using this sort of IPC mechanism - should use these properties. - - Data is normally fetched and stored out of CUT_BUFFER0; the - RotateProperties request is used to rotate these buffers. -DRAWABLE @ - Property type: - drawable: DRAWABLE -FONT @ - Property type: - font: FONT -INTEGER @ - Property type: - card: INT32 or INT16 or INT8 - the datum size is dependent on the property format -PIXMAP @ - Property type: - pixmap: PIXMAP -POINT @ - Property type: - x, y: INT16 -RECTANGLE @ - Property type: - x, y: INT16 - width, height: CARD16 -RESOURCE_MANAGER @ - Property name: (type: STRING) - Contents of the user's resource manager data base. -RGB_COLOR_MAP @ - Property type: - colormap: COLORMAP - red-max: CARD32 - red-mult: CARD32 - green-max: CARD32 - green-mult: CARD32 - blue-max: CARD32 - blue-mult: CARD32 - base-pixel: CARD32 - - The fields `red_max', `green_max', and `blue_max' give the maximum - red, green, and blue values, respectively. Each color - coefficient ranges from 0 to its max, inclusive. For example, - a common colormap allocation is 3/3/2: 3 planes for red, 3 - planes for green, and 2 planes for blue. Such a colormap would - have red_max == 7, green_max = 7, and blue_max = 3. An alternate - allocation that uses only 216 colors is red_max = 5, green_max = - 5, and blue_max = 5. - - The fields `red_mult', `green_mult', and `blue_mult' give the - scale factors used to compose a full pixel value. (See next - paragraph.) For a 3/3/2 allocation red_mult might be 32, - green_mult might be 4, and blue_mult might be 1. For a - 6-colors-each allocation, red_mult might be 36, green_mult might - be 6, and blue_mult might be 1. - - The field `base_pixel' gives the base pixel value used to - compose a full pixel value. Normally base_pixel is obtained - from a call to XAllocColorPlanes(). Given integer red, green, - and blue coefficients in their appropriate ranges, one can - compute a corresponding pixel value with the expression: - - r * red_mult + g * green_mult + b * blue_mult + base_pixel - - For gray-scale colormaps, only the colormap, red_max, red_mult, - and base_pixel fields are defined; the other fields are - ignored. To compute a gray-scale pixel value, use: - - gray * red_mult + base_pixel - - This is provided to allow applications to share color maps. - -RGB_BEST_MAP @ -RGB_BLUE_MAP @ -RGB_DEFAULT_MAP @ -RGB_GRAY_MAP @ -RGB_GREEN_MAP @ -RGB_RED_MAP @ - Property name: (type: RGB_COLOR_MAP) - The needs of most applications can be met with five colormaps. - Polite applications may need only a small RGB space, and can - use a portion of the default color map. Applications doing - high-quality RGB rendering will need an entire colormap, - filled with as large an RGB space as possible, e.g. 332. For - color separations, an application may need maximum device - resolution for each of red, green, and blue, even if this - requires three renderings with three colormaps. - - Each of the above five names would be used for sharing color - maps. -STRING @ - Property type: - sequence of Bytes -VISUALID @ - Property type: - visual: VISUALID -WINDOW @ - Property type: - window: WINDOW -WM_COMMAND @ - Property name: (type: STRING) - Command line arguments used to invoke this application. The - arguments are delimited by null characters (ASCII 0). -WM_HINTS @ - Property type: - flags: CARD32 - input: BOOL32 - initial-state: CARD32 - icon-pixmap: PIXMAP - icon-window: WINDOW - icon_mask: BITMAP - icon-x, icon-y: INT32 - flags contains the following bits - 0x00000001 input hint - 0x00000002 state hint - 0x00000004 icon pixmap hint - 0x00000008 icon window hint - 0x00000010 icon position hint - values for initial-state - 0 unspecified -> application does not - care and WM should pick one. - 1 normal - 2 zoomed - 3 iconic - 4 inactive -> application believes - itself to be seldomly used. WM may wish to - place it on an inactive menu. - This type is potentially extensible. The order is critical; - append to the end only. - Property name: (type: WM_HINTS) - Additional hints set by the client for use by the window - manager. -WM_CLIENT_MACHINE @ - Property name: (type: STRING) - used to communicate with the window manager. The host name - of the machine the client is running on may be set here. -WM_ICON_NAME @ - Property name: (type: STRING) - what the application would like the label to be for - the iconic form of the window. -WM_ICON_SIZE @ - Property type: - minWidth, min-height: CARD32 - maxWidth, max-height: CARD32 - widthInc, height-inc: CARD32 - Property name: (type: ICON_SIZE) - The window manager may set this property on the root window - to specify the icon sizes it allows. -WM_NAME @ - Property name: (type: STRING) - used to communicate with the window manager. This is - what the application would like the label for the window. -WM_NORMAL_HINTS @ - Property name: (type: SIZE_HINTS) - used to communicate with the window manager. This is size - hints for a window in its "normal" state. -WM_SIZE_HINTS @ - Property type: - flags: CARD32 - x, y: INT32 - width, height: CARD32 - min-width, min-height: CARD32 - max-width, max-height: CARD32 - width-inc, height-inc: CARD32 - min-aspect-x, min-aspect-y: CARD32 - max-aspect-x, max-aspect-y: CARD32 - flags contains the following bits - 0x00000001 user specified x and y - 0x00000002 user specified width and height - 0x00000004 program specified position - 0x00000008 program specified size - 0x00000010 program specified minimum size - 0x00000020 program specified maximum size - 0x00000040 program specified resize increment - 0x00000080 program specified aspect ratio - This type is potentially extensible. The order is critical; - append to the end only. -WM_ZOOM_HINTS @ - Property name: (type: SIZE_HINTS) - used to communicate with the window manager. This is size - hints for a window in its "zoomed" state. - - -- Font properties -- - -MIN_SPACE @ - Font property: CARD32 -NORM_SPACE @ - Font property: CARD32 -MAX_SPACE @ - Font property: CARD32 -END_SPACE @ - Font property: CARD32 -SUPERSCRIPT_X @ - Font property: INT32 -SUPERSCRIPT_Y @ - Font property: INT32 -SUBSCRIPT_X @ - Font property: INT32 -SUBSCRIPT_Y @ - Font property: INT32 -UNDERLINE_POSITION @ - Font property: INT32 -UNDERLINE_THICKNESS @ - Font property: CARD32 -STRIKEOUT_ASCENT @ - Font property: INT32 -STRIKEOUT_DESCENT @ - Font property: INT32 -ITALIC_ANGLE @ - Font property: INT32 -X_HEIGHT @ - Font property: INT32 -QUAD_WIDTH @ - Font property: INT32 -WEIGHT @ - Font property: CARD32 -POINT_SIZE @ - Font property: CARD32 -RESOLUTION @ - Font property: CARD32 - -The following optional properties on fonts have values that are atoms. The -atom print name is the useful information. - -COPYRIGHT @ - of the font distribution -NOTICE @ - trademark/copyright of the character shapes -FONT_NAME @ - name of this particular instance of a font -FAMILY_NAME @ - name of the 'font family' to which it belongs -FULL_NAME @ - full text name of the font - -The following aren't in order but putting them at the end avoids encoding -changes. - -CAP_HEIGHT @ - Font property: CARD32 - - -WM_CLASS @ - Property name: (type: STRING) - Used (possibly by some window managers; definitely by - session managers) to look up resources in the resource - data base on behalf of the client who set this property. - There are 2 elements: - {char *resource_name; char *resource_class;} - delimited by a null character (ascii 0) - -WM_TRANSIENT_FOR @ - Property name: (type: WINDOW) - Used by transient top-level windows, such as dialog - boxes, to point to their logical "parents". The window - manager can then take down the dialog boxes when the - "parent" gets iconified, for instance. +File: .../x11/server/dix/BuiltInAtoms + +This file is of a fixed format and is used to generate both the file +include/XAtom.h and dix/initatoms.c. Neither of those files should be +edited directly. Changing the atoms in this file, or even the order in +which they occur, is equivalent to forcing a new (minor) version number +on the server. Take care. + +The format of the file is that each built in atom starts in column 1 +with no text, other than spaces and tabs, on that line other than a +mandatory trailing "@" at the end of the line. For each atom (Foo) +below the defines will be of the form + #define XA_Foo +and the string value of the atom will be "Foo". + +The comment lines in this file are not guaranteed to be accurate. To see the +current truth, look at the Xlib documentation as well as the protocol spec. + +Atoms occur in five distinct name spaces within the protocol. Any particular +atom may or may not have some client interpretation within each of the name +spaces. For each of the built in atoms, the intended semantics and the space +within which it is defined is indicated. + +Those name spaces are + Property names + Property types + Selections + Font properties + Type of a ClientMessage event (none built into server) + +For the font properties mentioned here, see the spec for more information. + + -- Selections -- + +PRIMARY @ + Selection. +SECONDARY @ + Selection. + + -- Property types and names -- + +ARC @ + Property type: + x, y: INT16 + width, height: CARD16, + angle1, angle2: INT16 +ATOM @ + Property type: + atom: ATOM +BITMAP @ + Property type: + bitmap: PIXMAP + This is asserted to be of depth 1. +CARDINAL @ + Property type: + card: CARD32 or CARD16 or CARD8 + the datum size is dependent on the property format +COLORMAP @ + Property type: + colormap: COLORMAP +CURSOR @ + Property type: + cursor: CURSOR +CUT_BUFFER0 @ +CUT_BUFFER1 @ +CUT_BUFFER2 @ +CUT_BUFFER3 @ +CUT_BUFFER4 @ +CUT_BUFFER5 @ +CUT_BUFFER6 @ +CUT_BUFFER7 @ + Property name: (type: STRING) + Used to implement cut buffer ring, in particular Andrew uses + this mechanism. Anyone else using this sort of IPC mechanism + should use these properties. + + Data is normally fetched and stored out of CUT_BUFFER0; the + RotateProperties request is used to rotate these buffers. +DRAWABLE @ + Property type: + drawable: DRAWABLE +FONT @ + Property type: + font: FONT +INTEGER @ + Property type: + card: INT32 or INT16 or INT8 + the datum size is dependent on the property format +PIXMAP @ + Property type: + pixmap: PIXMAP +POINT @ + Property type: + x, y: INT16 +RECTANGLE @ + Property type: + x, y: INT16 + width, height: CARD16 +RESOURCE_MANAGER @ + Property name: (type: STRING) + Contents of the user's resource manager data base. +RGB_COLOR_MAP @ + Property type: + colormap: COLORMAP + red-max: CARD32 + red-mult: CARD32 + green-max: CARD32 + green-mult: CARD32 + blue-max: CARD32 + blue-mult: CARD32 + base-pixel: CARD32 + + The fields `red_max', `green_max', and `blue_max' give the maximum + red, green, and blue values, respectively. Each color + coefficient ranges from 0 to its max, inclusive. For example, + a common colormap allocation is 3/3/2: 3 planes for red, 3 + planes for green, and 2 planes for blue. Such a colormap would + have red_max == 7, green_max = 7, and blue_max = 3. An alternate + allocation that uses only 216 colors is red_max = 5, green_max = + 5, and blue_max = 5. + + The fields `red_mult', `green_mult', and `blue_mult' give the + scale factors used to compose a full pixel value. (See next + paragraph.) For a 3/3/2 allocation red_mult might be 32, + green_mult might be 4, and blue_mult might be 1. For a + 6-colors-each allocation, red_mult might be 36, green_mult might + be 6, and blue_mult might be 1. + + The field `base_pixel' gives the base pixel value used to + compose a full pixel value. Normally base_pixel is obtained + from a call to XAllocColorPlanes(). Given integer red, green, + and blue coefficients in their appropriate ranges, one can + compute a corresponding pixel value with the expression: + + r * red_mult + g * green_mult + b * blue_mult + base_pixel + + For gray-scale colormaps, only the colormap, red_max, red_mult, + and base_pixel fields are defined; the other fields are + ignored. To compute a gray-scale pixel value, use: + + gray * red_mult + base_pixel + + This is provided to allow applications to share color maps. + +RGB_BEST_MAP @ +RGB_BLUE_MAP @ +RGB_DEFAULT_MAP @ +RGB_GRAY_MAP @ +RGB_GREEN_MAP @ +RGB_RED_MAP @ + Property name: (type: RGB_COLOR_MAP) + The needs of most applications can be met with five colormaps. + Polite applications may need only a small RGB space, and can + use a portion of the default color map. Applications doing + high-quality RGB rendering will need an entire colormap, + filled with as large an RGB space as possible, e.g. 332. For + color separations, an application may need maximum device + resolution for each of red, green, and blue, even if this + requires three renderings with three colormaps. + + Each of the above five names would be used for sharing color + maps. +STRING @ + Property type: + sequence of Bytes +VISUALID @ + Property type: + visual: VISUALID +WINDOW @ + Property type: + window: WINDOW +WM_COMMAND @ + Property name: (type: STRING) + Command line arguments used to invoke this application. The + arguments are delimited by null characters (ASCII 0). +WM_HINTS @ + Property type: + flags: CARD32 + input: BOOL32 + initial-state: CARD32 + icon-pixmap: PIXMAP + icon-window: WINDOW + icon_mask: BITMAP + icon-x, icon-y: INT32 + flags contains the following bits + 0x00000001 input hint + 0x00000002 state hint + 0x00000004 icon pixmap hint + 0x00000008 icon window hint + 0x00000010 icon position hint + values for initial-state + 0 unspecified -> application does not + care and WM should pick one. + 1 normal + 2 zoomed + 3 iconic + 4 inactive -> application believes + itself to be seldomly used. WM may wish to + place it on an inactive menu. + This type is potentially extensible. The order is critical; + append to the end only. + Property name: (type: WM_HINTS) + Additional hints set by the client for use by the window + manager. +WM_CLIENT_MACHINE @ + Property name: (type: STRING) + used to communicate with the window manager. The host name + of the machine the client is running on may be set here. +WM_ICON_NAME @ + Property name: (type: STRING) + what the application would like the label to be for + the iconic form of the window. +WM_ICON_SIZE @ + Property type: + minWidth, min-height: CARD32 + maxWidth, max-height: CARD32 + widthInc, height-inc: CARD32 + Property name: (type: ICON_SIZE) + The window manager may set this property on the root window + to specify the icon sizes it allows. +WM_NAME @ + Property name: (type: STRING) + used to communicate with the window manager. This is + what the application would like the label for the window. +WM_NORMAL_HINTS @ + Property name: (type: SIZE_HINTS) + used to communicate with the window manager. This is size + hints for a window in its "normal" state. +WM_SIZE_HINTS @ + Property type: + flags: CARD32 + x, y: INT32 + width, height: CARD32 + min-width, min-height: CARD32 + max-width, max-height: CARD32 + width-inc, height-inc: CARD32 + min-aspect-x, min-aspect-y: CARD32 + max-aspect-x, max-aspect-y: CARD32 + flags contains the following bits + 0x00000001 user specified x and y + 0x00000002 user specified width and height + 0x00000004 program specified position + 0x00000008 program specified size + 0x00000010 program specified minimum size + 0x00000020 program specified maximum size + 0x00000040 program specified resize increment + 0x00000080 program specified aspect ratio + This type is potentially extensible. The order is critical; + append to the end only. +WM_ZOOM_HINTS @ + Property name: (type: SIZE_HINTS) + used to communicate with the window manager. This is size + hints for a window in its "zoomed" state. + + -- Font properties -- + +MIN_SPACE @ + Font property: CARD32 +NORM_SPACE @ + Font property: CARD32 +MAX_SPACE @ + Font property: CARD32 +END_SPACE @ + Font property: CARD32 +SUPERSCRIPT_X @ + Font property: INT32 +SUPERSCRIPT_Y @ + Font property: INT32 +SUBSCRIPT_X @ + Font property: INT32 +SUBSCRIPT_Y @ + Font property: INT32 +UNDERLINE_POSITION @ + Font property: INT32 +UNDERLINE_THICKNESS @ + Font property: CARD32 +STRIKEOUT_ASCENT @ + Font property: INT32 +STRIKEOUT_DESCENT @ + Font property: INT32 +ITALIC_ANGLE @ + Font property: INT32 +X_HEIGHT @ + Font property: INT32 +QUAD_WIDTH @ + Font property: INT32 +WEIGHT @ + Font property: CARD32 +POINT_SIZE @ + Font property: CARD32 +RESOLUTION @ + Font property: CARD32 + +The following optional properties on fonts have values that are atoms. The +atom print name is the useful information. + +COPYRIGHT @ + of the font distribution +NOTICE @ + trademark/copyright of the character shapes +FONT_NAME @ + name of this particular instance of a font +FAMILY_NAME @ + name of the 'font family' to which it belongs +FULL_NAME @ + full text name of the font + +The following aren't in order but putting them at the end avoids encoding +changes. + +CAP_HEIGHT @ + Font property: CARD32 + + +WM_CLASS @ + Property name: (type: STRING) + Used (possibly by some window managers; definitely by + session managers) to look up resources in the resource + data base on behalf of the client who set this property. + There are 2 elements: + {char *resource_name; char *resource_class;} + delimited by a null character (ascii 0) + +WM_TRANSIENT_FOR @ + Property name: (type: WINDOW) + Used by transient top-level windows, such as dialog + boxes, to point to their logical "parents". The window + manager can then take down the dialog boxes when the + "parent" gets iconified, for instance. diff --git a/xorg-server/dix/buildatoms b/xorg-server/dix/buildatoms index efc61b6f9..dfbbca8a9 100644 --- a/xorg-server/dix/buildatoms +++ b/xorg-server/dix/buildatoms @@ -1,43 +1,43 @@ -#!/bin/sh -hfile=../../../include/Xatom.h -cfile=initatoms.c -rm -f $hfile $cfile -umask 222 -awk ' -BEGIN { - hfile = "'$hfile'"; - cfile = "'$cfile'"; - hformat = "#define XA_%s ((Atom) %d)\n"; - printf("#ifndef XATOM_H\n") > hfile; - printf("#define XATOM_H 1\n\n") > hfile; - printf("/* THIS IS A GENERATED FILE\n") > hfile; - printf(" *\n") > hfile; - printf(" * Do not change! Changing this file implies a protocol change!\n") > hfile; - printf(" */\n\n") > hfile; - - printf("/* THIS IS A GENERATED FILE\n") > cfile; - printf(" *\n") > cfile; - printf(" * Do not change! Changing this file implies a protocol change!\n") > cfile; - printf(" */\n\n") > cfile; - printf("#include \"X.h\"\n") > cfile; - printf("#include \"Xatom.h\"\n") > cfile; - printf("#include \"misc.h\"\n") > cfile; - printf("#include \"dix.h\"\n") > cfile; - printf("void MakePredeclaredAtoms()\n") > cfile; - printf("{\n") > cfile; - - } - -NF == 2 && $2 == "@" { - printf(hformat, $1, ++atomno) > hfile ; - printf(" if (MakeAtom(\"%s\", %d, 1) != XA_%s) AtomError();\n", $1, length($1), $1) > cfile ; - } - -END { - printf("\n") > hfile; - printf(hformat, "LAST_PREDEFINED", atomno) > hfile ; - printf("#endif /* XATOM_H */\n") > hfile; - printf("}\n") > cfile ; - } -' BuiltInAtoms -exit 0 +#!/bin/sh +hfile=../../../include/Xatom.h +cfile=initatoms.c +rm -f $hfile $cfile +umask 222 +awk ' +BEGIN { + hfile = "'$hfile'"; + cfile = "'$cfile'"; + hformat = "#define XA_%s ((Atom) %d)\n"; + printf("#ifndef XATOM_H\n") > hfile; + printf("#define XATOM_H 1\n\n") > hfile; + printf("/* THIS IS A GENERATED FILE\n") > hfile; + printf(" *\n") > hfile; + printf(" * Do not change! Changing this file implies a protocol change!\n") > hfile; + printf(" */\n\n") > hfile; + + printf("/* THIS IS A GENERATED FILE\n") > cfile; + printf(" *\n") > cfile; + printf(" * Do not change! Changing this file implies a protocol change!\n") > cfile; + printf(" */\n\n") > cfile; + printf("#include \"X.h\"\n") > cfile; + printf("#include \"Xatom.h\"\n") > cfile; + printf("#include \"misc.h\"\n") > cfile; + printf("#include \"dix.h\"\n") > cfile; + printf("void MakePredeclaredAtoms()\n") > cfile; + printf("{\n") > cfile; + + } + +NF == 2 && $2 == "@" { + printf(hformat, $1, ++atomno) > hfile ; + printf(" if (MakeAtom(\"%s\", %d, 1) != XA_%s) AtomError();\n", $1, length($1), $1) > cfile ; + } + +END { + printf("\n") > hfile; + printf(hformat, "LAST_PREDEFINED", atomno) > hfile ; + printf("#endif /* XATOM_H */\n") > hfile; + printf("}\n") > cfile ; + } +' BuiltInAtoms +exit 0 diff --git a/xorg-server/dix/protocol.txt b/xorg-server/dix/protocol.txt index 6a87ef4c3..8e152edaa 100644 --- a/xorg-server/dix/protocol.txt +++ b/xorg-server/dix/protocol.txt @@ -1,1103 +1,1103 @@ -# Registry of protocol names used by X Server -# This will eventually be replaced by server-side XCB -# -# Format is Xnnn : -# R=Request, V=Event, E=Error -# -# This is a security-sensitive file, please set permissions as appropriate. -# -R001 Adobe-DPS-Extension:Init -R002 Adobe-DPS-Extension:CreateContext -R003 Adobe-DPS-Extension:CreateSpace -R004 Adobe-DPS-Extension:GiveInput -R005 Adobe-DPS-Extension:GetStatus -R006 Adobe-DPS-Extension:DestroySpace -R007 Adobe-DPS-Extension:Reset -R008 Adobe-DPS-Extension:NotifyContext -R009 Adobe-DPS-Extension:CreateContextFromID -R010 Adobe-DPS-Extension:XIDFromContext -R011 Adobe-DPS-Extension:ContextFromXID -R012 Adobe-DPS-Extension:SetStatusMask -R013 Adobe-DPS-Extension:CreateSecureContext -R014 Adobe-DPS-Extension:NotifyWhenReady -R000 Apple-DRI:QueryVersion -R001 Apple-DRI:QueryDirectRenderingCapable -R002 Apple-DRI:CreateSurface -R003 Apple-DRI:DestroySurface -R004 Apple-DRI:AuthConnection -V000 Apple-DRI:ObsoleteEvent1 -V001 Apple-DRI:ObsoleteEvent2 -V002 Apple-DRI:ObsoleteEvent3 -V003 Apple-DRI:SurfaceNotify -E000 Apple-DRI:ClientNotLocal -E001 Apple-DRI:OperationNotSupported -R000 Apple-WM:QueryVersion -R001 Apple-WM:FrameGetRect -R002 Apple-WM:FrameHitTest -R003 Apple-WM:FrameDraw -R004 Apple-WM:DisableUpdate -R005 Apple-WM:ReenableUpdate -R006 Apple-WM:SelectInput -R007 Apple-WM:SetWindowMenuCheck -R008 Apple-WM:SetFrontProcess -R009 Apple-WM:SetWindowLevel -R010 Apple-WM:SetCanQuit -R011 Apple-WM:SetWindowMenu -V000 Apple-WM:ControllerNotify -V001 Apple-WM:ActivationNotify -V002 Apple-WM:PasteboardNotify -E000 Apple-WM:ClientNotLocal -E001 Apple-WM:OperationNotSupported -R000 BIG-REQUESTS:Enable -R000 Composite:CompositeQueryVersion -R001 Composite:CompositeRedirectWindow -R002 Composite:CompositeRedirectSubwindows -R003 Composite:CompositeUnredirectWindow -R004 Composite:CompositeUnredirectSubwindows -R005 Composite:CompositeCreateRegionFromBorderClip -R006 Composite:CompositeNameWindowPixmap -R007 Composite:CompositeGetOverlayWindow -R008 Composite:CompositeReleaseOverlayWindow -R000 DAMAGE:QueryVersion -R001 DAMAGE:Create -R002 DAMAGE:Destroy -R003 DAMAGE:Subtract -R004 DAMAGE:Add -V000 DAMAGE:Notify -E000 DAMAGE:BadDamage -R000 DEC-XTRAP:Reset -R001 DEC-XTRAP:GetAvailable -R002 DEC-XTRAP:Config -R003 DEC-XTRAP:StartTrap -R004 DEC-XTRAP:StopTrap -R005 DEC-XTRAP:GetCurrent -R006 DEC-XTRAP:GetStatistics -R007 DEC-XTRAP:SimulateXEvent -R008 DEC-XTRAP:GetVersion -R009 DEC-XTRAP:GetLastInpTime -V000 DEC-XTRAP:Event -E002 DEC-XTRAP:BadIO -E004 DEC-XTRAP:BadStatistics -E005 DEC-XTRAP:BadDevices -E007 DEC-XTRAP:BadScreen -E008 DEC-XTRAP:BadSwapReq -R000 DMX:DMXQueryVersion -R001 DMX:DMXGetScreenCount -R002 DMX:DMXGetScreenInfoDEPRECATED -R003 DMX:DMXGetWindowAttributes -R004 DMX:DMXGetInputCount -R005 DMX:DMXGetInputAttributes -R006 DMX:DMXForceWindowCreationDEPRECATED -R007 DMX:DMXReconfigureScreenDEPRECATED -R008 DMX:DMXSync -R009 DMX:DMXForceWindowCreation -R010 DMX:DMXGetScreenAttributes -R011 DMX:DMXChangeScreensAttributes -R012 DMX:DMXAddScreen -R013 DMX:DMXRemoveScreen -R014 DMX:DMXGetDesktopAttributes -R015 DMX:DMXChangeDesktopAttributes -R016 DMX:DMXAddInput -R017 DMX:DMXRemoveInput -R000 DOUBLE-BUFFER:GetVersion -R001 DOUBLE-BUFFER:AllocateBackBufferName -R002 DOUBLE-BUFFER:DeallocateBackBufferName -R003 DOUBLE-BUFFER:SwapBuffers -R004 DOUBLE-BUFFER:BeginIdiom -R005 DOUBLE-BUFFER:EndIdiom -R006 DOUBLE-BUFFER:GetVisualInfo -R007 DOUBLE-BUFFER:GetBackBufferAttributes -E000 DOUBLE-BUFFER:BadBuffer -R000 DPMS:GetVersion -R001 DPMS:Capable -R002 DPMS:GetTimeouts -R003 DPMS:SetTimeouts -R004 DPMS:Enable -R005 DPMS:Disable -R006 DPMS:ForceLevel -R007 DPMS:Info -R000 DRI2:QueryVersion -R001 DRI2:Connect -R002 DRI2:Authenticate -R003 DRI2:CreateDrawable -R004 DRI2:DestroyDrawable -R005 DRI2:GetBuffers -R006 DRI2:CopyRegion -R007 DRI2:GetBuffersWithFormat -R000 Extended-Visual-Information:QueryVersion -R001 Extended-Visual-Information:GetVisualInfo -R000 FontCache:QueryVersion -R001 FontCache:GetCacheSettings -R002 FontCache:ChangeCacheSettings -R003 FontCache:GetCacheStatistics -E000 FontCache:BadProtocol -E001 FontCache:CannotAllocMemory -R001 GLX: -R002 GLX:Large -R003 GLX:CreateContext -R004 GLX:DestroyContext -R005 GLX:MakeCurrent -R006 GLX:IsDirect -R007 GLX:QueryVersion -R008 GLX:WaitGL -R009 GLX:WaitX -R010 GLX:CopyContext -R011 GLX:SwapBuffers -R012 GLX:UseXFont -R013 GLX:CreateGLXPixmap -R014 GLX:GetVisualConfigs -R015 GLX:DestroyGLXPixmap -R016 GLX:VendorPrivate -R017 GLX:VendorPrivateWithReply -R018 GLX:QueryExtensionsString -R019 GLX:QueryServerString -R020 GLX:ClientInfo -R101 GLX:NewList -R102 GLX:EndList -R103 GLX:DeleteLists -R104 GLX:GenLists -R105 GLX:FeedbackBuffer -R106 GLX:SelectBuffer -R107 GLX:Mode -R108 GLX:Finish -R109 GLX:PixelStoref -R110 GLX:PixelStorei -R111 GLX:ReadPixels -R112 GLX:GetBooleanv -R113 GLX:GetClipPlane -R114 GLX:GetDoublev -R115 GLX:GetError -R116 GLX:GetFloatv -R117 GLX:GetIntegerv -R118 GLX:GetLightfv -R119 GLX:GetLightiv -R120 GLX:GetMapdv -R121 GLX:GetMapfv -R122 GLX:GetMapiv -R123 GLX:GetMaterialfv -R124 GLX:GetMaterialiv -R125 GLX:GetPixelfv -R126 GLX:GetPixelMapuiv -R127 GLX:GetPixelMapusv -R128 GLX:GetPolygonStipple -R129 GLX:GetString -R130 GLX:GetTexEnvfv -R131 GLX:GetTexEnviv -R132 GLX:GetTexGendv -R133 GLX:GetTexGenfv -R134 GLX:GetTexGeniv -R135 GLX:GetTexImage -R136 GLX:GetTexParameterfv -R137 GLX:GetTexParameteriv -R138 GLX:GetTexLevelParameterfv -R139 GLX:GetTexLevelParameteriv -R140 GLX:IsEnabled -R141 GLX:IsList -R142 GLX:Flush -E000 GLX:BadContext -E001 GLX:BadContextState -E002 GLX:BadDrawable -E003 GLX:BadPixmap -E004 GLX:BadContextTag -E005 GLX:BadCurrentWindow -E006 GLX:BadRenderRequest -E007 GLX:BadLargeRequest -E008 GLX:UnsupportedPrivateRequest -R000 LBX:QueryVersion -R001 LBX:StartProxy -R002 LBX:StopProxy -R003 LBX:Switch -R004 LBX:NewClient -R005 LBX:CloseClient -R006 LBX:ModifySequence -R007 LBX:AllowMotion -R008 LBX:IncrementPixel -R009 LBX:Delta -R010 LBX:GetModifierMapping -R011 LBX:QueryTag -R012 LBX:InvalidateTag -R013 LBX:PolyPoint -R014 LBX:PolyLine -R015 LBX:PolySegment -R016 LBX:PolyRectangle -R017 LBX:PolyArc -R018 LBX:FillPoly -R019 LBX:PolyFillRectangle -R020 LBX:PolyFillArc -R021 LBX:GetKeyboardMapping -R022 LBX:QueryFont -R023 LBX:ChangeProperty -R024 LBX:GetProperty -R025 LBX:TagData -R026 LBX:CopyArea -R027 LBX:CopyPlane -R028 LBX:PolyText8 -R029 LBX:PolyText16 -R030 LBX:ImageText8 -R031 LBX:ImageText16 -R032 LBX:QueryExtension -R033 LBX:PutImage -R034 LBX:GetImage -R035 LBX:BeginLargeRequest -R036 LBX:LargeRequestData -R037 LBX:EndLargeRequest -R038 LBX:InternAtoms -R039 LBX:GetWinAttrAndGeom -R040 LBX:GrabCmap -R041 LBX:ReleaseCmap -R042 LBX:AllocColor -R043 LBX:Sync -E000 LBX:BadLbxClient -R000 MIT-SCREEN-SAVER:QueryVersion -R001 MIT-SCREEN-SAVER:QueryInfo -R002 MIT-SCREEN-SAVER:SelectInput -R003 MIT-SCREEN-SAVER:SetAttributes -R004 MIT-SCREEN-SAVER:UnsetAttributes -R005 MIT-SCREEN-SAVER:Suspend -V000 MIT-SCREEN-SAVER:Notify -R000 MIT-SHM:QueryVersion -R001 MIT-SHM:Attach -R002 MIT-SHM:Detach -R003 MIT-SHM:PutImage -R004 MIT-SHM:GetImage -R005 MIT-SHM:CreatePixmap -V000 MIT-SHM:Completion -E000 MIT-SHM:BadShmSeg -R000 MIT-SUNDRY-NONSTANDARD:SetBugMode -R001 MIT-SUNDRY-NONSTANDARD:GetBugMode -R000 Multi-Buffering:GetBufferVersion -R001 Multi-Buffering:CreateImageBuffers -R002 Multi-Buffering:DestroyImageBuffers -R003 Multi-Buffering:DisplayImageBuffers -R004 Multi-Buffering:SetMBufferAttributes -R005 Multi-Buffering:GetMBufferAttributes -R006 Multi-Buffering:SetBufferAttributes -R007 Multi-Buffering:GetBufferAttributes -R008 Multi-Buffering:GetBufferInfo -R009 Multi-Buffering:CreateStereoWindow -R010 Multi-Buffering:ClearImageBufferArea -V000 Multi-Buffering:ClobberNotify -V001 Multi-Buffering:UpdateNotify -E000 Multi-Buffering:BadBuffer -R000 RANDR:QueryVersion -R001 RANDR:OldGetScreenInfo -R002 RANDR:SetScreenConfig -R003 RANDR:OldScreenChangeSelectInput -R004 RANDR:SelectInput -R005 RANDR:GetScreenInfo -R006 RANDR:GetScreenSizeRange -R007 RANDR:SetScreenSize -R008 RANDR:GetScreenResources -R009 RANDR:GetOutputInfo -R010 RANDR:ListOutputProperties -R011 RANDR:QueryOutputProperty -R012 RANDR:ConfigureOutputProperty -R013 RANDR:ChangeOutputProperty -R014 RANDR:DeleteOutputProperty -R015 RANDR:GetOutputProperty -R016 RANDR:CreateMode -R017 RANDR:DestroyMode -R018 RANDR:AddOutputMode -R019 RANDR:DeleteOutputMode -R020 RANDR:GetCrtcInfo -R021 RANDR:SetCrtcConfig -R022 RANDR:GetCrtcGammaSize -R023 RANDR:GetCrtcGamma -R024 RANDR:SetCrtcGamma -R025 RANDR:GetScreenResourcesCurrent -R026 RANDR:SetCrtcTransform -R027 RANDR:GetCrtcTransform -R028 RANDR:GetPanning -R029 RANDR:SetPanning -R030 RANDR:SetOutputPrimary -R031 RANDR:GetOutputPrimary -V000 RANDR:ScreenChangeNotify -V001 RANDR:Notify -E000 RANDR:BadRROutput -E001 RANDR:BadRRCrtc -E002 RANDR:BadRRMode -R000 RECORD:QueryVersion -R001 RECORD:CreateContext -R002 RECORD:RegisterClients -R003 RECORD:UnregisterClients -R004 RECORD:GetContext -R005 RECORD:EnableContext -R006 RECORD:DisableContext -R007 RECORD:FreeContext -E000 RECORD:BadContext -R000 RENDER:QueryVersion -R001 RENDER:QueryPictFormats -R002 RENDER:QueryPictIndexValues -R003 RENDER:QueryDithers -R004 RENDER:CreatePicture -R005 RENDER:ChangePicture -R006 RENDER:SetPictureClipRectangles -R007 RENDER:FreePicture -R008 RENDER:Composite -R009 RENDER:Scale -R010 RENDER:Trapezoids -R011 RENDER:Triangles -R012 RENDER:TriStrip -R013 RENDER:TriFan -R014 RENDER:ColorTrapezoids -R015 RENDER:ColorTriangles -R016 RENDER:Transform -R017 RENDER:CreateGlyphSet -R018 RENDER:ReferenceGlyphSet -R019 RENDER:FreeGlyphSet -R020 RENDER:AddGlyphs -R021 RENDER:AddGlyphsFromPicture -R022 RENDER:FreeGlyphs -R023 RENDER:CompositeGlyphs8 -R024 RENDER:CompositeGlyphs16 -R025 RENDER:CompositeGlyphs32 -R026 RENDER:FillRectangles -R027 RENDER:CreateCursor -R028 RENDER:SetPictureTransform -R029 RENDER:QueryFilters -R030 RENDER:SetPictureFilter -R031 RENDER:CreateAnimCursor -R032 RENDER:AddTraps -R033 RENDER:CreateSolidFill -R034 RENDER:CreateLinearGradient -R035 RENDER:CreateRadialGradient -R036 RENDER:CreateConicalGradient -E000 RENDER:BadPictFormat -E001 RENDER:BadPicture -E002 RENDER:BadPictOp -E003 RENDER:BadGlyphSet -E004 RENDER:BadGlyph -R000 SECURITY:QueryVersion -R001 SECURITY:GenerateAuthorization -R002 SECURITY:RevokeAuthorization -V000 SECURITY:AuthorizationRevoked -E000 SECURITY:BadAuthorization -E001 SECURITY:BadAuthorizationProtocol -R000 SELinux:SELinuxQueryVersion -R001 SELinux:SELinuxSetDeviceCreateContext -R002 SELinux:SELinuxGetDeviceCreateContext -R003 SELinux:SELinuxSetDeviceContext -R004 SELinux:SELinuxGetDeviceContext -R005 SELinux:SELinuxSetWindowCreateContext -R006 SELinux:SELinuxGetWindowCreateContext -R007 SELinux:SELinuxGetWindowContext -R008 SELinux:SELinuxSetPropertyCreateContext -R009 SELinux:SELinuxGetPropertyCreateContext -R010 SELinux:SELinuxSetPropertyUseContext -R011 SELinux:SELinuxGetPropertyUseContext -R012 SELinux:SELinuxGetPropertyContext -R013 SELinux:SELinuxGetPropertyDataContext -R014 SELinux:SELinuxListProperties -R015 SELinux:SELinuxSetSelectionCreateContext -R016 SELinux:SELinuxGetSelectionCreateContext -R017 SELinux:SELinuxSetSelectionUseContext -R018 SELinux:SELinuxGetSelectionUseContext -R019 SELinux:SELinuxGetSelectionContext -R020 SELinux:SELinuxGetSelectionDataContext -R021 SELinux:SELinuxListSelections -R022 SELinux:SELinuxGetClientContext -R000 SHAPE:QueryVersion -R001 SHAPE:Rectangles -R002 SHAPE:Mask -R003 SHAPE:Combine -R004 SHAPE:Offset -R005 SHAPE:QueryExtents -R006 SHAPE:SelectInput -R007 SHAPE:InputSelected -R008 SHAPE:GetRectangles -V000 SHAPE:Notify -R000 SYNC:Initialize -R001 SYNC:ListSystemCounters -R002 SYNC:CreateCounter -R003 SYNC:SetCounter -R004 SYNC:ChangeCounter -R005 SYNC:QueryCounter -R006 SYNC:DestroyCounter -R007 SYNC:Await -R008 SYNC:CreateAlarm -R009 SYNC:ChangeAlarm -R010 SYNC:QueryAlarm -R011 SYNC:DestroyAlarm -R012 SYNC:SetPriority -R013 SYNC:GetPriority -V000 SYNC:CounterNotify -V001 SYNC:AlarmNotify -E000 SYNC:BadCounter -E001 SYNC:BadAlarm -R000 TOG-CUP:QueryVersion -R001 TOG-CUP:GetReservedColormapEntries -R002 TOG-CUP:StoreColors -R000 Windows-WM:QueryVersion -R001 Windows-WM:FrameGetRect -R002 Windows-WM:FrameDraw -R003 Windows-WM:FrameSetTitle -R004 Windows-WM:DisableUpdate -R005 Windows-WM:ReenableUpdate -R006 Windows-WM:SelectInput -R007 Windows-WM:SetFrontProcess -V000 Windows-WM:ControllerNotify -V001 Windows-WM:ActivationNotify -E000 Windows-WM:ClientNotLocal -E001 Windows-WM:OperationNotSupported -R000 X-Resource:QueryVersion -R001 X-Resource:QueryClients -R002 X-Resource:QueryClientResources -R003 X-Resource:QueryClientPixmapBytes -R001 X11:CreateWindow -R002 X11:ChangeWindowAttributes -R003 X11:GetWindowAttributes -R004 X11:DestroyWindow -R005 X11:DestroySubwindows -R006 X11:ChangeSaveSet -R007 X11:ReparentWindow -R008 X11:MapWindow -R009 X11:MapSubwindows -R010 X11:UnmapWindow -R011 X11:UnmapSubwindows -R012 X11:ConfigureWindow -R013 X11:CirculateWindow -R014 X11:GetGeometry -R015 X11:QueryTree -R016 X11:InternAtom -R017 X11:GetAtomName -R018 X11:ChangeProperty -R019 X11:DeleteProperty -R020 X11:GetProperty -R021 X11:ListProperties -R022 X11:SetSelectionOwner -R023 X11:GetSelectionOwner -R024 X11:ConvertSelection -R025 X11:SendEvent -R026 X11:GrabPointer -R027 X11:UngrabPointer -R028 X11:GrabButton -R029 X11:UngrabButton -R030 X11:ChangeActivePointerGrab -R031 X11:GrabKeyboard -R032 X11:UngrabKeyboard -R033 X11:GrabKey -R034 X11:UngrabKey -R035 X11:AllowEvents -R036 X11:GrabServer -R037 X11:UngrabServer -R038 X11:QueryPointer -R039 X11:GetMotionEvents -R040 X11:TranslateCoords -R041 X11:WarpPointer -R042 X11:SetInputFocus -R043 X11:GetInputFocus -R044 X11:QueryKeymap -R045 X11:OpenFont -R046 X11:CloseFont -R047 X11:QueryFont -R048 X11:QueryTextExtents -R049 X11:ListFonts -R050 X11:ListFontsWithInfo -R051 X11:SetFontPath -R052 X11:GetFontPath -R053 X11:CreatePixmap -R054 X11:FreePixmap -R055 X11:CreateGC -R056 X11:ChangeGC -R057 X11:CopyGC -R058 X11:SetDashes -R059 X11:SetClipRectangles -R060 X11:FreeGC -R061 X11:ClearArea -R062 X11:CopyArea -R063 X11:CopyPlane -R064 X11:PolyPoint -R065 X11:PolyLine -R066 X11:PolySegment -R067 X11:PolyRectangle -R068 X11:PolyArc -R069 X11:FillPoly -R070 X11:PolyFillRectangle -R071 X11:PolyFillArc -R072 X11:PutImage -R073 X11:GetImage -R074 X11:PolyText8 -R075 X11:PolyText16 -R076 X11:ImageText8 -R077 X11:ImageText16 -R078 X11:CreateColormap -R079 X11:FreeColormap -R080 X11:CopyColormapAndFree -R081 X11:InstallColormap -R082 X11:UninstallColormap -R083 X11:ListInstalledColormaps -R084 X11:AllocColor -R085 X11:AllocNamedColor -R086 X11:AllocColorCells -R087 X11:AllocColorPlanes -R088 X11:FreeColors -R089 X11:StoreColors -R090 X11:StoreNamedColor -R091 X11:QueryColors -R092 X11:LookupColor -R093 X11:CreateCursor -R094 X11:CreateGlyphCursor -R095 X11:FreeCursor -R096 X11:RecolorCursor -R097 X11:QueryBestSize -R098 X11:QueryExtension -R099 X11:ListExtensions -R100 X11:ChangeKeyboardMapping -R101 X11:GetKeyboardMapping -R102 X11:ChangeKeyboardControl -R103 X11:GetKeyboardControl -R104 X11:Bell -R105 X11:ChangePointerControl -R106 X11:GetPointerControl -R107 X11:SetScreenSaver -R108 X11:GetScreenSaver -R109 X11:ChangeHosts -R110 X11:ListHosts -R111 X11:SetAccessControl -R112 X11:SetCloseDownMode -R113 X11:KillClient -R114 X11:RotateProperties -R115 X11:ForceScreenSaver -R116 X11:SetPointerMapping -R117 X11:GetPointerMapping -R118 X11:SetModifierMapping -R119 X11:GetModifierMapping -R127 X11:NoOperation -V000 X11:X_Error -V001 X11:X_Reply -V002 X11:KeyPress -V003 X11:KeyRelease -V004 X11:ButtonPress -V005 X11:ButtonRelease -V006 X11:MotionNotify -V007 X11:EnterNotify -V008 X11:LeaveNotify -V009 X11:FocusIn -V010 X11:FocusOut -V011 X11:KeymapNotify -V012 X11:Expose -V013 X11:GraphicsExpose -V014 X11:NoExpose -V015 X11:VisibilityNotify -V016 X11:CreateNotify -V017 X11:DestroyNotify -V018 X11:UnmapNotify -V019 X11:MapNotify -V020 X11:MapRequest -V021 X11:ReparentNotify -V022 X11:ConfigureNotify -V023 X11:ConfigureRequest -V024 X11:GravityNotify -V025 X11:ResizeRequest -V026 X11:CirculateNotify -V027 X11:CirculateRequest -V028 X11:PropertyNotify -V029 X11:SelectionClear -V030 X11:SelectionRequest -V031 X11:SelectionNotify -V032 X11:ColormapNotify -V033 X11:ClientMessage -V034 X11:MappingNotify -V035 X11:GenericEvent -E000 X11:Success -E001 X11:BadRequest -E002 X11:BadValue -E003 X11:BadWindow -E004 X11:BadPixmap -E005 X11:BadAtom -E006 X11:BadCursor -E007 X11:BadFont -E008 X11:BadMatch -E009 X11:BadDrawable -E010 X11:BadAccess -E011 X11:BadAlloc -E012 X11:BadColor -E013 X11:BadGC -E014 X11:BadIDChoice -E015 X11:BadName -E016 X11:BadLength -E017 X11:BadImplementation -R001 X3D-PEX:GetExtensionInfo -R002 X3D-PEX:GetEnumeratedTypeInfo -R003 X3D-PEX:GetImpDepConstants -R004 X3D-PEX:CreateLookupTable -R005 X3D-PEX:CopyLookupTable -R006 X3D-PEX:FreeLookupTable -R007 X3D-PEX:GetTableInfo -R008 X3D-PEX:GetPredefinedEntries -R009 X3D-PEX:GetDefinedIndices -R010 X3D-PEX:GetTableEntry -R011 X3D-PEX:GetTableEntries -R012 X3D-PEX:SetTableEntries -R013 X3D-PEX:DeleteTableEntries -R014 X3D-PEX:CreatePipelineContext -R015 X3D-PEX:CopyPipelineContext -R016 X3D-PEX:FreePipelineContext -R017 X3D-PEX:GetPipelineContext -R018 X3D-PEX:ChangePipelineContext -R019 X3D-PEX:CreateRenderer -R020 X3D-PEX:FreeRenderer -R021 X3D-PEX:ChangeRenderer -R022 X3D-PEX:GetRendererAttributes -R023 X3D-PEX:GetRendererDynamics -R024 X3D-PEX:BeginRendering -R025 X3D-PEX:EndRendering -R026 X3D-PEX:BeginStructure -R027 X3D-PEX:EndStructure -R028 X3D-PEX:OutputCommands -R029 X3D-PEX:Network -R030 X3D-PEX:CreateStructure -R031 X3D-PEX:CopyStructure -R032 X3D-PEX:DestroyStructures -R033 X3D-PEX:GetStructureInfo -R034 X3D-PEX:GetElementInfo -R035 X3D-PEX:GetStructuresInNetwork -R036 X3D-PEX:GetAncestors -R037 X3D-PEX:GetDescendants -R038 X3D-PEX:FetchElements -R039 X3D-PEX:SetEditingMode -R040 X3D-PEX:SetElementPointer -R041 X3D-PEX:SetElementPointerAtLabel -R042 X3D-PEX:ElementSearch -R043 X3D-PEX:StoreElements -R044 X3D-PEX:DeleteElements -R045 X3D-PEX:DeleteElementsToLabel -R046 X3D-PEX:DeleteBetweenLabels -R047 X3D-PEX:CopyElements -R048 X3D-PEX:ChangeStructureRefs -R049 X3D-PEX:CreateNameSet -R050 X3D-PEX:CopyNameSet -R051 X3D-PEX:FreeNameSet -R052 X3D-PEX:GetNameSet -R053 X3D-PEX:ChangeNameSet -R054 X3D-PEX:CreateSearchContext -R055 X3D-PEX:CopySearchContext -R056 X3D-PEX:FreeSearchContext -R057 X3D-PEX:GetSearchContext -R058 X3D-PEX:ChangeSearchContext -R059 X3D-PEX:SearchNetwork -R060 X3D-PEX:CreatePhigsWks -R061 X3D-PEX:FreePhigsWks -R062 X3D-PEX:GetWksInfo -R063 X3D-PEX:GetDynamics -R064 X3D-PEX:GetViewRep -R065 X3D-PEX:RedrawAllStructures -R066 X3D-PEX:UpdateWorkstation -R067 X3D-PEX:RedrawClipRegion -R068 X3D-PEX:ExecuteDeferredActions -R069 X3D-PEX:SetViewPriority -R070 X3D-PEX:SetDisplayUpdateMode -R071 X3D-PEX:MapDCtoWC -R072 X3D-PEX:MapWCtoDC -R073 X3D-PEX:SetViewRep -R074 X3D-PEX:SetWksWindow -R075 X3D-PEX:SetWksViewport -R076 X3D-PEX:SetHlhsrMode -R077 X3D-PEX:SetWksBufferMode -R078 X3D-PEX:PostStructure -R079 X3D-PEX:UnpostStructure -R080 X3D-PEX:UnpostAllStructures -R081 X3D-PEX:GetWksPostings -R082 X3D-PEX:GetPickDevice -R083 X3D-PEX:ChangePickDevice -R084 X3D-PEX:CreatePickMeasure -R085 X3D-PEX:FreePickMeasure -R086 X3D-PEX:GetPickMeasure -R087 X3D-PEX:UpdatePickMeasure -R088 X3D-PEX:OpenFont -R089 X3D-PEX:CloseFont -R090 X3D-PEX:QueryFont -R091 X3D-PEX:ListFonts -R092 X3D-PEX:ListFontsWithInfo -R093 X3D-PEX:QueryTextExtents -R094 X3D-PEX:MatchRenderingTargets -R095 X3D-PEX:Escape -R096 X3D-PEX:EscapeWithReply -R097 X3D-PEX:Elements -R098 X3D-PEX:AccumulateState -R099 X3D-PEX:BeginPickOne -R100 X3D-PEX:EndPickOne -R101 X3D-PEX:PickOne -R102 X3D-PEX:BeginPickAll -R103 X3D-PEX:EndPickAll -R104 X3D-PEX:PickAll -E000 X3D-PEX:ColorTypeError -E001 X3D-PEX:erStateError -E002 X3D-PEX:FloatingPointFormatError -E003 X3D-PEX:LabelError -E004 X3D-PEX:LookupTableError -E005 X3D-PEX:NameSetError -E006 X3D-PEX:PathError -E007 X3D-PEX:FontError -E008 X3D-PEX:PhigsWksError -E009 X3D-PEX:PickMeasureError -E010 X3D-PEX:PipelineContextError -E011 X3D-PEX:erError -E012 X3D-PEX:SearchContextError -E013 X3D-PEX:StructureError -E014 X3D-PEX:OutputCommandError -R000 XC-APPGROUP:QueryVersion -R001 XC-APPGROUP:Create -R002 XC-APPGROUP:Destroy -R003 XC-APPGROUP:GetAttr -R004 XC-APPGROUP:Query -R005 XC-APPGROUP:CreateAssoc -R006 XC-APPGROUP:DestroyAssoc -E000 XC-APPGROUP:BadAppGroup -R000 XC-MISC:GetVersion -R001 XC-MISC:GetXIDRange -R002 XC-MISC:GetXIDList -R000 XFIXES:QueryVersion -R001 XFIXES:ChangeSaveSet -R002 XFIXES:SelectSelectionInput -R003 XFIXES:SelectCursorInput -R004 XFIXES:GetCursorImage -R005 XFIXES:CreateRegion -R006 XFIXES:CreateRegionFromBitmap -R007 XFIXES:CreateRegionFromWindow -R008 XFIXES:CreateRegionFromGC -R009 XFIXES:CreateRegionFromPicture -R010 XFIXES:DestroyRegion -R011 XFIXES:SetRegion -R012 XFIXES:CopyRegion -R013 XFIXES:UnionRegion -R014 XFIXES:IntersectRegion -R015 XFIXES:SubtractRegion -R016 XFIXES:InvertRegion -R017 XFIXES:TranslateRegion -R018 XFIXES:RegionExtents -R019 XFIXES:FetchRegion -R020 XFIXES:SetGCClipRegion -R021 XFIXES:SetWindowShapeRegion -R022 XFIXES:SetPictureClipRegion -R023 XFIXES:SetCursorName -R024 XFIXES:GetCursorName -R025 XFIXES:GetCursorImageAndName -R026 XFIXES:ChangeCursor -R027 XFIXES:ChangeCursorByName -R028 XFIXES:ExpandRegion -R029 XFIXES:HideCursor -R030 XFIXES:ShowCursor -V000 XFIXES:SelectionNotify -V001 XFIXES:CursorNotify -E000 XFIXES:BadRegion -R000 XFree86-Bigfont:QueryVersion -R001 XFree86-Bigfont:QueryFont -R000 XFree86-DGA:QueryVersion -R001 XFree86-DGA:GetVideoLL -R002 XFree86-DGA:DirectVideo -R003 XFree86-DGA:GetViewPortSize -R004 XFree86-DGA:SetViewPort -R005 XFree86-DGA:GetVidPage -R006 XFree86-DGA:SetVidPage -R007 XFree86-DGA:InstallColormap -R008 XFree86-DGA:QueryDirectVideo -R009 XFree86-DGA:ViewPortChanged -R010 XFree86-DGA:Obsolete1 -R011 XFree86-DGA:Obsolete2 -R012 XFree86-DGA:QueryModes -R013 XFree86-DGA:SetMode -R014 XFree86-DGA:SetViewport -R015 XFree86-DGA:InstallColormap -R016 XFree86-DGA:SelectInput -R017 XFree86-DGA:FillRectangle -R018 XFree86-DGA:CopyArea -R019 XFree86-DGA:CopyTransparentArea -R020 XFree86-DGA:GetViewportStatus -R021 XFree86-DGA:Sync -R022 XFree86-DGA:OpenFramebuffer -R023 XFree86-DGA:CloseFramebuffer -R024 XFree86-DGA:SetClientVersion -R025 XFree86-DGA:ChangePixmapMode -R026 XFree86-DGA:CreateColormap -E000 XFree86-DGA:ClientNotLocal -E001 XFree86-DGA:NoDirectVideoMode -E002 XFree86-DGA:ScreenNotActive -E003 XFree86-DGA:DirectNotActivated -E004 XFree86-DGA:OperationNotSupported -R000 XFree86-DRI:QueryVersion -R001 XFree86-DRI:QueryDirectRenderingCapable -R002 XFree86-DRI:OpenConnection -R003 XFree86-DRI:CloseConnection -R004 XFree86-DRI:GetClientDriverName -R005 XFree86-DRI:CreateContext -R006 XFree86-DRI:DestroyContext -R007 XFree86-DRI:CreateDrawable -R008 XFree86-DRI:DestroyDrawable -R009 XFree86-DRI:GetDrawableInfo -R010 XFree86-DRI:GetDeviceInfo -R011 XFree86-DRI:AuthConnection -R012 XFree86-DRI:OpenFullScreen -R013 XFree86-DRI:CloseFullScreen -E000 XFree86-DRI:ClientNotLocal -E001 XFree86-DRI:OperationNotSupported -R000 XFree86-Misc:QueryVersion -R001 XFree86-Misc:GetSaver -R002 XFree86-Misc:SetSaver -R003 XFree86-Misc:GetMouseSettings -R004 XFree86-Misc:GetKbdSettings -R005 XFree86-Misc:SetMouseSettings -R006 XFree86-Misc:SetKbdSettings -R007 XFree86-Misc:SetGrabKeysState -R008 XFree86-Misc:SetClientVersion -R009 XFree86-Misc:GetFilePaths -R010 XFree86-Misc:PassMessage -E000 XFree86-Misc:BadMouseProtocol -E001 XFree86-Misc:BadMouseBaudRate -E002 XFree86-Misc:BadMouseFlags -E003 XFree86-Misc:BadMouseCombo -E004 XFree86-Misc:BadKbdType -E005 XFree86-Misc:ModInDevDisabled -E006 XFree86-Misc:ModInDevClientNotLocal -E007 XFree86-Misc:NoModule -R000 XFree86-VidModeExtension:QueryVersion -R001 XFree86-VidModeExtension:GetModeLine -R002 XFree86-VidModeExtension:ModModeLine -R003 XFree86-VidModeExtension:SwitchMode -R004 XFree86-VidModeExtension:GetMonitor -R005 XFree86-VidModeExtension:LockModeSwitch -R006 XFree86-VidModeExtension:GetAllModeLines -R007 XFree86-VidModeExtension:AddModeLine -R008 XFree86-VidModeExtension:DeleteModeLine -R009 XFree86-VidModeExtension:ValidateModeLine -R010 XFree86-VidModeExtension:SwitchToMode -R011 XFree86-VidModeExtension:GetViewPort -R012 XFree86-VidModeExtension:SetViewPort -R013 XFree86-VidModeExtension:GetDotClocks -R014 XFree86-VidModeExtension:SetClientVersion -R015 XFree86-VidModeExtension:SetGamma -R016 XFree86-VidModeExtension:GetGamma -R017 XFree86-VidModeExtension:GetGammaRamp -R018 XFree86-VidModeExtension:SetGammaRamp -R019 XFree86-VidModeExtension:GetGammaRampSize -R020 XFree86-VidModeExtension:GetPermissions -V000 XFree86-VidModeExtension:Notify -E000 XFree86-VidModeExtension:BadClock -E001 XFree86-VidModeExtension:BadHTimings -E002 XFree86-VidModeExtension:BadVTimings -E003 XFree86-VidModeExtension:ModeUnsuitable -E004 XFree86-VidModeExtension:ExtensionDisabled -E005 XFree86-VidModeExtension:ClientNotLocal -E006 XFree86-VidModeExtension:ZoomLocked -R001 XIE:QueryImageExtension -R002 XIE:QueryTechniques -R003 XIE:CreateColorList -R004 XIE:DestroyColorList -R005 XIE:PurgeColorList -R006 XIE:QueryColorList -R007 XIE:CreateLUT -R008 XIE:DestroyLUT -R009 XIE:CreatePhotomap -R010 XIE:DestroyPhotomap -R011 XIE:QueryPhotomap -R012 XIE:CreateROI -R013 XIE:DestroyROI -R014 XIE:CreatePhotospace -R015 XIE:DestroyPhotospace -R016 XIE:ExecuteImmediate -R017 XIE:CreatePhotoflo -R018 XIE:DestroyPhotoflo -R019 XIE:ExecutePhotoflo -R020 XIE:ModifyPhotoflo -R021 XIE:RedefinePhotoflo -R022 XIE:PutClientData -R023 XIE:GetClientData -R024 XIE:QueryPhotoflo -R025 XIE:Await -R026 XIE:Abort -E000 XIE:ColorListError -E001 XIE:LUTError -E002 XIE:PhotofloError -E003 XIE:PhotomapError -E004 XIE:PhotospaceError -E005 XIE:ROIError -E006 XIE:FloError -R000 XINERAMA:QueryVersion -R001 XINERAMA:GetState -R002 XINERAMA:GetScreenCount -R003 XINERAMA:GetScreenSize -R004 XINERAMA:IsActive -R005 XINERAMA:QueryScreens -R001 XInputExtension:GetExtensionVersion -R002 XInputExtension:ListInputDevices -R003 XInputExtension:OpenDevice -R004 XInputExtension:CloseDevice -R005 XInputExtension:SetDeviceMode -R006 XInputExtension:SelectExtensionEvent -R007 XInputExtension:GetSelectedExtensionEvents -R008 XInputExtension:ChangeDeviceDontPropagateList -R009 XInputExtension:GetDeviceDontPropagageList -R010 XInputExtension:GetDeviceMotionEvents -R011 XInputExtension:ChangeKeyboardDevice -R012 XInputExtension:ChangePointerDevice -R013 XInputExtension:GrabDevice -R014 XInputExtension:UngrabDevice -R015 XInputExtension:GrabDeviceKey -R016 XInputExtension:UngrabDeviceKey -R017 XInputExtension:GrabDeviceButton -R018 XInputExtension:UngrabDeviceButton -R019 XInputExtension:AllowDeviceEvents -R020 XInputExtension:GetDeviceFocus -R021 XInputExtension:SetDeviceFocus -R022 XInputExtension:GetFeedbackControl -R023 XInputExtension:ChangeFeedbackControl -R024 XInputExtension:GetDeviceKeyMapping -R025 XInputExtension:ChangeDeviceKeyMapping -R026 XInputExtension:GetDeviceModifierMapping -R027 XInputExtension:SetDeviceModifierMapping -R028 XInputExtension:GetDeviceButtonMapping -R029 XInputExtension:SetDeviceButtonMapping -R030 XInputExtension:QueryDeviceState -R031 XInputExtension:SendExtensionEvent -R032 XInputExtension:DeviceBell -R033 XInputExtension:SetDeviceValuators -R034 XInputExtension:GetDeviceControl -R035 XInputExtension:ChangeDeviceControl -R036 XInputExtension:ListDeviceProperties -R037 XInputExtension:ChangeDeviceProperty -R038 XInputExtension:DeleteDeviceProperty -R039 XInputExtension:GetDeviceProperty -R040 XInputExtension:QueryPointer -R041 XInputExtension:WarpPointer -R042 XInputExtension:ChangeCursor -R043 XInputExtension:ChangeHierarchy -R044 XInputExtension:SetClientPointer -R045 XInputExtension:GetClientPointer -R046 XInputExtension:SelectEvents -R047 XInputExtension:QueryVersion -R048 XInputExtension:QueryDevice -R049 XInputExtension:SetFocus -R050 XInputExtension:GetFocus -R051 XInputExtension:GrabDevice -R052 XInputExtension:UngrabDevice -R053 XInputExtension:AllowEvents -R054 XInputExtension:PassiveGrabDevice -R055 XInputExtension:PassiveUngrabDevice -R056 XInputExtension:ListProperties -R057 XInputExtension:ChangeProperty -R058 XInputExtension:DeleteProperty -R059 XInputExtension:GetProperty -R060 XInputExtension:GetSelectedEvents -V000 XInputExtension:DeviceValuator -V001 XInputExtension:DeviceKeyPress -V002 XInputExtension:DeviceKeyRelease -V003 XInputExtension:DeviceButtonPress -V004 XInputExtension:DeviceButtonRelease -V005 XInputExtension:DeviceMotionNotify -V006 XInputExtension:DeviceFocusIn -V007 XInputExtension:DeviceFocusOut -V008 XInputExtension:ProximityIn -V009 XInputExtension:ProximityOut -V010 XInputExtension:DeviceStateNotify -V011 XInputExtension:DeviceMappingNotify -V012 XInputExtension:ChangeDeviceNotify -V013 XInputExtension:DeviceKeystateNotify -V014 XInputExtension:DeviceButtonstateNotify -V015 XInputExtension:DevicePresenceNotify -V016 XInputExtension:DevicePropertyNotify -E000 XInputExtension:BadDevice -E001 XInputExtension:BadEvent -E002 XInputExtension:BadMode -E003 XInputExtension:DeviceBusy -E004 XInputExtension:BadClass -R000 XKEYBOARD:UseExtension -R001 XKEYBOARD:SelectEvents -R002 XKEYBOARD:Obsolete -R003 XKEYBOARD:Bell -R004 XKEYBOARD:GetState -R005 XKEYBOARD:LatchLockState -R006 XKEYBOARD:GetControls -R007 XKEYBOARD:SetControls -R008 XKEYBOARD:GetMap -R009 XKEYBOARD:SetMap -R010 XKEYBOARD:GetCompatMap -R011 XKEYBOARD:SetCompatMap -R012 XKEYBOARD:GetIndicatorState -R013 XKEYBOARD:GetIndicatorMap -R014 XKEYBOARD:SetIndicatorMap -R015 XKEYBOARD:GetNamedIndicator -R016 XKEYBOARD:SetNamedIndicator -R017 XKEYBOARD:GetNames -R018 XKEYBOARD:SetNames -R019 XKEYBOARD:GetGeometry -R020 XKEYBOARD:SetGeometry -R021 XKEYBOARD:PerClientFlags -R022 XKEYBOARD:ListComponents -R023 XKEYBOARD:GetKbdByName -R024 XKEYBOARD:GetDeviceInfo -R025 XKEYBOARD:SetDeviceInfo -R101 XKEYBOARD:SetDebuggingFlags -V000 XKEYBOARD:EventCode -E000 XKEYBOARD:BadKeyboard -R000 XTEST:GetVersion -R001 XTEST:CompareCursor -R002 XTEST:FakeInput -R003 XTEST:GrabControl -R000 XVideo:QueryExtension -R001 XVideo:QueryAdaptors -R002 XVideo:QueryEncodings -R003 XVideo:GrabPort -R004 XVideo:UngrabPort -R005 XVideo:PutVideo -R006 XVideo:PutStill -R007 XVideo:GetVideo -R008 XVideo:GetStill -R009 XVideo:StopVideo -R010 XVideo:SelectVideoNotify -R011 XVideo:SelectPortNotify -R012 XVideo:QueryBestSize -R013 XVideo:SetPortAttribute -R014 XVideo:GetPortAttribute -R015 XVideo:QueryPortAttributes -R016 XVideo:ListImageFormats -R017 XVideo:QueryImageAttributes -R018 XVideo:PutImage -R019 XVideo:ShmPutImage -V000 XVideo:VideoNotify -V001 XVideo:PortNotify -E000 XVideo:BadPort -E001 XVideo:BadEncoding -E002 XVideo:BadControl -R000 XVideo-MotionCompensation:QueryVersion -R001 XVideo-MotionCompensation:ListSurfaceTypes -R002 XVideo-MotionCompensation:CreateContext -R003 XVideo-MotionCompensation:DestroyContext -R004 XVideo-MotionCompensation:CreateSurface -R005 XVideo-MotionCompensation:DestroySurface -R006 XVideo-MotionCompensation:CreateSubpicture -R007 XVideo-MotionCompensation:DestroySubpicture -R008 XVideo-MotionCompensation:ListSubpictureTypes -R009 XVideo-MotionCompensation:GetDRInfo -E000 XVideo-MotionCompensation:BadContext -E001 XVideo-MotionCompensation:BadSurface -E002 XVideo-MotionCompensation:BadSubpicture -R000 XpExtension:QueryVersion -R001 XpExtension:GetPrinterList -R002 XpExtension:CreateContext -R003 XpExtension:SetContext -R004 XpExtension:GetContext -R005 XpExtension:DestroyContext -R006 XpExtension:GetContextScreen -R007 XpExtension:StartJob -R008 XpExtension:EndJob -R009 XpExtension:StartDoc -R010 XpExtension:EndDoc -R011 XpExtension:PutDocumentData -R012 XpExtension:GetDocumentData -R013 XpExtension:StartPage -R014 XpExtension:EndPage -R015 XpExtension:SelectInput -R016 XpExtension:InputSelected -R017 XpExtension:GetAttributes -R018 XpExtension:SetAttributes -R019 XpExtension:GetOneAttribute -R020 XpExtension:RehashPrinterList -R021 XpExtension:GetPageDimensions -R022 XpExtension:QueryScreens -R023 XpExtension:SetImageResolution -R024 XpExtension:GetImageResolution -V000 XpExtension:PrintNotify -V001 XpExtension:AttributeNotify -E000 XpExtension:BadContext -E001 XpExtension:BadSequence -E002 XpExtension:BadResourceID +# Registry of protocol names used by X Server +# This will eventually be replaced by server-side XCB +# +# Format is Xnnn : +# R=Request, V=Event, E=Error +# +# This is a security-sensitive file, please set permissions as appropriate. +# +R001 Adobe-DPS-Extension:Init +R002 Adobe-DPS-Extension:CreateContext +R003 Adobe-DPS-Extension:CreateSpace +R004 Adobe-DPS-Extension:GiveInput +R005 Adobe-DPS-Extension:GetStatus +R006 Adobe-DPS-Extension:DestroySpace +R007 Adobe-DPS-Extension:Reset +R008 Adobe-DPS-Extension:NotifyContext +R009 Adobe-DPS-Extension:CreateContextFromID +R010 Adobe-DPS-Extension:XIDFromContext +R011 Adobe-DPS-Extension:ContextFromXID +R012 Adobe-DPS-Extension:SetStatusMask +R013 Adobe-DPS-Extension:CreateSecureContext +R014 Adobe-DPS-Extension:NotifyWhenReady +R000 Apple-DRI:QueryVersion +R001 Apple-DRI:QueryDirectRenderingCapable +R002 Apple-DRI:CreateSurface +R003 Apple-DRI:DestroySurface +R004 Apple-DRI:AuthConnection +V000 Apple-DRI:ObsoleteEvent1 +V001 Apple-DRI:ObsoleteEvent2 +V002 Apple-DRI:ObsoleteEvent3 +V003 Apple-DRI:SurfaceNotify +E000 Apple-DRI:ClientNotLocal +E001 Apple-DRI:OperationNotSupported +R000 Apple-WM:QueryVersion +R001 Apple-WM:FrameGetRect +R002 Apple-WM:FrameHitTest +R003 Apple-WM:FrameDraw +R004 Apple-WM:DisableUpdate +R005 Apple-WM:ReenableUpdate +R006 Apple-WM:SelectInput +R007 Apple-WM:SetWindowMenuCheck +R008 Apple-WM:SetFrontProcess +R009 Apple-WM:SetWindowLevel +R010 Apple-WM:SetCanQuit +R011 Apple-WM:SetWindowMenu +V000 Apple-WM:ControllerNotify +V001 Apple-WM:ActivationNotify +V002 Apple-WM:PasteboardNotify +E000 Apple-WM:ClientNotLocal +E001 Apple-WM:OperationNotSupported +R000 BIG-REQUESTS:Enable +R000 Composite:CompositeQueryVersion +R001 Composite:CompositeRedirectWindow +R002 Composite:CompositeRedirectSubwindows +R003 Composite:CompositeUnredirectWindow +R004 Composite:CompositeUnredirectSubwindows +R005 Composite:CompositeCreateRegionFromBorderClip +R006 Composite:CompositeNameWindowPixmap +R007 Composite:CompositeGetOverlayWindow +R008 Composite:CompositeReleaseOverlayWindow +R000 DAMAGE:QueryVersion +R001 DAMAGE:Create +R002 DAMAGE:Destroy +R003 DAMAGE:Subtract +R004 DAMAGE:Add +V000 DAMAGE:Notify +E000 DAMAGE:BadDamage +R000 DEC-XTRAP:Reset +R001 DEC-XTRAP:GetAvailable +R002 DEC-XTRAP:Config +R003 DEC-XTRAP:StartTrap +R004 DEC-XTRAP:StopTrap +R005 DEC-XTRAP:GetCurrent +R006 DEC-XTRAP:GetStatistics +R007 DEC-XTRAP:SimulateXEvent +R008 DEC-XTRAP:GetVersion +R009 DEC-XTRAP:GetLastInpTime +V000 DEC-XTRAP:Event +E002 DEC-XTRAP:BadIO +E004 DEC-XTRAP:BadStatistics +E005 DEC-XTRAP:BadDevices +E007 DEC-XTRAP:BadScreen +E008 DEC-XTRAP:BadSwapReq +R000 DMX:DMXQueryVersion +R001 DMX:DMXGetScreenCount +R002 DMX:DMXGetScreenInfoDEPRECATED +R003 DMX:DMXGetWindowAttributes +R004 DMX:DMXGetInputCount +R005 DMX:DMXGetInputAttributes +R006 DMX:DMXForceWindowCreationDEPRECATED +R007 DMX:DMXReconfigureScreenDEPRECATED +R008 DMX:DMXSync +R009 DMX:DMXForceWindowCreation +R010 DMX:DMXGetScreenAttributes +R011 DMX:DMXChangeScreensAttributes +R012 DMX:DMXAddScreen +R013 DMX:DMXRemoveScreen +R014 DMX:DMXGetDesktopAttributes +R015 DMX:DMXChangeDesktopAttributes +R016 DMX:DMXAddInput +R017 DMX:DMXRemoveInput +R000 DOUBLE-BUFFER:GetVersion +R001 DOUBLE-BUFFER:AllocateBackBufferName +R002 DOUBLE-BUFFER:DeallocateBackBufferName +R003 DOUBLE-BUFFER:SwapBuffers +R004 DOUBLE-BUFFER:BeginIdiom +R005 DOUBLE-BUFFER:EndIdiom +R006 DOUBLE-BUFFER:GetVisualInfo +R007 DOUBLE-BUFFER:GetBackBufferAttributes +E000 DOUBLE-BUFFER:BadBuffer +R000 DPMS:GetVersion +R001 DPMS:Capable +R002 DPMS:GetTimeouts +R003 DPMS:SetTimeouts +R004 DPMS:Enable +R005 DPMS:Disable +R006 DPMS:ForceLevel +R007 DPMS:Info +R000 DRI2:QueryVersion +R001 DRI2:Connect +R002 DRI2:Authenticate +R003 DRI2:CreateDrawable +R004 DRI2:DestroyDrawable +R005 DRI2:GetBuffers +R006 DRI2:CopyRegion +R007 DRI2:GetBuffersWithFormat +R000 Extended-Visual-Information:QueryVersion +R001 Extended-Visual-Information:GetVisualInfo +R000 FontCache:QueryVersion +R001 FontCache:GetCacheSettings +R002 FontCache:ChangeCacheSettings +R003 FontCache:GetCacheStatistics +E000 FontCache:BadProtocol +E001 FontCache:CannotAllocMemory +R001 GLX: +R002 GLX:Large +R003 GLX:CreateContext +R004 GLX:DestroyContext +R005 GLX:MakeCurrent +R006 GLX:IsDirect +R007 GLX:QueryVersion +R008 GLX:WaitGL +R009 GLX:WaitX +R010 GLX:CopyContext +R011 GLX:SwapBuffers +R012 GLX:UseXFont +R013 GLX:CreateGLXPixmap +R014 GLX:GetVisualConfigs +R015 GLX:DestroyGLXPixmap +R016 GLX:VendorPrivate +R017 GLX:VendorPrivateWithReply +R018 GLX:QueryExtensionsString +R019 GLX:QueryServerString +R020 GLX:ClientInfo +R101 GLX:NewList +R102 GLX:EndList +R103 GLX:DeleteLists +R104 GLX:GenLists +R105 GLX:FeedbackBuffer +R106 GLX:SelectBuffer +R107 GLX:Mode +R108 GLX:Finish +R109 GLX:PixelStoref +R110 GLX:PixelStorei +R111 GLX:ReadPixels +R112 GLX:GetBooleanv +R113 GLX:GetClipPlane +R114 GLX:GetDoublev +R115 GLX:GetError +R116 GLX:GetFloatv +R117 GLX:GetIntegerv +R118 GLX:GetLightfv +R119 GLX:GetLightiv +R120 GLX:GetMapdv +R121 GLX:GetMapfv +R122 GLX:GetMapiv +R123 GLX:GetMaterialfv +R124 GLX:GetMaterialiv +R125 GLX:GetPixelfv +R126 GLX:GetPixelMapuiv +R127 GLX:GetPixelMapusv +R128 GLX:GetPolygonStipple +R129 GLX:GetString +R130 GLX:GetTexEnvfv +R131 GLX:GetTexEnviv +R132 GLX:GetTexGendv +R133 GLX:GetTexGenfv +R134 GLX:GetTexGeniv +R135 GLX:GetTexImage +R136 GLX:GetTexParameterfv +R137 GLX:GetTexParameteriv +R138 GLX:GetTexLevelParameterfv +R139 GLX:GetTexLevelParameteriv +R140 GLX:IsEnabled +R141 GLX:IsList +R142 GLX:Flush +E000 GLX:BadContext +E001 GLX:BadContextState +E002 GLX:BadDrawable +E003 GLX:BadPixmap +E004 GLX:BadContextTag +E005 GLX:BadCurrentWindow +E006 GLX:BadRenderRequest +E007 GLX:BadLargeRequest +E008 GLX:UnsupportedPrivateRequest +R000 LBX:QueryVersion +R001 LBX:StartProxy +R002 LBX:StopProxy +R003 LBX:Switch +R004 LBX:NewClient +R005 LBX:CloseClient +R006 LBX:ModifySequence +R007 LBX:AllowMotion +R008 LBX:IncrementPixel +R009 LBX:Delta +R010 LBX:GetModifierMapping +R011 LBX:QueryTag +R012 LBX:InvalidateTag +R013 LBX:PolyPoint +R014 LBX:PolyLine +R015 LBX:PolySegment +R016 LBX:PolyRectangle +R017 LBX:PolyArc +R018 LBX:FillPoly +R019 LBX:PolyFillRectangle +R020 LBX:PolyFillArc +R021 LBX:GetKeyboardMapping +R022 LBX:QueryFont +R023 LBX:ChangeProperty +R024 LBX:GetProperty +R025 LBX:TagData +R026 LBX:CopyArea +R027 LBX:CopyPlane +R028 LBX:PolyText8 +R029 LBX:PolyText16 +R030 LBX:ImageText8 +R031 LBX:ImageText16 +R032 LBX:QueryExtension +R033 LBX:PutImage +R034 LBX:GetImage +R035 LBX:BeginLargeRequest +R036 LBX:LargeRequestData +R037 LBX:EndLargeRequest +R038 LBX:InternAtoms +R039 LBX:GetWinAttrAndGeom +R040 LBX:GrabCmap +R041 LBX:ReleaseCmap +R042 LBX:AllocColor +R043 LBX:Sync +E000 LBX:BadLbxClient +R000 MIT-SCREEN-SAVER:QueryVersion +R001 MIT-SCREEN-SAVER:QueryInfo +R002 MIT-SCREEN-SAVER:SelectInput +R003 MIT-SCREEN-SAVER:SetAttributes +R004 MIT-SCREEN-SAVER:UnsetAttributes +R005 MIT-SCREEN-SAVER:Suspend +V000 MIT-SCREEN-SAVER:Notify +R000 MIT-SHM:QueryVersion +R001 MIT-SHM:Attach +R002 MIT-SHM:Detach +R003 MIT-SHM:PutImage +R004 MIT-SHM:GetImage +R005 MIT-SHM:CreatePixmap +V000 MIT-SHM:Completion +E000 MIT-SHM:BadShmSeg +R000 MIT-SUNDRY-NONSTANDARD:SetBugMode +R001 MIT-SUNDRY-NONSTANDARD:GetBugMode +R000 Multi-Buffering:GetBufferVersion +R001 Multi-Buffering:CreateImageBuffers +R002 Multi-Buffering:DestroyImageBuffers +R003 Multi-Buffering:DisplayImageBuffers +R004 Multi-Buffering:SetMBufferAttributes +R005 Multi-Buffering:GetMBufferAttributes +R006 Multi-Buffering:SetBufferAttributes +R007 Multi-Buffering:GetBufferAttributes +R008 Multi-Buffering:GetBufferInfo +R009 Multi-Buffering:CreateStereoWindow +R010 Multi-Buffering:ClearImageBufferArea +V000 Multi-Buffering:ClobberNotify +V001 Multi-Buffering:UpdateNotify +E000 Multi-Buffering:BadBuffer +R000 RANDR:QueryVersion +R001 RANDR:OldGetScreenInfo +R002 RANDR:SetScreenConfig +R003 RANDR:OldScreenChangeSelectInput +R004 RANDR:SelectInput +R005 RANDR:GetScreenInfo +R006 RANDR:GetScreenSizeRange +R007 RANDR:SetScreenSize +R008 RANDR:GetScreenResources +R009 RANDR:GetOutputInfo +R010 RANDR:ListOutputProperties +R011 RANDR:QueryOutputProperty +R012 RANDR:ConfigureOutputProperty +R013 RANDR:ChangeOutputProperty +R014 RANDR:DeleteOutputProperty +R015 RANDR:GetOutputProperty +R016 RANDR:CreateMode +R017 RANDR:DestroyMode +R018 RANDR:AddOutputMode +R019 RANDR:DeleteOutputMode +R020 RANDR:GetCrtcInfo +R021 RANDR:SetCrtcConfig +R022 RANDR:GetCrtcGammaSize +R023 RANDR:GetCrtcGamma +R024 RANDR:SetCrtcGamma +R025 RANDR:GetScreenResourcesCurrent +R026 RANDR:SetCrtcTransform +R027 RANDR:GetCrtcTransform +R028 RANDR:GetPanning +R029 RANDR:SetPanning +R030 RANDR:SetOutputPrimary +R031 RANDR:GetOutputPrimary +V000 RANDR:ScreenChangeNotify +V001 RANDR:Notify +E000 RANDR:BadRROutput +E001 RANDR:BadRRCrtc +E002 RANDR:BadRRMode +R000 RECORD:QueryVersion +R001 RECORD:CreateContext +R002 RECORD:RegisterClients +R003 RECORD:UnregisterClients +R004 RECORD:GetContext +R005 RECORD:EnableContext +R006 RECORD:DisableContext +R007 RECORD:FreeContext +E000 RECORD:BadContext +R000 RENDER:QueryVersion +R001 RENDER:QueryPictFormats +R002 RENDER:QueryPictIndexValues +R003 RENDER:QueryDithers +R004 RENDER:CreatePicture +R005 RENDER:ChangePicture +R006 RENDER:SetPictureClipRectangles +R007 RENDER:FreePicture +R008 RENDER:Composite +R009 RENDER:Scale +R010 RENDER:Trapezoids +R011 RENDER:Triangles +R012 RENDER:TriStrip +R013 RENDER:TriFan +R014 RENDER:ColorTrapezoids +R015 RENDER:ColorTriangles +R016 RENDER:Transform +R017 RENDER:CreateGlyphSet +R018 RENDER:ReferenceGlyphSet +R019 RENDER:FreeGlyphSet +R020 RENDER:AddGlyphs +R021 RENDER:AddGlyphsFromPicture +R022 RENDER:FreeGlyphs +R023 RENDER:CompositeGlyphs8 +R024 RENDER:CompositeGlyphs16 +R025 RENDER:CompositeGlyphs32 +R026 RENDER:FillRectangles +R027 RENDER:CreateCursor +R028 RENDER:SetPictureTransform +R029 RENDER:QueryFilters +R030 RENDER:SetPictureFilter +R031 RENDER:CreateAnimCursor +R032 RENDER:AddTraps +R033 RENDER:CreateSolidFill +R034 RENDER:CreateLinearGradient +R035 RENDER:CreateRadialGradient +R036 RENDER:CreateConicalGradient +E000 RENDER:BadPictFormat +E001 RENDER:BadPicture +E002 RENDER:BadPictOp +E003 RENDER:BadGlyphSet +E004 RENDER:BadGlyph +R000 SECURITY:QueryVersion +R001 SECURITY:GenerateAuthorization +R002 SECURITY:RevokeAuthorization +V000 SECURITY:AuthorizationRevoked +E000 SECURITY:BadAuthorization +E001 SECURITY:BadAuthorizationProtocol +R000 SELinux:SELinuxQueryVersion +R001 SELinux:SELinuxSetDeviceCreateContext +R002 SELinux:SELinuxGetDeviceCreateContext +R003 SELinux:SELinuxSetDeviceContext +R004 SELinux:SELinuxGetDeviceContext +R005 SELinux:SELinuxSetWindowCreateContext +R006 SELinux:SELinuxGetWindowCreateContext +R007 SELinux:SELinuxGetWindowContext +R008 SELinux:SELinuxSetPropertyCreateContext +R009 SELinux:SELinuxGetPropertyCreateContext +R010 SELinux:SELinuxSetPropertyUseContext +R011 SELinux:SELinuxGetPropertyUseContext +R012 SELinux:SELinuxGetPropertyContext +R013 SELinux:SELinuxGetPropertyDataContext +R014 SELinux:SELinuxListProperties +R015 SELinux:SELinuxSetSelectionCreateContext +R016 SELinux:SELinuxGetSelectionCreateContext +R017 SELinux:SELinuxSetSelectionUseContext +R018 SELinux:SELinuxGetSelectionUseContext +R019 SELinux:SELinuxGetSelectionContext +R020 SELinux:SELinuxGetSelectionDataContext +R021 SELinux:SELinuxListSelections +R022 SELinux:SELinuxGetClientContext +R000 SHAPE:QueryVersion +R001 SHAPE:Rectangles +R002 SHAPE:Mask +R003 SHAPE:Combine +R004 SHAPE:Offset +R005 SHAPE:QueryExtents +R006 SHAPE:SelectInput +R007 SHAPE:InputSelected +R008 SHAPE:GetRectangles +V000 SHAPE:Notify +R000 SYNC:Initialize +R001 SYNC:ListSystemCounters +R002 SYNC:CreateCounter +R003 SYNC:SetCounter +R004 SYNC:ChangeCounter +R005 SYNC:QueryCounter +R006 SYNC:DestroyCounter +R007 SYNC:Await +R008 SYNC:CreateAlarm +R009 SYNC:ChangeAlarm +R010 SYNC:QueryAlarm +R011 SYNC:DestroyAlarm +R012 SYNC:SetPriority +R013 SYNC:GetPriority +V000 SYNC:CounterNotify +V001 SYNC:AlarmNotify +E000 SYNC:BadCounter +E001 SYNC:BadAlarm +R000 TOG-CUP:QueryVersion +R001 TOG-CUP:GetReservedColormapEntries +R002 TOG-CUP:StoreColors +R000 Windows-WM:QueryVersion +R001 Windows-WM:FrameGetRect +R002 Windows-WM:FrameDraw +R003 Windows-WM:FrameSetTitle +R004 Windows-WM:DisableUpdate +R005 Windows-WM:ReenableUpdate +R006 Windows-WM:SelectInput +R007 Windows-WM:SetFrontProcess +V000 Windows-WM:ControllerNotify +V001 Windows-WM:ActivationNotify +E000 Windows-WM:ClientNotLocal +E001 Windows-WM:OperationNotSupported +R000 X-Resource:QueryVersion +R001 X-Resource:QueryClients +R002 X-Resource:QueryClientResources +R003 X-Resource:QueryClientPixmapBytes +R001 X11:CreateWindow +R002 X11:ChangeWindowAttributes +R003 X11:GetWindowAttributes +R004 X11:DestroyWindow +R005 X11:DestroySubwindows +R006 X11:ChangeSaveSet +R007 X11:ReparentWindow +R008 X11:MapWindow +R009 X11:MapSubwindows +R010 X11:UnmapWindow +R011 X11:UnmapSubwindows +R012 X11:ConfigureWindow +R013 X11:CirculateWindow +R014 X11:GetGeometry +R015 X11:QueryTree +R016 X11:InternAtom +R017 X11:GetAtomName +R018 X11:ChangeProperty +R019 X11:DeleteProperty +R020 X11:GetProperty +R021 X11:ListProperties +R022 X11:SetSelectionOwner +R023 X11:GetSelectionOwner +R024 X11:ConvertSelection +R025 X11:SendEvent +R026 X11:GrabPointer +R027 X11:UngrabPointer +R028 X11:GrabButton +R029 X11:UngrabButton +R030 X11:ChangeActivePointerGrab +R031 X11:GrabKeyboard +R032 X11:UngrabKeyboard +R033 X11:GrabKey +R034 X11:UngrabKey +R035 X11:AllowEvents +R036 X11:GrabServer +R037 X11:UngrabServer +R038 X11:QueryPointer +R039 X11:GetMotionEvents +R040 X11:TranslateCoords +R041 X11:WarpPointer +R042 X11:SetInputFocus +R043 X11:GetInputFocus +R044 X11:QueryKeymap +R045 X11:OpenFont +R046 X11:CloseFont +R047 X11:QueryFont +R048 X11:QueryTextExtents +R049 X11:ListFonts +R050 X11:ListFontsWithInfo +R051 X11:SetFontPath +R052 X11:GetFontPath +R053 X11:CreatePixmap +R054 X11:FreePixmap +R055 X11:CreateGC +R056 X11:ChangeGC +R057 X11:CopyGC +R058 X11:SetDashes +R059 X11:SetClipRectangles +R060 X11:FreeGC +R061 X11:ClearArea +R062 X11:CopyArea +R063 X11:CopyPlane +R064 X11:PolyPoint +R065 X11:PolyLine +R066 X11:PolySegment +R067 X11:PolyRectangle +R068 X11:PolyArc +R069 X11:FillPoly +R070 X11:PolyFillRectangle +R071 X11:PolyFillArc +R072 X11:PutImage +R073 X11:GetImage +R074 X11:PolyText8 +R075 X11:PolyText16 +R076 X11:ImageText8 +R077 X11:ImageText16 +R078 X11:CreateColormap +R079 X11:FreeColormap +R080 X11:CopyColormapAndFree +R081 X11:InstallColormap +R082 X11:UninstallColormap +R083 X11:ListInstalledColormaps +R084 X11:AllocColor +R085 X11:AllocNamedColor +R086 X11:AllocColorCells +R087 X11:AllocColorPlanes +R088 X11:FreeColors +R089 X11:StoreColors +R090 X11:StoreNamedColor +R091 X11:QueryColors +R092 X11:LookupColor +R093 X11:CreateCursor +R094 X11:CreateGlyphCursor +R095 X11:FreeCursor +R096 X11:RecolorCursor +R097 X11:QueryBestSize +R098 X11:QueryExtension +R099 X11:ListExtensions +R100 X11:ChangeKeyboardMapping +R101 X11:GetKeyboardMapping +R102 X11:ChangeKeyboardControl +R103 X11:GetKeyboardControl +R104 X11:Bell +R105 X11:ChangePointerControl +R106 X11:GetPointerControl +R107 X11:SetScreenSaver +R108 X11:GetScreenSaver +R109 X11:ChangeHosts +R110 X11:ListHosts +R111 X11:SetAccessControl +R112 X11:SetCloseDownMode +R113 X11:KillClient +R114 X11:RotateProperties +R115 X11:ForceScreenSaver +R116 X11:SetPointerMapping +R117 X11:GetPointerMapping +R118 X11:SetModifierMapping +R119 X11:GetModifierMapping +R127 X11:NoOperation +V000 X11:X_Error +V001 X11:X_Reply +V002 X11:KeyPress +V003 X11:KeyRelease +V004 X11:ButtonPress +V005 X11:ButtonRelease +V006 X11:MotionNotify +V007 X11:EnterNotify +V008 X11:LeaveNotify +V009 X11:FocusIn +V010 X11:FocusOut +V011 X11:KeymapNotify +V012 X11:Expose +V013 X11:GraphicsExpose +V014 X11:NoExpose +V015 X11:VisibilityNotify +V016 X11:CreateNotify +V017 X11:DestroyNotify +V018 X11:UnmapNotify +V019 X11:MapNotify +V020 X11:MapRequest +V021 X11:ReparentNotify +V022 X11:ConfigureNotify +V023 X11:ConfigureRequest +V024 X11:GravityNotify +V025 X11:ResizeRequest +V026 X11:CirculateNotify +V027 X11:CirculateRequest +V028 X11:PropertyNotify +V029 X11:SelectionClear +V030 X11:SelectionRequest +V031 X11:SelectionNotify +V032 X11:ColormapNotify +V033 X11:ClientMessage +V034 X11:MappingNotify +V035 X11:GenericEvent +E000 X11:Success +E001 X11:BadRequest +E002 X11:BadValue +E003 X11:BadWindow +E004 X11:BadPixmap +E005 X11:BadAtom +E006 X11:BadCursor +E007 X11:BadFont +E008 X11:BadMatch +E009 X11:BadDrawable +E010 X11:BadAccess +E011 X11:BadAlloc +E012 X11:BadColor +E013 X11:BadGC +E014 X11:BadIDChoice +E015 X11:BadName +E016 X11:BadLength +E017 X11:BadImplementation +R001 X3D-PEX:GetExtensionInfo +R002 X3D-PEX:GetEnumeratedTypeInfo +R003 X3D-PEX:GetImpDepConstants +R004 X3D-PEX:CreateLookupTable +R005 X3D-PEX:CopyLookupTable +R006 X3D-PEX:FreeLookupTable +R007 X3D-PEX:GetTableInfo +R008 X3D-PEX:GetPredefinedEntries +R009 X3D-PEX:GetDefinedIndices +R010 X3D-PEX:GetTableEntry +R011 X3D-PEX:GetTableEntries +R012 X3D-PEX:SetTableEntries +R013 X3D-PEX:DeleteTableEntries +R014 X3D-PEX:CreatePipelineContext +R015 X3D-PEX:CopyPipelineContext +R016 X3D-PEX:FreePipelineContext +R017 X3D-PEX:GetPipelineContext +R018 X3D-PEX:ChangePipelineContext +R019 X3D-PEX:CreateRenderer +R020 X3D-PEX:FreeRenderer +R021 X3D-PEX:ChangeRenderer +R022 X3D-PEX:GetRendererAttributes +R023 X3D-PEX:GetRendererDynamics +R024 X3D-PEX:BeginRendering +R025 X3D-PEX:EndRendering +R026 X3D-PEX:BeginStructure +R027 X3D-PEX:EndStructure +R028 X3D-PEX:OutputCommands +R029 X3D-PEX:Network +R030 X3D-PEX:CreateStructure +R031 X3D-PEX:CopyStructure +R032 X3D-PEX:DestroyStructures +R033 X3D-PEX:GetStructureInfo +R034 X3D-PEX:GetElementInfo +R035 X3D-PEX:GetStructuresInNetwork +R036 X3D-PEX:GetAncestors +R037 X3D-PEX:GetDescendants +R038 X3D-PEX:FetchElements +R039 X3D-PEX:SetEditingMode +R040 X3D-PEX:SetElementPointer +R041 X3D-PEX:SetElementPointerAtLabel +R042 X3D-PEX:ElementSearch +R043 X3D-PEX:StoreElements +R044 X3D-PEX:DeleteElements +R045 X3D-PEX:DeleteElementsToLabel +R046 X3D-PEX:DeleteBetweenLabels +R047 X3D-PEX:CopyElements +R048 X3D-PEX:ChangeStructureRefs +R049 X3D-PEX:CreateNameSet +R050 X3D-PEX:CopyNameSet +R051 X3D-PEX:FreeNameSet +R052 X3D-PEX:GetNameSet +R053 X3D-PEX:ChangeNameSet +R054 X3D-PEX:CreateSearchContext +R055 X3D-PEX:CopySearchContext +R056 X3D-PEX:FreeSearchContext +R057 X3D-PEX:GetSearchContext +R058 X3D-PEX:ChangeSearchContext +R059 X3D-PEX:SearchNetwork +R060 X3D-PEX:CreatePhigsWks +R061 X3D-PEX:FreePhigsWks +R062 X3D-PEX:GetWksInfo +R063 X3D-PEX:GetDynamics +R064 X3D-PEX:GetViewRep +R065 X3D-PEX:RedrawAllStructures +R066 X3D-PEX:UpdateWorkstation +R067 X3D-PEX:RedrawClipRegion +R068 X3D-PEX:ExecuteDeferredActions +R069 X3D-PEX:SetViewPriority +R070 X3D-PEX:SetDisplayUpdateMode +R071 X3D-PEX:MapDCtoWC +R072 X3D-PEX:MapWCtoDC +R073 X3D-PEX:SetViewRep +R074 X3D-PEX:SetWksWindow +R075 X3D-PEX:SetWksViewport +R076 X3D-PEX:SetHlhsrMode +R077 X3D-PEX:SetWksBufferMode +R078 X3D-PEX:PostStructure +R079 X3D-PEX:UnpostStructure +R080 X3D-PEX:UnpostAllStructures +R081 X3D-PEX:GetWksPostings +R082 X3D-PEX:GetPickDevice +R083 X3D-PEX:ChangePickDevice +R084 X3D-PEX:CreatePickMeasure +R085 X3D-PEX:FreePickMeasure +R086 X3D-PEX:GetPickMeasure +R087 X3D-PEX:UpdatePickMeasure +R088 X3D-PEX:OpenFont +R089 X3D-PEX:CloseFont +R090 X3D-PEX:QueryFont +R091 X3D-PEX:ListFonts +R092 X3D-PEX:ListFontsWithInfo +R093 X3D-PEX:QueryTextExtents +R094 X3D-PEX:MatchRenderingTargets +R095 X3D-PEX:Escape +R096 X3D-PEX:EscapeWithReply +R097 X3D-PEX:Elements +R098 X3D-PEX:AccumulateState +R099 X3D-PEX:BeginPickOne +R100 X3D-PEX:EndPickOne +R101 X3D-PEX:PickOne +R102 X3D-PEX:BeginPickAll +R103 X3D-PEX:EndPickAll +R104 X3D-PEX:PickAll +E000 X3D-PEX:ColorTypeError +E001 X3D-PEX:erStateError +E002 X3D-PEX:FloatingPointFormatError +E003 X3D-PEX:LabelError +E004 X3D-PEX:LookupTableError +E005 X3D-PEX:NameSetError +E006 X3D-PEX:PathError +E007 X3D-PEX:FontError +E008 X3D-PEX:PhigsWksError +E009 X3D-PEX:PickMeasureError +E010 X3D-PEX:PipelineContextError +E011 X3D-PEX:erError +E012 X3D-PEX:SearchContextError +E013 X3D-PEX:StructureError +E014 X3D-PEX:OutputCommandError +R000 XC-APPGROUP:QueryVersion +R001 XC-APPGROUP:Create +R002 XC-APPGROUP:Destroy +R003 XC-APPGROUP:GetAttr +R004 XC-APPGROUP:Query +R005 XC-APPGROUP:CreateAssoc +R006 XC-APPGROUP:DestroyAssoc +E000 XC-APPGROUP:BadAppGroup +R000 XC-MISC:GetVersion +R001 XC-MISC:GetXIDRange +R002 XC-MISC:GetXIDList +R000 XFIXES:QueryVersion +R001 XFIXES:ChangeSaveSet +R002 XFIXES:SelectSelectionInput +R003 XFIXES:SelectCursorInput +R004 XFIXES:GetCursorImage +R005 XFIXES:CreateRegion +R006 XFIXES:CreateRegionFromBitmap +R007 XFIXES:CreateRegionFromWindow +R008 XFIXES:CreateRegionFromGC +R009 XFIXES:CreateRegionFromPicture +R010 XFIXES:DestroyRegion +R011 XFIXES:SetRegion +R012 XFIXES:CopyRegion +R013 XFIXES:UnionRegion +R014 XFIXES:IntersectRegion +R015 XFIXES:SubtractRegion +R016 XFIXES:InvertRegion +R017 XFIXES:TranslateRegion +R018 XFIXES:RegionExtents +R019 XFIXES:FetchRegion +R020 XFIXES:SetGCClipRegion +R021 XFIXES:SetWindowShapeRegion +R022 XFIXES:SetPictureClipRegion +R023 XFIXES:SetCursorName +R024 XFIXES:GetCursorName +R025 XFIXES:GetCursorImageAndName +R026 XFIXES:ChangeCursor +R027 XFIXES:ChangeCursorByName +R028 XFIXES:ExpandRegion +R029 XFIXES:HideCursor +R030 XFIXES:ShowCursor +V000 XFIXES:SelectionNotify +V001 XFIXES:CursorNotify +E000 XFIXES:BadRegion +R000 XFree86-Bigfont:QueryVersion +R001 XFree86-Bigfont:QueryFont +R000 XFree86-DGA:QueryVersion +R001 XFree86-DGA:GetVideoLL +R002 XFree86-DGA:DirectVideo +R003 XFree86-DGA:GetViewPortSize +R004 XFree86-DGA:SetViewPort +R005 XFree86-DGA:GetVidPage +R006 XFree86-DGA:SetVidPage +R007 XFree86-DGA:InstallColormap +R008 XFree86-DGA:QueryDirectVideo +R009 XFree86-DGA:ViewPortChanged +R010 XFree86-DGA:Obsolete1 +R011 XFree86-DGA:Obsolete2 +R012 XFree86-DGA:QueryModes +R013 XFree86-DGA:SetMode +R014 XFree86-DGA:SetViewport +R015 XFree86-DGA:InstallColormap +R016 XFree86-DGA:SelectInput +R017 XFree86-DGA:FillRectangle +R018 XFree86-DGA:CopyArea +R019 XFree86-DGA:CopyTransparentArea +R020 XFree86-DGA:GetViewportStatus +R021 XFree86-DGA:Sync +R022 XFree86-DGA:OpenFramebuffer +R023 XFree86-DGA:CloseFramebuffer +R024 XFree86-DGA:SetClientVersion +R025 XFree86-DGA:ChangePixmapMode +R026 XFree86-DGA:CreateColormap +E000 XFree86-DGA:ClientNotLocal +E001 XFree86-DGA:NoDirectVideoMode +E002 XFree86-DGA:ScreenNotActive +E003 XFree86-DGA:DirectNotActivated +E004 XFree86-DGA:OperationNotSupported +R000 XFree86-DRI:QueryVersion +R001 XFree86-DRI:QueryDirectRenderingCapable +R002 XFree86-DRI:OpenConnection +R003 XFree86-DRI:CloseConnection +R004 XFree86-DRI:GetClientDriverName +R005 XFree86-DRI:CreateContext +R006 XFree86-DRI:DestroyContext +R007 XFree86-DRI:CreateDrawable +R008 XFree86-DRI:DestroyDrawable +R009 XFree86-DRI:GetDrawableInfo +R010 XFree86-DRI:GetDeviceInfo +R011 XFree86-DRI:AuthConnection +R012 XFree86-DRI:OpenFullScreen +R013 XFree86-DRI:CloseFullScreen +E000 XFree86-DRI:ClientNotLocal +E001 XFree86-DRI:OperationNotSupported +R000 XFree86-Misc:QueryVersion +R001 XFree86-Misc:GetSaver +R002 XFree86-Misc:SetSaver +R003 XFree86-Misc:GetMouseSettings +R004 XFree86-Misc:GetKbdSettings +R005 XFree86-Misc:SetMouseSettings +R006 XFree86-Misc:SetKbdSettings +R007 XFree86-Misc:SetGrabKeysState +R008 XFree86-Misc:SetClientVersion +R009 XFree86-Misc:GetFilePaths +R010 XFree86-Misc:PassMessage +E000 XFree86-Misc:BadMouseProtocol +E001 XFree86-Misc:BadMouseBaudRate +E002 XFree86-Misc:BadMouseFlags +E003 XFree86-Misc:BadMouseCombo +E004 XFree86-Misc:BadKbdType +E005 XFree86-Misc:ModInDevDisabled +E006 XFree86-Misc:ModInDevClientNotLocal +E007 XFree86-Misc:NoModule +R000 XFree86-VidModeExtension:QueryVersion +R001 XFree86-VidModeExtension:GetModeLine +R002 XFree86-VidModeExtension:ModModeLine +R003 XFree86-VidModeExtension:SwitchMode +R004 XFree86-VidModeExtension:GetMonitor +R005 XFree86-VidModeExtension:LockModeSwitch +R006 XFree86-VidModeExtension:GetAllModeLines +R007 XFree86-VidModeExtension:AddModeLine +R008 XFree86-VidModeExtension:DeleteModeLine +R009 XFree86-VidModeExtension:ValidateModeLine +R010 XFree86-VidModeExtension:SwitchToMode +R011 XFree86-VidModeExtension:GetViewPort +R012 XFree86-VidModeExtension:SetViewPort +R013 XFree86-VidModeExtension:GetDotClocks +R014 XFree86-VidModeExtension:SetClientVersion +R015 XFree86-VidModeExtension:SetGamma +R016 XFree86-VidModeExtension:GetGamma +R017 XFree86-VidModeExtension:GetGammaRamp +R018 XFree86-VidModeExtension:SetGammaRamp +R019 XFree86-VidModeExtension:GetGammaRampSize +R020 XFree86-VidModeExtension:GetPermissions +V000 XFree86-VidModeExtension:Notify +E000 XFree86-VidModeExtension:BadClock +E001 XFree86-VidModeExtension:BadHTimings +E002 XFree86-VidModeExtension:BadVTimings +E003 XFree86-VidModeExtension:ModeUnsuitable +E004 XFree86-VidModeExtension:ExtensionDisabled +E005 XFree86-VidModeExtension:ClientNotLocal +E006 XFree86-VidModeExtension:ZoomLocked +R001 XIE:QueryImageExtension +R002 XIE:QueryTechniques +R003 XIE:CreateColorList +R004 XIE:DestroyColorList +R005 XIE:PurgeColorList +R006 XIE:QueryColorList +R007 XIE:CreateLUT +R008 XIE:DestroyLUT +R009 XIE:CreatePhotomap +R010 XIE:DestroyPhotomap +R011 XIE:QueryPhotomap +R012 XIE:CreateROI +R013 XIE:DestroyROI +R014 XIE:CreatePhotospace +R015 XIE:DestroyPhotospace +R016 XIE:ExecuteImmediate +R017 XIE:CreatePhotoflo +R018 XIE:DestroyPhotoflo +R019 XIE:ExecutePhotoflo +R020 XIE:ModifyPhotoflo +R021 XIE:RedefinePhotoflo +R022 XIE:PutClientData +R023 XIE:GetClientData +R024 XIE:QueryPhotoflo +R025 XIE:Await +R026 XIE:Abort +E000 XIE:ColorListError +E001 XIE:LUTError +E002 XIE:PhotofloError +E003 XIE:PhotomapError +E004 XIE:PhotospaceError +E005 XIE:ROIError +E006 XIE:FloError +R000 XINERAMA:QueryVersion +R001 XINERAMA:GetState +R002 XINERAMA:GetScreenCount +R003 XINERAMA:GetScreenSize +R004 XINERAMA:IsActive +R005 XINERAMA:QueryScreens +R001 XInputExtension:GetExtensionVersion +R002 XInputExtension:ListInputDevices +R003 XInputExtension:OpenDevice +R004 XInputExtension:CloseDevice +R005 XInputExtension:SetDeviceMode +R006 XInputExtension:SelectExtensionEvent +R007 XInputExtension:GetSelectedExtensionEvents +R008 XInputExtension:ChangeDeviceDontPropagateList +R009 XInputExtension:GetDeviceDontPropagageList +R010 XInputExtension:GetDeviceMotionEvents +R011 XInputExtension:ChangeKeyboardDevice +R012 XInputExtension:ChangePointerDevice +R013 XInputExtension:GrabDevice +R014 XInputExtension:UngrabDevice +R015 XInputExtension:GrabDeviceKey +R016 XInputExtension:UngrabDeviceKey +R017 XInputExtension:GrabDeviceButton +R018 XInputExtension:UngrabDeviceButton +R019 XInputExtension:AllowDeviceEvents +R020 XInputExtension:GetDeviceFocus +R021 XInputExtension:SetDeviceFocus +R022 XInputExtension:GetFeedbackControl +R023 XInputExtension:ChangeFeedbackControl +R024 XInputExtension:GetDeviceKeyMapping +R025 XInputExtension:ChangeDeviceKeyMapping +R026 XInputExtension:GetDeviceModifierMapping +R027 XInputExtension:SetDeviceModifierMapping +R028 XInputExtension:GetDeviceButtonMapping +R029 XInputExtension:SetDeviceButtonMapping +R030 XInputExtension:QueryDeviceState +R031 XInputExtension:SendExtensionEvent +R032 XInputExtension:DeviceBell +R033 XInputExtension:SetDeviceValuators +R034 XInputExtension:GetDeviceControl +R035 XInputExtension:ChangeDeviceControl +R036 XInputExtension:ListDeviceProperties +R037 XInputExtension:ChangeDeviceProperty +R038 XInputExtension:DeleteDeviceProperty +R039 XInputExtension:GetDeviceProperty +R040 XInputExtension:QueryPointer +R041 XInputExtension:WarpPointer +R042 XInputExtension:ChangeCursor +R043 XInputExtension:ChangeHierarchy +R044 XInputExtension:SetClientPointer +R045 XInputExtension:GetClientPointer +R046 XInputExtension:SelectEvents +R047 XInputExtension:QueryVersion +R048 XInputExtension:QueryDevice +R049 XInputExtension:SetFocus +R050 XInputExtension:GetFocus +R051 XInputExtension:GrabDevice +R052 XInputExtension:UngrabDevice +R053 XInputExtension:AllowEvents +R054 XInputExtension:PassiveGrabDevice +R055 XInputExtension:PassiveUngrabDevice +R056 XInputExtension:ListProperties +R057 XInputExtension:ChangeProperty +R058 XInputExtension:DeleteProperty +R059 XInputExtension:GetProperty +R060 XInputExtension:GetSelectedEvents +V000 XInputExtension:DeviceValuator +V001 XInputExtension:DeviceKeyPress +V002 XInputExtension:DeviceKeyRelease +V003 XInputExtension:DeviceButtonPress +V004 XInputExtension:DeviceButtonRelease +V005 XInputExtension:DeviceMotionNotify +V006 XInputExtension:DeviceFocusIn +V007 XInputExtension:DeviceFocusOut +V008 XInputExtension:ProximityIn +V009 XInputExtension:ProximityOut +V010 XInputExtension:DeviceStateNotify +V011 XInputExtension:DeviceMappingNotify +V012 XInputExtension:ChangeDeviceNotify +V013 XInputExtension:DeviceKeystateNotify +V014 XInputExtension:DeviceButtonstateNotify +V015 XInputExtension:DevicePresenceNotify +V016 XInputExtension:DevicePropertyNotify +E000 XInputExtension:BadDevice +E001 XInputExtension:BadEvent +E002 XInputExtension:BadMode +E003 XInputExtension:DeviceBusy +E004 XInputExtension:BadClass +R000 XKEYBOARD:UseExtension +R001 XKEYBOARD:SelectEvents +R002 XKEYBOARD:Obsolete +R003 XKEYBOARD:Bell +R004 XKEYBOARD:GetState +R005 XKEYBOARD:LatchLockState +R006 XKEYBOARD:GetControls +R007 XKEYBOARD:SetControls +R008 XKEYBOARD:GetMap +R009 XKEYBOARD:SetMap +R010 XKEYBOARD:GetCompatMap +R011 XKEYBOARD:SetCompatMap +R012 XKEYBOARD:GetIndicatorState +R013 XKEYBOARD:GetIndicatorMap +R014 XKEYBOARD:SetIndicatorMap +R015 XKEYBOARD:GetNamedIndicator +R016 XKEYBOARD:SetNamedIndicator +R017 XKEYBOARD:GetNames +R018 XKEYBOARD:SetNames +R019 XKEYBOARD:GetGeometry +R020 XKEYBOARD:SetGeometry +R021 XKEYBOARD:PerClientFlags +R022 XKEYBOARD:ListComponents +R023 XKEYBOARD:GetKbdByName +R024 XKEYBOARD:GetDeviceInfo +R025 XKEYBOARD:SetDeviceInfo +R101 XKEYBOARD:SetDebuggingFlags +V000 XKEYBOARD:EventCode +E000 XKEYBOARD:BadKeyboard +R000 XTEST:GetVersion +R001 XTEST:CompareCursor +R002 XTEST:FakeInput +R003 XTEST:GrabControl +R000 XVideo:QueryExtension +R001 XVideo:QueryAdaptors +R002 XVideo:QueryEncodings +R003 XVideo:GrabPort +R004 XVideo:UngrabPort +R005 XVideo:PutVideo +R006 XVideo:PutStill +R007 XVideo:GetVideo +R008 XVideo:GetStill +R009 XVideo:StopVideo +R010 XVideo:SelectVideoNotify +R011 XVideo:SelectPortNotify +R012 XVideo:QueryBestSize +R013 XVideo:SetPortAttribute +R014 XVideo:GetPortAttribute +R015 XVideo:QueryPortAttributes +R016 XVideo:ListImageFormats +R017 XVideo:QueryImageAttributes +R018 XVideo:PutImage +R019 XVideo:ShmPutImage +V000 XVideo:VideoNotify +V001 XVideo:PortNotify +E000 XVideo:BadPort +E001 XVideo:BadEncoding +E002 XVideo:BadControl +R000 XVideo-MotionCompensation:QueryVersion +R001 XVideo-MotionCompensation:ListSurfaceTypes +R002 XVideo-MotionCompensation:CreateContext +R003 XVideo-MotionCompensation:DestroyContext +R004 XVideo-MotionCompensation:CreateSurface +R005 XVideo-MotionCompensation:DestroySurface +R006 XVideo-MotionCompensation:CreateSubpicture +R007 XVideo-MotionCompensation:DestroySubpicture +R008 XVideo-MotionCompensation:ListSubpictureTypes +R009 XVideo-MotionCompensation:GetDRInfo +E000 XVideo-MotionCompensation:BadContext +E001 XVideo-MotionCompensation:BadSurface +E002 XVideo-MotionCompensation:BadSubpicture +R000 XpExtension:QueryVersion +R001 XpExtension:GetPrinterList +R002 XpExtension:CreateContext +R003 XpExtension:SetContext +R004 XpExtension:GetContext +R005 XpExtension:DestroyContext +R006 XpExtension:GetContextScreen +R007 XpExtension:StartJob +R008 XpExtension:EndJob +R009 XpExtension:StartDoc +R010 XpExtension:EndDoc +R011 XpExtension:PutDocumentData +R012 XpExtension:GetDocumentData +R013 XpExtension:StartPage +R014 XpExtension:EndPage +R015 XpExtension:SelectInput +R016 XpExtension:InputSelected +R017 XpExtension:GetAttributes +R018 XpExtension:SetAttributes +R019 XpExtension:GetOneAttribute +R020 XpExtension:RehashPrinterList +R021 XpExtension:GetPageDimensions +R022 XpExtension:QueryScreens +R023 XpExtension:SetImageResolution +R024 XpExtension:GetImageResolution +V000 XpExtension:PrintNotify +V001 XpExtension:AttributeNotify +E000 XpExtension:BadContext +E001 XpExtension:BadSequence +E002 XpExtension:BadResourceID diff --git a/xorg-server/doc/smartsched b/xorg-server/doc/smartsched index 466408431..057a759fd 100644 --- a/xorg-server/doc/smartsched +++ b/xorg-server/doc/smartsched @@ -1,204 +1,204 @@ - Client Scheduling in X - Keith Packard - SuSE - 10/28/99 - -History: - -Since the original X server was written at Digital in 1987, the OS and DIX -layers shared responsibility for scheduling the order to service -client requests. The original design was simplistic; under the maximum -first make it work, then make it work well, this was a good idea. Now -that we have a bit more experience with X applications, it's time to -rethink the design. - -The basic dispatch loop in DIX looks like: - - for (;;) - { - nready = WaitForSomething (...); - while (nready--) - { - isItTimeToYield = FALSE; - while (!isItTimeToYield) - { - if (!ReadRequestFromClient (...)) - break; - (execute request); - } - } - } - -WaitForSomething looks like: - - for (;;) - if (ANYSET (ClientsWithInput)) - return popcount (ClientsWithInput); - select (...) - compute clientsReadable from select result; - return popcount (clientsReadable) - } - -ReadRequestFromClient looks like: - - if (!fullRequestQueued) - { - read (); - if (!fullRequestQueued) - { - remove from ClientsWithInput; - timesThisConnection = 0; - return 0; - } - } - if (twoFullRequestsQueued) - add to ClientsWithInput; - - if (++timesThisConnection >= 10) - { - isItTimeToYield = TRUE; - timesThisConnection = 0; - } - return 1; - -Here's what happens in this code: - -With a single client executing a stream of requests: - - A client sends a packet of requests to the server. - - WaitForSomething wakes up from select and returns that client - to Dispatch - - Dispatch calls ReadRequestFromClient which reads a buffer (4K) - full of requests from the client - - The server executes requests from this buffer until it emptys, - in two stages -- 10 requests at a time are executed in the - inner Dispatch loop, a buffer full of requests are executed - because WaitForSomething immediately returns if any clients - have complete requests pending in their input queues. - - When the buffer finally emptys, the next call to ReadRequest - FromClient will return zero and Dispatch will go back to - WaitForSomething; now that the client has no requests pending, - WaitForSomething will block in select again. If the client - is active, this select will immediately return that client - as ready to read. - -With multiple clients sending streams of requests, the sequence -of operations is similar, except that ReadRequestFromClient will -set isItTimeToYield after each 10 requests executed causing the -server to round-robin among the clients with available requests. - -It's important to realize here that any complete requests which have been -read from clients will be executed before the server will use select again -to discover input from other clients. A single busy client can easily -monopolize the X server. - -So, the X server doesn't share well with clients which are more interactive -in nature. - -The X server executes at most a buffer full of requests before again heading -into select; ReadRequestFromClient causes the server to yield when the -client request buffer doesn't contain a complete request. When -that buffer is executed quickly, the server spends a lot of time -in select discovering that the same client again has input ready. Thus -the server also runs busy clients less efficiently than is would be -possible. - -What to do. - -There are several things evident from the above discussion: - - 1 The server has a poor metric for deciding how much work it - should do at one time on behalf of a particular client. - - 2 The server doesn't call select often enough to detect less - aggressive clients in the face of busy clients, especially - when those clients are executing slow requests. - - 3 The server calls select too often when executing fast requests. - - 4 Some priority scheme is needed to keep interactive clients - responding to the user. - -And, there are some assumptions about how X applications work: - - 1 Each X request is executed relatively quickly; a request-granularity - is good enough for interactive response almost all of the time. - - 2 X applications receiving mouse/keyboard events are likely to - warrant additional attention from the X server. - -Instead of a request-count metric for work, a time-based metric should be -used. The server should select a reasonable time slice for each client -and execute requests for the entire timeslice before yielding to -another client. - -Instead of returning immediately from WaitForSomething if clients have -complete requests queued, the server should go through select each -time and gather as many ready clients as possible. This involves -polling instead of blocking and adding the ClientsWithInput to -clientsReadable after the select returns. - -Instead of yielding when the request buffer is empty for a particular -client, leave the yielding to the upper level scheduling and allow -the server to try and read again from the socket. If the client -is busy, another buffer full of requests will already be waiting -to be delivered thus avoiding the call through select and the -additional overhead in WaitForSomething. - -Finally, the dispatch loop should not simply execute requests from the -first available client, instead each client should be prioritized with -busy clients penalized and clients receiving user events praised. - -How it's done: - -Polling the current time of day from the OS is too expensive to -be done at each request boundary, so instead an interval timer is -set allowing the server to track time changes by counting invocations -of the related signal handler. Instead of using the wall time for -this purpose, the process CPU time is used instead. This serves -two purposes -- first, it allows the server to consume no CPU cycles -when idle, second it avoids conflicts with SIGALRM usage in other -parts of the server code. It's not without problems though; other -CPU intensive processes on the same machine can reduce interactive -response time within the X server. The dispatch loop can now -calculate an approximate time value using the number of signals -received. The granularity of the timer sets the scheduling jitter, -at 20ms it's only occasionally noticeable. - -The changes to WaitForSomething and ReadRequestFromClient are -straightforward, adjusting when select is called and avoiding -setting isItTimeToYield too often. - -The dispatch loop changes are more extensive, now instead of -executing requests from all available clients, a single client -is chosen after each call to WaitForSomething, requests are -executed for that client and WaitForSomething is called again. - -Each client is assigned a priority, the dispatch loop chooses the -client with the highest priority to execute. Priorities are -updated in three ways: - - 1. Clients which consume their entire slice are penalized - by having their priority reduced by one until they - reach some minimum value. - - 2. Clients which have executed no requests for some time - are praised by having their priority raised until they - return to normal priority. - - 3. Clients which receive user input are praised by having - their priority rased until they reach some maximal - value, above normal priority. - -The effect of these changes is to both improve interactive application -response and benchmark numbers at the same time. - - - - - -$XFree86: $ + Client Scheduling in X + Keith Packard + SuSE + 10/28/99 + +History: + +Since the original X server was written at Digital in 1987, the OS and DIX +layers shared responsibility for scheduling the order to service +client requests. The original design was simplistic; under the maximum +first make it work, then make it work well, this was a good idea. Now +that we have a bit more experience with X applications, it's time to +rethink the design. + +The basic dispatch loop in DIX looks like: + + for (;;) + { + nready = WaitForSomething (...); + while (nready--) + { + isItTimeToYield = FALSE; + while (!isItTimeToYield) + { + if (!ReadRequestFromClient (...)) + break; + (execute request); + } + } + } + +WaitForSomething looks like: + + for (;;) + if (ANYSET (ClientsWithInput)) + return popcount (ClientsWithInput); + select (...) + compute clientsReadable from select result; + return popcount (clientsReadable) + } + +ReadRequestFromClient looks like: + + if (!fullRequestQueued) + { + read (); + if (!fullRequestQueued) + { + remove from ClientsWithInput; + timesThisConnection = 0; + return 0; + } + } + if (twoFullRequestsQueued) + add to ClientsWithInput; + + if (++timesThisConnection >= 10) + { + isItTimeToYield = TRUE; + timesThisConnection = 0; + } + return 1; + +Here's what happens in this code: + +With a single client executing a stream of requests: + + A client sends a packet of requests to the server. + + WaitForSomething wakes up from select and returns that client + to Dispatch + + Dispatch calls ReadRequestFromClient which reads a buffer (4K) + full of requests from the client + + The server executes requests from this buffer until it emptys, + in two stages -- 10 requests at a time are executed in the + inner Dispatch loop, a buffer full of requests are executed + because WaitForSomething immediately returns if any clients + have complete requests pending in their input queues. + + When the buffer finally emptys, the next call to ReadRequest + FromClient will return zero and Dispatch will go back to + WaitForSomething; now that the client has no requests pending, + WaitForSomething will block in select again. If the client + is active, this select will immediately return that client + as ready to read. + +With multiple clients sending streams of requests, the sequence +of operations is similar, except that ReadRequestFromClient will +set isItTimeToYield after each 10 requests executed causing the +server to round-robin among the clients with available requests. + +It's important to realize here that any complete requests which have been +read from clients will be executed before the server will use select again +to discover input from other clients. A single busy client can easily +monopolize the X server. + +So, the X server doesn't share well with clients which are more interactive +in nature. + +The X server executes at most a buffer full of requests before again heading +into select; ReadRequestFromClient causes the server to yield when the +client request buffer doesn't contain a complete request. When +that buffer is executed quickly, the server spends a lot of time +in select discovering that the same client again has input ready. Thus +the server also runs busy clients less efficiently than is would be +possible. + +What to do. + +There are several things evident from the above discussion: + + 1 The server has a poor metric for deciding how much work it + should do at one time on behalf of a particular client. + + 2 The server doesn't call select often enough to detect less + aggressive clients in the face of busy clients, especially + when those clients are executing slow requests. + + 3 The server calls select too often when executing fast requests. + + 4 Some priority scheme is needed to keep interactive clients + responding to the user. + +And, there are some assumptions about how X applications work: + + 1 Each X request is executed relatively quickly; a request-granularity + is good enough for interactive response almost all of the time. + + 2 X applications receiving mouse/keyboard events are likely to + warrant additional attention from the X server. + +Instead of a request-count metric for work, a time-based metric should be +used. The server should select a reasonable time slice for each client +and execute requests for the entire timeslice before yielding to +another client. + +Instead of returning immediately from WaitForSomething if clients have +complete requests queued, the server should go through select each +time and gather as many ready clients as possible. This involves +polling instead of blocking and adding the ClientsWithInput to +clientsReadable after the select returns. + +Instead of yielding when the request buffer is empty for a particular +client, leave the yielding to the upper level scheduling and allow +the server to try and read again from the socket. If the client +is busy, another buffer full of requests will already be waiting +to be delivered thus avoiding the call through select and the +additional overhead in WaitForSomething. + +Finally, the dispatch loop should not simply execute requests from the +first available client, instead each client should be prioritized with +busy clients penalized and clients receiving user events praised. + +How it's done: + +Polling the current time of day from the OS is too expensive to +be done at each request boundary, so instead an interval timer is +set allowing the server to track time changes by counting invocations +of the related signal handler. Instead of using the wall time for +this purpose, the process CPU time is used instead. This serves +two purposes -- first, it allows the server to consume no CPU cycles +when idle, second it avoids conflicts with SIGALRM usage in other +parts of the server code. It's not without problems though; other +CPU intensive processes on the same machine can reduce interactive +response time within the X server. The dispatch loop can now +calculate an approximate time value using the number of signals +received. The granularity of the timer sets the scheduling jitter, +at 20ms it's only occasionally noticeable. + +The changes to WaitForSomething and ReadRequestFromClient are +straightforward, adjusting when select is called and avoiding +setting isItTimeToYield too often. + +The dispatch loop changes are more extensive, now instead of +executing requests from all available clients, a single client +is chosen after each call to WaitForSomething, requests are +executed for that client and WaitForSomething is called again. + +Each client is assigned a priority, the dispatch loop chooses the +client with the highest priority to execute. Priorities are +updated in three ways: + + 1. Clients which consume their entire slice are penalized + by having their priority reduced by one until they + reach some minimum value. + + 2. Clients which have executed no requests for some time + are praised by having their priority raised until they + return to normal priority. + + 3. Clients which receive user input are praised by having + their priority rased until they reach some maximal + value, above normal priority. + +The effect of these changes is to both improve interactive application +response and benchmark numbers at the same time. + + + + + +$XFree86: $ diff --git a/xorg-server/exa/Makefile.am b/xorg-server/exa/Makefile.am index 9876bf5f6..8b759cd76 100644 --- a/xorg-server/exa/Makefile.am +++ b/xorg-server/exa/Makefile.am @@ -1,30 +1,30 @@ -noinst_LTLIBRARIES = libexa.la - -# Override these since EXA doesn't need them and the needed files aren't -# built (in hw/xfree86/os-support/solaris) until after EXA is built -SOLARIS_ASM_CFLAGS="" - -if XORG -sdk_HEADERS = exa.h -endif - -INCLUDES = \ - $(XORG_INCS) \ - -I$(srcdir)/../miext/cw - -AM_CFLAGS = $(XORG_CFLAGS) $(DIX_CFLAGS) - -libexa_la_SOURCES = \ - exa.c \ - exa.h \ - exa_classic.c \ - exa_migration_classic.c \ - exa_driver.c \ - exa_mixed.c \ - exa_migration_mixed.c \ - exa_accel.c \ - exa_glyphs.c \ - exa_offscreen.c \ - exa_render.c \ - exa_priv.h \ - exa_unaccel.c +noinst_LTLIBRARIES = libexa.la + +# Override these since EXA doesn't need them and the needed files aren't +# built (in hw/xfree86/os-support/solaris) until after EXA is built +SOLARIS_ASM_CFLAGS="" + +if XORG +sdk_HEADERS = exa.h +endif + +INCLUDES = \ + $(XORG_INCS) \ + -I$(srcdir)/../miext/cw + +AM_CFLAGS = $(XORG_CFLAGS) $(DIX_CFLAGS) + +libexa_la_SOURCES = \ + exa.c \ + exa.h \ + exa_classic.c \ + exa_migration_classic.c \ + exa_driver.c \ + exa_mixed.c \ + exa_migration_mixed.c \ + exa_accel.c \ + exa_glyphs.c \ + exa_offscreen.c \ + exa_render.c \ + exa_priv.h \ + exa_unaccel.c diff --git a/xorg-server/fix-miregion b/xorg-server/fix-miregion index 7aea689b7..fc502bbfd 100644 --- a/xorg-server/fix-miregion +++ b/xorg-server/fix-miregion @@ -1,29 +1,29 @@ -#!/bin/sh -sed -i \ --e 's/miRegionCreate\b/RegionCreate/g' \ --e 's/miRegionInit\b/RegionInit/g' \ --e 's/miRegionDestroy\b/RegionDestroy/g' \ --e 's/miRegionUninit\b/RegionUninit/g' \ --e 's/miRegionCopy\b/RegionCopy/g' \ --e 's/miIntersect\b/RegionIntersect/g' \ --e 's/miUnion\b/RegionUnion/g' \ --e 's/miRegionAppend\b/RegionAppend/g' \ --e 's/miRegionValidate\b/RegionValidate/g' \ --e 's/miRectsToRegion\b/RegionFromRects/g' \ --e 's/miSubtract\b/RegionSubtract/g' \ --e 's/miInverse\b/RegionInverse/g' \ --e 's/miRectIn\b/RegionContainsRect/g' \ --e 's/miTranslateRegion\b/RegionTranslate/g' \ --e 's/miRegionReset\b/RegionReset/g' \ --e 's/miRegionBreak\b/RegionBreak/g' \ --e 's/miPointInRegion\b/RegionContainsPoint/g' \ --e 's/miRegionEqual\b/RegionEqual/g' \ --e 's/miRegionNotEmpty\b/RegionNotEmpty/g' \ --e 's/miRegionEmpty\b/RegionEmpty/g' \ --e 's/miRegionExtents\b/RegionExtents/g' \ --e 's/miPrintRegion\b/RegionPrint/g' \ --e 's/miRectAlloc\b/RegionRectAlloc/g' \ --e 's/miValidRegion\b/RegionIsValid/g' \ --e 's/miRegionBroken\b/RegionBroken/g' \ --e 's/miClipSpans\b/RegionClipSpans/g' \ -"$@" +#!/bin/sh +sed -i \ +-e 's/miRegionCreate\b/RegionCreate/g' \ +-e 's/miRegionInit\b/RegionInit/g' \ +-e 's/miRegionDestroy\b/RegionDestroy/g' \ +-e 's/miRegionUninit\b/RegionUninit/g' \ +-e 's/miRegionCopy\b/RegionCopy/g' \ +-e 's/miIntersect\b/RegionIntersect/g' \ +-e 's/miUnion\b/RegionUnion/g' \ +-e 's/miRegionAppend\b/RegionAppend/g' \ +-e 's/miRegionValidate\b/RegionValidate/g' \ +-e 's/miRectsToRegion\b/RegionFromRects/g' \ +-e 's/miSubtract\b/RegionSubtract/g' \ +-e 's/miInverse\b/RegionInverse/g' \ +-e 's/miRectIn\b/RegionContainsRect/g' \ +-e 's/miTranslateRegion\b/RegionTranslate/g' \ +-e 's/miRegionReset\b/RegionReset/g' \ +-e 's/miRegionBreak\b/RegionBreak/g' \ +-e 's/miPointInRegion\b/RegionContainsPoint/g' \ +-e 's/miRegionEqual\b/RegionEqual/g' \ +-e 's/miRegionNotEmpty\b/RegionNotEmpty/g' \ +-e 's/miRegionEmpty\b/RegionEmpty/g' \ +-e 's/miRegionExtents\b/RegionExtents/g' \ +-e 's/miPrintRegion\b/RegionPrint/g' \ +-e 's/miRectAlloc\b/RegionRectAlloc/g' \ +-e 's/miValidRegion\b/RegionIsValid/g' \ +-e 's/miRegionBroken\b/RegionBroken/g' \ +-e 's/miClipSpans\b/RegionClipSpans/g' \ +"$@" diff --git a/xorg-server/fix-miregion-private b/xorg-server/fix-miregion-private index a294c4f96..ebc24fac0 100644 --- a/xorg-server/fix-miregion-private +++ b/xorg-server/fix-miregion-private @@ -1,14 +1,14 @@ -#!/bin/sh -sed -i \ --e 's/miEmptyBox\b/RegionEmptyBox/g' \ --e 's/miEmptyData\b/RegionEmptyData/g' \ --e 's/miBrokenData\b/RegionBrokenData/g' \ --e 's/miBrokenRegion\b/RegionBrokenRegion/g' \ --e 's/miCoalesce\b/RegionCoalesce/g' \ --e 's/miAppendNonO\b/RegionAppendNonO/g' \ --e 's/miRegionOp\b/RegionOp/g' \ --e 's/miSetExtents\b/RegionSetExtents/g' \ --e 's/miIntersectO\b/RegionIntersectO/g' \ --e 's/miUnionO\b/RegionUnionO/g' \ --e 's/miSubtractO\b/RegionSubtractO/g' \ -"$@" +#!/bin/sh +sed -i \ +-e 's/miEmptyBox\b/RegionEmptyBox/g' \ +-e 's/miEmptyData\b/RegionEmptyData/g' \ +-e 's/miBrokenData\b/RegionBrokenData/g' \ +-e 's/miBrokenRegion\b/RegionBrokenRegion/g' \ +-e 's/miCoalesce\b/RegionCoalesce/g' \ +-e 's/miAppendNonO\b/RegionAppendNonO/g' \ +-e 's/miRegionOp\b/RegionOp/g' \ +-e 's/miSetExtents\b/RegionSetExtents/g' \ +-e 's/miIntersectO\b/RegionIntersectO/g' \ +-e 's/miUnionO\b/RegionUnionO/g' \ +-e 's/miSubtractO\b/RegionSubtractO/g' \ +"$@" diff --git a/xorg-server/fix-patch-whitespace b/xorg-server/fix-patch-whitespace index 417f66fc6..2d06d8ea8 100644 --- a/xorg-server/fix-patch-whitespace +++ b/xorg-server/fix-patch-whitespace @@ -1,4 +1,4 @@ -#!/bin/sh -git diff --check | -sed -n 's!^\([^:]*\):\([^:]*\):.*!sed -i "\2 s/[ \t]*$//; \2 s/ *\t/\t/g" \1!p' | -sh +#!/bin/sh +git diff --check | +sed -n 's!^\([^:]*\):\([^:]*\):.*!sed -i "\2 s/[ \t]*$//; \2 s/ *\t/\t/g" \1!p' | +sh diff --git a/xorg-server/fix-region b/xorg-server/fix-region index e38022bf6..ef8eb4218 100644 --- a/xorg-server/fix-region +++ b/xorg-server/fix-region @@ -1,38 +1,38 @@ -#!/bin/sh -sed -i \ - -e 's/REGION_NIL\b/RegionNil/g' \ - -e 's/REGION_NAR\b/RegionNar/g' \ - -e 's/REGION_NUM_RECTS\b/RegionNumRects/g' \ - -e 's/REGION_SIZE\b/RegionSize/g' \ - -e 's/REGION_RECTS\b/RegionRects/g' \ - -e 's/REGION_BOXPTR\b/RegionBoxptr/g' \ - -e 's/REGION_BOX\b/RegionBox/g' \ - -e 's/REGION_TOP\b/RegionTop/g' \ - -e 's/REGION_END\b/RegionEnd/g' \ - -e 's/REGION_SZOF\b/RegionSizeof/g' \ - -e 's/REGION_CREATE *([^,]*, */RegionCreate(/g' \ - -e 's/REGION_COPY *([^,]*, */RegionCopy(/g' \ - -e 's/REGION_DESTROY *([^,]*, */RegionDestroy(/g' \ - -e 's/REGION_INTERSECT *([^,]*, */RegionIntersect(/g' \ - -e 's/REGION_UNION *([^,]*, */RegionUnion(/g' \ - -e 's/REGION_SUBTRACT *([^,]*, */RegionSubtract(/g' \ - -e 's/REGION_INVERSE *([^,]*, */RegionInverse(/g' \ - -e 's/REGION_TRANSLATE *([^,]*, */RegionTranslate(/g' \ - -e 's/RECT_IN_REGION *([^,]*, */RegionContainsRect(/g' \ - -e 's/POINT_IN_REGION *([^,]*, */RegionContainsPoint(/g' \ - -e 's/REGION_EQUAL *([^,]*, */RegionEqual(/g' \ - -e 's/REGION_APPEND *([^,]*, */RegionAppend(/g' \ - -e 's/REGION_VALIDATE *([^,]*, */RegionValidate(/g' \ - -e 's/BITMAP_TO_REGION\b/BitmapToRegion/g' \ - -e 's/RECTS_TO_REGION *([^,]*, */RegionFromRects(/g' \ - -e 's/REGION_BREAK *([^,]*, */RegionBreak(/g' \ - -e 's/REGION_INIT *([^,]*, */RegionInit(/g' \ - -e 's/REGION_UNINIT *([^,]*, */RegionUninit(/g' \ - -e 's/REGION_RESET *([^,]*, */RegionReset(/g' \ - -e 's/REGION_NOTEMPTY *([^,]*, */RegionNotEmpty(/g' \ - -e 's/REGION_BROKEN *([^,]*, */RegionBroken(/g' \ - -e 's/REGION_EMPTY *([^,]*, */RegionEmpty(/g' \ - -e 's/REGION_EXTENTS *([^,]*, */RegionExtents(/g' \ - -e 's/REGION_NULL *([^,]*, */RegionNull(/g' \ - -e 's/REGION_NULL$/RegionNull/g' \ - "$@" +#!/bin/sh +sed -i \ + -e 's/REGION_NIL\b/RegionNil/g' \ + -e 's/REGION_NAR\b/RegionNar/g' \ + -e 's/REGION_NUM_RECTS\b/RegionNumRects/g' \ + -e 's/REGION_SIZE\b/RegionSize/g' \ + -e 's/REGION_RECTS\b/RegionRects/g' \ + -e 's/REGION_BOXPTR\b/RegionBoxptr/g' \ + -e 's/REGION_BOX\b/RegionBox/g' \ + -e 's/REGION_TOP\b/RegionTop/g' \ + -e 's/REGION_END\b/RegionEnd/g' \ + -e 's/REGION_SZOF\b/RegionSizeof/g' \ + -e 's/REGION_CREATE *([^,]*, */RegionCreate(/g' \ + -e 's/REGION_COPY *([^,]*, */RegionCopy(/g' \ + -e 's/REGION_DESTROY *([^,]*, */RegionDestroy(/g' \ + -e 's/REGION_INTERSECT *([^,]*, */RegionIntersect(/g' \ + -e 's/REGION_UNION *([^,]*, */RegionUnion(/g' \ + -e 's/REGION_SUBTRACT *([^,]*, */RegionSubtract(/g' \ + -e 's/REGION_INVERSE *([^,]*, */RegionInverse(/g' \ + -e 's/REGION_TRANSLATE *([^,]*, */RegionTranslate(/g' \ + -e 's/RECT_IN_REGION *([^,]*, */RegionContainsRect(/g' \ + -e 's/POINT_IN_REGION *([^,]*, */RegionContainsPoint(/g' \ + -e 's/REGION_EQUAL *([^,]*, */RegionEqual(/g' \ + -e 's/REGION_APPEND *([^,]*, */RegionAppend(/g' \ + -e 's/REGION_VALIDATE *([^,]*, */RegionValidate(/g' \ + -e 's/BITMAP_TO_REGION\b/BitmapToRegion/g' \ + -e 's/RECTS_TO_REGION *([^,]*, */RegionFromRects(/g' \ + -e 's/REGION_BREAK *([^,]*, */RegionBreak(/g' \ + -e 's/REGION_INIT *([^,]*, */RegionInit(/g' \ + -e 's/REGION_UNINIT *([^,]*, */RegionUninit(/g' \ + -e 's/REGION_RESET *([^,]*, */RegionReset(/g' \ + -e 's/REGION_NOTEMPTY *([^,]*, */RegionNotEmpty(/g' \ + -e 's/REGION_BROKEN *([^,]*, */RegionBroken(/g' \ + -e 's/REGION_EMPTY *([^,]*, */RegionEmpty(/g' \ + -e 's/REGION_EXTENTS *([^,]*, */RegionExtents(/g' \ + -e 's/REGION_NULL *([^,]*, */RegionNull(/g' \ + -e 's/REGION_NULL$/RegionNull/g' \ + "$@" diff --git a/xorg-server/hw/Makefile.am b/xorg-server/hw/Makefile.am index 31e2565db..6c2cc6bd4 100644 --- a/xorg-server/hw/Makefile.am +++ b/xorg-server/hw/Makefile.am @@ -1,41 +1,41 @@ -if DMX -DMX_SUBDIRS = dmx -endif - -if XORG -XORG_SUBDIRS = xfree86 -endif - -if XVFB -XVFB_SUBDIRS = vfb -endif - -if XNEST -XNEST_SUBDIRS = xnest -endif - -if XWIN -XWIN_SUBDIRS = xwin -endif - -if KDRIVE -KDRIVE_SUBDIRS = kdrive -endif - -if XQUARTZ -XQUARTZ_SUBDIRS = xquartz -endif - -SUBDIRS = \ - $(XORG_SUBDIRS) \ - $(XWIN_SUBDIRS) \ - $(XVFB_SUBDIRS) \ - $(XNEST_SUBDIRS) \ - $(DMX_SUBDIRS) \ - $(KDRIVE_SUBDIRS) \ - $(XQUARTZ_SUBDIRS) - -DIST_SUBDIRS = dmx xfree86 vfb xnest xwin xquartz kdrive - -relink: - $(AM_V_at)for i in $(SUBDIRS) ; do $(MAKE) -C $$i relink || exit 1 ; done +if DMX +DMX_SUBDIRS = dmx +endif + +if XORG +XORG_SUBDIRS = xfree86 +endif + +if XVFB +XVFB_SUBDIRS = vfb +endif + +if XNEST +XNEST_SUBDIRS = xnest +endif + +if XWIN +XWIN_SUBDIRS = xwin +endif + +if KDRIVE +KDRIVE_SUBDIRS = kdrive +endif + +if XQUARTZ +XQUARTZ_SUBDIRS = xquartz +endif + +SUBDIRS = \ + $(XORG_SUBDIRS) \ + $(XWIN_SUBDIRS) \ + $(XVFB_SUBDIRS) \ + $(XNEST_SUBDIRS) \ + $(DMX_SUBDIRS) \ + $(KDRIVE_SUBDIRS) \ + $(XQUARTZ_SUBDIRS) + +DIST_SUBDIRS = dmx xfree86 vfb xnest xwin xquartz kdrive + +relink: + $(AM_V_at)for i in $(SUBDIRS) ; do $(MAKE) -C $$i relink || exit 1 ; done diff --git a/xorg-server/hw/dmx/.gitignore b/xorg-server/hw/dmx/.gitignore index f71acff10..4dd9b0358 100644 --- a/xorg-server/hw/dmx/.gitignore +++ b/xorg-server/hw/dmx/.gitignore @@ -1,2 +1,2 @@ -# Add & Override for this directory and it's subdirectories -Xdmx +# Add & Override for this directory and it's subdirectories +Xdmx diff --git a/xorg-server/hw/dmx/config/.gitignore b/xorg-server/hw/dmx/config/.gitignore index bf5e80873..086062204 100644 --- a/xorg-server/hw/dmx/config/.gitignore +++ b/xorg-server/hw/dmx/config/.gitignore @@ -1,7 +1,7 @@ -# Add & Override for this directory and it's subdirectories -dmxtodmx -parser.c -parser.h -scanner.c -vdltodmx -xdmxconfig +# Add & Override for this directory and it's subdirectories +dmxtodmx +parser.c +parser.h +scanner.c +vdltodmx +xdmxconfig diff --git a/xorg-server/hw/dmx/config/TODO b/xorg-server/hw/dmx/config/TODO index 0e9255fd2..2998ff4a0 100644 --- a/xorg-server/hw/dmx/config/TODO +++ b/xorg-server/hw/dmx/config/TODO @@ -1,7 +1,7 @@ -Fri May 31 13:20:17 2002 - -1) Sanitize values from input boxes. - -2) Add canvas colors to cavas widget resources or to command-line options. - -3) Add ability to edit option line(s) and wall. +Fri May 31 13:20:17 2002 + +1) Sanitize values from input boxes. + +2) Add canvas colors to cavas widget resources or to command-line options. + +3) Add ability to edit option line(s) and wall. diff --git a/xorg-server/hw/dmx/config/dmxcompat.h b/xorg-server/hw/dmx/config/dmxcompat.h index b9b083ff6..718892040 100644 --- a/xorg-server/hw/dmx/config/dmxcompat.h +++ b/xorg-server/hw/dmx/config/dmxcompat.h @@ -1,44 +1,44 @@ -/* - * Copyright 2002 Red Hat Inc., Durham, North Carolina. - * - * All Rights Reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining - * a copy of this software and associated documentation files (the - * "Software"), to deal in the Software without restriction, including - * without limitation on the rights to use, copy, modify, merge, - * publish, distribute, sublicense, and/or sell copies of the Software, - * and to permit persons to whom the Software is furnished to do so, - * subject to the following conditions: - * - * The above copyright notice and this permission notice (including the - * next paragraph) shall be included in all copies or substantial - * portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NON-INFRINGEMENT. IN NO EVENT SHALL RED HAT AND/OR THEIR SUPPLIERS - * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -/* - * Authors: - * Rickard E. (Rik) Faith - * - */ - -/** \file - * Interface to VDL compatibility support. \see dmxcompat.c - * - * This file is not used by the DMX server. - */ - -#ifndef _DMXCOMPAT_H_ -#define _DMXCOMPAT_H_ - -extern DMXConfigEntryPtr dmxVDLRead(const char *filename); -#endif +/* + * Copyright 2002 Red Hat Inc., Durham, North Carolina. + * + * All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining + * a copy of this software and associated documentation files (the + * "Software"), to deal in the Software without restriction, including + * without limitation on the rights to use, copy, modify, merge, + * publish, distribute, sublicense, and/or sell copies of the Software, + * and to permit persons to whom the Software is furnished to do so, + * subject to the following conditions: + * + * The above copyright notice and this permission notice (including the + * next paragraph) shall be included in all copies or substantial + * portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NON-INFRINGEMENT. IN NO EVENT SHALL RED HAT AND/OR THEIR SUPPLIERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +/* + * Authors: + * Rickard E. (Rik) Faith + * + */ + +/** \file + * Interface to VDL compatibility support. \see dmxcompat.c + * + * This file is not used by the DMX server. + */ + +#ifndef _DMXCOMPAT_H_ +#define _DMXCOMPAT_H_ + +extern DMXConfigEntryPtr dmxVDLRead(const char *filename); +#endif diff --git a/xorg-server/hw/dmx/config/parser.y b/xorg-server/hw/dmx/config/parser.y index 9a45e624f..ac2441017 100644 --- a/xorg-server/hw/dmx/config/parser.y +++ b/xorg-server/hw/dmx/config/parser.y @@ -1,226 +1,226 @@ -/* $XFree86$ */ -/* - * Copyright 2002-2003 Red Hat Inc., Durham, North Carolina. - * - * All Rights Reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining - * a copy of this software and associated documentation files (the - * "Software"), to deal in the Software without restriction, including - * without limitation on the rights to use, copy, modify, merge, - * publish, distribute, sublicense, and/or sell copies of the Software, - * and to permit persons to whom the Software is furnished to do so, - * subject to the following conditions: - * - * The above copyright notice and this permission notice (including the - * next paragraph) shall be included in all copies or substantial - * portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NON-INFRINGEMENT. IN NO EVENT SHALL RED HAT AND/OR THEIR SUPPLIERS - * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -/* - * Authors: - * Rickard E. (Rik) Faith - * - */ - -%{ -#ifdef HAVE_DMX_CONFIG_H -#include -#endif - -#include "dmxparse.h" -#include -#include -#define YYDEBUG 1 -#define YYERROR_VERBOSE -#define YY_USE_PROTOS - -DMXConfigEntryPtr dmxConfigEntry = NULL; -#define APPEND(type, h, t) \ -{ \ - type pt; \ - for (pt = h; pt->next; pt = pt->next); \ - pt->next = t; \ -} -%} - -%union { - DMXConfigTokenPtr token; - DMXConfigStringPtr string; - DMXConfigNumberPtr number; - DMXConfigPairPtr pair; - DMXConfigFullDimPtr fdim; - DMXConfigPartDimPtr pdim; - DMXConfigDisplayPtr display; - DMXConfigWallPtr wall; - DMXConfigOptionPtr option; - DMXConfigParamPtr param; - DMXConfigCommentPtr comment; - DMXConfigSubPtr subentry; - DMXConfigVirtualPtr virtual; - DMXConfigEntryPtr entry; -} - - /* Terminals */ -%token '{' '}' ';' '/' T_VIRTUAL T_DISPLAY T_WALL T_OPTION T_PARAM -%token T_STRING -%token T_DIMENSION T_OFFSET T_ORIGIN -%token T_COMMENT T_LINE_COMMENT - - /* Non-termials */ -%type Display Wall Terminal Open Close -%type NameList Name -%type Dimension Offset Origin -%type PartialDim -%type FullDim -%type DisplayEntry -%type