From 19267c9da4a608123a0a857c63bfdaccd6afcd23 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Tue, 12 Feb 2002 20:41:34 +0000 Subject: * assuan-buffer.c (writen,readline) [USE_GNU_PT]: Use pth_read/write. * assuan-socket-server.c (accept_connection) [USE_GNU_PTH]: Ditto. --- src/ChangeLog | 5 +++++ src/assuan-buffer.c | 12 +++++++++++- src/assuan-socket-server.c | 7 +++++++ 3 files changed, 23 insertions(+), 1 deletion(-) diff --git a/src/ChangeLog b/src/ChangeLog index 290fef5..f9c7555 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2002-02-12 Werner Koch + + * assuan-buffer.c (writen,readline) [USE_GNU_PT]: Use pth_read/write. + * assuan-socket-server.c (accept_connection) [USE_GNU_PTH]: Ditto. + 2002-02-01 Marcus Brinkmann * Makefile.am (MOSTLYCLEANFILES): New variable. diff --git a/src/assuan-buffer.c b/src/assuan-buffer.c index bd08817..e349a69 100644 --- a/src/assuan-buffer.c +++ b/src/assuan-buffer.c @@ -25,7 +25,9 @@ #include #include #include - +#ifdef USE_GNU_PTH +# include +#endif #include "assuan-defs.h" @@ -34,7 +36,11 @@ writen ( int fd, const char *buffer, size_t length ) { while (length) { +#ifdef USE_GNU_PTH + int nwritten = pth_write (fd, buffer, length); +#else int nwritten = write (fd, buffer, length); +#endif if (nwritten < 0) { @@ -59,7 +65,11 @@ readline (int fd, char *buf, size_t buflen, int *r_nread, int *eof) *r_nread = 0; while (nleft > 0) { +#ifdef USE_GNU_PTH + int n = pth_read (fd, buf, nleft); +#else int n = read (fd, buf, nleft); +#endif if (n < 0) { if (errno == EINTR) diff --git a/src/assuan-socket-server.c b/src/assuan-socket-server.c index 6ad6455..d10d9d4 100644 --- a/src/assuan-socket-server.c +++ b/src/assuan-socket-server.c @@ -25,6 +25,9 @@ #include #include #include +#ifdef USE_GNU_PTH +# include +#endif #include "assuan-defs.h" @@ -35,7 +38,11 @@ accept_connection (ASSUAN_CONTEXT ctx) struct sockaddr_un clnt_addr; size_t len = sizeof clnt_addr; +#ifdef USE_GNU_PTH + fd = pth_accept (ctx->listen_fd, (struct sockaddr*)&clnt_addr, &len ); +#else fd = accept (ctx->listen_fd, (struct sockaddr*)&clnt_addr, &len ); +#endif if (fd == -1) { ctx->os_errno = errno; -- cgit v1.2.3