aboutsummaryrefslogtreecommitdiffstats
path: root/protocol
diff options
context:
space:
mode:
authorDerek Foreman <derekf@osg.samsung.com>2017-12-06 11:22:24 -0600
committerDaniel Stone <daniels@collabora.com>2018-01-09 15:20:00 +0000
commitf74c9b98db49ce16e037c3012590c4a24a4fc32e (patch)
tree5e7afcd3ea20b6ee0d12d27405fbd245c2568d40 /protocol
parentclient: Consume file descriptors destined for zombie proxies (diff)
downloadwayland-f74c9b98db49ce16e037c3012590c4a24a4fc32e.tar
wayland-f74c9b98db49ce16e037c3012590c4a24a4fc32e.tar.gz
wayland-f74c9b98db49ce16e037c3012590c4a24a4fc32e.tar.bz2
wayland-f74c9b98db49ce16e037c3012590c4a24a4fc32e.tar.lz
wayland-f74c9b98db49ce16e037c3012590c4a24a4fc32e.tar.xz
wayland-f74c9b98db49ce16e037c3012590c4a24a4fc32e.tar.zst
wayland-f74c9b98db49ce16e037c3012590c4a24a4fc32e.zip
tests: Add a test for fd leaks on zombie objects
Until recently, if a client destroying a resource raced with the server generating an event on that resource that delivered a file descriptor, we would leak the fd. This tests for a leaked fd from that race condition. Reviewed-by: Daniel Stone <daniels@collabora.com> Signed-off-by: Derek Foreman <derekf@osg.samsung.com>
Diffstat (limited to 'protocol')
-rw-r--r--protocol/tests.xml43
1 files changed, 43 insertions, 0 deletions
diff --git a/protocol/tests.xml b/protocol/tests.xml
new file mode 100644
index 0000000..77f6e24
--- /dev/null
+++ b/protocol/tests.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<protocol name="build_time_wayland_tests">
+
+ <copyright>
+ Copyright © 2017 Samsung Electronics Co., Ltd
+
+ 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 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
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
+ 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.
+ </copyright>
+
+ <interface name="fd_passer" version="1">
+ <description summary="Sends an event with an fd">
+ A trivial interface for fd passing tests.
+ </description>
+
+ <request name="destroy" type="destructor"/>
+
+ <event name="pre_fd"/>
+
+ <event name="fd">
+ <description summary="passes a file descriptor"/>
+ <arg name="fd" type="fd" summary="file descriptor"/>
+ </event>
+ </interface>
+</protocol>