summaryrefslogtreecommitdiff
path: root/fixesproto.txt
diff options
context:
space:
mode:
Diffstat (limited to 'fixesproto.txt')
-rw-r--r--fixesproto.txt32
1 files changed, 29 insertions, 3 deletions
diff --git a/fixesproto.txt b/fixesproto.txt
index 28a6270..f462606 100644
--- a/fixesproto.txt
+++ b/fixesproto.txt
@@ -1,5 +1,5 @@
The XFIXES Extension
- Version 5.0
+ Version 6.1
Document Revision 1
2010-11-15
Keith Packard
@@ -666,15 +666,41 @@ when the relevant X11 clients have quit.
XFixesClientDisconnectFlagDefault: 0
XFixesClientDisconnectFlagTerminate: 1 << 0
+ XFixesClientDisconnectFlagForceTerminate: 1 << 1
XFixesClientDisconnectFlagDefault is the default behavior for
- regular clients, i.e. the X11 server won't terminate as long as such
- clients are still connected.
+ regular clients: the X11 server won't terminate as long as such
+ clients are still connected and no other clients trigger
+ termination.
XFixesClientDisconnectFlagTerminate indicates to the X11 server that
it can ignore the client and terminate itself even though the client
is still connected to the X11 server.
+ If XFixesClientDisconnectFlagForceTerminate is set at the time the
+ client disconnects, the X11 server MUST terminate and/or reset without
+ delivering further events to clients, even if other clients that have
+ not set XFixesClientDisconnectFlagTerminate are still connected.
+ Screen lockers SHOULD use this flag to ensure that the screen does not
+ unlock if they exit, which would create a security vulnerability.
+ Programs SHOULD NOT use this flag unless unexpected termination would
+ create a security vulnerability or other severe problem.
+
+ Because XFixesClientDisconnectFlagForceTerminate allows the client to
+ cause the server to terminate, it is subject to security checks to
+ prevent unauthorized use. Servers that support the X Access Control
+ Extension (XACE) MUST deny attempts to set
+ XFixesClientDisconnectFlagForceTerminate, unless the client has
+ DixManageAccess to the server. Servers that support the SECURITY
+ extension MUST forbid untrusted clients from setting
+ XFixesClientDisconnectFlagForceTerminate. Servers MAY refuse to allow
+ clients to set this flag for other reasons. For instance, a server
+ might only allow the flag to be set by local clients. If the server
+ refuses to allow the client to set this flag, an Access error results.
+
+ XFixesClientDisconnectFlagForceTerminate is only available in XFixes
+ versions 6.1 and better.
+
13.2 Requests
SetClientDisconnectMode