summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-06-02xtrans 1.5.0xtrans-1.5.0Alan Coopersmith
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-03-19DISPLAY starting with unix: or / is always a socket pathDemi Marie Obenour
Do not consider anything else in this case. Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
2023-03-19Allow full paths to sockets on non-macOSDemi Marie Obenour
This adds explicit checks for addresses that start with / or unix: and uses full paths in this case. Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
2023-03-19Remove client-side abstract socket supportDemi Marie Obenour
CVE-2020-25697 and the Flatpak documentation show that clients using abstract sockets without mutual authentication is unsafe. TRANS_ABSTRACT remains supported, but it is now a no-op on the client side. Abstract sockets are still supported for servers, as the X server authenticates the client via other methods. Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
2023-03-19Remove "All rights reserved" from Oracle copyright noticesAlan Coopersmith
Oracle no longer includes this term in our copyright & license notices. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-03-19Allow partial connection to succeedOlivier Fourdan
Xwayland can optionally be socket-activated by the Wayland compositor, in which case it would use only the sockets provided by the compositor. However, that prevents other transport protocols from working, because when it's given a socket from the Wayland compositor, it would disable all other connections and rely solely on the given socket. Change `MakeAllCOTSServerListeners` to allow for partial connections so that if `partial` is set to a non-zero value by the caller, we do not bail out in the address is already in use. That allows to continue trying with other protocols even if the local connection fails (as this is already handled by the socket from the Wayland compositor). Related: https://gitlab.freedesktop.org/xorg/xserver/issues/817 Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
2022-08-20Use font server ErrorF/VErrorF instead of private versionsKeith Packard
XTrans creates custom ErrorF/VErrorF functions when the including project doesn't provide them, however the test for that is weak and xtrans ends up using the private versions for the font server as well. This means that all xtrans error messages will not be included in the font server log. It also causes redefinition warnings when building the font server (which is how this problem was identified). However, the font server doesn't currently provide a VErrorF function, so instead of just always relying on the font server to provide these functions, this patch uses a new TRANS_HAS_ERRORF define to select whether the project-provided or internal versions will be used. A patch to the font server that adds VErrorF and defines TRANS_HAS_ERRORF will be required to fix this bug. Signed-off-by: Keith Packard <keithp@keithp.com>
2022-08-20move is_numeric to Xtranssock.c and only define for TCPCONN or TRANS_REOPENKeith Packard
Don't define this function unless it is actually going to be used. Signed-off-by: Keith Packard <keithp@keithp.com>
2022-05-10gitlab CI: add a basic build testAlan Coopersmith
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2022-05-10Fix spelling/wording issuesAlan Coopersmith
Found by using: codespell --builtin clear,rare,usage,informal,code,names Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2022-05-10Build xz tarballs instead of bzip2Alan Coopersmith
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2022-05-10Automatically disable inet6 transport if ipv6 is disabled on machineRay Strode
If a machine is booted with ipv6.disable=1, trying to bind to an AF_INET6 socket will fail with AFNOSUPPORT. The tcp transport automatically falls back to ipv4 in this case, but the more specific inet6 transport just fails. This failure leads to MakeAllCOTSServerListeners returning a partial success. Unfortunately, the X server can't really contiue with partial successes from this function if -displayfd is in use, since that would, in other cases, potentially lead to the -displayfd electing a display number that is potentially partially in use by a rogue program. This commit addresses the issue by automatically disabling transports when they fail with AFNOSUPPORT, leading them to get ignored, rather than proceeding and ultimately returning from MakeAllCOTSServerListerns with partial=TRUE.
2019-10-14TEST_t is never definedAdam Jackson
This didn't even correspond to any of the testing protocol extensions! Apparently there used to be some test programs in xtrans itself, and they've not been a thing since 1994: https://cgit.freedesktop.org/~alanc/xc-historical/commit/?id=73bf4832c427855b2ce111d47dd1f181564b8d06 Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2019-09-30Remove non-Solaris SysV supportAdam Jackson
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2019-09-30Delete SCO supportAdam Jackson
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2019-09-30unifdef USG and NCRAdam Jackson
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2019-03-16xtrans 1.4.0xtrans-1.4.0Alan Coopersmith
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2018-12-07Update configure.ac bug URL for gitlab migrationAlan Coopersmith
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2018-11-19Update README for gitlab migrationAlan Coopersmith
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2018-09-30Use fchmod() instead of chmod() when creating named pipesAlan Coopersmith
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2018-08-25Use strcasecmp if it's available, instead of lowercasing stringsAlan Coopersmith
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2018-08-25Set freeXLOCAL to NULL after freeing it to prevent double freesAlan Coopersmith
We shouldn't be calling the LocalEndTransports routine twice, but just make sure if we do, we don't call free twice on the same pointer. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2018-03-24avoid -Wformat errors from clangRin Okuyama
https://bugs.freedesktop.org/show_bug.cgi?id=99882 Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2017-01-26autogen.sh: use quoted string variablesEmil Velikov
Place quotes around the $srcdir, $ORIGDIR and $0 variables to prevent fall-outs, when they contain space. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-01-26autogen.sh: use exec instead of waiting for configure to finishPeter Hutterer
Syncs the invocation of configure with the one from the server. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2016-09-10Update strlcpy macro check to also check HAVE_STRLCPYJeremy Huddleston Sequoia
xorg-server moved from HAS_STRLCPY to HAVE_STRLCPY in 2011 cf-xserver: d829a7c5cb42c979b58f3547136df5b05d906423 Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
2016-09-01Revert "Make FreeConnInfo static"Adam Jackson
<anholt> ajax: 75419e6b6d985ea8796f05d1acb5e154b065c9b9 of xtrans also seems to have broken xtest. And indeed it does, xts5 knows a fair amount about xlib internals for some reason. Whether that's cromulent or not, we want to be able to run automatic tests from top-of-tree, so we can't leave this broken. This reverts commit 75419e6b6d985ea8796f05d1acb5e154b065c9b9. Signed-off-by: Adam Jackson <ajax@redhat.com>
2016-05-19Remove GetMyAddrAdam Jackson
Again, pre-xcb libX11 was the only consumer. Reviewed-by: Keith Packard <keithp@keithp.com> Signed-off-by: Adam Jackson <ajax@redhat.com>
2016-05-19Make FreeConnInfo staticAdam Jackson
libX11 used to need this in the XOpenDisplay code, but hasn't since xcb became mandatory. Reviewed-by: Keith Packard <keithp@keithp.com> Signed-off-by: Adam Jackson <ajax@redhat.com>
2016-05-19unifdef LBXPROXY_t and TEST_tAdam Jackson
LBX is dead, and TEST_t is unused. Reviewed-by: Keith Packard <keithp@keithp.com> Signed-off-by: Adam Jackson <ajax@redhat.com>
2016-05-19Remove CLTS codeAdam Jackson
Never been used, as far as I can tell. Reviewed-by: Keith Packard <keithp@keithp.com> Signed-off-by: Adam Jackson <ajax@redhat.com>
2016-05-18autogen: Add a default patch prefixAdam Jackson
Signed-off-by: Adam Jackson <ajax@redhat.com>
2015-12-03Remove support for SysV on x86 platforms other than Solaris & SCOAlan Coopersmith
No other x86 SysV platforms have ever been supported in the modular build systems, so we don't need to keep carrying around a bunch of ifdef's for them. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
2015-11-28Replace 'sun' with '__sun'Richard PALO
Globally replace #ifdef and #if defined usage of 'sun' with '__sun' such that strict ISO compiler modes such as -ansi or -std=c99 can be used. Signed-off-by: Richard PALO <richard@NetBSD.org> Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2015-09-25Make sure LONG64 is defined in Xtrans.hJulien Cristau
Xtrans.h defines BytesReadable_t as int or long depending on whether LONG64 is defined. We need to make sure Xmd.h is included so our idea of BytesReadable_t is consistent across compilation units. Debian bug#749120 Reported-by: Michael Tautschnig <mt@debian.org> Signed-off-by: Julien Cristau <jcristau@debian.org> Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-09-20xtrans 1.3.5xtrans-1.3.5Keith Packard
Signed-off-by: Keith Packard <keithp@keithp.com>
2014-09-13Add TRANS(Listen) function to re-enable specific listen socketsKeith Packard
This will allow a server to disable listeners by default and then let later configuration re-enable them. In particular, this lets the X server disable inet and unix listen sockets by default while still providing a '-listen' command line option to re-enable them later on. Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-by: Hans de Goede <hdegoede@redhat.com>
2014-08-24Add const qualifiers to TRANS(OpenC{L,O}TS{Server,Client}) argsAlan Coopersmith
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-08-24Add const qualifiers to TRANS(MakeAll*ServerListeners) port argsAlan Coopersmith
Required also changing receive_listening_fds to specify port as const, which we can do now that TRANS(ReopenCOTSServer) takes it as const. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-08-24Add const qualifiers to TRANS(Connect) argsAlan Coopersmith
Also required constifying UnixHostReallyLocal, since SocketUNIXConnect passes the host arg through to it. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-08-23Add const qualifiers to TRANS(CreateListener) port argsAlan Coopersmith
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-08-23Add const qualifiers to TRANS(Reopen...) port argsAlan Coopersmith
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-08-23Add const qualifiers to TRANS(Open...) address argsAlan Coopersmith
Required also adding const to static TRANS(ParseAddress) function which they pass the address arg to for parsing. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-08-23Update docs to note that TransName is now const char *Alan Coopersmith
Missed when the code was updated in commit eb9a8904fbef61a57ff0. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-03-31xtrans 1.3.4xtrans-1.3.4Hans de Goede
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2014-03-31Increase UNIX socket buffer sizeMark Kettenis
Some systems provide a really small default buffer size for UNIX sockets. Bump it up to 64k if necessary such that large transfers (such as XGetImage() on a 8-megapixel image) don't take tens of seconds. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2014-03-26Add missing headers for free() and strlen().Thomas Klausner
Reviewed-by: Mark Kettenis <kettenis@openbsd.org> Signed-off-by: Thomas Klausner <wiz@NetBSD.org>
2014-03-26Cast ctype(3) function arguments to unsigned char.Thomas Klausner
Fixes warnings on at least NetBSD. Reviewed-by: Mark Kettenis <kettenis@openbsd.org> Signed-off-by: Thomas Klausner <wiz@NetBSD.org>
2014-03-26configure: Also add -D_DEFAULT_SOURCE to .pc cflags to shut up glibc warningsHans de Goede
The latest glibc considers _BSD_SOURCE deprecated, leading to the following warning being issued for pretty much every C-file in the xserver: In file included from /usr/include/stdint.h:25:0, from /usr/lib/gcc/x86_64-redhat-linux/4.8.2/include/stdint.h:9, from ../include/misc.h:81, from miexpose.c:82: /usr/include/features.h:145:3: warning: #warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" [-Wcpp] # warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" ^ I've discussed this with the glibc developers and the prefered way of fixing this is by also defining _DEFAULT_SOURCE which is the new way of stating _BSD_SOURCE / _SVID_SOURCE . Signed-off-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Mark Kettenis <kettenis@openbsd.org> Tested-by: Kristian Høgsberg <krh@bitplanet.net> Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
2014-01-27xtrans 1.3.3xtrans-1.3.3Hans de Goede
Signed-off-by: Hans de Goede <hdegoede@redhat.com>