| .\"- | |
| .\" Copyright 2003-2005 Colin Percival | |
| .\" All rights reserved | |
| .\" | |
| .\" Redistribution and use in source and binary forms, with or without | |
| .\" modification, are permitted providing that the following conditions | |
| .\" are met: | |
| .\" 1. Redistributions of source code must retain the above copyright | |
| .\" notice, this list of conditions and the following disclaimer. | |
| .\" 2. Redistributions in binary form must reproduce the above copyright | |
| .\" notice, this list of conditions and the following disclaimer in the | |
| .\" documentation and/or other materials provided with the distribution. | |
| .\" | |
| .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR | |
| .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | |
| .\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | |
| .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY | |
| .\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | |
| .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | |
| .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | |
| .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, | |
| .\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING | |
| .\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | |
| .\" POSSIBILITY OF SUCH DAMAGE. | |
| .\" | |
| .\" $FreeBSD: src/usr.bin/bsdiff/bspatch/bspatch.1,v 1.1 2005/08/06 01:59:06 cperciva Exp $ | |
| .\" | |
| .Dd May 18, 2003 | |
| .Dt BSPATCH 1 | |
| .Os FreeBSD | |
| .Sh NAME | |
| .Nm bspatch | |
| .Nd apply a patch built with bsdiff(1) | |
| .Sh SYNOPSIS | |
| .Nm | |
| .Ar oldfile newfile patchfile | |
| .Op Ar old-extents new-extents | |
| .Sh DESCRIPTION | |
| .Nm | |
| generates | |
| .Ar newfile | |
| from | |
| .Ar oldfile | |
| and | |
| .Ar patchfile , | |
| where | |
| .Ar patchfile | |
| is a binary patch built by | |
| .Xr bsdiff 1 . | |
| .Pp | |
| When provided, | |
| .Ar old-extents | |
| and | |
| .Ar new-extents | |
| instruct | |
| .Nm | |
| to read specific chunks of data from the old file and to write to specific | |
| locations in the new file, respectively. Each is a comma-separated list of | |
| extents of the form | |
| .Ar offset : Ns Ar length , | |
| where | |
| .Ar offset | |
| is either -1 or a non-negative integer and | |
| .Ar length | |
| is a positive integer. An offset value of -1 denotes a sparse extent, namely a | |
| sequence of zeros that entails neither reading nor writing of actual file | |
| content. | |
| .Pp | |
| .Nm | |
| uses memory equal to the size of | |
| .Ar newfile , | |
| but can tolerate a very small working set without a dramatic loss | |
| of performance. | |
| .Sh SEE ALSO | |
| .Xr bsdiff 1 | |
| .Sh AUTHORS | |
| .An Colin Percival Aq cperciva@freebsd.org |