Mercurial > libpst
changeset 78:535075b4d261
Patch from Joachim Metz for debian packaging, and fix for incorrect length on lz decompression.
author | Carl Byington <carl@five-ten-sg.com> |
---|---|
date | Tue, 10 Jun 2008 14:28:55 -0700 |
parents | 87216aefc6df |
children | 56fa05fd5271 |
files | ChangeLog Makefile.am NEWS configure.in debian/changelog debian/changelog.in debian/compat debian/control debian/copyright debian/cron.d.ex debian/emacsen-install.ex debian/emacsen-remove.ex debian/emacsen-startup.ex debian/init.d.ex debian/libpst-default.ex debian/libpst.dirs debian/libpst.doc-base.EX debian/libpst.docs debian/libpst.install debian/manpage.1.ex debian/manpage.sgml.ex debian/manpage.xml.ex debian/menu.ex debian/postinst.ex debian/postrm.ex debian/preinst.ex debian/prerm.ex debian/rules debian/watch.ex libpst.spec.in src/lzfu.c |
diffstat | 31 files changed, 990 insertions(+), 8 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Sat Jun 07 15:53:08 2008 -0700 +++ b/ChangeLog Tue Jun 10 14:28:55 2008 -0700 @@ -1,3 +1,8 @@ +LibPST 0.6.12 (2008-06-10) +=============================== + * Patch from Joachim Metz for debian packaging, and fix + for incorrect length on lz decompression. + LibPST 0.6.11 (2008-06-03) =============================== * Use ftello/fseeko to properly handle large files.
--- a/Makefile.am Sat Jun 07 15:53:08 2008 -0700 +++ b/Makefile.am Tue Jun 10 14:28:55 2008 -0700 @@ -3,3 +3,4 @@ html_DATA = AUTHORS COPYING ChangeLog NEWS README CLEANFILES = xml/libpst xml/Makefile EXTRA_DIST = Doxyfile libpst.html.tar.gz libpst.spec $(wildcard xml/M*) $(wildcard xml/h*) $(wildcard xml/lib*) +
--- a/NEWS Sat Jun 07 15:53:08 2008 -0700 +++ b/NEWS Tue Jun 10 14:28:55 2008 -0700 @@ -1,3 +1,4 @@ +0.6.12 2008-06-10 Patch from Joachim Metz for debian packaging, and fix for incorrect length on lz decompression. 0.6.11 2008-06-03 Use ftello/fseeko to properly handle large files. 0.6.10 2008-05-29 Patch from Robert Simpson for doubly-linked list and arrays of unicode strings. 0.6.9 2008-05-16 Patch from Joachim Metz for 64 bit compile.
--- a/configure.in Sat Jun 07 15:53:08 2008 -0700 +++ b/configure.in Tue Jun 10 14:28:55 2008 -0700 @@ -76,8 +76,10 @@ AC_MSG_RESULT([no]) ) + AC_OUTPUT( \ Makefile \ + debian/changelog \ libpst.spec \ html/Makefile \ info/Makefile \
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/changelog Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,6 @@ +libpst (0.6.12-1) unstable; urgency=low + + * Initial release + + -- Joachim Metz <forensics@hoffmannbv.nl> Thu, 29 May 2008 15:37:06 +0200 +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/changelog.in Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,6 @@ +libpst (@VERSION@-1) unstable; urgency=low + + * Initial release + + -- Joachim Metz <forensics@hoffmannbv.nl> Thu, 29 May 2008 15:37:06 +0200 +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/compat Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,1 @@ +5
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/control Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,17 @@ +Source: libpst +Section: utils +Priority: extra +Maintainer: Joachim Metz <forensics@hoffmannbv.nl> +Build-Depends: debhelper (>= 5), autotools-dev, libfreetype6-dev, libgd2-noxpm-dev, zlib1g-dev, libjpeg62-dev +Standards-Version: 3.7.2 + +Package: libpst +Architecture: any +Depends: ImageMagick, ${shlibs:Depends}, ${misc:Depends} +Description: Utilities to convert Outlook .pst files to other formats + The Libpst utilities include readpst which can convert email messages + to both mbox and MH mailbox formats, pst2ldif which can convert the + contacts to .ldif format for import into ldap databases, and pst2dii + which can convert email messages to the DII load file format used by + Summation. +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/copyright Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,41 @@ +This package was debianized by Joachim Metz <forensics@hoffmannbv.nl> on +Thu, 29 May 2008 15:37:06 +0200. + +It was downloaded from <fill in http/ftp site> + +Upstream maintainter: Carl Byington <carl@five-ten-sg.com> + +Copyright: + +Original version by: + Dave Smith <dave.s@earthcorp.com> + Dave Smith <davesmith@users.sourceforge.net> + +Current maintainer: + Carl Byington <carl@five-ten-sg.com> + +With contributions by: + Joseph Nahmias <jello@costa.debian.org> -- bounces + Joseph Nahmias <joe@nahmias.net> + Arne Ahrend <aahrend@web.de> + Nigel Horne <njh@bandsman.co.uk> + Chris Halls <halls@debian.org> + Stevens Miller <smiller@novadatalabs.com> + Brad Hards <bradh@frogmouth.net> + Alexander Grau <alexandergrau@gmx.de> + Antonio Palama <palama@inwind.it> + Sean Loaring <sloaring@tec-man.com> + James Woodcock + +License: + + + + +The Debian packaging is (C) 2008, Joachim Metz <forensics@hoffmannbv.nl> and +is licensed under the GPL, see `/usr/share/common-licenses/GPL'. + + +# Please also look if there are files or directories which have a +# different copyright/license attached and list them here. +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/cron.d.ex Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,4 @@ +# +# Regular cron jobs for the libpst package +# +0 4 * * * root libpst_maintenance
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/emacsen-install.ex Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,45 @@ +#! /bin/sh -e +# /usr/lib/emacsen-common/packages/install/libpst + +# Written by Jim Van Zandt <jrv@debian.org>, borrowing heavily +# from the install scripts for gettext by Santiago Vila +# <sanvila@ctv.es> and octave by Dirk Eddelbuettel <edd@debian.org>. + +FLAVOR=$1 +PACKAGE=libpst + +if [ ${FLAVOR} = emacs ]; then exit 0; fi + +echo install/${PACKAGE}: Handling install for emacsen flavor ${FLAVOR} + +#FLAVORTEST=`echo $FLAVOR | cut -c-6` +#if [ ${FLAVORTEST} = xemacs ] ; then +# SITEFLAG="-no-site-file" +#else +# SITEFLAG="--no-site-file" +#fi +FLAGS="${SITEFLAG} -q -batch -l path.el -f batch-byte-compile" + +ELDIR=/usr/share/emacs/site-lisp/${PACKAGE} +ELCDIR=/usr/share/${FLAVOR}/site-lisp/${PACKAGE} + +# Install-info-altdir does not actually exist. +# Maybe somebody will write it. +if test -x /usr/sbin/install-info-altdir; then + echo install/${PACKAGE}: install Info links for ${FLAVOR} + install-info-altdir --quiet --section "" "" --dirname=${FLAVOR} /usr/info/${PACKAGE}.info.gz +fi + +install -m 755 -d ${ELCDIR} +cd ${ELDIR} +FILES=`echo *.el` +cp ${FILES} ${ELCDIR} +cd ${ELCDIR} + +cat << EOF > path.el +(setq load-path (cons "." load-path) byte-compile-warnings nil) +EOF +${FLAVOR} ${FLAGS} ${FILES} +rm -f *.el path.el + +exit 0
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/emacsen-remove.ex Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,15 @@ +#!/bin/sh -e +# /usr/lib/emacsen-common/packages/remove/libpst + +FLAVOR=$1 +PACKAGE=libpst + +if [ ${FLAVOR} != emacs ]; then + if test -x /usr/sbin/install-info-altdir; then + echo remove/${PACKAGE}: removing Info links for ${FLAVOR} + install-info-altdir --quiet --remove --dirname=${FLAVOR} /usr/info/libpst.info.gz + fi + + echo remove/${PACKAGE}: purging byte-compiled files for ${FLAVOR} + rm -rf /usr/share/${FLAVOR}/site-lisp/${PACKAGE} +fi
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/emacsen-startup.ex Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,25 @@ +;; -*-emacs-lisp-*- +;; +;; Emacs startup file, e.g. /etc/emacs/site-start.d/50libpst.el +;; for the Debian libpst package +;; +;; Originally contributed by Nils Naumann <naumann@unileoben.ac.at> +;; Modified by Dirk Eddelbuettel <edd@debian.org> +;; Adapted for dh-make by Jim Van Zandt <jrv@debian.org> + +;; The libpst package follows the Debian/GNU Linux 'emacsen' policy and +;; byte-compiles its elisp files for each 'emacs flavor' (emacs19, +;; xemacs19, emacs20, xemacs20...). The compiled code is then +;; installed in a subdirectory of the respective site-lisp directory. +;; We have to add this to the load-path: +(let ((package-dir (concat "/usr/share/" + (symbol-name flavor) + "/site-lisp/libpst"))) +;; If package-dir does not exist, the libpst package must have +;; removed but not purged, and we should skip the setup. + (when (file-directory-p package-dir) + (setq load-path (cons package-dir load-path)) + (autoload 'libpst-mode "libpst-mode" + "Major mode for editing libpst files." t) + (add-to-list 'auto-mode-alist '("\\.libpst$" . libpst-mode)))) +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/init.d.ex Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,81 @@ +#! /bin/sh +# +# skeleton example file to build /etc/init.d/ scripts. +# This file should be used to construct scripts for /etc/init.d. +# +# Written by Miquel van Smoorenburg <miquels@cistron.nl>. +# Modified for Debian +# by Ian Murdock <imurdock@gnu.ai.mit.edu>. +# +# Version: @(#)skeleton 1.9 26-Feb-2001 miquels@cistron.nl +# + +PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin +DAEMON=/usr/sbin/libpst +NAME=libpst +DESC=libpst + +test -x $DAEMON || exit 0 + +# Include libpst defaults if available +if [ -f /etc/default/libpst ] ; then + . /etc/default/libpst +fi + +set -e + +case "$1" in + start) + echo -n "Starting $DESC: " + start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \ + --exec $DAEMON -- $DAEMON_OPTS + echo "$NAME." + ;; + stop) + echo -n "Stopping $DESC: " + start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid \ + --exec $DAEMON + echo "$NAME." + ;; + #reload) + # + # If the daemon can reload its config files on the fly + # for example by sending it SIGHUP, do it here. + # + # If the daemon responds to changes in its config file + # directly anyway, make this a do-nothing entry. + # + # echo "Reloading $DESC configuration files." + # start-stop-daemon --stop --signal 1 --quiet --pidfile \ + # /var/run/$NAME.pid --exec $DAEMON + #;; + force-reload) + # + # If the "reload" option is implemented, move the "force-reload" + # option to the "reload" entry above. If not, "force-reload" is + # just the same as "restart" except that it does nothing if the + # daemon isn't already running. + # check wether $DAEMON is running. If so, restart + start-stop-daemon --stop --test --quiet --pidfile \ + /var/run/$NAME.pid --exec $DAEMON \ + && $0 restart \ + || exit 0 + ;; + restart) + echo -n "Restarting $DESC: " + start-stop-daemon --stop --quiet --pidfile \ + /var/run/$NAME.pid --exec $DAEMON + sleep 1 + start-stop-daemon --start --quiet --pidfile \ + /var/run/$NAME.pid --exec $DAEMON -- $DAEMON_OPTS + echo "$NAME." + ;; + *) + N=/etc/init.d/$NAME + # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2 + echo "Usage: $N {start|stop|restart|force-reload}" >&2 + exit 1 + ;; +esac + +exit 0
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/libpst-default.ex Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,10 @@ +# Defaults for libpst initscript +# sourced by /etc/init.d/libpst +# installed at /etc/default/libpst by the maintainer scripts + +# +# This is a POSIX shell fragment +# + +# Additional options that are passed to the Daemon. +DAEMON_OPTS=""
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/libpst.dirs Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,3 @@ +usr/bin +usr/share/man/man1 +usr/share/man/man5
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/libpst.doc-base.EX Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,22 @@ +Document: libpst +Title: Debian libpst Manual +Author: <insert document author here> +Abstract: This manual describes what libpst is + and how it can be used to + manage online manuals on Debian systems. +Section: unknown + +Format: debiandoc-sgml +Files: /usr/share/doc/libpst/libpst.sgml.gz + +Format: postscript +Files: /usr/share/doc/libpst/libpst.ps.gz + +Format: text +Files: /usr/share/doc/libpst/libpst.text.gz + +Format: HTML +Index: /usr/share/doc/libpst/html/index.html +Files: /usr/share/doc/libpst/html/*.html + +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/libpst.docs Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,6 @@ +AUTHORS +COPYING +INSTALL +NEWS +README +TODO
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/libpst.install Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,3 @@ +usr/bin/* +usr/share/man/man1/* +usr/share/man/man5/*
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/manpage.1.ex Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,59 @@ +.\" Hey, EMACS: -*- nroff -*- +.\" First parameter, NAME, should be all caps +.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection +.\" other parameters are allowed: see man(7), man(1) +.TH LIBPST SECTION "May 29, 2008" +.\" Please adjust this date whenever revising the manpage. +.\" +.\" Some roff macros, for reference: +.\" .nh disable hyphenation +.\" .hy enable hyphenation +.\" .ad l left justify +.\" .ad b justify to both left and right margins +.\" .nf disable filling +.\" .fi enable filling +.\" .br insert line break +.\" .sp <n> insert n+1 empty lines +.\" for manpage-specific macros, see man(7) +.SH NAME +libpst \- program to do something +.SH SYNOPSIS +.B libpst +.RI [ options ] " files" ... +.br +.B bar +.RI [ options ] " files" ... +.SH DESCRIPTION +This manual page documents briefly the +.B libpst +and +.B bar +commands. +.PP +.\" TeX users may be more comfortable with the \fB<whatever>\fP and +.\" \fI<whatever>\fP escape sequences to invode bold face and italics, +.\" respectively. +\fBlibpst\fP is a program that... +.SH OPTIONS +These programs follow the usual GNU command line syntax, with long +options starting with two dashes (`-'). +A summary of options is included below. +For a complete description, see the Info files. +.TP +.B \-h, \-\-help +Show summary of options. +.TP +.B \-v, \-\-version +Show version of program. +.SH SEE ALSO +.BR bar (1), +.BR baz (1). +.br +The programs are documented fully by +.IR "The Rise and Fall of a Fooish Bar" , +available via the Info system. +.SH AUTHOR +libpst was written by <upstream author>. +.PP +This manual page was written by Joachim Metz <forensics@hoffmannbv.nl>, +for the Debian project (but may be used by others).
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/manpage.sgml.ex Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,156 @@ +<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [ + +<!-- Process this file with docbook-to-man to generate an nroff manual + page: `docbook-to-man manpage.sgml > manpage.1'. You may view + the manual page with: `docbook-to-man manpage.sgml | nroff -man | + less'. A typical entry in a Makefile or Makefile.am is: + +manpage.1: manpage.sgml + docbook-to-man $< > $@ + + + The docbook-to-man binary is found in the docbook-to-man package. + Please remember that if you create the nroff version in one of the + debian/rules file targets (such as build), you will need to include + docbook-to-man in your Build-Depends control field. + + --> + + <!-- Fill in your name for FIRSTNAME and SURNAME. --> + <!ENTITY dhfirstname "<firstname>FIRSTNAME</firstname>"> + <!ENTITY dhsurname "<surname>SURNAME</surname>"> + <!-- Please adjust the date whenever revising the manpage. --> + <!ENTITY dhdate "<date>May 29, 2008</date>"> + <!-- SECTION should be 1-8, maybe w/ subsection other parameters are + allowed: see man(7), man(1). --> + <!ENTITY dhsection "<manvolnum>SECTION</manvolnum>"> + <!ENTITY dhemail "<email>forensics@hoffmannbv.nl</email>"> + <!ENTITY dhusername "Joachim Metz"> + <!ENTITY dhucpackage "<refentrytitle>LIBPST</refentrytitle>"> + <!ENTITY dhpackage "libpst"> + + <!ENTITY debian "<productname>Debian</productname>"> + <!ENTITY gnu "<acronym>GNU</acronym>"> + <!ENTITY gpl "&gnu; <acronym>GPL</acronym>"> +]> + +<refentry> + <refentryinfo> + <address> + &dhemail; + </address> + <author> + &dhfirstname; + &dhsurname; + </author> + <copyright> + <year>2003</year> + <holder>&dhusername;</holder> + </copyright> + &dhdate; + </refentryinfo> + <refmeta> + &dhucpackage; + + &dhsection; + </refmeta> + <refnamediv> + <refname>&dhpackage;</refname> + + <refpurpose>program to do something</refpurpose> + </refnamediv> + <refsynopsisdiv> + <cmdsynopsis> + <command>&dhpackage;</command> + + <arg><option>-e <replaceable>this</replaceable></option></arg> + + <arg><option>--example <replaceable>that</replaceable></option></arg> + </cmdsynopsis> + </refsynopsisdiv> + <refsect1> + <title>DESCRIPTION</title> + + <para>This manual page documents briefly the + <command>&dhpackage;</command> and <command>bar</command> + commands.</para> + + <para>This manual page was written for the &debian; distribution + because the original program does not have a manual page. + Instead, it has documentation in the &gnu; + <application>Info</application> format; see below.</para> + + <para><command>&dhpackage;</command> is a program that...</para> + + </refsect1> + <refsect1> + <title>OPTIONS</title> + + <para>These programs follow the usual &gnu; command line syntax, + with long options starting with two dashes (`-'). A summary of + options is included below. For a complete description, see the + <application>Info</application> files.</para> + + <variablelist> + <varlistentry> + <term><option>-h</option> + <option>--help</option> + </term> + <listitem> + <para>Show summary of options.</para> + </listitem> + </varlistentry> + <varlistentry> + <term><option>-v</option> + <option>--version</option> + </term> + <listitem> + <para>Show version of program.</para> + </listitem> + </varlistentry> + </variablelist> + </refsect1> + <refsect1> + <title>SEE ALSO</title> + + <para>bar (1), baz (1).</para> + + <para>The programs are documented fully by <citetitle>The Rise and + Fall of a Fooish Bar</citetitle> available via the + <application>Info</application> system.</para> + </refsect1> + <refsect1> + <title>AUTHOR</title> + + <para>This manual page was written by &dhusername; &dhemail; for + the &debian; system (but may be used by others). Permission is + granted to copy, distribute and/or modify this document under + the terms of the &gnu; General Public License, Version 2 any + later version published by the Free Software Foundation. + </para> + <para> + On Debian systems, the complete text of the GNU General Public + License can be found in /usr/share/common-licenses/GPL. + </para> + + </refsect1> +</refentry> + +<!-- Keep this comment at the end of the file +Local variables: +mode: sgml +sgml-omittag:t +sgml-shorttag:t +sgml-minimize-attributes:nil +sgml-always-quote-attributes:t +sgml-indent-step:2 +sgml-indent-data:t +sgml-parent-document:nil +sgml-default-dtd-file:nil +sgml-exposed-tags:nil +sgml-local-catalogs:nil +sgml-local-ecat-files:nil +End: +--> + +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/manpage.xml.ex Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,148 @@ +<?xml version='1.0' encoding='ISO-8859-1'?> +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" +"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [ + +<!-- + +Process this file with an XSLT processor: `xsltproc \ +-''-nonet /usr/share/sgml/docbook/stylesheet/xsl/nwalsh/\ +manpages/docbook.xsl manpage.dbk'. A manual page +<package>.<section> will be generated. You may view the +manual page with: nroff -man <package>.<section> | less'. A +typical entry in a Makefile or Makefile.am is: + +DB2MAN=/usr/share/sgml/docbook/stylesheet/xsl/nwalsh/\ +manpages/docbook.xsl +XP=xsltproc -''-nonet + +manpage.1: manpage.dbk + $(XP) $(DB2MAN) $< + +The xsltproc binary is found in the xsltproc package. The +XSL files are in docbook-xsl. Please remember that if you +create the nroff version in one of the debian/rules file +targets (such as build), you will need to include xsltproc +and docbook-xsl in your Build-Depends control field. + +--> + + <!-- Fill in your name for FIRSTNAME and SURNAME. --> + <!ENTITY dhfirstname "<firstname>FIRSTNAME</firstname>"> + <!ENTITY dhsurname "<surname>SURNAME</surname>"> + <!-- Please adjust the date whenever revising the manpage. --> + <!ENTITY dhdate "<date>May 29, 2008</date>"> + <!-- SECTION should be 1-8, maybe w/ subsection other parameters are + allowed: see man(7), man(1). --> + <!ENTITY dhsection "<manvolnum>SECTION</manvolnum>"> + <!ENTITY dhemail "<email>forensics@hoffmannbv.nl</email>"> + <!ENTITY dhusername "Joachim Metz"> + <!ENTITY dhucpackage "<refentrytitle>LIBPST</refentrytitle>"> + <!ENTITY dhpackage "libpst"> + + <!ENTITY debian "<productname>Debian</productname>"> + <!ENTITY gnu "<acronym>GNU</acronym>"> + <!ENTITY gpl "&gnu; <acronym>GPL</acronym>"> +]> + +<refentry> + <refentryinfo> + <address> + &dhemail; + </address> + <author> + &dhfirstname; + &dhsurname; + </author> + <copyright> + <year>2003</year> + <holder>&dhusername;</holder> + </copyright> + &dhdate; + </refentryinfo> + <refmeta> + &dhucpackage; + + &dhsection; + </refmeta> + <refnamediv> + <refname>&dhpackage;</refname> + + <refpurpose>program to do something</refpurpose> + </refnamediv> + <refsynopsisdiv> + <cmdsynopsis> + <command>&dhpackage;</command> + + <arg><option>-e <replaceable>this</replaceable></option></arg> + + <arg><option>--example <replaceable>that</replaceable></option></arg> + </cmdsynopsis> + </refsynopsisdiv> + <refsect1> + <title>DESCRIPTION</title> + + <para>This manual page documents briefly the + <command>&dhpackage;</command> and <command>bar</command> + commands.</para> + + <para>This manual page was written for the &debian; distribution + because the original program does not have a manual page. + Instead, it has documentation in the &gnu; + <application>Info</application> format; see below.</para> + + <para><command>&dhpackage;</command> is a program that...</para> + + </refsect1> + <refsect1> + <title>OPTIONS</title> + + <para>These programs follow the usual &gnu; command line syntax, + with long options starting with two dashes (`-'). A summary of + options is included below. For a complete description, see the + <application>Info</application> files.</para> + + <variablelist> + <varlistentry> + <term><option>-h</option> + <option>--help</option> + </term> + <listitem> + <para>Show summary of options.</para> + </listitem> + </varlistentry> + <varlistentry> + <term><option>-v</option> + <option>--version</option> + </term> + <listitem> + <para>Show version of program.</para> + </listitem> + </varlistentry> + </variablelist> + </refsect1> + <refsect1> + <title>SEE ALSO</title> + + <para>bar (1), baz (1).</para> + + <para>The programs are documented fully by <citetitle>The Rise and + Fall of a Fooish Bar</citetitle> available via the + <application>Info</application> system.</para> + </refsect1> + <refsect1> + <title>AUTHOR</title> + + <para>This manual page was written by &dhusername; &dhemail; for + the &debian; system (but may be used by others). Permission is + granted to copy, distribute and/or modify this document under + the terms of the &gnu; General Public License, Version 2 any + later version published by the Free Software Foundation. + </para> + <para> + On Debian systems, the complete text of the GNU General Public + License can be found in /usr/share/common-licenses/GPL. + </para> + + </refsect1> +</refentry> +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/menu.ex Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,2 @@ +?package(libpst):needs="X11|text|vc|wm" section="Apps/see-menu-manual"\ + title="libpst" command="/usr/bin/libpst"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/postinst.ex Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,41 @@ +#!/bin/sh +# postinst script for libpst +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * <postinst> `configure' <most-recently-configured-version> +# * <old-postinst> `abort-upgrade' <new version> +# * <conflictor's-postinst> `abort-remove' `in-favour' <package> +# <new-version> +# * <postinst> `abort-remove' +# * <deconfigured's-postinst> `abort-deconfigure' `in-favour' +# <failed-install-package> <version> `removing' +# <conflicting-package> <version> +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + + +case "$1" in + configure) + ;; + + abort-upgrade|abort-remove|abort-deconfigure) + ;; + + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 + +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/postrm.ex Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,39 @@ +#!/bin/sh +# postrm script for libpst +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * <postrm> `remove' +# * <postrm> `purge' +# * <old-postrm> `upgrade' <new-version> +# * <new-postrm> `failed-upgrade' <old-version> +# * <new-postrm> `abort-install' +# * <new-postrm> `abort-install' <old-version> +# * <new-postrm> `abort-upgrade' <old-version> +# * <disappearer's-postrm> `disappear' <overwriter> +# <overwriter-version> +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + + +case "$1" in + purge|remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) + ;; + + *) + echo "postrm called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 + +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/preinst.ex Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,37 @@ +#!/bin/sh +# preinst script for libpst +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * <new-preinst> `install' +# * <new-preinst> `install' <old-version> +# * <new-preinst> `upgrade' <old-version> +# * <old-preinst> `abort-upgrade' <new-version> +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + + +case "$1" in + install|upgrade) + ;; + + abort-upgrade) + ;; + + *) + echo "preinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 + +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/prerm.ex Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,40 @@ +#!/bin/sh +# prerm script for libpst +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * <prerm> `remove' +# * <old-prerm> `upgrade' <new-version> +# * <new-prerm> `failed-upgrade' <old-version> +# * <conflictor's-prerm> `remove' `in-favour' <package> <new-version> +# * <deconfigured's-prerm> `deconfigure' `in-favour' +# <package-being-installed> <version> `removing' +# <conflicting-package> <version> +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + + +case "$1" in + remove|upgrade|deconfigure) + ;; + + failed-upgrade) + ;; + + *) + echo "prerm called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 + +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/rules Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,137 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# Sample debian/rules that uses debhelper. +# +# This file was originally written by Joey Hess and Craig Small. +# As a special exception, when this file is copied by dh-make into a +# dh-make output file, you may use that output file without restriction. +# This special exception was added by Craig Small in version 0.37 of dh-make. +# +# Modified to make a template file for a multi-binary package with separated +# build-arch and build-indep targets by Bill Allombert 2001 + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +# This has to be exported to make some magic below work. +export DH_OPTIONS + +# These are used for cross-compiling and for saving the configure script +# from having to guess our platform (since we know it already) +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) + + +CFLAGS = -Wall -g + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O2 +endif + +config.status: configure + dh_testdir + # Add here commands to configure the package. + ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info CFLAGS="$(CFLAGS)" LDFLAGS="-Wl,-z,defs" + + +#Architecture +build: build-arch build-indep + +build-arch: build-arch-stamp +build-arch-stamp: config.status + + # Add here commands to compile the arch part of the package. + #$(MAKE) + touch $@ + +build-indep: build-indep-stamp +build-indep-stamp: config.status + + # Add here commands to compile the indep part of the package. + #$(MAKE) doc + touch $@ + +clean: + dh_testdir + dh_testroot + rm -f build-arch-stamp build-indep-stamp #CONFIGURE-STAMP# + + # Add here commands to clean up after the build process. + -$(MAKE) distclean +ifneq "$(wildcard /usr/share/misc/config.sub)" "" + cp -f /usr/share/misc/config.sub config.sub +endif +ifneq "$(wildcard /usr/share/misc/config.guess)" "" + cp -f /usr/share/misc/config.guess config.guess +endif + + + dh_clean + +install: install-indep install-arch +install-indep: + dh_testdir + dh_testroot + dh_clean -k -i + dh_installdirs -i + + # Add here commands to install the indep part of the package into + # debian/<package>-doc. + #INSTALLDOC# + + dh_install -i + +install-arch: + dh_testdir + dh_testroot + dh_clean -k -s + dh_installdirs -s + + # Add here commands to install the arch part of the package into + # debian/tmp. + $(MAKE) DESTDIR=$(CURDIR)/debian/tmp install + + dh_install -s --list-missing --sourcedir=$(CURDIR)/debian/tmp +# Must not depend on anything. This is to be called by +# binary-arch/binary-indep +# in another 'make' thread. +binary-common: + dh_testdir + dh_testroot + dh_installchangelogs ChangeLog + dh_installdocs + dh_installexamples +# dh_installmenu +# dh_installdebconf +# dh_installlogrotate +# dh_installemacsen +# dh_installpam +# dh_installmime +# dh_python +# dh_installinit +# dh_installcron + dh_installinfo + dh_installman + dh_link + dh_strip + dh_compress + dh_fixperms +# dh_perl + dh_makeshlibs -V + dh_installdeb + dh_shlibdeps -L libpst -l debian/tmp/usr/lib + dh_gencontrol + dh_md5sums + dh_builddeb +# Build architecture independant packages using the common target. +binary-indep: build-indep install-indep + $(MAKE) -f debian/rules DH_OPTIONS=-i binary-common + +# Build architecture dependant packages using the common target. +binary-arch: build-arch install-arch + $(MAKE) -f debian/rules DH_OPTIONS=-s binary-common + +binary: binary-arch binary-indep +.PHONY: build clean binary-indep binary-arch binary install install-indep install-arch
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/debian/watch.ex Tue Jun 10 14:28:55 2008 -0700 @@ -0,0 +1,22 @@ +# Example watch control file for uscan +# Rename this file to "watch" and then you can run the "uscan" command +# to check for upstream updates and more. +# See uscan(1) for format + +# Compulsory line, this is a version 3 file +version=3 + +# Uncomment to examine a Webpage +# <Webpage URL> <string match> +#http://www.example.com/downloads.php libpst-(.*)\.tar\.gz + +# Uncomment to examine a Webserver directory +#http://www.example.com/pub/libpst-(.*)\.tar\.gz + +# Uncommment to examine a FTP server +#ftp://ftp.example.com/pub/libpst-(.*)\.tar\.gz debian uupdate + +# Uncomment to find new files on sourceforge, for debscripts >= 2.9 +# http://sf.net/libpst/libpst-(.*)\.tar\.gz + +
--- a/libpst.spec.in Sat Jun 07 15:53:08 2008 -0700 +++ b/libpst.spec.in Tue Jun 10 14:28:55 2008 -0700 @@ -47,6 +47,10 @@ %changelog +* Tue Jun 10 2008 Carl Byington <carl@five-ten-sg.com> - 0.6.12-1 +- Patch from Joachim Metz for debian packaging and +- fix for incorrect length on lz decompression + * Tue Jun 03 2008 Carl Byington <carl@five-ten-sg.com> - 0.6.11-1 - Use ftello/fseeko to properly handle large files. - Document and properly use datasize field in b5 blocks.
--- a/src/lzfu.c Sat Jun 07 15:53:08 2008 -0700 +++ b/src/lzfu.c Tue Jun 10 14:28:55 2008 -0700 @@ -70,10 +70,12 @@ //printf("compressed: %s\n", (lzfuhdr.dwMagic == LZFU_COMPRESSED ? "yes" : "no")); //printf("CRC : %#x\n", lzfuhdr.dwCRC); //printf("\n"); - out_size = lzfuhdr.cbRawSize + 3; // two braces and a null terminator + out_size = lzfuhdr.cbRawSize; out_buf = (char*)xmalloc(out_size); in_ptr = sizeof(lzfuhdr); - in_size = (lzfuhdr.cbSize < compsize) ? lzfuhdr.cbSize : compsize; + // Make sure to correct lzfuhdr.cbSize with 4 bytes before comparing + // to compsize + in_size = (lzfuhdr.cbSize + 4 < compsize) ? lzfuhdr.cbSize + 4 : compsize; while (in_ptr < in_size) { flags = (unsigned char)(rtfcomp[in_ptr++]); flag_mask = 1; @@ -100,6 +102,9 @@ dict[dict_length]=c1; dict_length = (dict_length+1) % 4096; if (out_ptr < out_size) out_buf[out_ptr++] = (char)c1; + // required for dictionary wrap around + // otherwise 0 byte values are referenced incorrectly + dict[dict_length] = 0; } } } else { @@ -110,16 +115,14 @@ dict[dict_length] = c1; dict_length = (dict_length+1)%4096; if (out_ptr < out_size) out_buf[out_ptr++] = (char)c1; + // required for dictionary wrap around + // otherwise 0 byte values are referenced incorrect + dict[dict_length] = 0; } } flag_mask <<= 1; } } - // the compressed version doesn't appear to drop the closing - // braces onto the doc, so we do that here. - if (out_ptr < out_size) out_buf[out_ptr++] = '}'; - if (out_ptr < out_size) out_buf[out_ptr++] = '}'; - *size = out_ptr; - if (out_ptr < out_size) out_buf[out_ptr++] = '\0'; + // the RTF data is terminated with }}\0\0 return out_buf; }