[Pkg-gnupg-commit] [gnupg2] 218/292: gpgscm: Drop 'len' argument from splice.

Daniel Kahn Gillmor dkg at fifthhorseman.net
Mon Nov 21 06:31:44 UTC 2016


This is an automated email from the git hooks/post-receive script.

dkg pushed a commit to branch master
in repository gnupg2.

commit 4d98a72b88cf167295e1ecd6125b9c7a11b6239f
Author: Justus Winter <justus at g10code.com>
Date:   Mon Nov 7 16:59:15 2016 +0100

    gpgscm: Drop 'len' argument from splice.
    
    * tests/gpgscm/ffi.c (do_splice): Drop 'len' argument, no-one uses it.
    * tests/gpgscm/lib.scm (splice): Document foreign function.
    
    Signed-off-by: Justus Winter <justus at g10code.com>
---
 tests/gpgscm/ffi.c   | 13 ++-----------
 tests/gpgscm/lib.scm |  3 +++
 2 files changed, 5 insertions(+), 11 deletions(-)

diff --git a/tests/gpgscm/ffi.c b/tests/gpgscm/ffi.c
index 8bb2652..18aff98 100644
--- a/tests/gpgscm/ffi.c
+++ b/tests/gpgscm/ffi.c
@@ -1001,29 +1001,20 @@ do_splice (scheme *sc, pointer args)
   FFI_PROLOG ();
   int source;
   int sink;
-  ssize_t len = -1;
   char buffer[1024];
   ssize_t bytes_read;
   FFI_ARG_OR_RETURN (sc, int, source, number, args);
   FFI_ARG_OR_RETURN (sc, int, sink, number, args);
-  if (args != sc->NIL)
-    FFI_ARG_OR_RETURN (sc, ssize_t, len, number, args);
   FFI_ARGS_DONE_OR_RETURN (sc, args);
-  while (len == -1 || len > 0)
+  while (1)
     {
-      size_t want = sizeof buffer;
-      if (len > 0 && (ssize_t) want > len)
-        want = (size_t) len;
-
-      bytes_read = read (source, buffer, want);
+      bytes_read = read (source, buffer, sizeof buffer);
       if (bytes_read == 0)
         break;
       if (bytes_read < 0)
         FFI_RETURN_ERR (sc, gpg_error_from_syserror ());
       if (write (sink, buffer, bytes_read) != bytes_read)
         FFI_RETURN_ERR (sc, gpg_error_from_syserror ());
-      if (len != -1)
-        len -= bytes_read;
     }
   FFI_RETURN (sc);
 }
diff --git a/tests/gpgscm/lib.scm b/tests/gpgscm/lib.scm
index a8ae2f8..7d2d1eb 100644
--- a/tests/gpgscm/lib.scm
+++ b/tests/gpgscm/lib.scm
@@ -207,6 +207,9 @@
 ;; Get our process id.
 (ffi-define (getpid))
 
+;; Copy data from file descriptor SOURCE to SINK.
+(ffi-define (splice source sink))
+
 ;;
 ;; Random numbers.
 ;;

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-gnupg/gnupg2.git



More information about the Pkg-gnupg-commit mailing list