From: phk Date: Wed, 28 Jun 2006 21:03:47 +0000 (+0000) Subject: Use shmlog api from libvarnishapi X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d8ad6e9509b34723f7cbd3a37e750d41fd9229cc;p=varnish Use shmlog api from libvarnishapi git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@261 d4fa192b-c00b-0410-8231-f00ffab90ce4 --- diff --git a/varnish-cache/bin/varnishstat/Makefile.am b/varnish-cache/bin/varnishstat/Makefile.am index c2302a7c..16702330 100644 --- a/varnish-cache/bin/varnishstat/Makefile.am +++ b/varnish-cache/bin/varnishstat/Makefile.am @@ -6,5 +6,6 @@ bin_PROGRAMS = varnishstat varnishstat_SOURCES = varnishstat.c -varnishstat_LDADD = -lcurses -# varnishlog_LDADD = $(top_builddir)/lib/libvarnishapi/libvarnishapi.la +varnishstat_LDADD = \ + -lcurses \ + $(top_builddir)/lib/libvarnishapi/libvarnishapi.la diff --git a/varnish-cache/bin/varnishstat/varnishstat.c b/varnish-cache/bin/varnishstat/varnishstat.c index 85bba07f..9d7b253b 100644 --- a/varnish-cache/bin/varnishstat/varnishstat.c +++ b/varnish-cache/bin/varnishstat/varnishstat.c @@ -9,50 +9,22 @@ #include #include #include -#include #include -#include -#include - -static struct shmloghead *loghead; +#include "shmlog.h" +#include "varnishapi.h" int main(int argc, char **argv) { - int fd; - int i, c; - struct shmloghead slh; + int c; + struct shmloghead *lh; struct varnish_stats *VSL_stats; int c_flag = 0; - fd = open(SHMLOG_FILENAME, O_RDONLY); - if (fd < 0) { - fprintf(stderr, "Cannot open %s: %s\n", - SHMLOG_FILENAME, strerror(errno)); - exit (1); - } - i = read(fd, &slh, sizeof slh); - if (i != sizeof slh) { - fprintf(stderr, "Cannot read %s: %s\n", - SHMLOG_FILENAME, strerror(errno)); - exit (1); - } - if (slh.magic != SHMLOGHEAD_MAGIC) { - fprintf(stderr, "Wrong magic number in file %s\n", - SHMLOG_FILENAME); - exit (1); - } - - loghead = mmap(NULL, slh.size + sizeof slh, - PROT_READ, MAP_HASSEMAPHORE, fd, 0); - if (loghead == MAP_FAILED) { - fprintf(stderr, "Cannot mmap %s: %s\n", - SHMLOG_FILENAME, strerror(errno)); - exit (1); - } + lh = VSL_OpenLog(); - VSL_stats = &loghead->stats; + VSL_stats = &lh->stats; while ((c = getopt(argc, argv, "c")) != -1) { switch (c) {