bsdiff-portable

A more portable version of Colin Percival's bsdiff
git clone git://git.sgregoratto.me/bsdiff-portable
Log | Files | Refs | README | LICENSE

bsdiff.1 (2467B)


      1 .\"-
      2 .\" Copyright 2003-2005 Colin Percival
      3 .\" All rights reserved
      4 .\"
      5 .\" Redistribution and use in source and binary forms, with or without
      6 .\" modification, are permitted providing that the following conditions
      7 .\" are met:
      8 .\" 1. Redistributions of source code must retain the above copyright
      9 .\"    notice, this list of conditions and the following disclaimer.
     10 .\" 2. Redistributions in binary form must reproduce the above copyright
     11 .\"    notice, this list of conditions and the following disclaimer in the
     12 .\"    documentation and/or other materials provided with the distribution.
     13 .\"
     14 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
     15 .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
     16 .\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
     17 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
     18 .\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
     19 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
     20 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
     21 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
     22 .\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
     23 .\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
     24 .\" POSSIBILITY OF SUCH DAMAGE.
     25 .\"
     26 .\" $FreeBSD$
     27 .\"
     28 .Dd May 18, 2003
     29 .Dt BSDIFF 1
     30 .Os
     31 .Sh NAME
     32 .Nm bsdiff
     33 .Nd generate a patch between two binary files
     34 .Sh SYNOPSIS
     35 .Nm
     36 .Ar oldfile newfile patchfile
     37 .Sh DESCRIPTION
     38 The
     39 .Nm
     40 utility compares
     41 .Ar oldfile
     42 to
     43 .Ar newfile
     44 and writes to
     45 .Ar patchfile
     46 a binary patch suitable for use by
     47 .Xr bspatch 1 .
     48 When
     49 .Ar oldfile
     50 and
     51 .Ar newfile
     52 are two versions of an executable program,
     53 the patches produced are on average a factor of five smaller than those
     54 produced by any other binary patch tool known to the author.
     55 .Pp
     56 The
     57 .Nm
     58 utility
     59 uses memory equal to 17 times the size of
     60 .Ar oldfile ,
     61 and requires an absolute minimum working set size of 8 times the size of
     62 .Ar oldfile .
     63 .Sh SEE ALSO
     64 .Xr bspatch 1
     65 .Sh AUTHORS
     66 .An Colin Percival Aq Mt cperciva@FreeBSD.org
     67 .Sh BUGS
     68 The
     69 .Nm
     70 utility does not store the hashes of
     71 .Ar oldfile
     72 or
     73 .Ar newfile
     74 in
     75 .Ar patchfile .
     76 As a result, it is possible to apply a patch to the wrong file;
     77 this will usually produce garbage.
     78 It is recommended that users of
     79 .Nm
     80 store the hashes of
     81 .Ar oldfile
     82 and
     83 .Ar newfile
     84 and compare against them before and after applying
     85 .Ar patchfile .