diff options
author | Laurent Bercot <ska-skaware@skarnet.org> | 2015-01-06 00:31:40 +0000 |
---|---|---|
committer | Laurent Bercot <ska-skaware@skarnet.org> | 2015-01-06 00:31:40 +0000 |
commit | aa081897ac57658482143f29f4b88b1ebbddede3 (patch) | |
tree | cc16f9e77185652899ed7ea798b56031c69ece80 /src/libunixonacid/skaclient_start_async.c | |
parent | 5b4cf1798bfaf7be1dfaea36614757db80cae23d (diff) | |
download | skalibs-aa081897ac57658482143f29f4b88b1ebbddede3.tar.xz |
- Bugfixes in unixmessage/skaclient (short writes / fd leakage / DoS)v2.1.0.0
- ABI change: unixmessage protocol header is now 6 bytes (was 8)
- API change: skaclient_start(_async) now takes an "options" argument
- version increase to 2.1.0.0
Diffstat (limited to 'src/libunixonacid/skaclient_start_async.c')
-rw-r--r-- | src/libunixonacid/skaclient_start_async.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/libunixonacid/skaclient_start_async.c b/src/libunixonacid/skaclient_start_async.c index 4dbbf1c..79ea5df 100644 --- a/src/libunixonacid/skaclient_start_async.c +++ b/src/libunixonacid/skaclient_start_async.c @@ -1,6 +1,7 @@ /* ISC license. */ #include <errno.h> +#include <skalibs/uint32.h> #include <skalibs/error.h> #include <skalibs/kolbak.h> #include <skalibs/skaclient.h> @@ -21,6 +22,7 @@ int skaclient_start_async ( kolbak_closure_t *q, unsigned int qlen, char const *path, + uint32 options, char const *before, unsigned int beforelen, char const *after, @@ -38,14 +40,13 @@ int skaclient_start_async ( return 0 ; } a->pid = 0 ; - a->options = 0 ; + a->options = options & ~SKACLIENT_OPTION_WAITPID ; if (!kolbak_enqueue(&a->kq, (unixmessage_handler_func_t_ref)&skaclient_start_cb, blah)) { skaclient_end(a) ; return 0 ; } - blah->asyncin = &a->asyncin ; - blah->asyncout = &a->asyncout ; + blah->a = a ; blah->after = after ; blah->afterlen = afterlen ; return 1 ; |