This is an automated email from the git hooks/post-receive script. x2go pushed a change to tag 1.15.2.3-xp+vc2013+x2go1 in repository vcxsrv. at a769ab7 (commit) This tag includes the following new commits: new 3ffe138 Initial work to get VcXsrv 1.15.2.0 to compile under the MSVC2013 XP target new 9169b4c Update building.txt, you need to decide which build script to use new 9cec60a Additional changes for XP targeting. From [1b493f] on the xp-fixesonly branch. new 0a98b73 Fix build of mhmake new c5dd72a Build was successful. Update building.txt for Python 3, which is now required. new 0ccf45e Specify that buildall.sh should be called, not buildall.bat. new 873f764 Call setvcenv.sh from buildall.sh new 8a8f50c Update NSIS scripts to specify that we are "XP Compatible" new cf84b2d Update buildall.bat to work with VS express edition. Note that I am not using buildall.bat to build currently. new f13663b Update OpenSSL from 1.0.1h to 1.0.1i new d6bee13 Update packages.txt for OpenSSL 1.0.1i new d2d01e3 Revert permissions changes on 3 OpenSSL files new 978ec71 Incorporate winmultiwindow.patch from Oleksandr Shneyder (phoca GmbH) new 5c4d723 Update "About VcXsrv" and update the version string to 1.15.2.0-xp+vc2013+x2gochanges1 (A simplified version of the branch name) new 7897367 Simplify the version string: 1.15.2.0-xp+vc2013+x2gochanges1 -> 1.15.2.0-xp+vc2013+x2go1 new c70e12e Fix for last commit new c4962ab Update openssl to version openssl-1.0.1j new 13991a1 Increase version string to 1.15.2.1-xp+vc2013+x2go1 new 212ca5c Call makensis.exe from the PATH new 7e1c3b9 Fix CVE-2014-8091..8103. Patches were ported from Ubuntu 14.04 (xorg-server 1.15.1) new faa5026 Increase version string to 1.15.2.2-xp+vc2013+x2go1 new ee914bf Update openssl to version openssl-1.0.1k new 0d28e60 Remove accidentally added Makefile.bak new 50ca778 Fix OpenSSL build - upstream fix for #209 new 6f11c4a xkb: Don't swap XkbSetGeometry data in the input buffer new 31eac81 xkb: Check strings length against request size new a835056 Correct building.txt in terms of Python new 33bd202 VS 2013 Update 3 -> VS 2013 Update 4 new 2245364 Now using: VS Express -> VS Community Edition. new a769ab7 Increase version string to 1.15.2.3-xp+vc2013+x2go1 The 30 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. -- Alioth's /srv/git/code.x2go.org/vcxsrv.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/vcxsrv.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to tag 1.15.2.3-xp+vc2013+x2go1 in repository vcxsrv. commit 6f11c4ac377676d44324888c834ab6a17d9fe1dd Author: Olivier Fourdan <ofourdan@redhat.com> Date: Fri Jan 16 20:08:59 2015 +0100 xkb: Don't swap XkbSetGeometry data in the input buffer The XkbSetGeometry request embeds data which needs to be swapped when the server and the client have different endianess. _XkbSetGeometry() invokes functions that swap these data directly in the input buffer. However, ProcXkbSetGeometry() may call _XkbSetGeometry() more than once (if there is more than one keyboard), thus causing on swapped clients the same data to be swapped twice in memory, further causing a server crash because the strings lengths on the second time are way off bounds. To allow _XkbSetGeometry() to run reliably more than once with swapped clients, do not swap the data in the buffer, use variables instead. Signed-off-by: Olivier Fourdan <ofourdan@redhat.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 81c90dc8f0aae3b65730409b1b615b5fa7280ebd) (cherry picked from commit 29be310c303914090298ddda93a5bd5d00a94945) Signed-off-by: Julien Cristau <jcristau@debian.org> --- xorg-server/xkb/xkb.c | 35 +++++++++++++++++++---------------- 1 file changed, 19 insertions(+), 16 deletions(-) diff --git a/xorg-server/xkb/xkb.c b/xorg-server/xkb/xkb.c index ae2ca90..d1aaa02 100644 --- a/xorg-server/xkb/xkb.c +++ b/xorg-server/xkb/xkb.c @@ -4956,14 +4956,13 @@ static char * _GetCountedString(char **wire_inout, Bool swap) { char *wire, *str; - CARD16 len, *plen; + CARD16 len; wire = *wire_inout; - plen = (CARD16 *) wire; + len = *(CARD16 *) wire; if (swap) { - swaps(plen); + swaps(&len); } - len = *plen; str = malloc(len + 1); if (str) { memcpy(str, &wire[2], len); @@ -4980,25 +4979,28 @@ _CheckSetDoodad(char **wire_inout, { char *wire; xkbDoodadWireDesc *dWire; + xkbAnyDoodadWireDesc any; + xkbTextDoodadWireDesc text; XkbDoodadPtr doodad; dWire = (xkbDoodadWireDesc *) (*wire_inout); + any = dWire->any; wire = (char *) &dWire[1]; if (client->swapped) { - swapl(&dWire->any.name); - swaps(&dWire->any.top); - swaps(&dWire->any.left); - swaps(&dWire->any.angle); + swapl(&any.name); + swaps(&any.top); + swaps(&any.left); + swaps(&any.angle); } CHK_ATOM_ONLY(dWire->any.name); - doodad = XkbAddGeomDoodad(geom, section, dWire->any.name); + doodad = XkbAddGeomDoodad(geom, section, any.name); if (!doodad) return BadAlloc; doodad->any.type = dWire->any.type; doodad->any.priority = dWire->any.priority; - doodad->any.top = dWire->any.top; - doodad->any.left = dWire->any.left; - doodad->any.angle = dWire->any.angle; + doodad->any.top = any.top; + doodad->any.left = any.left; + doodad->any.angle = any.angle; switch (doodad->any.type) { case XkbOutlineDoodad: case XkbSolidDoodad: @@ -5021,12 +5023,13 @@ _CheckSetDoodad(char **wire_inout, dWire->text.colorNdx); return BadMatch; } + text = dWire->text; if (client->swapped) { - swaps(&dWire->text.width); - swaps(&dWire->text.height); + swaps(&text.width); + swaps(&text.height); } - doodad->text.width = dWire->text.width; - doodad->text.height = dWire->text.height; + doodad->text.width = text.width; + doodad->text.height = text.height; doodad->text.color_ndx = dWire->text.colorNdx; doodad->text.text = _GetCountedString(&wire, client->swapped); doodad->text.font = _GetCountedString(&wire, client->swapped); -- Alioth's /srv/git/code.x2go.org/vcxsrv.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/vcxsrv.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to tag 1.15.2.3-xp+vc2013+x2go1 in repository vcxsrv. commit 31eac816882241c95c25c05f85e7bd2590a44680 Author: Olivier Fourdan <ofourdan@redhat.com> Date: Fri Jan 16 08:44:45 2015 +0100 xkb: Check strings length against request size Ensure that the given strings length in an XkbSetGeometry request remain within the limits of the size of the request. Signed-off-by: Olivier Fourdan <ofourdan@redhat.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 20079c36cf7d377938ca5478447d8b9045cb7d43) (cherry picked from commit f160e722672dbb2b5215870b47bcc51461d96ff1) Signed-off-by: Julien Cristau <jcristau@debian.org> --- xorg-server/xkb/xkb.c | 65 ++++++++++++++++++++++++++++++------------------- 1 file changed, 40 insertions(+), 25 deletions(-) diff --git a/xorg-server/xkb/xkb.c b/xorg-server/xkb/xkb.c index d1aaa02..7742b67 100644 --- a/xorg-server/xkb/xkb.c +++ b/xorg-server/xkb/xkb.c @@ -4952,25 +4952,29 @@ ProcXkbGetGeometry(ClientPtr client) /***====================================================================***/ -static char * -_GetCountedString(char **wire_inout, Bool swap) +static Status +_GetCountedString(char **wire_inout, ClientPtr client, char **str) { - char *wire, *str; + char *wire, *next; CARD16 len; wire = *wire_inout; len = *(CARD16 *) wire; - if (swap) { + if (client->swapped) { swaps(&len); } - str = malloc(len + 1); - if (str) { - memcpy(str, &wire[2], len); - str[len] = '\0'; - } - wire += XkbPaddedSize(len + 2); - *wire_inout = wire; - return str; + next = wire + XkbPaddedSize(len + 2); + /* Check we're still within the size of the request */ + if (client->req_len < + bytes_to_int32(next - (char *) client->requestBuffer)) + return BadValue; + *str = malloc(len + 1); + if (!*str) + return BadAlloc; + memcpy(*str, &wire[2], len); + *(*str + len) = '\0'; + *wire_inout = next; + return Success; } static Status @@ -4982,6 +4986,7 @@ _CheckSetDoodad(char **wire_inout, xkbAnyDoodadWireDesc any; xkbTextDoodadWireDesc text; XkbDoodadPtr doodad; + Status status; dWire = (xkbDoodadWireDesc *) (*wire_inout); any = dWire->any; @@ -5031,8 +5036,14 @@ _CheckSetDoodad(char **wire_inout, doodad->text.width = text.width; doodad->text.height = text.height; doodad->text.color_ndx = dWire->text.colorNdx; - doodad->text.text = _GetCountedString(&wire, client->swapped); - doodad->text.font = _GetCountedString(&wire, client->swapped); + status = _GetCountedString(&wire, client, &doodad->text.text); + if (status != Success) + return status; + status = _GetCountedString(&wire, client, &doodad->text.font); + if (status != Success) { + free (doodad->text.text); + return status; + } break; case XkbIndicatorDoodad: if (dWire->indicator.onColorNdx >= geom->num_colors) { @@ -5067,7 +5078,9 @@ _CheckSetDoodad(char **wire_inout, } doodad->logo.color_ndx = dWire->logo.colorNdx; doodad->logo.shape_ndx = dWire->logo.shapeNdx; - doodad->logo.logo_name = _GetCountedString(&wire, client->swapped); + status = _GetCountedString(&wire, client, &doodad->logo.logo_name); + if (status != Success) + return status; break; default: client->errorValue = _XkbErrCode2(0x4F, dWire->any.type); @@ -5299,18 +5312,20 @@ _CheckSetGeom(XkbGeometryPtr geom, xkbSetGeometryReq * req, ClientPtr client) char *wire; wire = (char *) &req[1]; - geom->label_font = _GetCountedString(&wire, client->swapped); + status = _GetCountedString(&wire, client, &geom->label_font); + if (status != Success) + return status; for (i = 0; i < req->nProperties; i++) { char *name, *val; - name = _GetCountedString(&wire, client->swapped); - if (!name) - return BadAlloc; - val = _GetCountedString(&wire, client->swapped); - if (!val) { + status = _GetCountedString(&wire, client, &name); + if (status != Success) + return status; + status = _GetCountedString(&wire, client, &val); + if (status != Success) { free(name); - return BadAlloc; + return status; } if (XkbAddGeomProperty(geom, name, val) == NULL) { free(name); @@ -5344,9 +5359,9 @@ _CheckSetGeom(XkbGeometryPtr geom, xkbSetGeometryReq * req, ClientPtr client) for (i = 0; i < req->nColors; i++) { char *name; - name = _GetCountedString(&wire, client->swapped); - if (!name) - return BadAlloc; + status = _GetCountedString(&wire, client, &name); + if (status != Success) + return status; if (!XkbAddGeomColor(geom, name, geom->num_colors)) { free(name); return BadAlloc; -- Alioth's /srv/git/code.x2go.org/vcxsrv.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/vcxsrv.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to tag 1.15.2.3-xp+vc2013+x2go1 in repository vcxsrv. commit a835056e065f0a85c5db25373b78b87c5fa34a08 Author: Mike DePaulo <mikedep333@gmail.com> Date: Fri Feb 20 06:25:36 2015 -0500 Correct building.txt in terms of Python --- building.txt | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/building.txt b/building.txt index 10814f7..d7dadfe 100644 --- a/building.txt +++ b/building.txt @@ -3,13 +3,14 @@ Prerequisites: - Visual C++ 2013 Express Edition (Update 3 is currently used) Visual C++ 2013 is probably also ok (not tested) - Cygwin. I am not sure of the exact packages, but perl and git are 2 of them. Only 32-bit Cygwin has been tested. -- Python (3.2.x used: http://www.python.org/) + lxml python bindings (3.3.x used, https://pypi.python.org/pypi/lxml/) -- Set the Env Var PYTHON3 to the path to your python.exe . For example, C:\Python32\python.exe +- Python 2.7.x (2.7.9 used) +- Make sure python 2.7 (not 3.2) is in the environment PATH +- Python 3 (3.2.x used: http://www.python.org/) + lxml python bindings (3.3.x used, https://pypi.python.org/pypi/lxml/) +- Set the Env Var PYTHON3 to the path to your Python 3 python.exe . For example, C:\Python32\python.exe - Gnuwin32 gperf, gawk, gzip, flex, bison (and it's dependancies), sed (and it's dependancies (http://gnuwin32.sourceforge.net/), gperf - nasm (http://nasm.sourceforge.net). Make sure the nasm directory is in your path - Make sure that the gnuwin32 binaries are in a directory path with no spaces, like 'C:\gnuwin32\bin' - Make sure the environment PATH includes the directory where the gnuwin32 binaries are -- Make sure python is in the environment PATH - To build the installer: NSIS Unicode - To build the installer, make sure NSIS Unicode is in the path (e.g. C:\Program Files (x86)\NSIS\Unicode) - If you are on 32-bit Windows instead of 64-bit like I am, edit setvcenv.sh for the 32-bit folder path differences -- Alioth's /srv/git/code.x2go.org/vcxsrv.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/vcxsrv.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to tag 1.15.2.3-xp+vc2013+x2go1 in repository vcxsrv. commit 33bd202f1e9d885ff62588d5225e3b8c4585d667 Author: Mike DePaulo <mikedep333@gmail.com> Date: Fri Feb 20 06:26:37 2015 -0500 VS 2013 Update 3 -> VS 2013 Update 4 --- building.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/building.txt b/building.txt index d7dadfe..f4d2821 100644 --- a/building.txt +++ b/building.txt @@ -1,6 +1,6 @@ Prerequisites: - Windows Vista or later (The built code can run on XP, but your build machine must be Vista or later. This is a limitation of Visual Studio 2013.) -- Visual C++ 2013 Express Edition (Update 3 is currently used) +- Visual C++ 2013 Express Edition (Update 4 is currently used) Visual C++ 2013 is probably also ok (not tested) - Cygwin. I am not sure of the exact packages, but perl and git are 2 of them. Only 32-bit Cygwin has been tested. - Python 2.7.x (2.7.9 used) -- Alioth's /srv/git/code.x2go.org/vcxsrv.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/vcxsrv.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to tag 1.15.2.3-xp+vc2013+x2go1 in repository vcxsrv. commit 22453645c5e058e6aa92d10b79834dc6a4c8a2a3 Author: Mike DePaulo <mikedep333@gmail.com> Date: Fri Feb 20 06:30:19 2015 -0500 Now using: VS Express -> VS Community Edition. Also, community edition is supposed to have the same features as Professional, so we can safely assume that Professional and other commercial editions will work fine. --- building.txt | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/building.txt b/building.txt index f4d2821..1f50a8a 100644 --- a/building.txt +++ b/building.txt @@ -1,7 +1,6 @@ Prerequisites: - Windows Vista or later (The built code can run on XP, but your build machine must be Vista or later. This is a limitation of Visual Studio 2013.) -- Visual C++ 2013 Express Edition (Update 4 is currently used) - Visual C++ 2013 is probably also ok (not tested) +- Visual Studio (C++) 2013. Update 4 is currently used. Express Edition, Community Edition, or one of the commercial editions should all work fine. (Currently built using community edition.) - Cygwin. I am not sure of the exact packages, but perl and git are 2 of them. Only 32-bit Cygwin has been tested. - Python 2.7.x (2.7.9 used) - Make sure python 2.7 (not 3.2) is in the environment PATH -- Alioth's /srv/git/code.x2go.org/vcxsrv.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/vcxsrv.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to tag 1.15.2.3-xp+vc2013+x2go1 in repository vcxsrv. commit a769ab7159f0718e189f1aaa8b6a5a046c66c52c Author: Mike DePaulo <mikedep333@gmail.com> Date: Fri Feb 20 06:35:11 2015 -0500 Increase version string to 1.15.2.3-xp+vc2013+x2go1 --- include/dix-config.h | 2 +- xorg-server/hw/xwin/XWin.rc | 2 +- xorg-server/installer/vcxsrv-64-debug.nsi | 2 +- xorg-server/installer/vcxsrv-64.nsi | 2 +- xorg-server/installer/vcxsrv-debug.nsi | 2 +- xorg-server/installer/vcxsrv.nsi | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/include/dix-config.h b/include/dix-config.h index 34bed96..c571d2e 100644 --- a/include/dix-config.h +++ b/include/dix-config.h @@ -366,7 +366,7 @@ #undef XORG_RELEASE /* Current Xorg version */ -#define XORG_VERSION_CURRENT (((1) * 10000000) + ((15) * 100000) + ((2) * 1000) + 2) +#define XORG_VERSION_CURRENT (((1) * 10000000) + ((15) * 100000) + ((2) * 1000) + 3) /* Xorg release date */ #define XORG_DATE "10 Sept 2009" diff --git a/xorg-server/hw/xwin/XWin.rc b/xorg-server/hw/xwin/XWin.rc index c8aadbf..3cff699 100644 --- a/xorg-server/hw/xwin/XWin.rc +++ b/xorg-server/hw/xwin/XWin.rc @@ -47,7 +47,7 @@ BEGIN LTEXT "VcXsrv X Server ", IDC_STATIC, 36, 8, 220, 8 LTEXT "https://sourceforge.net/u/mikedep333/vcxsrv/ci/xp-latestmsvc2013-x2gochanges...", IDC_STATIC, 36, 18, 220, 8 LTEXT "x2go-dev@lists.x2go.org", IDC_STATIC, 36, 28, 220, 8 - LTEXT "Version 1.15.2.2-xp+vc2013+x2go1 (10 Jan 2015)", IDC_STATIC, 36, 38, 220, 8 + LTEXT "Version 1.15.2.3-xp+vc2013+x2go1 (20 Feb 2015)", IDC_STATIC, 36, 38, 220, 8 DEFPUSHBUTTON "OK", IDOK, 105, 75, 50, 15 END diff --git a/xorg-server/installer/vcxsrv-64-debug.nsi b/xorg-server/installer/vcxsrv-64-debug.nsi index 46c19ac..f7fe237 100644 --- a/xorg-server/installer/vcxsrv-64-debug.nsi +++ b/xorg-server/installer/vcxsrv-64-debug.nsi @@ -21,7 +21,7 @@ Name "VcXsrv - XP Compatible" ; The file to write -OutFile "vcxsrv-64-debug.1.15.2.2-xp+vc2013+x2go1.installer.exe" +OutFile "vcxsrv-64-debug.1.15.2.3-xp+vc2013+x2go1.installer.exe" ; The default installation directory InstallDir $PROGRAMFILES64\VcXsrv diff --git a/xorg-server/installer/vcxsrv-64.nsi b/xorg-server/installer/vcxsrv-64.nsi index 9941215..b352ff4 100644 --- a/xorg-server/installer/vcxsrv-64.nsi +++ b/xorg-server/installer/vcxsrv-64.nsi @@ -21,7 +21,7 @@ Name "VcXsrv - XP Compatible" ; The file to write -OutFile "vcxsrv-64.1.15.2.2-xp+vc2013+x2go1.installer.exe" +OutFile "vcxsrv-64.1.15.2.3-xp+vc2013+x2go1.installer.exe" ; The default installation directory InstallDir $programfiles64\VcXsrv diff --git a/xorg-server/installer/vcxsrv-debug.nsi b/xorg-server/installer/vcxsrv-debug.nsi index a12ec9c..e7a7bb6 100644 --- a/xorg-server/installer/vcxsrv-debug.nsi +++ b/xorg-server/installer/vcxsrv-debug.nsi @@ -21,7 +21,7 @@ Name "VcXsrv - XP Compatible" ; The file to write -OutFile "vcxsrv-debug.1.15.2.2-xp+vc2013+x2go1.installer.exe" +OutFile "vcxsrv-debug.1.15.2.3-xp+vc2013+x2go1.installer.exe" ; The default installation directory InstallDir $PROGRAMFILES32\VcXsrv diff --git a/xorg-server/installer/vcxsrv.nsi b/xorg-server/installer/vcxsrv.nsi index a50f320..b192f75 100644 --- a/xorg-server/installer/vcxsrv.nsi +++ b/xorg-server/installer/vcxsrv.nsi @@ -21,7 +21,7 @@ Name "VcXsrv - XP Compatible" ; The file to write -OutFile "vcxsrv.1.15.2.2-xp+vc2013+x2go1.installer.exe" +OutFile "vcxsrv.1.15.2.3-xp+vc2013+x2go1.installer.exe" ; The default installation directory InstallDir $PROGRAMFILES32\VcXsrv -- Alioth's /srv/git/code.x2go.org/vcxsrv.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/vcxsrv.git