./misc/mbuffer, Tool for buffering data streams

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 20180625, Package name: mbuffer-20180625, Maintainer: pkgsrc-users

The mbuffer tool is used to buffer data streams and show the I/O rate
and summary to the user. It is especially useful for writing backups to
fast tape drives or streaming them over the network. If used correctly,
it can prevent buffer underruns and speed up the whole backup or
transfer process.


Required to build:
[pkgtools/cwrappers]

Master sites:

SHA1: d3beb0aa92de4095bdbb819a6f0a977507155c96
RMD160: d3fb1e03c40719e72af852692cfcce5db0992b0c
Filesize: 137.643 KB

Version history: (Expand)


CVS history: (Expand)


   2018-10-01 11:29:00 by Jonathan Perkin | Files touched by this commit (2)
Log message:
mbuffer: Ensure LDFLAGS are used when linking.
   2018-09-18 11:49:29 by Filip Hajny | Files touched by this commit (7) | Package updated
Log message:
misc/mbuffer: Update to 20180625.

20180625:
- linking of available hash libraries during runtime

20180505:
- fix typo in summary
- fix potential hang with small input size
- testing fix for BSD
- configure enhancement: objdump may be named gobjdump
- fix tape end of file marker may be ignored
- removed obsolete alpha code

20180410:
- build fix for hashing library variants
- support tapetest on systems with name variants of open and write
- run only network tests for supported address families
  (patch supplied by Peter Pentchev)
- code update for hashing infrastructure
- make idev tests usable on more platforms
- determine amount of available memory via procfs
- option -d unintentionally consumes an argument
- idev.c should use libc's names
- support use of autoreconf

20180318:
- performance optimized defaults
- stricter arguments checking of mbuffer.rc
- handle FreeBSD's maximum semaphore value transparently
- print base 2 dimensions correctly (ki,Mi,Gi,Ti)
- FreeBSD patches by Eric Borisch

20171011:
- use $(etcdir) consistently for installation
- use AC_COMPILE_IF instead of AC_RUN_IF to support cross-compiling
- remove forward typedef for dest_t to support older compilers
- build fix for Solaris
- updated test infrastructure
- print pid on every message with --pid
- fix: potential hang, when one output fails to open

20170921:
- added jumpbuffer reading mode for inconsistent block sizes
- code separation into more files for enhanced readability
- some cleanup work for global variables
- fixed regression in sanity checks
- fix: option -f should truncate output file
- fix: failed opening of network output should not redirect to stdout
- fix: summary printout should respect quiet options

20170806:
- add support for libgcrypt
- add support for tape aware out-of-space handling
- support setting verbosity in config file
- suppress gcc's unused result warnings - all have been manually
  checked
- updated install-sh, config.sub, and config.guess
- exit cleanly if all outputs failed to open but hashers are left
- minor fixes and enhancements
- minor code refactoring for clearer structure
- some code hardening
- build fix for OpenBSD
- work around mhash_get_hash_name_static crashing

20170515:
- fix false warning on comments in config files
- code update for config parsing
- makefile compatibility update

20170514:
- update: configure update for latest cygwin
- fix: detect missing md5.h in configure
- enhancement: adjust some messages to avoid line-wrapping
- enhancement: print status message to log if suppressed on console
- enhancement: also read config files in /etc and ${prefix}/etc
- enhancement: simplified memory conifguration detection scheme
- added an example config file, with documentation of all options
- added parameter StatusInterval
- fix for handling empty lines in config files
- fix: --append rejects existing files
- fix warnings related to thread status return code

20161115:
- enhancement: report percent done, when input size is known (is a
  file)
- enhancement: watchdog raises SIGKILL if SIGINT had no effect
- change: start watchdog when parsing option -W or after parsing all
  options when activated via defaults file
- fix: use thread-safe mt_usleep instead of sleep(3) for watchdog
  timing
- change: adjusted interface of mt_usleep to accept 64bit arguments

20160613:
- fix: fix potential assertion triggered by interrupted system call
- enhancement: ignore EINTR for I/O syscalls

20160228:
- fix: fix listen's backlog argument, which can cause issues on Linux
  4.4
   2015-11-26 01:27:23 by Sebastian Wiedenroth | Files touched by this commit (2) | Package updated
Log message:
Update misc/mbuffer to 20151002

Changes in 20151002:
	- fix: SegV when argument to -v is missing
	- fix: potential infinite loop on output error
   2015-11-04 00:49:56 by Alistair G. Crooks | Files touched by this commit (330)
Log message:
Add SHA512 digests for distfiles for misc category

Problems found locating distfiles:
	Package colorls: missing distfile ls.tar.gz
	Package molden: missing distfile molden-4.6/molden4.6.tar.gz
	Package softmaker-office-demo: missing distfile ofl06trial.tgz

Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden).  All existing
SHA1 digests retained for now as an audit trail.
   2015-06-05 13:36:40 by Sebastian Wiedenroth | Files touched by this commit (3) | Package updated
Log message:
Update mbuffer to 20150412

20150412:
- fix: watchdog cannot do its job if it is cleaned up to early
- fix: clear sa_flags and sa_mask before use, although ignored

20141227:
- added option --pid to print PID of current process
- updated usage to include option -W
- man page formatting fixes
- configure updates
- support compiling on systems that do not define PATH_MAX
   2015-01-04 04:39:57 by David A. Holland | Files touched by this commit (1)
Log message:
Use BROKEN_ON_PLATFORM for "needs sysctl bits".
   2014-05-08 13:21:24 by Jonathan Perkin | Files touched by this commit (7)
Log message:
Import mbuffer-20140310 into pkgsrc, packaged by Brian Bennett.

mbuffer is a tool for buffering data streams with a large set of
unique features:

 * direct support for TCP based network targets (IPv4 and IPv6)
 * ability to send to multiple targets in parallel (distribution mode)
 * support for multiple volumes
 * I/O rate limitation
 * high/low watermark based restart criteria
 * configurable buffer size
 * on the fly MD5 hash calculation
 * highly efficient, multi-threaded implementation

It is especially useful, if you are writing backups to fast tape drives
or libraries.