diff options
Diffstat (limited to 'doc/examples/nonblocking/write.c')
-rw-r--r-- | doc/examples/nonblocking/write.c | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/doc/examples/nonblocking/write.c b/doc/examples/nonblocking/write.c new file mode 100644 index 0000000..7fe9690 --- /dev/null +++ b/doc/examples/nonblocking/write.c @@ -0,0 +1,32 @@ +#include <bus.h> +#include <stdio.h> +#include <unistd.h> +#include <stdint.h> + +#define t(stmt) if (stmt) goto fail + + + +static char message[BUS_MEMORY_SIZE]; + + + +int main(int argc, char *argv[]) +{ + bus_t bus; + if (argc < 2) { + fprintf(stderr, "%s: USAGE: %s message\n", argv[0], argv[0]); + return 2; + } + sprintf(message, "0 %s", argv[1]); + t(bus_open(&bus, "/tmp/example-bus", BUS_WRONLY)); + t(bus_write(&bus, message, BUS_NOWAIT)); + bus_close(&bus); + return 0; + +fail: + perror("write"); + bus_close(&bus); + return 1; +} + |