Mercurial > dovecot > core-2.2
changeset 13155:f89d7ac7bbcd
fts: Added xml2text binary
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Thu, 04 Aug 2011 13:38:51 +0300 |
parents | 81e6ba752d98 |
children | 43bf1283df78 |
files | .hgignore src/plugins/fts/Makefile.am src/plugins/fts/xml2text.c |
diffstat | 3 files changed, 46 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/.hgignore Thu Aug 04 13:05:26 2011 +0300 +++ b/.hgignore Thu Aug 04 13:38:51 2011 +0300 @@ -92,6 +92,7 @@ src/util/script src/util/script-login src/util/tcpwrap +src/plugins/fts/xml2text src/plugins/quota/rquota_xdr.c src/plugins/quota/rquota.h
--- a/src/plugins/fts/Makefile.am Thu Aug 04 13:05:26 2011 +0300 +++ b/src/plugins/fts/Makefile.am Thu Aug 04 13:38:51 2011 +0300 @@ -36,4 +36,11 @@ fts-search-serialize.h \ fts-storage.h +pkglibexec_PROGRAMS = xml2text + +xml2text_SOURCES = xml2text.c + +xml2text_LDADD = fts-parser-html.lo $(LIBDOVECOT) +xml2text_DEPENDENCIES = fts-parser-html.lo $(LIBDOVECOT_DEPS) + EXTRA_DIST = decode2text.sh
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/plugins/fts/xml2text.c Thu Aug 04 13:38:51 2011 +0300 @@ -0,0 +1,38 @@ +/* Copyright (c) 2011 Dovecot authors, see the included COPYING file */ + +#include "lib.h" +#include "message-parser.h" +#include "fts-parser.h" + +#include <unistd.h> + +int main(void) +{ + struct fts_parser *parser; + unsigned char buf[IO_BLOCK_SIZE]; + struct message_block block; + ssize_t ret; + + lib_init(); + + parser = fts_parser_html.try_init(NULL, "text/html", NULL); + i_assert(parser != NULL); + + memset(&block, 0, sizeof(block)); + while ((ret = read(STDIN_FILENO, buf, sizeof(buf))) > 0) { + block.data = buf; + block.size = ret; + parser->v.more(parser, &block); + write(STDOUT_FILENO, block.data, block.size); + } + + for (;;) { + block.size = 0; + parser->v.more(parser, &block); + if (block.size == 0) + break; + write(STDOUT_FILENO, block.data, block.size); + } + + lib_deinit(); +}