Files
nixpkgs/pkgs/by-name/tc/tcp_wrappers/package.nix
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

81 lines
2.2 KiB
Nix

{
fetchurl,
lib,
stdenv,
libnsl,
}:
let
vanillaVersion = "7.6.q";
patchLevel = "33";
in
stdenv.mkDerivation rec {
pname = "tcp-wrappers";
version = "${vanillaVersion}-${patchLevel}";
src = fetchurl {
url = "mirror://debian/pool/main/t/tcp-wrappers/tcp-wrappers_${vanillaVersion}.orig.tar.gz";
sha256 = "0p9ilj4v96q32klavx0phw9va21fjp8vpk11nbh6v2ppxnnxfhwm";
};
debian = fetchurl {
url = "mirror://debian/pool/main/t/tcp-wrappers/tcp-wrappers_${version}.debian.tar.xz";
hash = "sha256-Lykjyu4hKDS/DqQ8JAFhKDffHrbJ9W1gjBKNpdaNRew=";
};
prePatch = ''
tar -xaf $debian
patches="$(cat debian/patches/series | sed 's,^,debian/patches/,') $patches"
substituteInPlace Makefile --replace STRINGS STRINGDEFS
substituteInPlace debian/patches/13_shlib_weaksym --replace STRINGS STRINGDEFS
'';
# Fix __BEGIN_DECLS usage (even if it wasn't non-standard, this doesn't include sys/cdefs.h)
patches = [ ./cdecls.patch ];
buildInputs = [ libnsl ];
makeFlags = [
"REAL_DAEMON_DIR=$(out)/bin"
"linux"
"AR:=$(AR)"
];
installPhase = ''
mkdir -p "$out/bin"
cp -v safe_finger tcpd tcpdchk tcpdmatch try-from "$out/bin"
mkdir -p "$out/lib"
cp -v shared/lib*.so* "$out/lib"
mkdir -p "$out/include"
cp -v *.h "$out/include"
for i in 3 5 8;
do
mkdir -p "$out/man/man$i"
cp *.$i "$out/man/man$i" ;
done
'';
meta = {
description = "TCP Wrappers, a network logger, also known as TCPD or LOG_TCP";
longDescription = ''
Wietse Venema's network logger, also known as TCPD or LOG_TCP.
These programs log the client host name of incoming telnet, ftp,
rsh, rlogin, finger etc. requests. Security options are: access
control per host, domain and/or service; detection of host name
spoofing or host address spoofing; booby traps to implement an
early-warning system. The current version supports the System
V.4 TLI network programming interface (Solaris, DG/UX) in
addition to the traditional BSD sockets.
'';
homepage = "ftp://ftp.porcupine.org/pub/security/index.html";
license = lib.licenses.tcpWrappers;
platforms = lib.platforms.linux;
};
}