#include <stdio.h>
#include <assert.h>
#include "bzlib.h"
+diff -Nru bzip2-1.0.1/bzgrep bzip2-1.0.1.new/bzgrep
+--- bzip2-1.0.1/bzgrep Thu Jan 1 01:00:00 1970
++++ bzip2-1.0.1.new/bzgrep Mon Jul 3 10:23:00 2000
+@@ -0,0 +1,68 @@
++#!/bin/sh
++
++# zgrep -- a wrapper around a grep program that decompresses files as needed
++# Adapted from a version sent by Charles Levert <charles@comm.polymtl.ca>
++# Adapted to bzip2 by Bernhard Rosenkraenzer <bero@redhat.com>
++
++PATH="/usr/bin:$PATH"; export PATH
++
++prog=`echo $0 | sed 's|.*/||'`
++case "$prog" in
++ *egrep) grep=${EGREP-egrep} ;;
++ *fgrep) grep=${FGREP-fgrep} ;;
++ *) grep=${GREP-grep} ;;
++esac
++pat=""
++while test $# -ne 0; do
++ case "$1" in
++ -e | -f) opt="$opt $1"; shift; pat="$1"
++ if test "$grep" = grep; then # grep is buggy with -e on SVR4
++ grep=egrep
++ fi;;
++ -A | -B) opt="$opt $1 $2"; shift;;
++ -*) opt="$opt $1";;
++ *) if test -z "$pat"; then
++ pat="$1"
++ else
++ break;
++ fi;;
++ esac
++ shift
++done
++
++if test -z "$pat"; then
++ echo "grep through bzip2 files"
++ echo "usage: $prog [grep_options] pattern [files]"
++ exit 1
++fi
++
++list=0
++silent=0
++op=`echo "$opt" | sed -e 's/ //g' -e 's/-//g'`
++case "$op" in
++ *l*) list=1
++esac
++case "$op" in
++ *h*) silent=1
++esac
++
++if test $# -eq 0; then
++ bzip2 -cdfq | $grep $opt "$pat"
++ exit $?
++fi
++
++res=0
++for i do
++ if test $list -eq 1; then
++ bzip2 -cdfq "$i" | $grep $opt "$pat" > /dev/null && echo $i
++ r=$?
++ elif test $# -eq 1 -o $silent -eq 1; then
++ bzip2 -cdfq "$i" | $grep $opt "$pat"
++ r=$?
++ else
++ bzip2 -cdfq "$i" | $grep $opt "$pat" | sed "s|^|${i}:|"
++ r=$?
++ fi
++ test "$r" -ne 0 && res="$r"
++done
++exit $res