summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-11-07libxcb 1.9.3libxcb-1.9.3xcb-1.9Alan Coopersmith
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2013-11-07Check if we need to define _XOPEN_SOURCE for struct msghdr.msg_controlAlan Coopersmith
Required to expose the structure members in Solaris headers, since it was an XPG4/UNIX95 addition to the Solaris ABI. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> (cherry picked from commit e8663a935890ff366f49e356211049dfd0d9756a)
2013-11-07Add configure option to enable or disable fd passing with sendmsgKeith Packard
--disable-sendfds or --enable-sendfds By default, configure auto-detects based on whether your system supports sendmsg at all. Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> (cherry picked from commit af8067cbf48561f1e2d43e153292e68e0376a8f9)
2013-11-07Switch to using the CMSG_* macros for FD passingKeith Packard
Use these instead of computing the values directly so that it might work on BSD or other non-Linux systems Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> (cherry picked from commit 83f28ef8655acff746eab64eabe2e31f8cf0c892)
2013-11-07Initialize automake earlier (bugfix for #66413)Daniel Martin
This fixes: https://bugs.freedesktop.org/show_bug.cgi?id=66413 Bug 66413 - libxcb 1.9.1: Fails to build on Arch Linux: \ /home/<user>/install-sh: No such file or directory Without that patch the search path for `install-sh` will become $HOME and the `install` target will fail, when DESTDIR doesn't exist in advance. (occured with automake 1.14 and autoconf 2.69) Initial patch by: Alain Kalker <a.c.kalker@gmail.com> Signed-off-by: Daniel Martin <consume.noise@gmail.com> Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Uli Schlachter <psychon@znc.in> Tested-By: Ran Benita <ran234@gmail.com> (cherry picked from commit 50fb3a6312dd0b6b613fc886ffd6827952d1e286) Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2013-11-07Update to version 1.9.2libxcb-1.9.21.9.2Keith Packard
Signed-off-by: Keith Packard <keithp@keithp.com>
2013-11-07Add Present extensionKeith Packard
Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-By: Uli Schlachter <psychon@znc.in>
2013-11-07Add DRI3 libraryKeith Packard
Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-By: Uli Schlachter <psychon@znc.in>
2013-11-07Require xcb proto version 1.9Keith Packard
Signed-off-by: Keith Packard <keithp@keithp.com>
2013-11-07Add event queue splittingKeith Packard
This allows apps to peel off certain XGE events into separate queues for custom handling. Designed to support the Present extension Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-By: Uli Schlachter <psychon@znc.in>
2013-11-07Add support for receiving fds in repliesKeith Packard
Requests signal which replies will have fds, and the replies report how many fds they expect in byte 1. Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-By: Uli Schlachter <psychon@znc.in>
2013-11-07Add xcb_send_fd APIKeith Packard
This uses sendmsg to transmit file descriptors from the application to the X server Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-By: Uli Schlachter <psychon@znc.in>
2013-11-07-pendantic is too pendanticKeith Packard
Many system headers have warnings when compiled with this flag. Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-By: Uli Schlachter <psychon@znc.in>
2013-11-07Make protocol C files depend on protocol XML filesKeith Packard
When new XML files get installed, make sure the C files are regenerated Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-By: Uli Schlachter <psychon@znc.in>
2013-11-07Remove xcb_ge_event_t from xcb.hKeith Packard
xcb proto now publishes this structure from an XML description Signed-off-by: Keith Packard <keithp@keithp.com>
2013-11-07c_client.py: Inject full_sequence into GE eventsDaniel Martin
The generic event structure xcb_ge_event_t has the full_sequence field at the 32byte boundary. That's why we've to inject this field into GE events while generating the structure for them. Otherwise we would read garbage (the internal full_sequence) when accessing normal event fields there. Signed-off-by: Daniel Martin <consume.noise@gmail.com> Reviewed-by: Keith Packard <keithp@keithp.com> Signed-off-by: Peter Harris <pharris@opentext.com>
2013-11-07c_client.py: Handle multiple expr. in a bitcaseDaniel Martin
Adopt a change from xcbgen. With that modification the expression in a bitcase became a list of expressions to support multiple <enumref> in a <bitcase>. Signed-off-by: Daniel Martin <consume.noise@gmail.com> Signed-off-by: Peter Harris <pharris@opentext.com>
2013-05-30libxcb 1.9.11.9.1Alan Coopersmith
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2013-05-23integer overflow in read_packet() [CVE-2013-2064]Alan Coopersmith
Ensure that when calculating the size of the incoming response from the Xserver, we don't overflow the integer used in the calculations when we multiply the int32_t length by 4 and add it to the default response size. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> (cherry picked from commit 1b33867fa996034deb50819ae54640be501f8d20)
2013-05-15whitespace fix in xcb_take_socketChristian König
Signed-off-by: Christian König <christian.koenig@amd.com> Signed-off-by: Jamey Sharp <jamey@minilop.net>
2013-01-16autogen.sh: Implement GNOME Build APIColin Walters
http://people.gnome.org/~walters/docs/build-api.txt Signed-off-by: Adam Jackson <ajax@redhat.com>
2012-11-10c_client.py: Fix python-3 invalid except statementChí-Thanh Christopher Nguyễn
Replace except statement with a PEP-3110 compliant one. This fixes a regression introduced by c3deeaf714630531d693a6a902b8dabf791858b1 https://bugs.freedesktop.org/show_bug.cgi?id=55690 Reviewed-by: Peter Harris <pharris@opentext.com> Signed-off-by: Uli Schlachter <psychon@znc.in>
2012-11-10c-client.py: Fix python-3 AttributeError: 'dict' object has no attribute ↵Chí-Thanh Christopher Nguyễn
'iteritems' This fixes a regression introduced by ea71d7d7e3f5d8189b80747678e9ca9a417b1d37 https://bugs.freedesktop.org/show_bug.cgi?id=55690 Reviewed-by: Peter Harris <pharris@opentext.com> Signed-off-by: Uli Schlachter <psychon@znc.in>
2012-10-05Release libxcb 1.91.9Uli Schlachter
Signed-off-by: Uli Schlachter <psychon@znc.in>
2012-10-05Include static man pages in "make dist"Uli Schlachter
This was found by distcheck. It tried to install src/man/xcb-examples.3 and src/man/xcb-requests.3, but those files weren't in the distribution. Fix this by explicitly telling automake to distribute those files. Signed-off-by: Uli Schlachter <psychon@znc.in>
2012-09-30Fix a multi-thread deadlockUli Schlachter
This fixes a deadlock which was seen in-the-wild with wine. It could happen that two threads tried to read from the socket at the same time and one of the thread got stuck inside of poll()/select(). The fix works by making sure that the writing thread doesn't steal the reading thread's reply. Debugged-by: Erich Hoover <ehoover@mines.edu> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54671 Signed-off-by: Uli Schlachter <psychon@znc.in>
2012-09-25Add a .gitignore for src/man/Uli Schlachter
Signed-off-by: Uli Schlachter <psychon@znc.in>
2012-09-18Allow xcb_send_request with >MAX_IOV iovecsPeter Harris
This allows an application to do a scatter/gather operation on a large image buffer to avoid the extra memcpy. Use autoconf to use UIO_MAXIOV where IOV_MAX is not available (and the POSIX minimum of 16 where neither are available). Reviewed-by: Uli Schlachter <psychon@znc.in> Signed-off-by: Peter Harris <pharris@opentext.com>
2012-08-29Return connection failure if display string specifies non-existent screenAlan Coopersmith
Matches the behaviour of Xlib - if you set DISPLAY to :0.1 but only have one screen, closes connection and returns error. This introduces a new connection error code: XCB_CONN_CLOSED_INVALID_SCREEN Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> Reviewed-by: Josh Triplett <josh@joshtriplett.org>
2012-08-25Add AC_USE_SYSTEM_EXTENSIONS to allow use of more system functionalityAlan Coopersmith
Copied from libX11 configure.ac Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2012-08-25Always include "config.h" at the start of all C source files.Alan Coopersmith
Allows configure to set defines such as _POSIX_SOURCE in config.h that affect functions exposed by system headers and get consistent results across all the source files. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2012-08-25Fix "sppported" typo in doxygen comment for XCB_CONN_CLOSED_EXT_NOTSUPPORTEDAlan Coopersmith
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2012-08-14c_client: Fix parallel-make issue creating 'man' directoryColin Walters
With make -j, it was possible to hit a race condition in the code to make the 'man' directory. Signed-off-by: Julien Danjou <julien@danjou.info>
2012-04-21xcb_connect: launchd: Don't fall back on tcp if $DISPLAY is a path to a ↵Jeremy Huddleston
launchd socket Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2012-03-27Move static man to manJulien Danjou
Signed-off-by: Julien Danjou <julien@danjou.info>
2012-03-27Do not list manpages, use a wildcardJulien Danjou
Signed-off-by: Julien Danjou <julien@danjou.info>
2012-03-27Split manpage list in two (static/built)Julien Danjou
Signed-off-by: Julien Danjou <julien@danjou.info>
2012-03-26Allow undocumented code to be builtJulien Danjou
Signed-off-by: Julien Danjou <julien@danjou.info>
2012-03-26c_client.py: generate manpagesMichael Stapelberg
Signed-off-by: Julien Danjou <julien@danjou.info>
2012-03-09Release libxcb 1.8.11.8.1Julien Danjou
Signed-off-by: Julien Danjou <julien@danjou.info>
2012-03-08Fix a busy loop on BSD and Mac OSUli Schlachter
On FreeBSD MSG_WAITALL on a non-blocking socket fails immediately if less bytes than were asked for are available. This is different than the behavior on linux where as many bytes as are available are returned in this case. Other OS apparently follow the FreeBSD behavior. _xcb_in_read() is used to fill xcb's read buffer, thus this function will call recv() with a big length argument (xcb's read buffer is by default 16 KiB large). That many bytes are highly unlikely to be available in the kernel buffer. This means that _xcb_in_read() always failed on FreeBSD. Since the socket was still signaled as readable by poll(), this bug even resulted in a busy loop. The same issue is present in read_block(), but here it is slightly different. read_block() is called when we read the first few bytes of an event or a reply, so that we already know its length. This means that we should be able to use MSG_WAITALL here, because we know how many bytes there have to be. However, that function could busy loop, too, when only the first few bytes of the packet were sent while the rest is stuck somewhere on the way to us. Thus, MSG_WAITALL should be removed here, too. Thanks to Christoph Egger from Debian for noticing the problem, doing all the necessary debugging and figuring out what the problem was! This patch is 99% from debian. Thanks for all the work. This bug was introduced in commit 2dcf8b025be88a25d4333abdc28d425b88238d96. This commit also reverts commit 9061ee45b8dbe5431c23e3f628089d703ccad0b1. Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=45776 Signed-off-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Josh Triplett <josh@joshtriplett.org>
2012-03-08darwin: Use read(2) rather than recv(2)Jeremy Huddleston
2dcf8b025be88a25d4333abdc28d425b88238d96 was causing some regressions on darwin, so go back to using read(2) there until I have time to investigate further. Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2012-02-19Fallback to TCP if no protocol is specified and the UNIX connection failsJulien Cristau
Signed-off-by: Julien Cristau <jcristau@debian.org> Signed-off-by: Jamey Sharp <jamey@minilop.net>
2012-02-10Add xkb_internals and xkb_issues to EXTRA_DIST.Arnaud Fontaine
2012-02-09Update use of error_connection under WIN32 to _xcb_conn_ret_error()Jon TURNEY
Unfortunately, commit 31b57676 adding WSACleanup/WSAShutdown on Win32 adds a new use of error_connection, which was removed in commit 769acff0, applied 5 minutes earlier. src/xcb_util.c: In function 'xcb_connect_to_display_with_auth_info': src/xcb_util.c:433:39: error: 'error_connection' undeclared (first use in this function) Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Arvind Umrao <arvind.umrao@oracle.com> Signed-off-by: Uli Schlachter <psychon@znc.in>
2012-01-28Fix build of xcb_auth.c with XDMCP on WIN32Jon TURNEY
Fix a redefinition problem which shows up when building for _WIN32 and libXdmcp is installed, so HASXDMAUTH is enabled It seems this is a special place in xcb as it uses other X11 library headers here If HASXDMAUTH is defined, include the wrapped windows.h before any header which includes it unwrapped, to avoid conflicts with types defined in X headers We need to include config.h and check HASXDMAUTH to avoid an unconditional dependency on x11proto headers In file included from install/include/X11/Xdmcp.h:19:0, from git/xcb/libxcb/src/xcb_auth.c:52: install/include/X11/Xmd.h:120:14: error: conflicting types for 'INT32' /usr/i686-pc-mingw32/sys-root/mingw/include/basetsd.h:54:13: note: previous declaration of 'INT32' was here install/include/X11/Xmd.h:143:15: error: conflicting types for 'BOOL' /usr/i686-pc-mingw32/sys-root/mingw/include/windef.h:234:17: note: previous declaration of 'BOOL' was here Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
2012-01-28Revert "Fix include order with Xdmcp on WIN32"Jeremy Huddleston
This reverts commit 0e9246def562be97cc816f824f702233a826ec56. This change caused build failures because <X11/Xdmcp.h> was never included under any circumstance. This is because the check for HASXDMAUTH was moved before the inclusion of config.h (via xcbint.h) which defined it. Found-by: Tinderbox Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com> Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2012-01-12Bump xcb-proto requirementJulien Danjou
We are now unable to build xcb-proto before 1.7. Signed-off-by: Julien Danjou <julien@danjou.info>
2012-01-11Release libxcb 1.81.8Julien Danjou
Signed-off-by: Julien Danjou <julien@danjou.info>
2012-01-11Use WSAStartup()/WSACleanup() on WIN32Ryan Pavlik
The alternative is to use these in every WIN32 application which uses xcb. Doing it this way should be safe, as, according to MSDN, "There must be a call to WSACleanup for each successful call to WSAStartup. Only the final WSACleanup function call performs the actual cleanup. The preceding calls simply decrement an internal reference count" (We should probably also include ws2_32 in Libs.private for libxcb, as anything which links with libxcb will also need that, but there seems to be some pkg-config issues to resolve first...) v2: Check for errors so WSAStartup()/WSACleanup() uses are balanced v3: Use same indentation style as surrounding code Reviewed-by: Peter Harris <pharris@opentext.com> Signed-off-by: Julien Danjou <julien@danjou.info>