net/hs-recv - The NetBSD Packages Collection

Efficient network recv

This module provides efficient receiving functions from the network. recv
uses createAndTrim which behaves as follows:

* Allocates a buffer whose size is decided from the first argument.
* Receives data with the buffer.
* Allocates another buffer whose size fits the received data.
* Copies the data from the first buffer to the second buffer.

On 64bit machines, the global lock is taken for the allocation of a byte
string whose length is larger than or equal to 3272 bytes. So, for
instance, if 4,096 is specified to recv and the size of received data is
3,300, the global lock is taken twice with the copy overhead.

The efficient receiving functions provided here use a buffer pool. A large
buffer is allocated at the beginning and it is divided into a used one and
a leftover when receiving. The latter is kept in the buffer pooll and will
be used next time. When the buffer gets small and usefless, a new large
buffer is allocated.

Build dependencies

pkgtools/mktools pkgtools/cwrappers

Runtime dependencies

lang/ghc98 net/hs-network lang/ghc98 net/hs-network

Binary packages

OSArchitectureVersion
NetBSD 10.0aarch64hs-recv-0.1.0nb2.tgz
NetBSD 10.0aarch64hs-recv-0.1.0nb1.tgz
NetBSD 10.0aarch64hs-recv-0.1.0nb1.tgz
NetBSD 10.0aarch64hs-recv-0.1.0nb2.tgz
NetBSD 10.0x86_64hs-recv-0.1.0nb2.tgz
NetBSD 10.0x86_64hs-recv-0.1.0nb1.tgz
NetBSD 10.0x86_64hs-recv-0.1.0nb1.tgz
NetBSD 10.0x86_64hs-recv-0.1.0nb2.tgz
NetBSD 9.0aarch64hs-recv-0.1.0nb2.tgz
NetBSD 9.0aarch64hs-recv-0.1.0nb1.tgz
NetBSD 9.0aarch64hs-recv-0.1.0nb1.tgz
NetBSD 9.0aarch64hs-recv-0.1.0nb2.tgz
NetBSD 9.0x86_64hs-recv-0.1.0nb2.tgz
NetBSD 9.0x86_64hs-recv-0.1.0nb1.tgz
NetBSD 9.0x86_64hs-recv-0.1.0nb1.tgz
NetBSD 9.0x86_64hs-recv-0.1.0nb2.tgz
NetBSD 9.3x86_64hs-recv-0.1.0nb2.tgz
NetBSD 9.3x86_64hs-recv-0.1.0nb2.tgz

Binary packages can be installed with the high-level tool pkgin (which can be installed with pkg_add) or pkg_add(1) (installed by default). The NetBSD packages collection is also designed to permit easy installation from source.

Available build options

(none)

Known vulnerabilities

The pkg_admin audit command locates any installed package which has been mentioned in security advisories as having vulnerabilities.

Please note the vulnerabilities database might not be fully accurate, and not every bug is exploitable with every configuration.


Problem reports, updates or suggestions for this package should be reported with send-pr.