From c81020559f329a516191927222b3698ba7370aca Mon Sep 17 00:00:00 2001 From: marha Date: Sun, 22 Dec 2013 12:51:45 +0100 Subject: libxtrans fontconfig glproto libX11 libxcb xcbproto mesa xserver pixman xkeyboard-config git update 22 Dec 2013 xserver commit a68df147421da21528b5be2d34678383922fa352 libxcb commit f653464554469b5767f1c99abced25a76bace047 libxcb/xcb-proto commit 4087fc682c5ceb849b74442e17a6b73176e5eecb xkeyboard-config commit a224a636139d22e1dc7ca7d23782cd656e87bcf5 libX11 commit 3d69b0a83e62f8f6fbdd952fc49cdbdf8825e1e6 libXdmcp commit 089081dca4ba3598c6f9bf401c029378943b5854 libXext commit bb24f2970f2e425f4df90c9b73d078ad15a73fbb libfontenc commit 3acba630d8b57084f7e92c15732408711ed5137a libXinerama commit edd95182b26eb5d576d4878c559e0f17dddaa909 libXau commit 304a11be4727c5a7feeb2501e8e001466f8ce84e xkbcomp commit e3e6e938535532bfad175c1635256ab7fb3ac943 pixman commit 945ab7a6f3eb6241f07e8f094dc0e647d1f10d9d xextproto commit 3f355f138d6df57e067458a20f47307883048adb randrproto commit e7526e6b5fe0966929cda10b2ded0258413744db glproto commit f84853d97d5749308992412a215fa518b6536eb3 mkfontscale commit 880a0c4733e62e54e6a0f1238c7430727d23657b xwininfo commit ba0d1b0da21d2dbdd81098ed5778f3792b472e13 libXft commit 4acfdaf95adb0a05c2a25550bdde036c865902f4 libXmu commit 22d9c590901e121936f50dee97dc60c4f7defb63 libxtrans commit 2c0a7840a28ae696e80e73157856d7a049fdf6c7 fontconfig commit 5c725f2f5829238d16116f782d00d8bb0defaf08 mesa commit 2efe7927d38983029784825fc4897e9b77aa237e --- libxcb/NEWS | 39 +++++++++++++++++++++++++- libxcb/configure.ac | 2 +- libxcb/src/Makefile.am | 6 ++-- libxcb/src/c_client.py | 4 +-- libxcb/src/xcb.h | 20 ++++++++++++++ libxcb/src/xcb_in.c | 12 ++++---- libxcb/xcb-proto/NEWS | 61 +++++++++++++++++++++++++++++++++++++++++ libxcb/xcb-proto/src/xinput.xml | 8 +++--- libxcb/xcb-proto/src/xproto.xml | 2 +- 9 files changed, 137 insertions(+), 17 deletions(-) (limited to 'libxcb') diff --git a/libxcb/NEWS b/libxcb/NEWS index 533d72b87..d0198f59c 100644 --- a/libxcb/NEWS +++ b/libxcb/NEWS @@ -1,6 +1,43 @@ +Release 1.10 (2013-12-XX) +========================= +* Bump libxcb-xkb SONAME due to ABI break introduced in 1.9.2 +* Enable libxcb-xkb by default +* Bump libxcb-sync SONAME +* c_client.py: Fix _sizeof() functions +* c_client.py: Do not create pointers in unions +* c_client.py: Always initialize xcb_align_to +* Re-introduce xcb_ge_event_t (deprecated, xcb_ge_generic_event_t should be + used instead) +* Fix alignment issues in FD passing code +* Fix poll() if POLLIN == ROLLRDNORM|POLLRDBAND +* Use /usr/spool/sockets/X11/ on HP-UX for UNIX sockets +* Make xsltproc optional + +Release 1.9.3 (2013-11-07) +========================== +* Check if we need to define _XOPEN_SOURCE for struct msghdr.msg_control +* Add configure option to enable or disable fd passing with sendmsg +* Switch to using the CMSG_* macros for FD passing +* Initialize automake earlier (bugfix for #66413) + +Release 1.9.2 (2013-11-07) +========================== +* Add Present extension +* Add DRI3 library +* Add event queue splitting +* Add support for receiving fds in replies +* Add xcb_send_fd API +* Remove xcb_ge_event_t from xcb.h +* c_client.py: Inject full_sequence into GE events +* c_client.py: Handle multiple expr. in a bitcase + +Release 1.9.1 (2013-05-30) +========================== +* Fix python code to work with python-3 +* Security fix for integer overflow in read_packet() [CVE-2013-2064] + Release 1.9 (2012-10-05) ======================== - * Always include "config.h" at the start of all C source files. * Add AC_USE_SYSTEM_EXTENSIONS to allow use of more system functionality * Return connection failure if display string specifies non-existent screen diff --git a/libxcb/configure.ac b/libxcb/configure.ac index 87804ba26..294bd1a92 100644 --- a/libxcb/configure.ac +++ b/libxcb/configure.ac @@ -41,7 +41,7 @@ fi AC_SUBST(HTML_CHECK_RESULT) # Checks for pkg-config packages -PKG_CHECK_MODULES(XCBPROTO, xcb-proto >= 1.9) +PKG_CHECK_MODULES(XCBPROTO, xcb-proto >= 1.10) NEEDED="pthread-stubs xau >= 0.99.2" PKG_CHECK_MODULES(NEEDED, $NEEDED) diff --git a/libxcb/src/Makefile.am b/libxcb/src/Makefile.am index 346ee03cc..f2875dd18 100644 --- a/libxcb/src/Makefile.am +++ b/libxcb/src/Makefile.am @@ -139,7 +139,7 @@ endif EXTSOURCES += sync.c if BUILD_SYNC lib_LTLIBRARIES += libxcb-sync.la -libxcb_sync_la_LDFLAGS = -version-info 0:0:0 -no-undefined @lt_enable_auto_import@ +libxcb_sync_la_LDFLAGS = -version-info 1:0:0 -no-undefined @lt_enable_auto_import@ libxcb_sync_la_LIBADD = $(XCB_LIBS) nodist_libxcb_sync_la_SOURCES = sync.c sync.h endif @@ -179,7 +179,7 @@ endif EXTSOURCES += xinput.c if BUILD_XINPUT lib_LTLIBRARIES += libxcb-xinput.la -libxcb_xinput_la_LDFLAGS = -version-info 0:0:0 -no-undefined @lt_enable_auto_import@ +libxcb_xinput_la_LDFLAGS = -version-info 1:0:1 -no-undefined @lt_enable_auto_import@ libxcb_xinput_la_LIBADD = $(XCB_LIBS) nodist_libxcb_xinput_la_SOURCES = xinput.c xinput.h endif @@ -187,7 +187,7 @@ endif EXTSOURCES += xkb.c if BUILD_XKB lib_LTLIBRARIES += libxcb-xkb.la -libxcb_xkb_la_LDFLAGS = -version-info 0:0:0 -no-undefined +libxcb_xkb_la_LDFLAGS = -version-info 1:0:0 -no-undefined libxcb_xkb_la_LIBADD = $(XCB_LIBS) nodist_libxcb_xkb_la_SOURCES = xkb.c xkb.h endif diff --git a/libxcb/src/c_client.py b/libxcb/src/c_client.py index 72800045e..99fd307b0 100644 --- a/libxcb/src/c_client.py +++ b/libxcb/src/c_client.py @@ -1061,8 +1061,8 @@ def _c_serialize_helper(context, complex_type, if context in ('unserialize', 'unpack', 'sizeof') and not self.var_followed_by_fixed_fields: code_lines.append('%s xcb_block_len += sizeof(%s);' % (space, self.c_type)) code_lines.append('%s xcb_tmp += xcb_block_len;' % space) - # probably not needed - #_c_serialize_helper_insert_padding(context, code_lines, space, False) + code_lines.append('%s xcb_buffer_len += xcb_block_len;' % space) + code_lines.append('%s xcb_block_len = 0;' % space) count += _c_serialize_helper_fields(context, self, code_lines, temp_vars, diff --git a/libxcb/src/xcb.h b/libxcb/src/xcb.h index 63864dc37..e62c985d5 100644 --- a/libxcb/src/xcb.h +++ b/libxcb/src/xcb.h @@ -140,6 +140,26 @@ typedef struct { uint32_t full_sequence; /**< full sequence */ } xcb_generic_event_t; +/** + * @brief GE event + * + * An event as sent by the XGE extension. The length field specifies the + * number of 4-byte blocks trailing the struct. + * + * @deprecated Since some fields in this struct have unfortunate names, it is + * recommended to use xcb_ge_generic_event_t instead. + */ +typedef struct { + uint8_t response_type; /**< Type of the response */ + uint8_t pad0; /**< Padding */ + uint16_t sequence; /**< Sequence number */ + uint32_t length; + uint16_t event_type; + uint16_t pad1; + uint32_t pad[5]; /**< Padding */ + uint32_t full_sequence; /**< full sequence */ +} xcb_ge_event_t; + /** * @brief Generic error. * diff --git a/libxcb/src/xcb_in.c b/libxcb/src/xcb_in.c index fd6c2efd2..95087be4e 100644 --- a/libxcb/src/xcb_in.c +++ b/libxcb/src/xcb_in.c @@ -918,11 +918,13 @@ int _xcb_in_read(xcb_connection_t *c) #if HAVE_SENDMSG struct cmsghdr *hdr; - for (hdr = CMSG_FIRSTHDR(&msg); hdr; hdr = CMSG_NXTHDR(&msg, hdr)) { - if (hdr->cmsg_level == SOL_SOCKET && hdr->cmsg_type == SCM_RIGHTS) { - int nfd = (hdr->cmsg_len - CMSG_LEN(0)) / sizeof (int); - memcpy(&c->in.in_fd.fd[c->in.in_fd.nfd], CMSG_DATA(hdr), nfd * sizeof (int)); - c->in.in_fd.nfd += nfd; + if (msg.msg_controllen >= sizeof (struct cmsghdr)) { + for (hdr = CMSG_FIRSTHDR(&msg); hdr; hdr = CMSG_NXTHDR(&msg, hdr)) { + if (hdr->cmsg_level == SOL_SOCKET && hdr->cmsg_type == SCM_RIGHTS) { + int nfd = (hdr->cmsg_len - CMSG_LEN(0)) / sizeof (int); + memcpy(&c->in.in_fd.fd[c->in.in_fd.nfd], CMSG_DATA(hdr), nfd * sizeof (int)); + c->in.in_fd.nfd += nfd; + } } } #endif diff --git a/libxcb/xcb-proto/NEWS b/libxcb/xcb-proto/NEWS index ebe184532..50ced6186 100644 --- a/libxcb/xcb-proto/NEWS +++ b/libxcb/xcb-proto/NEWS @@ -1,3 +1,64 @@ +Release 1.10 (2013-12-XX) +========================= +* xkb: comment out portions that libxcb doesn't handle properly +* Present: Remove reference to nonexistent enum +* sync: Add missing namespace for the INT64 struct +* sync: VALUETYPE and TESTTYPE are enum +* xinput: Add XI2 event enum. for event selection +* Rename ge events to GeGeneric events to avoid clash with libxcb + +Release 1.9 (2013-11-07) +======================== +* Add Present protocol specification +* Add DRI3 +* Add MIT-SHM AttachFd and CreateSegment requests +* Add support for file descriptor request fields +* Define X generic event structure +* Add CARD64/INT64 protocol types +* XKB: Rewrite AXOption +* XKB: Fix values of AXFBOpt enum +* xkb: Fix struct ExtensionDeviceNotify +* xkb: Pad structs CommonDoodad and SALockDeviceBtn +* randr: Fix GetProviderProperty reply +* Enforce a bit or value in enum items +* xkb: Add missing LedClass and BellClass enum values +* xkb: Add missing 'supported' field to GetNamedIndicator reply +* xkb: Unify Overlay1Behavior and Overlay2Behavior +* xkb: Change DfltBtnAbsolute to the value used by the server +* xkb: Fix key type map entry field order +* xkb: Work around alignment problems in GetNames and GetMap replies +* xinput: Use BARRIER from xfixes +* xinput: Unlock uninterpreted lists +* xinput: Add XI v2.3 +* xinput: Add XI v2.2 +* xinput: Add XI v2.1 +* xinput: Add XI v2.0 +* xinput: Add XI v1.5 +* xinput: Cleanup implementation of XI up to v1.4 +* Add support for X Generic Extension events +* sync: Change value list param of CreateAlarm and ChangeAlarm into switch +* res: Add ClientIdMask enum +* res: Fix and rename list in ClientIdValue +* randr: Add provider object support (RandR v1.4) +* xtest: Version bump 2.1..2.2 +* glx: Version bump 1.3..1.4 +* composite: Version bump 0.3..0.4 +* xfixes: Rename enum DirectionMask to BarrierDirec. +* XKB: Correct enum to mask +* screensaver: Use enum and mask attributes +* screensaver: Remove wrong fields from Notify event +* Prototype for XRes v1.2 +* XKB: Fix calculation in GetIndicatorMap +* XKB: Fix GetKbdByName +* Allow multiple in a +* XKB: Change CARD8 to char where ASCII is expected +* XKB: Fix VirtualMods +* XKB: Fix SymInterpret +* XKB: Fix CountedString16 padding +* xkb: Revert half of d42d791 XKB: Fix broken events +* xfixes: Update to version 5 +* autogen.sh: Implement GNOME Build API + Release 1.8 (2012-10-05) ======================== * dri2: Update to DRI2 1.4 diff --git a/libxcb/xcb-proto/src/xinput.xml b/libxcb/xcb-proto/src/xinput.xml index dd3f18438..fa115bdcd 100644 --- a/libxcb/xcb-proto/src/xinput.xml +++ b/libxcb/xcb-proto/src/xinput.xml @@ -1790,10 +1790,10 @@ authorization from the authors. - + - + @@ -2003,8 +2003,8 @@ authorization from the authors. - - + + diff --git a/libxcb/xcb-proto/src/xproto.xml b/libxcb/xcb-proto/src/xproto.xml index defa11e6e..07795682c 100644 --- a/libxcb/xcb-proto/src/xproto.xml +++ b/libxcb/xcb-proto/src/xproto.xml @@ -1080,7 +1080,7 @@ The number of keycodes altered. - + generic event (with length) -- cgit v1.2.3