diff options
| author | mikeos <mike.osipov@gmail.com> | 2012-10-13 23:20:14 +0400 |
|---|---|---|
| committer | mikeos <mike.osipov@gmail.com> | 2012-10-13 23:20:14 +0400 |
| commit | 893c216b889f260378fb21a7f576c061f7ff2248 (patch) | |
| tree | ad4566df268c76de8fc743d006b14baf6bfb6594 /tcpstat.c | |
initial
Diffstat (limited to 'tcpstat.c')
| -rw-r--r-- | tcpstat.c | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/tcpstat.c b/tcpstat.c new file mode 100644 index 0000000..b76877f --- /dev/null +++ b/tcpstat.c @@ -0,0 +1,41 @@ +#include <sys/socket.h> +#include <sys/un.h> + +#include <stdlib.h> +#include <string.h> +#include <unistd.h> +#include <stdio.h> + +#include "debug.h" +#include "data.h" + +static char buf[0x1000]; + +int main(int argc, char *argv[]) +{ + struct sockaddr_un sa; + int sock; + int n; + + sock = socket(PF_UNIX, SOCK_STREAM, 0); + if (sock < 0) + sys_err("socket"); + + memset(&sa, 0, sizeof(sa)); + sa.sun_family = AF_UNIX; + strcpy(sa.sun_path, UNIX_SOCKET_PATH); + if (connect(sock, (struct sockaddr *) &sa, sizeof(sa)) < 0) + sys_err("connect"); + + while ((n = read(sock, buf, sizeof(buf))) > 0) { + buf[n] = 0; + fputs(buf, stdout); + } + + if (n < 0) + sys_err("read"); + + close(sock); + return 0; +} + |
