---
name: "librsync"
section: "3"
platform: "linux"
package: "librsync"
version: "1:2.3.4-2"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/librsync"
---

# librsync(3)

library for delta compression of streams

## NAME

librsync - library for delta compression of streams

## SYNOPSYS

 \#include **\<stdio.h\>**\
\
  \#include **\<stdlib.h\>**\
\
  \#include **\<librsync.h\>**

 cc ... **-lrsync**

## DESCRIPTION

The **librsync** library implements network delta-compression of streams and files.  The algorithm is similar to that used in the **[rsync(1)](/rsync/1.md)** and **xdelta(2)** programs, but specialized for transfer of arbitrary-length octet streams.  Unlike most diff programs, **librsync** does not require access to both of the files on the same machine, but rather only a short \`\`signature'' of the old file and the complete contents of the new file.

The canonical use of **librsync** is in the **rproxy(8)** reference implementation of the *rsync* proposed extension to HTTP.  It may be useful to other programs which wish to do delta-compression in HTTP, or within their own protocol.  There are HTTP-specific utility functions within **librsync**, but they need not be used.

A number of tools such as **[rdiff(1)](/rdiff/1.md)** provide command-line and scriptable access to rsync functions.

## SEE ALSO

[**rdiff**(1)](/rdiff/1.md)

*rdiff and librsync Manual*

*http://rproxy.sourceforge.net/* or *http://linuxcare.com.au/rproxy/*.

*draft-pool-rsync*

## BUGS

The rsync protocol is still evolving.  There may be bugs in the implementation.  The interface may change in the future, but it is becoming more stable.

Many routines will panic in case of error rather than returning an error code to the caller.  Patches to fix this are welcome, but at the current state of development aborting seems as useful as trusting to possibly-incomplete checking in the client.

## AUTHOR

Martin Pool \<mbp@sourcefrog.net\>, with Andrew Tridgell \<tridge@samba.org\>.

rdiff development has been supported by Linuxcare, Inc and VA Linux Systems.
