[Pkg-gnupg-commit] [libassuan] 62/437: 2002-11-24 Neal H. Walfield <neal at g10code.de>

Eric Dorland eric at moszumanska.debian.org
Fri May 22 05:33:24 UTC 2015


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

eric pushed a commit to branch master
in repository libassuan.

commit 9404e15fa162ca70ca5d2d4e6da04742171c1946
Author: Neal Walfield <neal at walfield.org>
Date:   Sun Nov 24 16:08:49 2002 +0000

    2002-11-24  Neal H. Walfield  <neal at g10code.de>
    
    	* assuan-domain-connect.c (do_finish): Remove.
    	(_assuan_domain_init): Use default handlers where possible.
    	Add an assert and update comments.
    	* assuan-domain-server.c (accept_connection): Remove.
    	(assuan_init_domain_server): Use default handlers where possible.
    	Put the server in pipe mode: it can only be used by a single
    	client.
---
 src/ChangeLog               | 10 ++++++++++
 src/assuan-domain-connect.c | 22 +++++++++++-----------
 src/assuan-domain-server.c  | 10 ++--------
 3 files changed, 23 insertions(+), 19 deletions(-)

diff --git a/src/ChangeLog b/src/ChangeLog
index 2a2355f..eeb286d 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,15 @@
 2002-11-24  Neal H. Walfield  <neal at g10code.de>
 
+	* assuan-domain-connect.c (do_finish): Remove.
+	(_assuan_domain_init): Use default handlers where possible.
+	Add an assert and update comments.
+	* assuan-domain-server.c (accept_connection): Remove.
+	(assuan_init_domain_server): Use default handlers where possible.
+	Put the server in pipe mode: it can only be used by a single
+	client.
+
+2002-11-24  Neal H. Walfield  <neal at g10code.de>
+
 	* assuan.h: Add prototype for assuan_domain_connect and
 	assuan_init_domain_server.
 	* assuan-defs.h: Include <unistd.h>.
diff --git a/src/assuan-domain-connect.c b/src/assuan-domain-connect.c
index 86f85e2..d50ba1e 100644
--- a/src/assuan-domain-connect.c
+++ b/src/assuan-domain-connect.c
@@ -49,12 +49,6 @@
 #define LOGERRORX(a)     fputs ((a), stderr)
 #endif
 
-static int
-do_finish (ASSUAN_CONTEXT ctx)
-{
-  return 0;
-}
-
 static void
 do_deinit (ASSUAN_CONTEXT ctx)
 {
@@ -69,7 +63,6 @@ do_deinit (ASSUAN_CONTEXT ctx)
       free (ctx->domainbuffer);
     }
 
-  /* XXX: Do we want to do this?  Most likely.  */
   unlink (ctx->myaddr.sun_path);
 }
 
@@ -191,7 +184,7 @@ domain_reader (ASSUAN_CONTEXT ctx, void *buf, size_t buflen)
   return len;
 }
 
-/* Write to the pipe server.  */
+/* Write to the domain server.  */
 static ssize_t
 domain_writer (ASSUAN_CONTEXT ctx, const void *buf, size_t buflen)
 {
@@ -245,8 +238,11 @@ _assuan_domain_init (ASSUAN_CONTEXT *r_ctx,
 
   /* Save it in case we need it later.  */
   ctx->pid = peer;
+
+  /* Override the default (NOP) handlers.  */
   ctx->deinit_handler = do_deinit;
-  ctx->finish_handler = do_finish;
+
+  /* Setup the socket.  */
 
   fd = socket (PF_LOCAL, SOCK_DGRAM, 0);
   if (fd == -1)
@@ -258,8 +254,10 @@ _assuan_domain_init (ASSUAN_CONTEXT *r_ctx,
 
   ctx->inbound.fd = fd;
   ctx->outbound.fd = fd;
-  ctx->io = &io;
 
+  /* And the io buffers.  */
+
+  ctx->io = &io;
   ctx->domainbuffer = 0;
   ctx->domainbufferoffset = 0;
   ctx->domainbuffersize = 0;
@@ -270,9 +268,11 @@ _assuan_domain_init (ASSUAN_CONTEXT *r_ctx,
   for (tries = 0; tries < TMP_MAX; tries ++)
     {
       char *p;
-      /* XXX: L_tmpnam must be shorter than sizeof (sun_path)!  */
       char buf[L_tmpnam];
 
+      /* XXX: L_tmpnam must be shorter than sizeof (sun_path)!  */
+      assert (L_tmpnam < sizeof (ctx->myaddr.sun_path));
+
       p = tmpnam (buf);
       if (! p)
 	{
diff --git a/src/assuan-domain-server.c b/src/assuan-domain-server.c
index 506ee05..b62b140 100644
--- a/src/assuan-domain-server.c
+++ b/src/assuan-domain-server.c
@@ -26,13 +26,6 @@
 
 #include "assuan-defs.h"
 
-static int
-accept_connection (ASSUAN_CONTEXT ctx)
-{
-  /* NOP.  */
-  return 0;
-}
-
 /* Initialize a server.  */
 AssuanError
 assuan_init_domain_server (ASSUAN_CONTEXT *r_ctx,
@@ -46,7 +39,8 @@ assuan_init_domain_server (ASSUAN_CONTEXT *r_ctx,
     return err;
 
   (*r_ctx)->is_server = 1;
-  (*r_ctx)->accept_handler = accept_connection;
+  /* A domain server can only be used once.  */
+  (*r_ctx)->pipe_mode = 1;
 
   return 0;
 }

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



More information about the Pkg-gnupg-commit mailing list