diff options
Diffstat (limited to 'debian/vendor-h2o/deps/libyrmcds/example/memcache.c')
-rw-r--r-- | debian/vendor-h2o/deps/libyrmcds/example/memcache.c | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/debian/vendor-h2o/deps/libyrmcds/example/memcache.c b/debian/vendor-h2o/deps/libyrmcds/example/memcache.c new file mode 100644 index 0000000..eb87928 --- /dev/null +++ b/debian/vendor-h2o/deps/libyrmcds/example/memcache.c @@ -0,0 +1,38 @@ +#include <yrmcds.h> + +#include <errno.h> +#include <error.h> +#include <stdlib.h> +#include <stdio.h> + +void check_error(yrmcds_error e) { + if( e != 0 ) { + if( e == YRMCDS_SYSTEM_ERROR ) { + error(0, errno, "system error"); + } else { + fprintf(stderr, "yrmcds error: %s\n", yrmcds_strerror(e)); + } + exit(2); + } +} + +void check_response(const yrmcds_response* r) { + if( r->status != YRMCDS_STATUS_OK ) { + fprintf(stderr, "Command failed: 0x%04x %.*s\n", + r->status, (int)r->data_len, r->data); + exit(3); + } +} + +int main(int argc, char** argv) { + yrmcds c; + yrmcds_response r; + + check_error( yrmcds_connect(&c, "localhost", 11211) ); + check_error( yrmcds_noop(&c, NULL) ); + check_error( yrmcds_recv(&c, &r) ); + check_response(&r); + check_error( yrmcds_close(&c) ); + + return 0; +} |