summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorks.madhusudan <ks.madhusudan>2007-06-01 11:21:34 +0000
committerks.madhusudan <ks.madhusudan>2007-06-01 11:21:34 +0000
commitba5f8a4fa794bcd6271e0d50726e6d64e2f39ce1 (patch)
tree8e78e7804e510a460260bbc27c88199d14760596
parente01b70a1e74fee650ac452e0a78c09769fecaba7 (diff)
downloadtog-pegasus-TASK-Bug2102Final-branch.zip
tog-pegasus-TASK-Bug2102Final-branch.tar.gz
tog-pegasus-TASK-Bug2102Final-branch.tar.xz
TITLE: Remote CMPI on Windows
-rw-r--r--src/Pegasus/ProviderManager2/CMPIR/Linkage.h43
-rw-r--r--src/Pegasus/ProviderManager2/CMPIR/cmpir_common.h116
2 files changed, 116 insertions, 43 deletions
diff --git a/src/Pegasus/ProviderManager2/CMPIR/Linkage.h b/src/Pegasus/ProviderManager2/CMPIR/Linkage.h
deleted file mode 100644
index d750893..0000000
--- a/src/Pegasus/ProviderManager2/CMPIR/Linkage.h
+++ /dev/null
@@ -1,43 +0,0 @@
-//%2006////////////////////////////////////////////////////////////////////////
-//
-// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
-// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
-// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
-// IBM Corp.; EMC Corporation, The Open Group.
-// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
-// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
-// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
-// EMC Corporation; VERITAS Software Corporation; The Open Group.
-// Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
-// EMC Corporation; Symantec Corporation; The Open Group.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to
-// deal in the Software without restriction, including without limitation the
-// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-// sell copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
-// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
-// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
-// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-//==============================================================================
-//
-//%/////////////////////////////////////////////////////////////////////////////
-
-#include <Pegasus/Common/Config.h>
-
-#ifndef PEGASUS_CMPI_PROXY_LINKAGE
-# ifdef PEGASUS_CMPI_PROXY_INTERNAL
-# define PEGASUS_CMPI_PROXY_LINKAGE PEGASUS_EXPORT
-# else
-# define PEGASUS_CMPI_PROXY_LINKAGE PEGASUS_IMPORT
-# endif
-#endif
-
diff --git a/src/Pegasus/ProviderManager2/CMPIR/cmpir_common.h b/src/Pegasus/ProviderManager2/CMPIR/cmpir_common.h
new file mode 100644
index 0000000..6465d5f
--- /dev/null
+++ b/src/Pegasus/ProviderManager2/CMPIR/cmpir_common.h
@@ -0,0 +1,116 @@
+//%2006////////////////////////////////////////////////////////////////////////
+//
+// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
+// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
+// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
+// IBM Corp.; EMC Corporation, The Open Group.
+// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
+// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
+// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
+// EMC Corporation; VERITAS Software Corporation; The Open Group.
+// Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
+// EMC Corporation; Symantec Corporation; The Open Group.
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to
+// deal in the Software without restriction, including without limitation the
+// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+// sell copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
+// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
+// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
+// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
+// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+//==============================================================================
+//
+//%/////////////////////////////////////////////////////////////////////////////
+
+/* This files contains Macro's for platform / os specific system calls and c
+functions with different names */
+
+#ifndef _CMPIR_PROXY_PROVIDER_H_
+#define _CMPIR_PROXY_PROVIDER_H_
+
+#include <Pegasus/Common/Config.h>
+
+#ifdef PEGASUS_OS_TYPE_UNIX
+
+#define lloonngg long long int
+#define CMPIR_THREAD_CDECL CMPI_THREAD_CDECL
+#define PEGASUS_CMPIR_ATOL(x) atoll(x)
+#define PEGASUS_CMPIR_CDECL
+#define PEGASUS_CMPIR_IO_BUFPTR_TYPE void
+#define PEGASUS_CMPIR_CLOSESOCKET(socket_hdl) close(socket_hdl)
+#define PEGASUS_CMPIR_FREELIBRARY(libhandle) dlclose(libhandle)
+#define PEGASUS_CMPIR_GETGID() getgid()
+#define PEGASUS_CMPIR_GETPID() getpid()
+#define PEGASUS_CMPIR_GETUID() getuid()
+#define PEGASUS_CMPIR_GETPROCADDRESS(hLibrary, function) dlsym(hLibrary, function)
+#define PEGASUS_CMPIR_INVALID_SOCKET (-1)
+
+#ifndef PEGASUS_PLATFORM_HPUX_PARISC_ACC
+#define PEGASUS_CMPIR_LIBTYPE "lib%s.so"
+#else
+#define PEGASUS_CMPIR_LIBTYPE "lib%s.sl"
+#endif
+
+#define PEGASUS_CMPIR_LOADLIBRARY(filename,mode) dlopen (filename, mode)
+#define PEGASUS_CMPIR_RECV(a,b,c,d) read(a,b,c)
+#define PEGASUS_CMPIR_SEND(a,b,c,d) write(a,b,c)
+#define PEGASUS_CMPIR_SLEEP(duration) sleep(duration)
+#define PEGASUS_CMPIR_STDCALL
+#define PEGASUS_CMPIR_STRCASECMP(a,b) strcasecmp(a,b)
+#define PEGASUS_CMPIR_VSPRINTF(a,b,c,d) vsnprintf(a,b,c,d)
+#define PEGASUS_CMPIR_WSAGETLASTERROR errno
+#endif
+
+#ifdef PEGASUS_OS_TYPE_WINDOWS
+
+#define lloonngg __int64
+#define ssize_t size_t
+
+#ifndef FD_SETSIZE
+#define FD_SETSIZE 1024
+#endif
+
+#define CMPIR_THREAD_CDECL
+#define PEGASUS_CMPIR_ATOL(x) _atoi64(x)
+#define PEGASUS_CMPIR_CDECL __cdecl
+#define PEGASUS_CMPIR_IO_BUFPTR_TYPE int
+#define PEGASUS_CMPIR_CLOSESOCKET(socket_hdl) closesocket(socket_hdl)
+#define PEGASUS_CMPIR_LIBTYPE "%s.dll"
+#define PEGASUS_CMPIR_LOADLIBRARY(filename,mode) LoadLibrary(filename)
+#define PEGASUS_CMPIR_FREELIBRARY(libhandle) FreeLibrary(libhandle)
+#define PEGASUS_CMPIR_GETGID() 1
+#define PEGASUS_CMPIR_GETPID() _getpid()
+#define PEGASUS_CMPIR_GETPROCADDRESS(hLibrary,function) GetProcAddress(hLibrary, function)
+#define PEGASUS_CMPIR_GETUID() 1
+#define PEGASUS_CMPIR_INVALID_SOCKET INVALID_SOCKET
+#define PEGASUS_CMPIR_RECV(a,b,c,d) recv(a,b,c,d)
+#define PEGASUS_CMPIR_SEND(a,b,c,d) send(a,b,c,d)
+#define PEGASUS_CMPIR_SLEEP(duration) Sleep(duration)
+#define PEGASUS_CMPIR_STDCALL __stdcall
+#define PEGASUS_CMPIR_STRCASECMP(a,b) _stricmp(a,b)
+#define PEGASUS_CMPIR_VSPRINTF(a, b, c,d) vsprintf(a,c,d)
+#define PEGASUS_CMPIR_WSAGETLASTERROR WSAGetLastError()
+
+
+typedef unsigned char Uint8;
+typedef unsigned int Uint32;
+typedef size_t socklen_t;
+
+int gettimeofday (struct timeval *t,void * );
+#endif
+
+
+#ifdef PEGASUS_PLATFORM_ZOS_ZSERIES_IBM
+#define atoll(X) strtoll(X, NULL, 10)
+#endif
+
+#endif // End of cmpir_comm.h