An LD_PRELOAD library that replaces the hardcoded 1000-slot TCPUser pool in df_channel_r and df_bridge_r with a runtime-configurable size. A pool of 3 saves about 2.5 GB of physical memory per service.
rustup target add i686-unknown-linux-gnu
sudo yum install glibc-devel.i686 # or distro equivalent
cargo build --release --target i686-unknown-linux-gnuOutput: target/i686-unknown-linux-gnu/release/libdofslim.so.
export CLIENT_POOL_SIZE=64
LD_PRELOAD=./libdofslim.so ./df_bridge_rExpect one line on stderr per patched target:
[dofslim] df_bridge_r: 6/6 patches applied, pool_size=64
CLIENT_POOL_SIZE accepts integers in [3, 1000]; anything else leaves the binary as-is. Typical values: 3 for single-user, 10–20 for small servers, 256 for medium deployments, 1000 to disable the patch.
MIT License - see the LICENSE file for details.