aboutsummaryrefslogtreecommitdiff
path: root/debian
diff options
context:
space:
mode:
authorOleksandr Shneyder <o.shneyder@phoca-gmbh.de>2015-02-10 19:43:41 +0100
committerMike Gabriel <mike.gabriel@das-netzwerkteam.de>2015-02-10 19:43:41 +0100
commit8c1b852abf692af4898368132292eb8c7278a7c2 (patch)
tree71be8528bc49423444534c510f9c4e1e23a7eff7 /debian
parent4a6ccd5037c8410f24dc177c9286272c2f47cd9d (diff)
downloadnx-libs-8c1b852abf692af4898368132292eb8c7278a7c2.tar.gz
nx-libs-8c1b852abf692af4898368132292eb8c7278a7c2.tar.bz2
nx-libs-8c1b852abf692af4898368132292eb8c7278a7c2.zip
Save session state in file.
210_nxagent_save_session_state.full.patch 210_nxcomp_save_session_state.full+lite.patch This patch adds a "state" option to NX (agent) which allows one to specify a file where nxagent will write its session state into.
Diffstat (limited to 'debian')
-rw-r--r--debian/patches/210_nxagent_save_session_state.full.patch176
-rw-r--r--debian/patches/210_nxcomp_save_session_state.full+lite.patch15
-rw-r--r--debian/patches/series2
3 files changed, 0 insertions, 193 deletions
diff --git a/debian/patches/210_nxagent_save_session_state.full.patch b/debian/patches/210_nxagent_save_session_state.full.patch
deleted file mode 100644
index 223d0bc7a..000000000
--- a/debian/patches/210_nxagent_save_session_state.full.patch
+++ /dev/null
@@ -1,176 +0,0 @@
-Description: Save session state in file
-Author: Oleksandr Shneyder <o.shneyder@phoca-gmbh.de>
-
---- a/nx-X11/programs/Xserver/hw/nxagent/Args.c
-+++ b/nx-X11/programs/Xserver/hw/nxagent/Args.c
-@@ -60,6 +60,7 @@
- #endif
- #include "Handlers.h"
- #include "Error.h"
-+#include "Reconnect.h"
-
- /*
- * NX includes and definitions.
-@@ -1090,6 +1091,11 @@
-
- return;
- }
-+ else if (!strcmp(name, "state"))
-+ {
-+ setStatePath(value);
-+ return;
-+ }
- else if (!strcmp(name, "fullscreen"))
- {
- if (nxagentReconnectTrap == True)
-@@ -1369,6 +1375,11 @@
- validateString(nxagentOptionFile));
- #endif
-
-+ /*
-+ * Init statePath
-+ */
-+ setStatePath("");
-+
- if (nxagentOptionFile == NULL)
- {
- return;
---- a/nx-X11/programs/Xserver/hw/nxagent/Init.c
-+++ b/nx-X11/programs/Xserver/hw/nxagent/Init.c
-@@ -63,7 +63,7 @@
-
- #include "NX.h"
- #include "NXlib.h"
--
-+#include "Reconnect.h"
- /*
- * Set here the required log level.
- */
-@@ -233,6 +233,7 @@
- fprintf(stderr, "Info: Agent running with pid '%d'.\n", getpid());
-
- fprintf(stderr, "Session: Starting session at '%s'.\n", GetTimeAsString());
-+ saveAgentState("STARTING");
- }
-
- /*
---- a/nx-X11/programs/Xserver/hw/nxagent/Reconnect.c
-+++ b/nx-X11/programs/Xserver/hw/nxagent/Reconnect.c
-@@ -118,6 +118,33 @@
-
- static enum RECONNECTION_STEP failedStep;
-
-+#include <limits.h>
-+
-+/*
-+ * Path of state File
-+ */
-+char stateFile[PATH_MAX];
-+
-+
-+void setStatePath(char* path)
-+{
-+ strncpy(stateFile, path, PATH_MAX-1);
-+}
-+
-+void saveAgentState(char* state)
-+{
-+ FILE* fptr;
-+ if(strlen(stateFile))
-+ {
-+ fptr=fopen(stateFile, "w");
-+ if(!fptr)
-+ return;
-+ fprintf(fptr,"%s", state);
-+ fclose(fptr);
-+ }
-+}
-+
-+
- int nxagentHandleConnectionStates(void)
- {
- #ifdef TEST
-@@ -211,6 +238,7 @@
- fprintf(stderr, "Session: Display failure detected at '%s'.\n", GetTimeAsString());
-
- fprintf(stderr, "Session: Suspending session at '%s'.\n", GetTimeAsString());
-+ saveAgentState("SUSPENDING");
- }
-
- nxagentDisconnectSession();
-@@ -265,6 +293,7 @@
- fprintf(stderr, "Session: Session suspended at '%s'.\n", GetTimeAsString());
- #endif
- }
-+ saveAgentState("SUSPENDED");
-
- nxagentResetDisplayHandlers();
-
-@@ -622,6 +651,7 @@
- #else
- fprintf(stderr, "Session: Session resumed at '%s'.\n", GetTimeAsString());
- #endif
-+ saveAgentState("RUNNING");
-
- nxagentRemoveSplashWindow(NULL);
-
-@@ -785,12 +815,14 @@
- if (nxagentSessionState == SESSION_GOING_DOWN)
- {
- fprintf(stderr, "Session: Suspending session at '%s'.\n", GetTimeAsString());
-+ saveAgentState("SUSPENDING");
-
- nxagentDisconnectSession();
- }
- else if (nxagentSessionState == SESSION_GOING_UP)
- {
- fprintf(stderr, "Session: Resuming session at '%s'.\n", GetTimeAsString());
-+ saveAgentState("RESUMING");
-
- if (nxagentReconnectSession())
- {
-@@ -803,6 +835,7 @@
- fprintf(stderr, "Session: Display failure detected at '%s'.\n", GetTimeAsString());
-
- fprintf(stderr, "Session: Suspending session at '%s'.\n", GetTimeAsString());
-+ saveAgentState("SUSPENDING");
-
- nxagentDisconnectSession();
- }
---- a/nx-X11/programs/Xserver/hw/nxagent/Reconnect.h
-+++ b/nx-X11/programs/Xserver/hw/nxagent/Reconnect.h
-@@ -34,6 +34,8 @@
- Bool nxagentReconnectSession(void);
- int nxagentHandleConnectionStates(void);
- void nxagentHandleConnectionChanges(void);
-+void setStatePath(char*);
-+void saveAgentState(char*);
-
- enum SESSION_STATE
- {
---- a/nx-X11/programs/Xserver/hw/nxagent/X/NXdispatch.c
-+++ b/nx-X11/programs/Xserver/hw/nxagent/X/NXdispatch.c
-@@ -609,6 +609,7 @@
- #endif
-
- nxagentSessionState = SESSION_UP;
-+ saveAgentState("RUNNING");
- }
-
- #ifdef BLOCKS
-@@ -823,6 +824,7 @@
- */
-
- fprintf(stderr, "Session: Terminating session at '%s'.\n", GetTimeAsString());
-+ saveAgentState("TERMINATING");
-
- nxagentWaitDisplay();
-
-@@ -833,6 +835,7 @@
- {
- NXShadowDestroy();
- }
-+ saveAgentState("TERMINATED");
-
- KillAllClients();
- DEALLOCATE_LOCAL(clientReady);
diff --git a/debian/patches/210_nxcomp_save_session_state.full+lite.patch b/debian/patches/210_nxcomp_save_session_state.full+lite.patch
deleted file mode 100644
index 1ef4440d8..000000000
--- a/debian/patches/210_nxcomp_save_session_state.full+lite.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Description: Ignore state=<statefile> option in nxproxy/nxcomp
-Author: Oleksandr Shneyder <o.shneyder@phoca-gmbh.de>
-
---- a/nxcomp/Loop.cpp
-+++ b/nxcomp/Loop.cpp
-@@ -8872,7 +8872,8 @@
- }
- else if (strcasecmp(name, "defer") == 0 ||
- strcasecmp(name, "tile") == 0 ||
-- strcasecmp(name, "menu") == 0)
-+ strcasecmp(name, "menu") == 0 ||
-+ strcasecmp(name, "state") == 0 )
- {
- #ifdef DEBUG
- *logofs << "Loop: Ignoring agent option '" << name
diff --git a/debian/patches/series b/debian/patches/series
index 48b9abddc..9e0e64701 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,5 +1,3 @@
-210_nxagent_save_session_state.full.patch
-210_nxcomp_save_session_state.full+lite.patch
211_nxcomp_set_default_options.full+lite.patch
212_nxcomp_build-on-Android.full+lite.patch
220_nxproxy_bind-loopback-only.full+lite.patch