Forráskód Böngészése

Abhängigkeiten bereinigt.

Rind 3 éve
szülő
commit
e16940705c

+ 29 - 0
gfasysinfo/src/gfaspi.h

@@ -0,0 +1,29 @@
+// gfaspi.h :
+//
+
+#if !defined(AGD_GFASPI_H__F1751711_2AAA_48F4_9959_E6F56DA316B8__INCLUDED_)
+#define AGD_GFASPI_H__F1751711_2AAA_48F4_9959_E6F56DA316B8__INCLUDED_
+
+#ifdef __cplusplus
+extern "C" {
+#endif	//	__cplusplus
+
+/////////////////////////////////////////////////////////////////////////////
+// gfaspi.h - Declarations:
+
+typedef struct _TIVA_ADC
+{
+	int UVers;
+	int UBatV3;
+	int Temp;
+	int UV5Vsys;
+	int UV3V6Bat;
+	int TempTIVA;
+}TIVA_ADC, *LPTIVA_ADC;
+typedef const TIVA_ADC *LPCTIVA_ADC;
+
+/////////////////////////////////////////////////////////////////////////////
+#ifdef __cplusplus
+}
+#endif	//	__cplusplus
+#endif	//	!defined(AGD_GFASPI_H__F1751711_2AAA_48F4_9959_E6F56DA316B8__INCLUDED_)

+ 21 - 3
gfasysinfo/src/main.cpp

@@ -46,6 +46,7 @@
 static volatile bool						g_fRun		= false;
 static volatile bool						g_fPause	= false;
 static volatile bool						g_fZombie	= false;
+static sigset_t								g_set;
 
 /////////////////////////////////////////////////////////////////////////////
 
@@ -690,6 +691,16 @@ static void _EnumStorageDevices(GFA_SYSINFO_STORAGE_DEVICE_MAP &sdm, MountMap &m
 
 /////////////////////////////////////////////////////////////////////////////
 
+static void _LockSHM(HSHM hShm)
+{
+	::GfaIpcLockSHMAndSigBlock(hShm, &g_set);
+}
+
+static void _UnlockSHM(HSHM hShm)
+{
+	::GfaIpcUnlockSHMAndSigUnblock(hShm, &g_set);
+}
+
 static void _SigHandler(int sig)
 {
 	UNUSED(sig);
@@ -736,6 +747,8 @@ int main(int argc, char *argv[])
 
 	struct sigaction sa;
 	memset(&sa, 0, sizeof(sa));
+	::sigfillset(&g_set);
+	::sigdelset(&g_set, SIGSEGV);
 
 	sa.sa_handler = _SigHandler;
     sigaction(SIGHUP, &sa, NULL);	// handles user's terminal disconnect
@@ -752,6 +765,10 @@ int main(int argc, char *argv[])
 
 	/////////////////////////////////////////////////////////////////////////
 	// initialize
+	
+	CMySqlInfo::EXEC_PARAMS myep;
+	CStgDevInfo::EXEC_PARAMS step;
+	CSpiInfo::EXEC_PARAMS spep;
 
 	do
 	{
@@ -763,6 +780,7 @@ int main(int argc, char *argv[])
 			break;
 	    }
 
+		::GfaIpcAppCtrlSetLockUnlockFunctions(hAC, _LockSHM, _UnlockSHM);
 		::GfaIpcAppCtrlSetState(hAC, GIAS_Initializing);
 
 		if(!::GfaIpcAppCtrlCreateSysInfo(hAC))
@@ -778,13 +796,13 @@ int main(int argc, char *argv[])
 		TRACE("My PID:   %d\n", getpid());
 		TRACE("My Cycle: %d\n", _CYCLE_INTV);
 
-		CMySqlInfo::EXEC_PARAMS myep = {hAC, sDbUser, sDbPass};
+		myep = {hAC, sDbUser, sDbPass};
 		mySqlInfo.Create(&myep);
 		
-		CStgDevInfo::EXEC_PARAMS step = {hAC};
+		step = {hAC};
 		stgDevInfo.Create(&step);
 		
-		CSpiInfo::EXEC_PARAMS spep = {hAC};
+		spep = {hAC};
 		spiInfo.Create(&spep);
 
 		g_fZombie = false;

+ 2 - 2
gfasysinfo/src/mysqlinfo.cpp

@@ -11,7 +11,7 @@
 #include "mysqlinfo.h"
 #include "mysqlwrap.h"
 #include "procfile.h"
-#include "../../src/procmem.h"
+#include <gfa/procmem.h>
 
 /////////////////////////////////////////////////////////////////////////////
 
@@ -562,4 +562,4 @@ void* CMySqlInfo::ThreadRoutine(void *pParam)
 
 	TRACE("%s exit.\n", "CMySqlInfo::ThreadRoutine");
 	return NULL;
-}
+}

+ 1 - 1
gfasysinfo/src/spiinfo.h

@@ -7,7 +7,7 @@
 #include <gfa/gfaipc.h>
 #include <gfa/ipcpriv.h>
 #include <gfa/thread.h>
-#include <gfa/gfaspi.h>
+#include "gfaspi.h"
 
 /////////////////////////////////////////////////////////////////////////////
 // spiinfo.h - Declarations: