path: root/src/
authorSergey Poznyakoff <>2013-10-12 09:19:32 (GMT)
committer Sergey Poznyakoff <>2013-10-12 09:28:12 (GMT)
commitb6678bb65fce1f64e82cc049aae3d7ba6f8aa19c (patch) (side-by-side diff)
tree55c1959713e8f37f5958afb4c0cdb4d751406fe6 /src/
parent791cdf412f5fb66a056aa28b27507fdc9af86507 (diff)
Rewrite using opaque record data.
Records can carry arbitrary data, whose format is defined using teplate strings similar to those of Perl's pack() function. The teplate string is stored in the logfile header and is used by binlogcat to render a human-readable representation. * src/.gitignore: New file. * pack.c: New file. * pack.h: New file. * src/ Add pack.c, pack.h * src/binlog.c: Rewrite. Use pack routines to construct each record. * src/binlogcat.c: Likewise. Use packout to unpack each record. * src/vmod-binlog.h (struct binlog_record): Remove nid,aid. (struct binlog_file_header): Add hdrsize. (BINLOG_HEADER_SIZE,union binlog_header): Remove (binlog_recnum): Remove. (binlog_size): Rewrite. * src/vmod.vcc (append,sappend): Remove. (init): Change signature. (start,commit,pack): New functions. * tests/ Rewrite. * tests/ Rewrite.
Diffstat (limited to 'src/') (more/less context) (ignore whitespace changes)
1 files changed, 5 insertions, 1 deletions
diff --git a/src/ b/src/
index c9daf9a..9ce519f 100644
--- a/src/
+++ b/src/
@@ -17,7 +17,8 @@
bin_PROGRAMS = binlogcat
-binlogcat_SOURCES = binlogcat.c
+binlogcat_SOURCES = binlogcat.c pack.c
+binlogcat_CFLAGS = $(AM_CFLAGS)
vmoddir = $(VMODDIR)
@@ -27,9 +28,12 @@ libvmod_binlog_la_LIBADD=
libvmod_binlog_la_SOURCES = \
+ pack.c\
vcc_if.c vcc_if.h
+noinst_HEADERS = pack.h
BUILT_SOURCES = vcc_if.c vcc_if.h
vcc_if.c vcc_if.h: $(VARNISHSRC)/lib/libvmod_std/ $(top_srcdir)/src/vmod.vcc

Return to:

Send suggestions and report system problems to the System administrator.