gnutls-commit
[Top][All Lists]
Advanced

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

[SCM] GNU gnutls branch, master, updated. gnutls_3_0_13-32-g624c7af


From: Nikos Mavrogiannopoulos
Subject: [SCM] GNU gnutls branch, master, updated. gnutls_3_0_13-32-g624c7af
Date: Tue, 21 Feb 2012 19:04:38 +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 gnutls".

http://git.savannah.gnu.org/cgit/gnutls.git/commit/?id=624c7af212b211d856b05223fa20a66388c92890

The branch, master has been updated
       via  624c7af212b211d856b05223fa20a66388c92890 (commit)
       via  7583746247b71a017edede4f6046830d20602a4d (commit)
       via  bbdd49e515a61b5e02e8a16f7211ba18e850bdfa (commit)
       via  ee43d094d2ff204a6ef36542f4b6be46a2ed4e81 (commit)
      from  177755f804c0a1fa3efcebe1504e95aab786e814 (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 624c7af212b211d856b05223fa20a66388c92890
Author: Nikos Mavrogiannopoulos <address@hidden>
Date:   Tue Feb 21 20:09:01 2012 +0100

    updated documentation

commit 7583746247b71a017edede4f6046830d20602a4d
Author: Nikos Mavrogiannopoulos <address@hidden>
Date:   Tue Feb 21 19:47:40 2012 +0100

    added newline at end of file.

commit bbdd49e515a61b5e02e8a16f7211ba18e850bdfa
Author: Nikos Mavrogiannopoulos <address@hidden>
Date:   Tue Feb 21 19:46:22 2012 +0100

    account args-std.def in make dist

commit ee43d094d2ff204a6ef36542f4b6be46a2ed4e81
Author: Nikos Mavrogiannopoulos <address@hidden>
Date:   Tue Feb 21 19:19:11 2012 +0100

    check errno in pull_timeout_func.

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

Summary of changes:
 Makefile.am          |    1 +
 lib/gnutls_buffers.c |   12 ++++++++++--
 lib/system.c         |   14 +++++++-------
 lib/x509/pkcs7.c     |    1 -
 src/Makefile.am      |    2 ++
 5 files changed, 20 insertions(+), 10 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index 3db69b8..c6efbf6 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -39,6 +39,7 @@ dist-hook:
        cp -f ChangeLog $(distdir)/
        sed 's/address@hidden@/$(VERSION)/g' -i $(distdir)/src/args-std.def
        cd $(distdir)/src/ && for i in *.def;do \
+               if test x"$$i" = x"args-std.def";then  continue; fi; \
                autogen $$i; \
                cp $$i $$i.tmp; \
                sed -i 's/@subheading \(.*\)/@address@hidden@*/' $$i.tmp; \
diff --git a/lib/gnutls_buffers.c b/lib/gnutls_buffers.c
index 83a4232..eee4dc3 100644
--- a/lib/gnutls_buffers.c
+++ b/lib/gnutls_buffers.c
@@ -618,14 +618,22 @@ int
 _gnutls_io_check_recv (gnutls_session_t session, unsigned int ms)
 {
   gnutls_transport_ptr_t fd = session->internals.transport_send_ptr;
-  int ret = 0;
+  int ret = 0, err;
   
   if (session->internals.pull_timeout_func == system_recv_timeout && 
     session->internals.pull_func != system_read)
     return gnutls_assert_val(GNUTLS_E_PULL_ERROR);
 
+  reset_errno (session);
+
   ret = session->internals.pull_timeout_func(fd, ms);
-  if (ret == -1)
+
+  err = get_errno (session);
+  if (ret == -1 && err == EINTR)
+    return GNUTLS_E_INTERRUPTED;
+  else if (ret == -1 && err == EAGAIN)
+    return GNUTLS_E_AGAIN;
+  else if (ret == -1)
     return gnutls_assert_val(GNUTLS_E_PULL_ERROR);
   
   if (ret > 0)
diff --git a/lib/system.c b/lib/system.c
index a2a9091..1573bb3 100644
--- a/lib/system.c
+++ b/lib/system.c
@@ -112,29 +112,29 @@ system_read (gnutls_transport_ptr_t ptr, void *data, 
size_t data_size)
 }
 
 /* Wait for data to be received within a timeout period in milliseconds.
- * If data_size > 0 it will return the specified amount of data in
- * peek mode.
+ * To catch a termination it will also try to receive 0 bytes from the
+ * socket if select reports to proceed.
  *
- * Returns -1 on error, 0 on timeout.
+ * Returns -1 on error, 0 on timeout, positive value if data are available for 
reading.
  */
 int system_recv_timeout(gnutls_transport_ptr_t ptr, unsigned int ms)
 {
 fd_set rfds;
 struct timeval tv;
 int ret, ret2;
+int fd = GNUTLS_POINTER_TO_INT(ptr);
 
   FD_ZERO(&rfds);
-  FD_SET(GNUTLS_POINTER_TO_INT(ptr), &rfds);
+  FD_SET(fd, &rfds);
   
   tv.tv_sec = 0;
   tv.tv_usec = ms * 1000;
   
-  ret = select(GNUTLS_POINTER_TO_INT(ptr)+1, &rfds, NULL, NULL, &tv);
+  ret = select(fd+1, &rfds, NULL, NULL, &tv);
   if (ret <= 0)
     return ret;
 
-  
-  ret2 = recv(GNUTLS_POINTER_TO_INT(ptr), NULL, 0, MSG_PEEK);
+  ret2 = recv(fd, NULL, 0, MSG_PEEK);
   if (ret2 == -1)
     return ret2;
       
diff --git a/lib/x509/pkcs7.c b/lib/x509/pkcs7.c
index 6e2e405..ff6da72 100644
--- a/lib/x509/pkcs7.c
+++ b/lib/x509/pkcs7.c
@@ -1026,4 +1026,3 @@ cleanup:
     asn1_delete_structure (&c2);
   return result;
 }
- 
\ No newline at end of file
diff --git a/src/Makefile.am b/src/Makefile.am
index e48de99..4d013d4 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -27,6 +27,8 @@ if NEED_LIBOPTS
 SUBDIRS += libopts
 endif
 
+EXTRA_DIST = args-std.def
+
 AM_CFLAGS = $(WARN_CFLAGS) $(WERROR_CFLAGS)
 AM_CPPFLAGS = \
        -I$(srcdir)/../gl                       \


hooks/post-receive
-- 
GNU gnutls



reply via email to

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