diff options
Diffstat (limited to 'assuan/assuan-util.c')
-rw-r--r-- | assuan/assuan-util.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/assuan/assuan-util.c b/assuan/assuan-util.c index 4153ef8db..15b9fe5eb 100644 --- a/assuan/assuan-util.c +++ b/assuan/assuan-util.c @@ -29,6 +29,9 @@ #include "../jnlib/logging.h" #endif +ssize_t (*_assuan_read_wrapper)(int,void*,size_t) = NULL; +ssize_t (*_assuan_write_wrapper)(int,const void*,size_t) = NULL; + static void *(*alloc_func)(size_t n) = malloc; static void *(*realloc_func)(void *p, size_t n) = realloc; @@ -74,6 +77,17 @@ _assuan_free (void *p) free_func (p); } +/* For use with Pth it is required to have special read and write + functions. We can't assume an ELF based system so we have to + explicitly set them if we are going to use Pth. */ +void +assuan_set_io_func (ssize_t (*r)(int,void*,size_t), + ssize_t (*w)(int,const void*,size_t)) +{ + _assuan_read_wrapper = r; + _assuan_write_wrapper = w; +} + /* Store the error in the context so that the error sending function |