forked from mirrors/nixpkgs
Revert "nixpkgs: remove tsocks"
torsocks and tsocks are not equivalent. torsocks needs a
tor proxy for DNS, tsocks do not.
This reverts commit 1ef6470f15
.
tsocks: adding myself as maintainer
This commit is contained in:
parent
6a69a25c56
commit
7102ef5d49
26
pkgs/development/libraries/tsocks/default.nix
Normal file
26
pkgs/development/libraries/tsocks/default.nix
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
{ stdenv, fetchurl }:
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "tsocks-${version}";
|
||||||
|
version = "1.8beta5";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "mirror://sourceforge/tsocks/${name}.tar.gz";
|
||||||
|
sha256 = "0ixkymiph771dcdzvssi9dr2pk1bzaw9zv85riv3xl40mzspx7c4";
|
||||||
|
};
|
||||||
|
|
||||||
|
patches = [ ./poll.patch ];
|
||||||
|
|
||||||
|
preConfigure = ''
|
||||||
|
sed -i -e "s,\\\/usr,"$(echo $out|sed -e "s,\\/,\\\\\\\/,g")",g" tsocks
|
||||||
|
substituteInPlace tsocks --replace /usr $out
|
||||||
|
export configureFlags="$configureFlags --libdir=$out/lib"
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "Transparent SOCKS v4 proxying library";
|
||||||
|
homepage = http://tsocks.sourceforge.net/;
|
||||||
|
license = stdenv.lib.licenses.gpl2;
|
||||||
|
maintainers = with maintainers; [ edwtjo phreedom ];
|
||||||
|
platforms = platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
26
pkgs/development/libraries/tsocks/poll.patch
Normal file
26
pkgs/development/libraries/tsocks/poll.patch
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
From Ingo Hadan <ingo.hadan@sdm.de> Fri, 02 Apr 2010 21:08:50 +0200
|
||||||
|
From: Julien Moutinho <julm+tsocks@autogeree.net>
|
||||||
|
Date: Fri, 26 Apr 2013 01:57:26 +0200
|
||||||
|
Subject: tsocks fails if socksified application uses poll(2) (e.g. subversion-1.5)
|
||||||
|
|
||||||
|
---
|
||||||
|
diff --git a/tsocks.c b/tsocks.c
|
||||||
|
index 9cfdfff..470babd 100644
|
||||||
|
--- a/tsocks.c
|
||||||
|
+++ b/tsocks.c
|
||||||
|
@@ -657,10 +657,11 @@ int poll(POLL_SIGNATURE) {
|
||||||
|
* be ready for writing), otherwise we'll just let the select loop
|
||||||
|
* come around again (since we can't flag it for read, we don't know
|
||||||
|
* if there is any data to be read and can't be bothered checking) */
|
||||||
|
- if (conn->selectevents & WRITE) {
|
||||||
|
- setevents |= POLLOUT;
|
||||||
|
+ if (conn->selectevents & POLLOUT) {
|
||||||
|
+ ufds[i].revents |= POLLOUT;
|
||||||
|
nevents++;
|
||||||
|
}
|
||||||
|
+ ufds[i].events = conn->selectevents;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} while (nevents == 0);
|
||||||
|
|
||||||
|
|
|
@ -7004,6 +7004,8 @@ let
|
||||||
|
|
||||||
unicap = callPackage ../development/libraries/unicap {};
|
unicap = callPackage ../development/libraries/unicap {};
|
||||||
|
|
||||||
|
tsocks = callPackage ../development/libraries/tsocks { };
|
||||||
|
|
||||||
unixODBC = callPackage ../development/libraries/unixODBC { };
|
unixODBC = callPackage ../development/libraries/unixODBC { };
|
||||||
|
|
||||||
unixODBCDrivers = recurseIntoAttrs (import ../development/libraries/unixODBCDrivers {
|
unixODBCDrivers = recurseIntoAttrs (import ../development/libraries/unixODBCDrivers {
|
||||||
|
|
Loading…
Reference in a new issue