Mercurial
diff third_party/wrk/src/net.c @ 178:94705b5986b3
[ThirdParty] Added WRK and luajit for load testing.
| author | MrJuneJune <me@mrjunejune.com> |
|---|---|
| date | Thu, 22 Jan 2026 20:10:30 -0800 |
| parents | |
| children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/third_party/wrk/src/net.c Thu Jan 22 20:10:30 2026 -0800 @@ -0,0 +1,39 @@ +// Copyright (C) 2013 - Will Glozer. All rights reserved. + +#include <errno.h> +#include <unistd.h> +#include <sys/ioctl.h> + +#include "net.h" + +status sock_connect(connection *c, char *host) { + return OK; +} + +status sock_close(connection *c) { + return OK; +} + +status sock_read(connection *c, size_t *n) { + ssize_t r = read(c->fd, c->buf, sizeof(c->buf)); + *n = (size_t) r; + return r >= 0 ? OK : ERROR; +} + +status sock_write(connection *c, char *buf, size_t len, size_t *n) { + ssize_t r; + if ((r = write(c->fd, buf, len)) == -1) { + switch (errno) { + case EAGAIN: return RETRY; + default: return ERROR; + } + } + *n = (size_t) r; + return OK; +} + +size_t sock_readable(connection *c) { + int n, rc; + rc = ioctl(c->fd, FIONREAD, &n); + return rc == -1 ? 0 : n; +}