From d4d3fe0e6e77a58e68defc5895a589a681d7d092 Mon Sep 17 00:00:00 2001 From: Nito Martinez Date: Fri, 13 Feb 2015 13:26:27 +0100 Subject: Allow version 4-digit version comparison/handshake (400_nxcomp-version.full+lite.patch). --- debian/patches/400_nxcomp-version.full+lite.patch | 240 ---------------------- 1 file changed, 240 deletions(-) delete mode 100644 debian/patches/400_nxcomp-version.full+lite.patch (limited to 'debian/patches/400_nxcomp-version.full+lite.patch') diff --git a/debian/patches/400_nxcomp-version.full+lite.patch b/debian/patches/400_nxcomp-version.full+lite.patch deleted file mode 100644 index 703cec823..000000000 --- a/debian/patches/400_nxcomp-version.full+lite.patch +++ /dev/null @@ -1,240 +0,0 @@ -Description: Allow version 4-digit version comparison/handshake -Author: Nito Martinez ---- a/nxcomp/Control.cpp -+++ b/nxcomp/Control.cpp -@@ -15,6 +15,7 @@ - /* */ - /**************************************************************************/ - -+#include "NX.h" - #include "NXpack.h" - - #include "Control.h" -@@ -594,44 +595,17 @@ - RemoteVersionMajor = -1; - RemoteVersionMinor = -1; - RemoteVersionPatch = -1; -+ RemoteVersionMaintenancePatch = -1; - - CompatVersionMajor = -1; - CompatVersionMinor = -1; - CompatVersionPatch = -1; -+ CompatVersionMaintenancePatch = -1; - -- char version[32]; -- -- strcpy(version, VERSION); -- -- char *value; -- -- value = strtok(version, "."); -- -- for (int i = 0; value != NULL && i < 3; i++) -- { -- switch (i) -- { -- case 0: -- -- LocalVersionMajor = atoi(value); -- -- break; -- -- case 1: -- -- LocalVersionMinor = atoi(value); -- -- break; -- -- case 2: -- -- LocalVersionPatch = atoi(value); -- -- break; -- } -- -- value = strtok(NULL, "."); -- } -+ LocalVersionMajor = NXMajorVersion(); -+ LocalVersionMinor = NXMinorVersion(); -+ LocalVersionPatch = NXPatchVersion(); -+ LocalVersionMaintenancePatch = NXMaintenancePatchVersion(); - - #ifdef TEST - *logofs << "Control: Major version is " << LocalVersionMajor ---- a/nxcomp/Control.h -+++ b/nxcomp/Control.h -@@ -299,17 +299,26 @@ - // Version number of local and remote proxy. - // - -+ /* -+ * LocalVersionMaintenancePatch, RemoteVersionMaintenancePatch -+ * CompatVersionMaintenancePatch -+ * -+ * currently not used, for future compatibility checks -+ */ - int LocalVersionMajor; - int LocalVersionMinor; - int LocalVersionPatch; -+ int LocalVersionMaintenancePatch; - - int RemoteVersionMajor; - int RemoteVersionMinor; - int RemoteVersionPatch; -+ int RemoteVersionMaintenancePatch; - - int CompatVersionMajor; - int CompatVersionMinor; - int CompatVersionPatch; -+ int CompatVersionMaintenancePatch; - - // - // Which unpack methods are implemented in proxy? ---- a/nxcomp/Loop.cpp -+++ b/nxcomp/Loop.cpp -@@ -14250,7 +14250,8 @@ - cerr << "NXPROXY - " << "Version " - << control -> LocalVersionMajor << "." - << control -> LocalVersionMinor << "." -- << control -> LocalVersionPatch; -+ << control -> LocalVersionPatch << "." -+ << control -> LocalVersionMaintenancePatch; - - cerr << endl; - } ---- a/nxcomp/Makefile.in -+++ b/nxcomp/Makefile.in -@@ -105,7 +105,8 @@ - - CSRC = MD5.c \ - Pack.c \ -- Vars.c -+ Vars.c \ -+ Version.c - - CXXSRC = Loop.cpp \ - Children.cpp \ ---- a/nxcomp/NX.h -+++ b/nxcomp/NX.h -@@ -442,6 +442,12 @@ - - extern void NXTransCleanup(void) __attribute__((noreturn)); - -+extern const char* NXVersion(); -+extern int NXMajorVersion(); -+extern int NXMinorVersion(); -+extern int NXPatchVersion(); -+extern int NXMaintenancePatchVersion(); -+ - #ifdef __cplusplus - } - #endif ---- /dev/null -+++ b/nxcomp/Version.c -@@ -0,0 +1,106 @@ -+/**************************************************************************/ -+/* */ -+/* Copyright (C) 2014 Qindel http://qindel.com and QVD http://theqvd.com */ -+/* */ -+/* This program is free software; you can redistribute it and/or modify */ -+/* it under the terms of the GNU General Public License as published by */ -+/* the Free Software Foundation; either version 3 of the License, or (at */ -+/* your option) any later version. */ -+/* */ -+/* This program is distributed in the hope that it will be useful, but */ -+/* WITHOUT ANY WARRANTY; without even the implied warranty of */ -+/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. */ -+/* See the GNU General Public License for more details. */ -+/* */ -+/* You should have received a copy of the GNU General Public License */ -+/* along with this program; if not, see . */ -+/* */ -+/* Additional permission under GNU GPL version 3 section 7 */ -+/* */ -+/* If you modify this Program, or any covered work, by linking or */ -+/* combining it with [name of library] (or a modified version of that */ -+/* library), containing parts covered by the terms of [name of library's */ -+/* license], the licensors of this Program grant you additional */ -+/* permission to convey the resulting work. {Corresponding Source for a */ -+/* non-source form of such a combination shall include the source code */ -+/* for the parts of [name of library] used as well as that of the covered */ -+/* work.} */ -+/* */ -+/* */ -+/**************************************************************************/ -+ -+#include -+#include -+#include -+#include "NX.h" -+ -+ -+static int _NXVersionMajor = -1; -+static int _NXVersionMinor = -1; -+static int _NXVersionPatch = -1; -+static int _NXVersionMaintenancePatch = -1; -+ -+ -+const char* NXVersion() { -+ const char *version = VERSION; -+ return version; -+} -+ -+void _parseNXVersion() { -+ char version[32]; -+ int i; -+ strcpy(version, VERSION); -+ -+ char *value; -+ /* Reset values to 0 if undefined */ -+ _NXVersionMajor = _NXVersionMinor = _NXVersionPatch = _NXVersionMaintenancePatch = 0; -+ -+ -+#define NXVERSIONSEPARATOR "." -+ value = strtok(version, NXVERSIONSEPARATOR); -+ -+ for (i = 0; value != NULL && i < 4; i++) -+ { -+ switch (i) -+ { -+ case 0: -+ _NXVersionMajor = atoi(value); -+ break; -+ -+ case 1: -+ _NXVersionMinor = atoi(value); -+ break; -+ -+ case 2: -+ _NXVersionPatch = atoi(value); -+ break; -+ -+ case 3: -+ _NXVersionMaintenancePatch = atoi(value); -+ break; -+ } -+ -+ value = strtok(NULL, NXVERSIONSEPARATOR); -+ } -+} -+ -+int NXMajorVersion() { -+ if (_NXVersionMajor == -1) -+ _parseNXVersion(); -+ return _NXVersionMajor; -+} -+int NXMinorVersion() { -+ if (_NXVersionMinor == -1) -+ _parseNXVersion(); -+ return _NXVersionMinor; -+} -+int NXPatchVersion() { -+ if (_NXVersionPatch == -1) -+ _parseNXVersion(); -+ return _NXVersionPatch; -+} -+int NXMaintenancePatchVersion() { -+ if (_NXVersionMaintenancePatch == -1) -+ _parseNXVersion(); -+ return _NXVersionMaintenancePatch; -+} -- cgit v1.2.3