summaryrefslogtreecommitdiff
path: root/xserver/hw/xfree86
diff options
context:
space:
mode:
authorMatthieu Herrb <matthieu@cvs.openbsd.org>2024-04-07 11:42:57 +0000
committerMatthieu Herrb <matthieu@cvs.openbsd.org>2024-04-07 11:42:57 +0000
commit3b54c5989fc2cf723133696763d4cc4a6e1c6152 (patch)
tree6b8ba61c06b9c566cb4881d46008c9f65d2c12eb /xserver/hw/xfree86
parent6375a3e179fcdcf13e57e9a2eae63a704d41e4be (diff)
Update to xserver 21.1.12
The security patches were already commited, sync with the rest of the 21.1.12 relase.
Diffstat (limited to 'xserver/hw/xfree86')
-rw-r--r--xserver/hw/xfree86/common/xf86Config.c11
-rw-r--r--xserver/hw/xfree86/common/xf86Mode.c2
-rw-r--r--xserver/hw/xfree86/man/xorg.conf.man3
-rw-r--r--xserver/hw/xfree86/modes/xf86Modes.c2
4 files changed, 17 insertions, 1 deletions
diff --git a/xserver/hw/xfree86/common/xf86Config.c b/xserver/hw/xfree86/common/xf86Config.c
index 8b2193f87..f1a28b6a3 100644
--- a/xserver/hw/xfree86/common/xf86Config.c
+++ b/xserver/hw/xfree86/common/xf86Config.c
@@ -646,6 +646,7 @@ typedef enum {
FLAG_MAX_CLIENTS,
FLAG_IGLX,
FLAG_DEBUG,
+ FLAG_ALLOW_BYTE_SWAPPED_CLIENTS,
} FlagValues;
/**
@@ -705,6 +706,8 @@ static OptionInfoRec FlagOptions[] = {
{0}, FALSE},
{FLAG_DEBUG, "Debug", OPTV_STRING,
{0}, FALSE},
+ {FLAG_ALLOW_BYTE_SWAPPED_CLIENTS, "AllowByteSwappedClients", OPTV_BOOLEAN,
+ {0}, FALSE},
{-1, NULL, OPTV_NONE,
{0}, FALSE},
};
@@ -746,6 +749,14 @@ configServerFlags(XF86ConfFlagsPtr flagsconf, XF86OptionPtr layoutopts)
xf86Msg(X_CONFIG, "Ignoring ABI Version\n");
}
+ xf86GetOptValBool(FlagOptions, FLAG_ALLOW_BYTE_SWAPPED_CLIENTS, &AllowByteSwappedClients);
+ if (AllowByteSwappedClients) {
+ xf86Msg(X_CONFIG, "Allowing byte-swapped clients\n");
+ }
+ else {
+ xf86Msg(X_CONFIG, "Prohibiting byte-swapped clients\n");
+ }
+
if (xf86IsOptionSet(FlagOptions, FLAG_AUTO_ADD_DEVICES)) {
xf86GetOptValBool(FlagOptions, FLAG_AUTO_ADD_DEVICES,
&xf86Info.autoAddDevices);
diff --git a/xserver/hw/xfree86/common/xf86Mode.c b/xserver/hw/xfree86/common/xf86Mode.c
index eb0885571..ef3be84c3 100644
--- a/xserver/hw/xfree86/common/xf86Mode.c
+++ b/xserver/hw/xfree86/common/xf86Mode.c
@@ -507,6 +507,8 @@ xf86LookupMode(ScrnInfoPtr scrp, DisplayModePtr modep,
/* scan through the modes in the sort order above */
if ((p->type & type) != type)
continue;
+ if (p->name == NULL)
+ continue;
if (strcmp(p->name, modep->name) == 0) {
diff --git a/xserver/hw/xfree86/man/xorg.conf.man b/xserver/hw/xfree86/man/xorg.conf.man
index ac88d7e7a..ed125b3ee 100644
--- a/xserver/hw/xfree86/man/xorg.conf.man
+++ b/xserver/hw/xfree86/man/xorg.conf.man
@@ -677,6 +677,9 @@ Possible values are
or
.BR sync .
Unset by default.
+.TP 7
+.BI "Option \*qAllowByteSwappedClients\*q \*q" boolean \*q
+Allow clients with a different byte-order than the server. Enabled by default.
.SH "MODULE SECTION"
The
.B Module
diff --git a/xserver/hw/xfree86/modes/xf86Modes.c b/xserver/hw/xfree86/modes/xf86Modes.c
index 00586c457..f660a214a 100644
--- a/xserver/hw/xfree86/modes/xf86Modes.c
+++ b/xserver/hw/xfree86/modes/xf86Modes.c
@@ -810,7 +810,7 @@ xf86CVTMode(int HDisplay, int VDisplay, float VRefresh, Bool Reduced,
XNFasprintf(&tmp, "%dx%d", HDisplay, VDisplay);
Mode->name = tmp;
-
+
Mode->VDisplay = libxcvt_mode_info->vdisplay;
Mode->HDisplay = libxcvt_mode_info->hdisplay;
Mode->Clock = libxcvt_mode_info->dot_clock;