myserver-commit
[Top][All Lists]
Advanced

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

[myserver-commit] [SCM] GNU MyServer branch, master, updated. v0.9.2-253


From: Giuseppe Scrivano
Subject: [myserver-commit] [SCM] GNU MyServer branch, master, updated. v0.9.2-253-g02a4441
Date: Fri, 28 May 2010 11:58:54 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU MyServer".

The branch, master has been updated
       via  02a444106a21c3c757b3b58977e78f1a036c20ce (commit)
       via  b6dbfb58fcfdf429bbfde914a628bfbcf5485050 (commit)
       via  0452992670c2f90fad8e7a2b93d5e2186afb239d (commit)
      from  dfdc6a1d856b83d9fe598c50007e565a24275e49 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------


commit 02a444106a21c3c757b3b58977e78f1a036c20ce
Author: Giuseppe Scrivano <address@hidden>
Date:   Fri May 28 13:58:33 2010 +0200

    Remove a connection immediately if the socket is closed.

diff --git a/myserver/src/server/clients_thread.cpp 
b/myserver/src/server/clients_thread.cpp
index b16a530..0d2eb0f 100644
--- a/myserver/src/server/clients_thread.cpp
+++ b/myserver/src/server/clients_thread.cpp
@@ -259,11 +259,16 @@ int ClientsThread::controlConnections ()
   dataRead = c->getConnectionBuffer ()->getLength ();
 
   if (! c->isForceControl ())
-    err = c->socket->recv (&((char*)(buffer.getBuffer ()))[dataRead],
-                           MYSERVER_KB (8) - dataRead - 1, 0);
+    {
+      err = c->socket->recv (&((char*)(buffer.getBuffer ()))[dataRead],
+                             MYSERVER_KB (8) - dataRead - 1, 0);
 
-  if (err == -1 && !server->deleteConnection (c))
-    return 0;
+      if (err <= 0)
+        {
+          server->deleteConnection (c);
+          return 0;
+        }
+    }
 
   buffer.setLength (dataRead + err);
   c->setForceControl (0);



commit b6dbfb58fcfdf429bbfde914a628bfbcf5485050
Author: Giuseppe Scrivano <address@hidden>
Date:   Fri May 28 12:24:19 2010 +0200

    Call directly `stat' to check if a path exists.

diff --git a/myserver/src/base/file/files_utility.cpp 
b/myserver/src/base/file/files_utility.cpp
index b042c8a..fac0ddf 100644
--- a/myserver/src/base/file/files_utility.cpp
+++ b/myserver/src/base/file/files_utility.cpp
@@ -268,14 +268,8 @@ int FilesUtility::isLink (const char* filename)
 int FilesUtility::nodeExists (const char* filename)
 {
   struct stat fstats;
-  try
-    {
-      checked::stat (filename, &fstats);
-    }
-  catch (...)
-    {
-      return 0;
-    }
+  if (::stat (filename, &fstats) < 0)
+    return 0;
 
   return 1;
 }



commit 0452992670c2f90fad8e7a2b93d5e2186afb239d
Author: Giuseppe Scrivano <address@hidden>
Date:   Fri May 28 12:14:55 2010 +0200

    Avoid an exception `accept'ing from a nonblocking socket.

diff --git a/myserver/src/base/socket/socket.cpp 
b/myserver/src/base/socket/socket.cpp
index 1376266..57eb5c9 100644
--- a/myserver/src/base/socket/socket.cpp
+++ b/myserver/src/base/socket/socket.cpp
@@ -183,15 +183,20 @@ int Socket::listen (int max)
 /*!
   Accept a new connection.
  */
-Socket* Socket::accept (MYSERVER_SOCKADDR* sa, socklen_t* sockaddrlen)
+Socket* Socket::accept (MYSERVER_SOCKADDR *sa, socklen_t *sockaddrlen)
 {
-  int acceptedHandle = checked::accept (fd, (struct sockaddr *)sa,
+  int acceptedHandle = gnulib::accept (fd, (struct sockaddr *)sa,
                                        sockaddrlen);
 
-  if (acceptedHandle >= 0)
-    return new Socket ((SocketHandle) acceptedHandle);
-  else
-    return NULL;
+  if (acceptedHandle < 0)
+    {
+      if (errno == EAGAIN)
+        return NULL;
+      else
+        checked::raiseException ();
+    }
+
+  return new Socket (acceptedHandle);
 }
 
 /*!

-----------------------------------------------------------------------

Summary of changes:
 myserver/src/base/file/files_utility.cpp |   10 ++--------
 myserver/src/base/socket/socket.cpp      |   17 +++++++++++------
 myserver/src/server/clients_thread.cpp   |   13 +++++++++----
 3 files changed, 22 insertions(+), 18 deletions(-)


hooks/post-receive
-- 
GNU MyServer



reply via email to

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