myserver-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[myserver-commit] [2934] Fixed Windows build problems.


From: Giuseppe Scrivano
Subject: [myserver-commit] [2934] Fixed Windows build problems.
Date: Sun, 02 Nov 2008 22:29:55 +0000

Revision: 2934
          http://svn.sv.gnu.org/viewvc/?view=rev&root=myserver&revision=2934
Author:   gscrivano
Date:     2008-11-02 22:29:54 +0000 (Sun, 02 Nov 2008)

Log Message:
-----------
Fixed Windows build problems.

Modified Paths:
--------------
    trunk/myserver/include/base/socket/socket.h
    trunk/myserver/include/log/log_manager.h
    trunk/myserver/include/server/server.h
    trunk/myserver/src/base/file/file.cpp
    trunk/myserver/src/base/process/process_server_manager.cpp
    trunk/myserver/src/base/socket/socket.cpp
    trunk/myserver/src/connections_scheduler/connections_scheduler.cpp
    trunk/myserver/src/http_handler/isapi/isapi.cpp
    trunk/myserver/src/http_handler/wincgi/wincgi.cpp
    trunk/myserver/src/myserver.cpp
    trunk/myserver/tests/test_connections_scheduler.cpp

Modified: trunk/myserver/include/base/socket/socket.h
===================================================================
--- trunk/myserver/include/base/socket/socket.h 2008-11-02 21:24:22 UTC (rev 
2933)
+++ trunk/myserver/include/base/socket/socket.h 2008-11-02 22:29:54 UTC (rev 
2934)
@@ -71,7 +71,7 @@
 
        static void stopBlockingOperations(bool);
        virtual FileHandle getHandle();
-       int setHandle(FileHandle);
+       void setHandle(FileHandle);
        static MYSERVER_HOSTENT *gethostbyaddr(char* addr, int len, int type);
        static MYSERVER_HOSTENT *gethostbyname(const char*);
        static int gethostname(char*, int);
@@ -108,7 +108,11 @@
   virtual int write(const char* buffer, u_long len, u_long *nbw);
 
 protected:
+#ifdef WIN32
+       SOCKET socketHandle;
+#else
        FileHandle socketHandle;
+#endif
 
        /*! Pointer to the socket that has accepted this connection.  */
        Socket *serverSocket;

Modified: trunk/myserver/include/log/log_manager.h
===================================================================
--- trunk/myserver/include/log/log_manager.h    2008-11-02 21:24:22 UTC (rev 
2933)
+++ trunk/myserver/include/log/log_manager.h    2008-11-02 22:29:54 UTC (rev 
2934)
@@ -35,6 +35,18 @@
 #define NL "\n"
 #endif
 
+#ifdef INFO
+#undef INFO
+#endif
+
+#ifdef WARNING
+#undef WARNING
+#endif
+
+#ifdef ERROR
+#undef ERROR
+#endif
+
 enum LoggingLevel
   {
     INFO,

Modified: trunk/myserver/include/server/server.h
===================================================================
--- trunk/myserver/include/server/server.h      2008-11-02 21:24:22 UTC (rev 
2933)
+++ trunk/myserver/include/server/server.h      2008-11-02 22:29:54 UTC (rev 
2934)
@@ -135,10 +135,6 @@
   int logWriteln(char const*, LoggingLevel level = WARNING);
   int logWriteln(string const &str)
     {return logWriteln(str.c_str());};
-  int logPreparePrintError();
-  int logEndPrintError();
-  int logLockAccess();
-  int logUnlockAccess();
   int setLogLocation(string);
   u_long getBuffersize();
   u_long getBuffersize2();

Modified: trunk/myserver/src/base/file/file.cpp
===================================================================
--- trunk/myserver/src/base/file/file.cpp       2008-11-02 21:24:22 UTC (rev 
2933)
+++ trunk/myserver/src/base/file/file.cpp       2008-11-02 22:29:54 UTC (rev 
2934)
@@ -486,8 +486,8 @@
   *nbw = ret;
   return 0;
 #else
-  const char *buffer = buf->getBuffer ();
-  u_long size = buf->getRealSize ();
+  char *buffer = buf->getBuffer ();
+  u_long size = buf->getRealLength ();
   *nbw = 0;
 
        if (setFilePointer (firstByte))
@@ -504,7 +504,7 @@
     if (nbr == 0)
       break;
 
-    if (dest->write (buffer, nbr, tmpNbw))
+    if (dest->write (buffer, nbr, &tmpNbw))
       return -1;
 
     *nbw += tmpNbw;

Modified: trunk/myserver/src/base/process/process_server_manager.cpp
===================================================================
--- trunk/myserver/src/base/process/process_server_manager.cpp  2008-11-02 
21:24:22 UTC (rev 2933)
+++ trunk/myserver/src/base/process/process_server_manager.cpp  2008-11-02 
22:29:54 UTC (rev 2934)
@@ -435,7 +435,7 @@
         }
 
 
-        server->DESCRIPTOR.fileHandle = server->socket.getHandle();
+        server->DESCRIPTOR.fileHandle = (unsigned long) 
server->socket.getHandle();
         spi.envString = 0;
         spi.stdIn = (FileHandle)server->DESCRIPTOR.fileHandle;
         spi.cmd.assign(tmpCgiPath);
@@ -512,7 +512,7 @@
 {
   MYSERVER_SOCKADDRIN serverSock = { 0 };
   socklen_t nLength = sizeof(MYSERVER_SOCKADDRIN);
-  getsockname(server->socket.getHandle(), (sockaddr *)&serverSock, &nLength);
+  getsockname((SOCKET) server->socket.getHandle(), (sockaddr *)&serverSock, 
&nLength);
   if(serverSock.ss_family == AF_INET || !server->isLocal)
   {
     /*! Try to create the socket.  */

Modified: trunk/myserver/src/base/socket/socket.cpp
===================================================================
--- trunk/myserver/src/base/socket/socket.cpp   2008-11-02 21:24:22 UTC (rev 
2933)
+++ trunk/myserver/src/base/socket/socket.cpp   2008-11-02 22:29:54 UTC (rev 
2934)
@@ -60,16 +60,19 @@
  */
 FileHandle Socket::getHandle()
 {
-  return socketHandle;
+  return (FileHandle) socketHandle;
 }
 
 /*!
  *Set the handle for the socket
  */
-int Socket::setHandle(FileHandle h)
+void Socket::setHandle(FileHandle h)
 {
+#ifdef WIN32
+  socketHandle = (SOCKET) h;
+#else
   socketHandle = h;
-  return 1;
+#endif
 }
 
 /*!
@@ -94,7 +97,11 @@
  */
 int Socket::socket(int af, int type, int protocol)
 {
+#ifdef WIN32
+  socketHandle = (SOCKET)::socket(af, type, protocol);
+#else
   socketHandle = (FileHandle)::socket(af, type, protocol);
+#endif
   return  (int)socketHandle;
 }
 
@@ -186,8 +193,6 @@
  */
 Socket Socket::accept(MYSERVER_SOCKADDR* sa, int* sockaddrlen)
 {
-   if ( sa == NULL )
-      return 1;//Andu: TODO our error code or what?
 #ifdef NOT_WIN
   socklen_t connectSize;
   int acceptHandle;

Modified: trunk/myserver/src/connections_scheduler/connections_scheduler.cpp
===================================================================
--- trunk/myserver/src/connections_scheduler/connections_scheduler.cpp  
2008-11-02 21:24:22 UTC (rev 2933)
+++ trunk/myserver/src/connections_scheduler/connections_scheduler.cpp  
2008-11-02 22:29:54 UTC (rev 2934)
@@ -171,7 +171,7 @@
  
   if(event == EV_READ || event == EV_TIMEOUT)
   {
-    Socket sock(da->fd[0]);
+    Socket sock((FileHandle) da->fd[0]);
 
     while(sock.bytesToRead())
     {
@@ -194,7 +194,7 @@
         sock.recv((char*)&c, sizeof(ConnectionPtr), 0);
         sock.recv((char*)&tv, sizeof(timeval), 0);
 
-        event_once(handle, EV_READ | EV_TIMEOUT, newDataHandler, da, &tv);
+        event_once((int) handle, EV_READ | EV_TIMEOUT, newDataHandler, da, 
&tv);
       }
       if(cmd == 'r')
         return;
@@ -245,7 +245,7 @@
   ConnectionsScheduler::ListenerArg *arg = new 
ConnectionsScheduler::ListenerArg(la);
   static timeval tv = {3, 0};
 
-  event_set(&(arg->ev), la->serverSocket->getHandle(), EV_READ | EV_TIMEOUT, 
+  event_set(&(arg->ev), (int) la->serverSocket->getHandle(), EV_READ | 
EV_TIMEOUT, 
             listenerHandler, arg);
 
   arg->terminate = &dispatcherArg.terminate;
@@ -259,7 +259,7 @@
   event_add(&(arg->ev), &tv);
 
   u_long nbw;
-  Socket sock(dispatcherArg.fd[1]);
+  Socket sock ((FileHandle)dispatcherArg.fd[1]);
 
   eventsSocketMutex.lock();
   sock.write("l", 1, &nbw);  
@@ -479,7 +479,7 @@
   if(lock)
   {
     u_long nbw;
-    Socket sock(dispatcherArg.fd[1]);
+    Socket sock ((FileHandle)dispatcherArg.fd[1]);
 
     eventsSocketMutex.lock();
     sock.write("c", 1, &nbw);
@@ -490,7 +490,7 @@
   }
   else
   {
-    event_once(handle, EV_READ | EV_TIMEOUT, newDataHandler, &dispatcherArg, 
&tv);
+    event_once((int)handle, EV_READ | EV_TIMEOUT, newDataHandler, 
&dispatcherArg, &tv);
   }
 }
 
@@ -553,7 +553,7 @@
     readySemaphore->unlock();
   }
 
-  Socket sock(dispatcherArg.fd[1]);
+  Socket sock((FileHandle)dispatcherArg.fd[1]);
 
   eventsSocketMutex.lock();
   sock.write("r", 1, &nbw);

Modified: trunk/myserver/src/http_handler/isapi/isapi.cpp
===================================================================
--- trunk/myserver/src/http_handler/isapi/isapi.cpp     2008-11-02 21:24:22 UTC 
(rev 2933)
+++ trunk/myserver/src/http_handler/isapi/isapi.cpp     2008-11-02 22:29:54 UTC 
(rev 2934)
@@ -57,11 +57,7 @@
   Isapi::isapiMutex->unlock();
   if (ConnInfo == NULL) 
   {
-    Server::getInstance()->logLockAccess();
-    Server::getInstance()->logPreparePrintError();
     Server::getInstance()->logWriteln("isapi::ServerSupportFunctionExport: 
invalid hConn");
-    Server::getInstance()->logEndPrintError();
-    Server::getInstance()->logUnlockAccess();
     return 0;
   }
 
@@ -221,12 +217,8 @@
 
   if (ConnInfo == NULL) 
   {
-    ((Vhost*)(ConnInfo->td->connection->host))->warningsLogRequestAccess(
-                                                                
ConnInfo->td->id);
     ((Vhost*)(ConnInfo->td->connection->host))->warningsLogWrite(
                                         "ISAPI: WriteClientExport: invalid 
hConn");
-    ((Vhost*)(ConnInfo->td->connection->host))->warningsLogTerminateAccess(
-                                                                
ConnInfo->td->id);
     return 0;
   }
   keepalive =connection && (!stringcmpi(connection->value->c_str(), 
"keep-alive")) ;
@@ -406,12 +398,8 @@
   Isapi::isapiMutex->unlock();
   if (ConnInfo == NULL) 
   {
-    ((Vhost*)(ConnInfo->td->connection->host))->warningsLogRequestAccess(
-                                                             ConnInfo->td->id);
     ((Vhost*)(ConnInfo->td->connection->host))->warningsLogWrite(
                                     "ISAPI: ReadClientExport: invalid hConn");
-    ((Vhost*)(ConnInfo->td->connection->host))->warningsLogTerminateAccess(
-                                                           ConnInfo->td->id);
     return 0;
   }
 
@@ -444,12 +432,8 @@
   Isapi::isapiMutex->unlock();
   if (ConnInfo == NULL) 
   {
-    Server::getInstance()->logLockAccess();
-    Server::getInstance()->logPreparePrintError();
     Server::getInstance()->logWriteln(
                        "Isapi::GetServerVariableExport: invalid hConn");
-    Server::getInstance()->logEndPrintError();
-    Server::getInstance()->logUnlockAccess();
     return 0;
   }
 
@@ -807,10 +791,8 @@
 
   if (connIndex == maxConnections) 
   {
-    td->connection->host->warningsLogRequestAccess(td->id);
     td->connection->host->warningsLogWrite(
                                             "ISAPI: Error max connections");
-    td->connection->host->warningsLogTerminateAccess(td->id);
     return td->http->raiseHTTPError(503);
   }
   if(execute)
@@ -825,9 +807,7 @@
     string msg;
     msg.assign("ISAPI: Cannot load library ");
     msg.append(loadLib);
-    td->connection->host->warningsLogRequestAccess(td->id);
     td->connection->host->warningsLogWrite(msg.c_str());
-    td->connection->host->warningsLogTerminateAccess(td->id);
     return td->http->raiseHTTPError(500);
   }
 
@@ -843,9 +823,7 @@
                                           td->connection->socket, 
                                           &nbw, 1))
       {
-        td->connection->host->warningsLogRequestAccess(td->id);
         td->connection->host->warningsLogWrite("Error loading filters");
-        td->connection->host->warningsLogTerminateAccess(td->id);
         connTable[connIndex].chain.clearAllFilters(); 
         return td->http->raiseHTTPError(500);
       }
@@ -865,37 +843,30 @@
 
   if (GetExtensionVersion == NULL) 
   {
-    td->connection->host->warningsLogRequestAccess(td->id);
     td->connection->host->warningsLogWrite(
            "ISAPI: Failed to get pointer to GetExtensionVersion() in ISAPI 
application");
-    td->connection->host->warningsLogTerminateAccess(td->id);
     if(!appHnd.close())
     {
       string msg;
       msg.assign("ISAPI: Failed to freeLibrary in ISAPI module: ");
       msg.append(cgipath);
       msg.append("\r\n");
-      td->connection->host->warningsLogRequestAccess(td->id);
       td->connection->host->warningsLogWrite(msg.c_str());
-      td->connection->host->warningsLogTerminateAccess(td->id);
     }
     connTable[connIndex].chain.clearAllFilters(); 
     return td->http->raiseHTTPError(500);
   }
   if(!GetExtensionVersion(&Ver)) 
   {
-    td->connection->host->warningsLogRequestAccess(td->id);
     td->connection->host->warningsLogWrite(
                              "ISAPI: GetExtensionVersion() returned FALSE");
-    td->connection->host->warningsLogTerminateAccess(td->id);
+
     if(!appHnd.close())
     {
       string msg;
       msg.assign("ISAPI: Failed to freeLibrary in ISAPI module: ");
       msg.append(cgipath);
-      td->connection->host->warningsLogRequestAccess(td->id);
       td->connection->host->warningsLogWrite(msg.c_str());
-      td->connection->host->warningsLogTerminateAccess(td->id);
     }
     connTable[connIndex].chain.clearAllFilters(); 
     return td->http->raiseHTTPError(500);
@@ -903,18 +874,15 @@
   if (Ver.dwExtensionVersion > MAKELONG(HSE_VERSION_MINOR, 
                                         HSE_VERSION_MAJOR)) 
   {
-    td->connection->host->warningsLogRequestAccess(td->id);
     td->connection->host->warningsLogWrite(
                                        "ISAPI: version not supported");
-    td->connection->host->warningsLogRequestAccess(td->id);
+
     if(!appHnd.close())
     {
       string msg;
       msg.assign("ISAPI: Failed to freeLibrary in ISAPI module: ");
       msg.append(cgipath);
-      td->connection->host->warningsLogRequestAccess(td->id);
       td->connection->host->warningsLogWrite(msg.c_str());
-      td->connection->host->warningsLogTerminateAccess(td->id);
     }
     connTable[connIndex].chain.clearAllFilters(); 
     return td->http->raiseHTTPError(500);
@@ -971,12 +939,10 @@
   HttpExtensionProc = 
(PFN_HTTPEXTENSIONPROC)appHnd.getProc("HttpExtensionProc");
   if (HttpExtensionProc == NULL) 
   {
-    td->connection->host->warningsLogRequestAccess(td->id);
     td->connection->host->warningsLogWrite(
                      "ISAPI: Failed to get pointer to HttpExtensionProc() \
 in ISAPI application module");
 
-    td->connection->host->warningsLogTerminateAccess(td->id);
     appHnd.close();
     connTable[connIndex].chain.clearAllFilters(); 
     return td->http->raiseHTTPError(500);
@@ -1014,9 +980,7 @@
     string msg;
     msg.assign("ISAPI: Failed to unLoad module "); 
     msg.append(cgipath);
-    td->connection->host->warningsLogRequestAccess(td->id);
     td->connection->host->warningsLogWrite(msg.c_str());
-    td->connection->host->warningsLogTerminateAccess(td->id);
   }
 
   {

Modified: trunk/myserver/src/http_handler/wincgi/wincgi.cpp
===================================================================
--- trunk/myserver/src/http_handler/wincgi/wincgi.cpp   2008-11-02 21:24:22 UTC 
(rev 2933)
+++ trunk/myserver/src/http_handler/wincgi/wincgi.cpp   2008-11-02 22:29:54 UTC 
(rev 2934)
@@ -132,10 +132,7 @@
                                                  td->mime->filters, 
                                                  td->connection->socket, 
&nbw2, 1))
       {
-        td->connection->host->warningsLogRequestAccess(td->id);
         td->connection->host->warningsLogWrite("WinCGI: Error loading 
filters");
-        td->connection->host->warningsLogTerminateAccess(td->id);
-
         chain.clearAllFilters(); 
         return td->http->raiseHTTPError(500);
       }
@@ -149,9 +146,7 @@
                      File::MYSERVER_CREATE_ALWAYS|File::MYSERVER_OPEN_WRITE);
   if ( ret ) 
   {
-    td->connection->host->warningsLogRequestAccess(td->id);
     td->connection->host->warningsLogWrite("WinCGI: Error creating .ini");
-    td->connection->host->warningsLogTerminateAccess(td->id);
     return td->http->raiseHTTPError(500);
   }
 
@@ -293,10 +288,8 @@
     ret = OutFileHandle.openFile(outFilePath, File::MYSERVER_CREATE_ALWAYS);
     if (ret)
     {
-      td->connection->host->warningsLogRequestAccess(td->id);
       td->connection->host->warningsLogWrite(
                                       "WinCGI: Error creating output file");
-      td->connection->host->warningsLogTerminateAccess(td->id);
       DataFileHandle.close();
       FilesUtility::deleteFile(outFilePath);
       FilesUtility::deleteFile(dataFilePath);
@@ -315,9 +308,8 @@
   {
     ostringstream msg;
     msg << "WinCGI: Error executing process " << scriptpath;
-    td->connection->host->warningsLogRequestAccess(td->id);
     td->connection->host->warningsLogWrite(msg.str().c_str());
-    td->connection->host->warningsLogTerminateAccess(td->id);
+
     FilesUtility::deleteFile(outFilePath);
     FilesUtility::deleteFile(dataFilePath);
     chain.clearAllFilters();
@@ -330,9 +322,7 @@
   {
     ostringstream msg;
     msg << "WinCGI: Error opening output file " << outFilePath;
-    td->connection->host->warningsLogRequestAccess(td->id);
     td->connection->host->warningsLogWrite(msg.str().c_str());
-    td->connection->host->warningsLogTerminateAccess(td->id);
     chain.clearAllFilters();
     return td->http->raiseHTTPError(500);
   }
@@ -342,9 +332,7 @@
     ostringstream msg;
     msg << "WinCGI: Error zero bytes read from the WinCGI output file " 
         << outFilePath;
-    td->connection->host->warningsLogRequestAccess(td->id);
     td->connection->host->warningsLogWrite(msg.str().c_str());
-    td->connection->host->warningsLogTerminateAccess(td->id);
     OutFileHandle.close();
     FilesUtility::deleteFile(outFilePath);
     FilesUtility::deleteFile(dataFilePath);

Modified: trunk/myserver/src/myserver.cpp
===================================================================
--- trunk/myserver/src/myserver.cpp     2008-11-02 21:24:22 UTC (rev 2933)
+++ trunk/myserver/src/myserver.cpp     2008-11-02 22:29:54 UTC (rev 2934)
@@ -691,7 +691,8 @@
     MyServiceStatus.dwCurrentState = SERVICE_RUNNING;
     SetServiceStatus( MyServiceStatusHandle, &MyServiceStatus );
 
-    Server::getInstance()->start();
+    string null ("");
+    Server::getInstance()->start(null, null, null, null, null);
 
     MyServiceStatus.dwCurrentState = SERVICE_STOP_PENDING;
     SetServiceStatus( MyServiceStatusHandle, &MyServiceStatus );
@@ -744,9 +745,10 @@
 #ifdef WIN32
   SERVICE_TABLE_ENTRY serviceTable[] =
     {
-      { "MyServer", myServerMain },
+      { (CHAR*) "MyServer", myServerMain },
       { 0, 0 }
     };
+
   if(!StartServiceCtrlDispatcher( serviceTable ))
   {
     if(GetLastError() == ERROR_INVALID_DATA)
@@ -780,7 +782,7 @@
   manager = OpenSCManager(NULL,NULL,SC_MANAGER_ALL_ACCESS);
   if (manager)
   {
-    service = CreateService(manager,"MyServer","MyServer",
+    service = CreateService(manager,"GNU MyServer","GNU MyServer",
                             SERVICE_ALL_ACCESS,SERVICE_WIN32_OWN_PROCESS,
                             SERVICE_AUTO_START, SERVICE_ERROR_IGNORE, path,
                             0, 0, 0, 0, 0);
@@ -804,7 +806,7 @@
   manager = OpenSCManager(NULL,NULL,SC_MANAGER_ALL_ACCESS);
   if (manager)
   {
-    service = OpenService (manager, "MyServer", SERVICE_ALL_ACCESS);
+    service = OpenService (manager, "GNU MyServer", SERVICE_ALL_ACCESS);
     if (service)
     {
       ControlService (service, SERVICE_CONTROL_STOP,&MyServiceStatus);

Modified: trunk/myserver/tests/test_connections_scheduler.cpp
===================================================================
--- trunk/myserver/tests/test_connections_scheduler.cpp 2008-11-02 21:24:22 UTC 
(rev 2933)
+++ trunk/myserver/tests/test_connections_scheduler.cpp 2008-11-02 22:29:54 UTC 
(rev 2934)
@@ -131,7 +131,7 @@
     for(u_long i = 0; i < max; i++)
     {
       ConnectionPtr conn = new Connection;
-      conn->socket = new MockSocket(i);
+      conn->socket = new MockSocket((FileHandle) i);
       scheduler->addWaitingConnection(conn);
     }
     
@@ -144,7 +144,7 @@
   void testGetConnections()
   {
     ConnectionPtr conn = new Connection;
-    conn->socket = new MockSocket(1);
+    conn->socket = new MockSocket((FileHandle) 1);
     
     list<ConnectionPtr> out;
 
@@ -153,7 +153,7 @@
     CPPUNIT_ASSERT_EQUAL(out.size(), (size_t)0);
 
     conn = new Connection;
-    conn->socket = new MockSocket(2);
+    conn->socket = new MockSocket((FileHandle) 2);
     
     scheduler->addWaitingConnection(conn);
 
@@ -165,7 +165,7 @@
   void testGetNumTotalConnections()
   {
     ConnectionPtr conn = new Connection;
-    conn->socket = new MockSocket(1);
+    conn->socket = new MockSocket((FileHandle) 1);
 
     CPPUNIT_ASSERT_EQUAL(scheduler->getNumTotalConnections(), 0ul);
 
@@ -189,7 +189,7 @@
     ConnectionPtr gotConn;
 
     ConnectionPtr conn = new Connection;
-    conn->socket = new MockSocket(1);
+    conn->socket = new MockSocket((FileHandle) 1);
 
     CPPUNIT_ASSERT_EQUAL(scheduler->getNumTotalConnections(), 0ul);
 
@@ -209,7 +209,7 @@
   void testAddNewConnection()
   {
     ConnectionPtr conn = new Connection;
-    conn->socket = new MockSocket(1);
+    conn->socket = new MockSocket((FileHandle) 1);
 
     CPPUNIT_ASSERT_EQUAL(scheduler->getNumTotalConnections(), 0ul);
 






reply via email to

[Prev in Thread] Current Thread [Next in Thread]