Started work on external event sender
authorVictor Kirhenshtein <victor@netxms.org>
Fri, 8 Oct 2004 09:03:44 +0000 (09:03 +0000)
committerVictor Kirhenshtein <victor@netxms.org>
Fri, 8 Oct 2004 09:03:44 +0000 (09:03 +0000)
.gitattributes
src/nxevent/nxevent.cpp [new file with mode: 0644]
src/nxevent/nxevent.dsp [new file with mode: 0644]
src/nxevent/nxevent.dsw [new file with mode: 0644]
src/nxevent/nxevent.h [new file with mode: 0644]

index 8c70b3c..60480de 100644 (file)
@@ -344,6 +344,10 @@ src/libnxcl/mib.cpp -text
 src/libnxcl/misc.cpp -text
 src/libnxcl/objects.cpp -text
 src/libnxcl/users.cpp -text
+src/nxevent/nxevent.cpp -text
+src/nxevent/nxevent.dsp -text
+src/nxevent/nxevent.dsw -text
+src/nxevent/nxevent.h -text
 src/server/Makefile.am -text
 src/server/core/.cvsignore -text
 src/server/core/Makefile.am -text
diff --git a/src/nxevent/nxevent.cpp b/src/nxevent/nxevent.cpp
new file mode 100644 (file)
index 0000000..2b08d9d
--- /dev/null
@@ -0,0 +1,72 @@
+/* 
+** NetXMS - Network Management System
+** Command line event sender
+** Copyright (C) 2003, 2004 Victor Kirhenshtein
+**
+** 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 2 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, write to the Free Software
+** Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+**
+** $module: nxevent.cpp
+**
+**/
+
+#include "nxevent.h"
+
+
+//
+// Static data
+//
+
+static WORD m_wServerPort = 4701;
+
+
+//
+// Entry point
+//
+
+int main(int argc, char *argv[])
+{
+   int ch;
+   BOOL bStart = TRUE;
+
+   // Parse command line
+   opterr = 1;
+   while((ch = getopt(argc, argv, "a:bi:hlnp:qs:vw:")) != -1)
+   {
+      switch(ch)
+      {
+         case 'h':   // Display help and exit
+            printf("Usage: nxevent [<options>] <server> <event_id> [<param_1> [... <param_N>]]\n"
+                   "Valid options are:\n"
+                   "   -h           : Display help and exit.\n"
+                   "   -p <port>    : Specify server's port number. Default is %d.\n"
+                   "   -w <seconds> : Specify command timeout (default is 3 seconds)\n"
+                   "\n", m_wServerPort);
+            bStart = FALSE;
+            break;
+         case '?':
+            bStart = FALSE;
+            break;
+         default:
+            break;
+      }
+   }
+
+   // Do requested action if everything is OK
+   if (bStart)
+   {
+   }
+
+   return 0;
+}
diff --git a/src/nxevent/nxevent.dsp b/src/nxevent/nxevent.dsp
new file mode 100644 (file)
index 0000000..e6ff902
--- /dev/null
@@ -0,0 +1,144 @@
+# Microsoft Developer Studio Project File - Name="nxevent" - Package Owner=<4>
+# Microsoft Developer Studio Generated Build File, Format Version 6.00
+# ** DO NOT EDIT **
+
+# TARGTYPE "Win32 (x86) Console Application" 0x0103
+
+CFG=nxevent - Win32 Debug
+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
+!MESSAGE use the Export Makefile command and run
+!MESSAGE 
+!MESSAGE NMAKE /f "nxevent.mak".
+!MESSAGE 
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE 
+!MESSAGE NMAKE /f "nxevent.mak" CFG="nxevent - Win32 Debug"
+!MESSAGE 
+!MESSAGE Possible choices for configuration are:
+!MESSAGE 
+!MESSAGE "nxevent - Win32 Release" (based on "Win32 (x86) Console Application")
+!MESSAGE "nxevent - Win32 Debug" (based on "Win32 (x86) Console Application")
+!MESSAGE 
+
+# Begin Project
+# PROP AllowPerConfigDependencies 0
+# PROP Scc_ProjName ""
+# PROP Scc_LocalPath ""
+CPP=cl.exe
+RSC=rc.exe
+
+!IF  "$(CFG)" == "nxevent - Win32 Release"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 0
+# PROP BASE Output_Dir "Release"
+# PROP BASE Intermediate_Dir "Release"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 0
+# PROP Output_Dir "Release"
+# PROP Intermediate_Dir "Release"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
+# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\..\include" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
+# ADD BASE RSC /l 0x409 /d "NDEBUG"
+# ADD RSC /l 0x409 /d "NDEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib  kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib libnetxms.lib libnxcscp.lib libnxcl.lib /nologo /subsystem:console /machine:I386 /libpath:"..\libnetxms\Release" /libpath:"..\libnxcscp\Release" /libpath:"..\libnxcl\Release"
+# Begin Special Build Tool
+SOURCE="$(InputPath)"
+PostBuild_Desc=Copy files
+PostBuild_Cmds=copy Release\nxevent.exe C:\NetXMS\bin
+# End Special Build Tool
+
+!ELSEIF  "$(CFG)" == "nxevent - Win32 Debug"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 1
+# PROP BASE Output_Dir "Debug"
+# PROP BASE Intermediate_Dir "Debug"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 1
+# PROP Output_Dir "Debug"
+# PROP Intermediate_Dir "Debug"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ  /c
+# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "..\..\include" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ  /c
+# ADD BASE RSC /l 0x409 /d "_DEBUG"
+# ADD RSC /l 0x409 /d "_DEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib  kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib libnetxms.lib libnxcscp.lib libnxcl.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"..\libnetxms\Debug" /libpath:"..\libnxcscp\Debug" /libpath:"..\libnxcl\Debug"
+# Begin Special Build Tool
+SOURCE="$(InputPath)"
+PostBuild_Desc=Copy files
+PostBuild_Cmds=copy Debug\nxevent.exe ..\..\bin
+# End Special Build Tool
+
+!ENDIF 
+
+# Begin Target
+
+# Name "nxevent - Win32 Release"
+# Name "nxevent - Win32 Debug"
+# Begin Group "Source Files"
+
+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
+# Begin Source File
+
+SOURCE=.\nxevent.cpp
+# End Source File
+# End Group
+# Begin Group "Header Files"
+
+# PROP Default_Filter "h;hpp;hxx;hm;inl"
+# Begin Source File
+
+SOURCE=..\..\include\nms_common.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\include\nms_cscp.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\include\nms_threads.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\include\nms_util.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\include\nxclapi.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\include\nxcscpapi.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\nxevent.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\include\unicode.h
+# End Source File
+# End Group
+# Begin Group "Resource Files"
+
+# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
+# End Group
+# End Target
+# End Project
diff --git a/src/nxevent/nxevent.dsw b/src/nxevent/nxevent.dsw
new file mode 100644 (file)
index 0000000..918149a
--- /dev/null
@@ -0,0 +1,29 @@
+Microsoft Developer Studio Workspace File, Format Version 6.00
+# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
+
+###############################################################################
+
+Project: "nxevent"=.\nxevent.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+}}}
+
+###############################################################################
+
+Global:
+
+Package=<5>
+{{{
+}}}
+
+Package=<3>
+{{{
+}}}
+
+###############################################################################
+
diff --git a/src/nxevent/nxevent.h b/src/nxevent/nxevent.h
new file mode 100644 (file)
index 0000000..4f72a86
--- /dev/null
@@ -0,0 +1,30 @@
+/* 
+** NetXMS - Network Management System
+** Command line event sender
+** Copyright (C) 2003, 2004 Victor Kirhenshtein
+**
+** 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 2 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, write to the Free Software
+** Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+**
+** $module: nxevent.h
+**
+**/
+
+#ifndef _nxevent_h_
+#define _nxevent_h_
+
+#include <nms_common.h>
+#include <getopt.h>
+
+#endif