about summary refs log tree commit diff
path: root/pkgs/tools/networking
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2015-11-20 14:32:58 +0100
committerVladimír Čunát <vcunat@gmail.com>2015-11-20 14:32:58 +0100
commit333d69a5f0e7ccfe7b8c0bdb14ebd3934b3f77fb (patch)
tree0f4757ddd2bb3d73b438eea85828d8e01c049583 /pkgs/tools/networking
parentbdbbfa0d4247e203ffe3171621b614374da05f70 (diff)
parentb809f886c0bdbd4665fc65a4c308d38a30c368d8 (diff)
Merge staging into closure-size
The most complex problems were from dealing with switches reverted in
the meantime (gcc5, gmp6, ncurses6).
It's likely that darwin is (still) broken nontrivially.
Diffstat (limited to 'pkgs/tools/networking')
-rw-r--r--pkgs/tools/networking/aria2/default.nix6
-rw-r--r--pkgs/tools/networking/curl/default.nix4
-rw-r--r--pkgs/tools/networking/cutter/default.nix4
-rw-r--r--pkgs/tools/networking/dropbear/default.nix6
-rw-r--r--pkgs/tools/networking/dropbear/pass-path.patch23
-rw-r--r--pkgs/tools/networking/i2p/default.nix4
-rw-r--r--pkgs/tools/networking/iftop/default.nix6
-rw-r--r--pkgs/tools/networking/iperf/3.nix4
-rw-r--r--pkgs/tools/networking/nbd/default.nix4
-rw-r--r--pkgs/tools/networking/netsniff-ng/default.nix6
-rw-r--r--pkgs/tools/networking/network-manager-applet/default.nix2
-rw-r--r--pkgs/tools/networking/network-manager/0.9.8.nix58
-rw-r--r--pkgs/tools/networking/network-manager/default.nix8
-rw-r--r--pkgs/tools/networking/network-manager/libnl-3.2.25.patch61
-rw-r--r--pkgs/tools/networking/network-manager/nm-platform.patch17
-rw-r--r--pkgs/tools/networking/network-manager/openconnect.nix4
-rw-r--r--pkgs/tools/networking/network-manager/openvpn.nix2
-rw-r--r--pkgs/tools/networking/network-manager/pptp.nix2
-rw-r--r--pkgs/tools/networking/network-manager/vpnc.nix2
-rw-r--r--pkgs/tools/networking/ntopng/0001-Undo-weird-modification-of-data_dir.patch26
-rw-r--r--pkgs/tools/networking/ntopng/0002-Remove-requirement-to-have-writeable-callback-dir.patch31
-rw-r--r--pkgs/tools/networking/ntopng/default.nix34
-rw-r--r--pkgs/tools/networking/ntp/default.nix4
-rw-r--r--pkgs/tools/networking/nzbget/default.nix6
-rw-r--r--pkgs/tools/networking/openssh/default.nix6
-rw-r--r--pkgs/tools/networking/openssh/openssh-6.9p1-security-7.0.patch65
-rw-r--r--pkgs/tools/networking/openvpn/update-resolv-conf.nix2
-rw-r--r--pkgs/tools/networking/plasma-nm/default.nix5
-rw-r--r--pkgs/tools/networking/reaver-wps/default.nix1
-rw-r--r--pkgs/tools/networking/ripmime/default.nix4
-rw-r--r--pkgs/tools/networking/smbldaptools/default.nix2
-rw-r--r--pkgs/tools/networking/snabb/default.nix32
-rw-r--r--pkgs/tools/networking/tgt/default.nix7
-rw-r--r--pkgs/tools/networking/tinc/pre.nix6
-rw-r--r--pkgs/tools/networking/wavemon/default.nix57
-rw-r--r--pkgs/tools/networking/whois/default.nix40
-rw-r--r--pkgs/tools/networking/zerotierone/default.nix4
37 files changed, 398 insertions, 157 deletions
diff --git a/pkgs/tools/networking/aria2/default.nix b/pkgs/tools/networking/aria2/default.nix
index 07671ffe81f1b..77226ae0be904 100644
--- a/pkgs/tools/networking/aria2/default.nix
+++ b/pkgs/tools/networking/aria2/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   name = "aria2-${version}";
-  version = "1.19.0";
+  version = "1.19.2";
 
   src = fetchurl {
-    url = "mirror://sourceforge/aria2/${name}.tar.xz";
-    sha256 = "0xm4fmap9gp2pz6z01mnnpmazw6pnhzs8qc58181m5ai4gy5ksp2";
+    url = "https://github.com/tatsuhiro-t/aria2/releases/download/release-${version}/${name}.tar.xz";
+    sha256 = "0gnm1b7yp5q6fcajz1ln2f1rv64p6dv0nz9bcwpqrkcmsinlh19n";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix
index 288b2d0863d53..ed650b87b212c 100644
--- a/pkgs/tools/networking/curl/default.nix
+++ b/pkgs/tools/networking/curl/default.nix
@@ -16,11 +16,11 @@ assert scpSupport -> libssh2 != null;
 assert c-aresSupport -> c-ares != null;
 
 stdenv.mkDerivation rec {
-  name = "curl-7.44.0";
+  name = "curl-7.45.0";
 
   src = fetchurl {
     url = "http://curl.haxx.se/download/${name}.tar.bz2";
-    sha256 = "050q6i20lbh7dyyhva2sbp8dbyp6sghlkbpvq2bvcasqwsx4298y";
+    sha256 = "1slq5c0v9wa8hajgimhkxhvsrd07jmih8sa3gjsl597qp5k4w5b5";
   };
 
   outputs = [ "dev" "out" "bin" "man" "docdev" ];
diff --git a/pkgs/tools/networking/cutter/default.nix b/pkgs/tools/networking/cutter/default.nix
index ad7d254040698..28eab7f495aa7 100644
--- a/pkgs/tools/networking/cutter/default.nix
+++ b/pkgs/tools/networking/cutter/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "cutter-1.03";
+  name = "cutter-1.04";
 
   src = fetchurl {
     url = "http://www.digitage.co.uk/digitage/files/cutter/${name}.tgz";
-    sha256 = "05cn22wi70l9ybhmzw0sy3fd6xxz0lq49fws4zxzm2i0qb3zmx2d";
+    sha256 = "100iy31a3njif6vh9gfsqrm14hac05rrflla275gd4rkxdlnqcqv";
   };
 
   installPhase = ''
diff --git a/pkgs/tools/networking/dropbear/default.nix b/pkgs/tools/networking/dropbear/default.nix
index 79a23ae383276..98ea4c82304ba 100644
--- a/pkgs/tools/networking/dropbear/default.nix
+++ b/pkgs/tools/networking/dropbear/default.nix
@@ -35,9 +35,11 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ zlib ];
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://matt.ucc.asn.au/dropbear/dropbear.html;
     description = "An small footprint implementation of the SSH 2 protocol";
-    license = stdenv.lib.licenses.mit;
+    license = licenses.mit;
+    maintainers = with maintainers; [ abbradar ];
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/tools/networking/dropbear/pass-path.patch b/pkgs/tools/networking/dropbear/pass-path.patch
index 1e223e0ad64d3..2ce08b05799de 100644
--- a/pkgs/tools/networking/dropbear/pass-path.patch
+++ b/pkgs/tools/networking/dropbear/pass-path.patch
@@ -1,31 +1,36 @@
 diff --git a/svr-chansession.c b/svr-chansession.c
-index 23dad8c..32cac13 100644
+index e44299e..7ef750a 100644
 --- a/svr-chansession.c
 +++ b/svr-chansession.c
-@@ -823,6 +823,7 @@ static void addchildpid(struct ChanSess *chansess, pid_t pid) {
+@@ -893,6 +893,8 @@ static void addchildpid(struct ChanSess *chansess, pid_t pid) {
  static void execchild(void *user_data) {
  	struct ChanSess *chansess = user_data;
  	char *usershell = NULL;
 +	const char *path = DEFAULT_PATH;
++	const char *ldpath = NULL;
  
-     /* with uClinux we'll have vfork()ed, so don't want to overwrite the
-      * hostkey. can't think of a workaround to clear it */
-@@ -835,6 +836,9 @@ static void execchild(void *user_data) {
- 	reseedrandom();
+ 	/* with uClinux we'll have vfork()ed, so don't want to overwrite the
+ 	 * hostkey. can't think of a workaround to clear it */
+@@ -905,6 +907,10 @@ static void execchild(void *user_data) {
+ 	seedrandom();
  #endif
  
-+    if (getenv("PATH"))
-+        path = getenv("PATH");
++	if (getenv("PATH"))
++		path = getenv("PATH");
++	ldpath = getenv("LD_LIBRARY_PATH");
 +
  	/* clear environment */
  	/* if we're debugging using valgrind etc, we need to keep the LD_PRELOAD
  	 * etc. This is hazardous, so should only be used for debugging. */
-@@ -878,7 +882,7 @@ static void execchild(void *user_data) {
+@@ -948,7 +954,10 @@ static void execchild(void *user_data) {
  	addnewvar("LOGNAME", ses.authstate.pw_name);
  	addnewvar("HOME", ses.authstate.pw_dir);
  	addnewvar("SHELL", get_user_shell());
 -	addnewvar("PATH", DEFAULT_PATH);
 +	addnewvar("PATH", path);
++	if (ldpath != NULL) {
++		addnewvar("LD_LIBRARY_PATH", ldpath);
++	}
  	if (chansess->term != NULL) {
  		addnewvar("TERM", chansess->term);
  	}
diff --git a/pkgs/tools/networking/i2p/default.nix b/pkgs/tools/networking/i2p/default.nix
index cbfedab0faf2b..5b439eb8f3f5f 100644
--- a/pkgs/tools/networking/i2p/default.nix
+++ b/pkgs/tools/networking/i2p/default.nix
@@ -1,10 +1,10 @@
 { stdenv, procps, coreutils, fetchurl, jdk, jre, ant, gettext, which }:
 
 stdenv.mkDerivation rec {
-  name = "i2p-0.9.21";
+  name = "i2p-0.9.22";
   src = fetchurl {
     url = "https://github.com/i2p/i2p.i2p/archive/${name}.tar.gz";
-    sha256 = "1cgki9sg0pc4d66rr556lw0682c4mmdvmr6awvsn7ch0rp4zav9f";
+    sha256 = "0y21dx5d95gq1i6ip56nmawr19974zawzwa315dm8lmz32bj8g6n";
   };
   buildInputs = [ jdk ant gettext which ];
   patches = [ ./i2p.patch ];
diff --git a/pkgs/tools/networking/iftop/default.nix b/pkgs/tools/networking/iftop/default.nix
index a7fc4414f2c9e..9e432c946cf51 100644
--- a/pkgs/tools/networking/iftop/default.nix
+++ b/pkgs/tools/networking/iftop/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl, ncurses, libpcap, automake}:
 
 stdenv.mkDerivation rec {
-  name = "iftop-0.17";
+  name = "iftop-1.0pre4";
 
   src = fetchurl {
-    url = http://ex-parrot.com/pdw/iftop/download/iftop-0.17.tar.gz;
-    sha256 = "1b0fis53280qx85gldhmqfcpgyiwplzg43gxyngia1w3f1y58cnh";
+    url = http://ex-parrot.com/pdw/iftop/download/iftop-1.0pre4.tar.gz;
+    sha256 = "15sgkdyijb7vbxpxjavh5qm5nvyii3fqcg9mzvw7fx8s6zmfwczp";
   };
 
   # Explicitly link against libgcc_s, to work around the infamous
diff --git a/pkgs/tools/networking/iperf/3.nix b/pkgs/tools/networking/iperf/3.nix
index 0efc789a0b2d9..944989f47c345 100644
--- a/pkgs/tools/networking/iperf/3.nix
+++ b/pkgs/tools/networking/iperf/3.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "iperf-3.0.11";
+  name = "iperf-3.1";
 
   src = fetchurl {
     url = "http://downloads.es.net/pub/iperf/${name}.tar.gz";
-    sha256 = "0vkzx7yxhah49l83jb5r3y4zzfdqypj5y2b3fjc7rxj7dyzba7g0";
+    sha256 = "0mp6bhfbkkcrdc2sl65k0g5x5csnccqrjk3bc3a0kjr5rqpa71a3";
   };
 
   postInstall = ''
diff --git a/pkgs/tools/networking/nbd/default.nix b/pkgs/tools/networking/nbd/default.nix
index d0011c6676632..6cb75152af067 100644
--- a/pkgs/tools/networking/nbd/default.nix
+++ b/pkgs/tools/networking/nbd/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pkgconfig, glib }:
 
 stdenv.mkDerivation rec {
-  name = "nbd-3.11";
+  name = "nbd-3.12.1";
 
   src = fetchurl {
     url = "mirror://sourceforge/nbd/${name}.tar.xz";
-    sha256 = "187jwc43dhxbv9rrszimm3bvwr1hcpyixv82jfd61p0nrds0yhhl";
+    sha256 = "1pkkid657zgjymwxv3fm32cxnq9llfz29rl15vp6mn42vnzbj1di";
   };
 
   buildInputs = [ pkgconfig glib ] ++ stdenv.lib.optional (stdenv ? glibc) stdenv.glibc.kernelHeaders;
diff --git a/pkgs/tools/networking/netsniff-ng/default.nix b/pkgs/tools/networking/netsniff-ng/default.nix
index 7176af696a94e..9d8095b0a5f15 100644
--- a/pkgs/tools/networking/netsniff-ng/default.nix
+++ b/pkgs/tools/networking/netsniff-ng/default.nix
@@ -2,7 +2,7 @@
 , libnetfilter_conntrack, libnl, libpcap, libsodium, liburcu, ncurses, perl
 , pkgconfig, zlib }:
 
-let version = "0.5.9-98-gb3a9f17"; in
+let version = "0.6.0"; in
 stdenv.mkDerivation {
   name = "netsniff-ng-${version}";
 
@@ -10,8 +10,8 @@ stdenv.mkDerivation {
   src = fetchFromGitHub rec {
     repo = "netsniff-ng";
     owner = repo;
-    rev = "b3a9f17eb9c7a47e6c4aee3649179b2a54d17eca";
-    sha256 = "05nwi5ksijv42w7km08dhymiyyvcj43b5lrpdf9x5j725l79yqdb";
+    rev = "v${version}";
+    sha256 = "0vfs1vsrsbiqxp6nrdibxa60wivapjhj3sdpa4v90m3pfnqif46z";
   };
 
   buildInputs = [ bison flex geoip geolite-legacy libcli libnet libnl
diff --git a/pkgs/tools/networking/network-manager-applet/default.nix b/pkgs/tools/networking/network-manager-applet/default.nix
index 0a8a1f10c0067..e089f69ebd827 100644
--- a/pkgs/tools/networking/network-manager-applet/default.nix
+++ b/pkgs/tools/networking/network-manager-applet/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pn}/${major}/${name}.tar.xz";
-    sha256 = "1afri2zln5p59660hqzbwm2r8phx9inrm2bgp5scynzs8ddzh2kn";
+    sha256 = "1yj0m6fb9v12d0di0rfmk3hx1vmygjkiff2c476rf792sbh56kax";
   };
 
   configureFlags = [ "--sysconfdir=/etc" ];
diff --git a/pkgs/tools/networking/network-manager/0.9.8.nix b/pkgs/tools/networking/network-manager/0.9.8.nix
new file mode 100644
index 0000000000000..4fad1ca2ab9af
--- /dev/null
+++ b/pkgs/tools/networking/network-manager/0.9.8.nix
@@ -0,0 +1,58 @@
+{ stdenv, fetchurl, intltool, pkgconfig, dbus_glib
+, udev, libnl, libuuid, gnutls, dhcp
+, libgcrypt, perl, libgudev }:
+
+stdenv.mkDerivation rec {
+  name = "network-manager-${version}";
+  version = "0.9.8.10";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/NetworkManager/0.9/NetworkManager-${version}.tar.xz";
+    sha256 = "0wn9qh8r56r8l19dqr68pdl1rv3zg1dv47rfy6fqa91q7li2fk86";
+  };
+
+  preConfigure = ''
+    substituteInPlace tools/glib-mkenums --replace /usr/bin/perl ${perl}/bin/perl
+  '';
+
+  # Right now we hardcode quite a few paths at build time. Probably we should
+  # patch networkmanager to allow passing these path in config file. This will
+  # remove unneeded build-time dependencies.
+  configureFlags = [
+    "--with-distro=exherbo"
+    "--with-dhclient=${dhcp}/sbin/dhclient"
+    "--with-dhcpcd=no"
+    "--with-iptables=no"
+    "--with-udev-dir=\${out}/lib/udev"
+    "--with-resolvconf=no"
+    "--sysconfdir=/etc" "--localstatedir=/var"
+    "--with-dbus-sys-dir=\${out}/etc/dbus-1/system.d"
+    "--with-crypto=gnutls" "--disable-more-warnings"
+    "--with-systemdsystemunitdir=$(out)/etc/systemd/system"
+    "--with-kernel-firmware-dir=/run/current-system/firmware"
+    "--disable-ppp"
+  ];
+
+  buildInputs = [ udev libnl libuuid gnutls libgcrypt libgudev ];
+
+  propagatedBuildInputs = [ dbus_glib ];
+
+  nativeBuildInputs = [ intltool pkgconfig ];
+
+  patches =
+    [ ./libnl-3.2.25.patch
+      ./nixos-purity.patch
+    ];
+
+  preInstall =
+    ''
+      installFlagsArray=( "sysconfdir=$out/etc" "localstatedir=$out/var" )
+    '';
+
+  meta = with stdenv.lib; {
+    homepage = http://projects.gnome.org/NetworkManager/;
+    description = "Network configuration and management tool";
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/tools/networking/network-manager/default.nix b/pkgs/tools/networking/network-manager/default.nix
index 7c9d6080b0039..464461194daaf 100644
--- a/pkgs/tools/networking/network-manager/default.nix
+++ b/pkgs/tools/networking/network-manager/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   name = "network-manager-${version}";
-  version = "1.0.2";
+  version = "1.0.6";
 
   src = fetchurl {
     url = "mirror://gnome/sources/NetworkManager/1.0/NetworkManager-${version}.tar.xz";
-    sha256 = "1zq8jm1rc7n7amqa9xz1v93w2jnczg6942gyijsdpgllfiq8b4rm";
+    sha256 = "38ea002403e3b884ffa9aae25aea431d2a8420f81f4919761c83fb92648254bd";
   };
 
   preConfigure = ''
@@ -45,12 +45,14 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [ wirelesstools systemd libgudev libnl libuuid polkit ppp libndp
-                  xz bluez5 gobjectIntrospection modemmanager readline newt libsoup ];
+                  xz bluez5 dnsmasq gobjectIntrospection modemmanager readline newt libsoup ];
 
   propagatedBuildInputs = [ dbus_glib gnutls libgcrypt ];
 
   nativeBuildInputs = [ intltool pkgconfig ];
 
+  patches = [ ./nm-platform.patch ];
+
   preInstall =
     ''
       installFlagsArray=( "sysconfdir=$out/etc" "localstatedir=$out/var" )
diff --git a/pkgs/tools/networking/network-manager/libnl-3.2.25.patch b/pkgs/tools/networking/network-manager/libnl-3.2.25.patch
new file mode 100644
index 0000000000000..17c2966b7064b
--- /dev/null
+++ b/pkgs/tools/networking/network-manager/libnl-3.2.25.patch
@@ -0,0 +1,61 @@
+diff --git a/src/nm-netlink-monitor.c b/src/nm-netlink-monitor.c
+index ba8053e..5ac39d3 100644
+--- a/src/nm-netlink-monitor.c
++++ b/src/nm-netlink-monitor.c
+@@ -177,40 +177,15 @@ link_msg_handler (struct nl_object *obj, void *arg)
+ static int
+ event_msg_recv (struct nl_msg *msg, void *arg)
+ {
+-	struct nl_sock *nlh = arg;
+-	struct nlmsghdr *hdr = nlmsg_hdr (msg);
+ 	struct ucred *creds = nlmsg_get_creds (msg);
+-	const struct sockaddr_nl *snl;
+-	guint32 local_port;
+-	gboolean accept_msg = FALSE;
+-
+-	/* Only messages sent from the kernel */
+-	if (!creds || creds->uid != 0) {
+-		nm_log_dbg (LOGD_HW, "ignoring netlink message from UID %d",
+-		            creds ? creds->uid : -1);
+-		return NL_SKIP;
+-	}
+-
+-	snl = nlmsg_get_src (msg);
+-	g_assert (snl);
+-
+-	/* Accept any messages from the kernel */
+-	if (hdr->nlmsg_pid == 0 || snl->nl_pid == 0)
+-		accept_msg = TRUE;
+ 
+-	/* And any multicast message directed to our netlink PID, since multicast
+-	 * currently requires CAP_ADMIN to use.
+-	 */
+-	local_port = nl_socket_get_local_port (nlh);
+-	if ((hdr->nlmsg_pid == local_port) && snl->nl_groups)
+-		accept_msg = TRUE;
+-
+-	if (accept_msg == FALSE) {
+-		nm_log_dbg (LOGD_HW, "ignoring netlink message from PID %d (local PID %d, multicast %d)",
+-		            hdr->nlmsg_pid,
+-		            local_port,
+-		            (hdr->nlmsg_flags & NLM_F_MULTI));
+-		return NL_SKIP;
++	if (!creds || creds->pid || creds->uid || creds->gid) {
++		if (creds)
++			nm_log_dbg (LOGD_HW, "netlink: received non-kernel message (pid %d uid %d gid %d)",
++			            creds->pid, creds->uid, creds->gid);
++		else
++			nm_log_dbg (LOGD_HW, "netlink: received message without credentials");
++		return NL_STOP;
+ 	}
+ 
+ 	return NL_OK;
+@@ -285,7 +260,7 @@ nlh_setup (struct nl_sock *nlh,
+ {
+ 	int err;
+ 
+-	nl_socket_modify_cb (nlh, NL_CB_MSG_IN, NL_CB_CUSTOM, event_msg_recv, cb_data);
++	nl_socket_modify_cb (nlh, NL_CB_MSG_IN, NL_CB_CUSTOM, event_msg_recv, NULL);
+ 
+ 	if (valid_func)
+ 		nl_socket_modify_cb (nlh, NL_CB_VALID, NL_CB_CUSTOM, valid_func, cb_data);
diff --git a/pkgs/tools/networking/network-manager/nm-platform.patch b/pkgs/tools/networking/network-manager/nm-platform.patch
new file mode 100644
index 0000000000000..880d1a2e49214
--- /dev/null
+++ b/pkgs/tools/networking/network-manager/nm-platform.patch
@@ -0,0 +1,17 @@
+diff --git a/src/platform/nm-platform.c b/src/platform/nm-platform.c
+index 8803377..14e5726 100644
+--- a/src/platform/nm-platform.c
++++ b/src/platform/nm-platform.c
+@@ -39,6 +39,12 @@
+ #include "nm-enum-types.h"
+ #include "nm-core-internal.h"
+
++#if HAVE_LIBNL_INET6_ADDR_GEN_MODE && HAVE_KERNEL_INET6_ADDR_GEN_MODE
++#include <linux/if_link.h>
++#else
++#define IN6_ADDR_GEN_MODE_NONE  1
++#endif
++
+ #define ADDRESS_LIFETIME_PADDING 5
+
+ G_STATIC_ASSERT (sizeof ( ((NMPlatformLink *) NULL)->addr.data ) == NM_UTILS_HWADDR_LEN_MAX);
diff --git a/pkgs/tools/networking/network-manager/openconnect.nix b/pkgs/tools/networking/network-manager/openconnect.nix
index 9416923c9e1e1..0009aaf6b4402 100644
--- a/pkgs/tools/networking/network-manager/openconnect.nix
+++ b/pkgs/tools/networking/network-manager/openconnect.nix
@@ -4,7 +4,9 @@
 stdenv.mkDerivation rec {
   name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
   pname = "NetworkManager-openconnect";
-  version = networkmanager.version;
+  version = "1.0.2";
+
+# FixMe: Change version back to "networkmanager.version"
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/1.0/${pname}-${version}.tar.xz";
diff --git a/pkgs/tools/networking/network-manager/openvpn.nix b/pkgs/tools/networking/network-manager/openvpn.nix
index d4e1b50489c82..be02645719532 100644
--- a/pkgs/tools/networking/network-manager/openvpn.nix
+++ b/pkgs/tools/networking/network-manager/openvpn.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/1.0/${pname}-${version}.tar.xz";
-    sha256 = "1c2b74xhkjifc3g6n53gr2aj4s98qf0vydmqvbhl5azxqx5q4hqn";
+    sha256 = "132xwkgyfnpma7m6b06jhrd1g9xk5dlpx8alnsf03ls3z92bd0n9";
   };
 
   buildInputs = [ openvpn networkmanager libsecret ]
diff --git a/pkgs/tools/networking/network-manager/pptp.nix b/pkgs/tools/networking/network-manager/pptp.nix
index 1dfce02981a38..1b1cf69119e47 100644
--- a/pkgs/tools/networking/network-manager/pptp.nix
+++ b/pkgs/tools/networking/network-manager/pptp.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/1.0/${pname}-${version}.tar.xz";
-    sha256 = "05r06f7f990z908jjnmmryrlshy28wcx7fbvnslmx9nicih7rjrp";
+    sha256 = "1gn1f8r32wznk4rsn2lg2slw1ccli00svz0fi4bx0qiylimlbyln";
   };
 
   buildInputs = [ networkmanager pptp ppp libsecret ]
diff --git a/pkgs/tools/networking/network-manager/vpnc.nix b/pkgs/tools/networking/network-manager/vpnc.nix
index 1435e5ebf7c3f..5f3ab00ebc438 100644
--- a/pkgs/tools/networking/network-manager/vpnc.nix
+++ b/pkgs/tools/networking/network-manager/vpnc.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/1.0/${pname}-${version}.tar.xz";
-    sha256 = "0055vshgnva969vb91k8zpdan34r9gy0ck3q3b9b616k0p2vy5ry";
+    sha256 = "0hycplnc78688sgpzdh3ifra6chascrh751mckqkp1j553bri0jk";
   };
 
   buildInputs = [ vpnc networkmanager libsecret ]
diff --git a/pkgs/tools/networking/ntopng/0001-Undo-weird-modification-of-data_dir.patch b/pkgs/tools/networking/ntopng/0001-Undo-weird-modification-of-data_dir.patch
index 8bec643c6e5f0..d794efeac08ae 100644
--- a/pkgs/tools/networking/ntopng/0001-Undo-weird-modification-of-data_dir.patch
+++ b/pkgs/tools/networking/ntopng/0001-Undo-weird-modification-of-data_dir.patch
@@ -1,24 +1,12 @@
-From d0c56a14e0432faca1e9438b84e5e4090d293bb9 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= <bjorn.forsman@gmail.com>
-Date: Tue, 3 Dec 2013 20:42:24 +0000
-Subject: [PATCH 1/2] Undo weird modification of data_dir
-
----
- Prefs.cpp | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/Prefs.cpp b/Prefs.cpp
-index b4fde5f..ca04ca1 100644
---- a/Prefs.cpp
-+++ b/Prefs.cpp
-@@ -408,7 +408,6 @@ int Prefs::checkOptions() {
- 			ntop->getTrace()->traceEvent(TRACE_ERROR, "Unable to create log %s", path);
-   }
+diff --git a/src/Prefs.cpp b/src/Prefs.cpp
+index 76385c4..db8d20d 100755
+--- a/src/Prefs.cpp
++++ b/src/Prefs.cpp
+@@ -795,7 +795,6 @@ int Prefs::checkOptions() {
+          ntop->getTrace()->traceEvent(TRACE_ERROR, "Unable to create log %s", path);
+     }
  
 -  free(data_dir); data_dir = strdup(ntop->get_install_dir());
    docs_dir      = ntop->getValidPath(docs_dir);
    scripts_dir   = ntop->getValidPath(scripts_dir);
    callbacks_dir = ntop->getValidPath(callbacks_dir);
--- 
-1.8.4.3
-
diff --git a/pkgs/tools/networking/ntopng/0002-Remove-requirement-to-have-writeable-callback-dir.patch b/pkgs/tools/networking/ntopng/0002-Remove-requirement-to-have-writeable-callback-dir.patch
index 99467c3712640..50ed1daebd484 100644
--- a/pkgs/tools/networking/ntopng/0002-Remove-requirement-to-have-writeable-callback-dir.patch
+++ b/pkgs/tools/networking/ntopng/0002-Remove-requirement-to-have-writeable-callback-dir.patch
@@ -1,29 +1,14 @@
-From d77b42003d13e2775be3255a26f380d6ccda8042 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= <bjorn.forsman@gmail.com>
-Date: Tue, 3 Dec 2013 21:10:06 +0000
-Subject: [PATCH 2/2] Remove requirement to have writeable callback dir
-
-* ntopng doesn't write anything to the callback dir
-* it seems to be a copy-paste leftover error from data_dir a couple of
-  lines above
----
- Ntop.cpp | 3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/Ntop.cpp b/Ntop.cpp
-index 2fb027b..0b4881b 100644
---- a/Ntop.cpp
-+++ b/Ntop.cpp
-@@ -114,8 +114,7 @@ void Ntop::registerPrefs(Prefs *_prefs) {
+diff --git a/src/Ntop.cpp b/src/Ntop.cpp
+index 8de92a9..510418f 100644
+--- a/src/Ntop.cpp
++++ b/src/Ntop.cpp
+@@ -197,8 +197,7 @@ void Ntop::registerPrefs(Prefs *_prefs) {
    }
  
    if(stat(prefs->get_callbacks_dir(), &statbuf)
--     || (!(statbuf.st_mode & S_IFDIR)) /* It's not a directory */
+-     || (!(statbuf.st_mode & S_IFDIR))  /* It's not a directory */
 -     || (!(statbuf.st_mode & S_IWRITE)) /* It's not writable    */) {
-+     || (!(statbuf.st_mode & S_IFDIR))) { /* It's not a directory */
++     || (!(statbuf.st_mode & S_IFDIR))  /* It's not a directory */) {
      ntop->getTrace()->traceEvent(TRACE_ERROR, "Invalid directory %s specified",
  				 prefs->get_callbacks_dir());
-     exit(-1);
--- 
-1.8.4.3
-
+     _exit(-1);
diff --git a/pkgs/tools/networking/ntopng/default.nix b/pkgs/tools/networking/ntopng/default.nix
index ddb6a7bec36dd..c17c33af17ed6 100644
--- a/pkgs/tools/networking/ntopng/default.nix
+++ b/pkgs/tools/networking/ntopng/default.nix
@@ -1,20 +1,20 @@
-{ stdenv, fetchurl, libpcap, gnutls, libgcrypt, libxml2, glib
-, geoip, geolite-legacy, sqlite, which, autoreconfHook, subversion
-, pkgconfig, groff
+{ stdenv, fetchurl, libpcap,/* gnutls, libgcrypt,*/ libxml2, glib
+, geoip, geolite-legacy, sqlite, which, autoreconfHook, git
+, pkgconfig, groff, curl, json_c
 }:
 
 # ntopng includes LuaJIT, mongoose, rrdtool and zeromq in its third-party/
 # directory.
 
 stdenv.mkDerivation rec {
-  name = "ntopng-1.2.1";
+  name = "ntopng-2.0";
 
   src = fetchurl {
     urls = [
-      "mirror://sourceforge/project/ntop/ntopng/old/${name}.tgz"
-      "mirror://sourceforge/project/ntop/ntopng/${name}.tgz"
+      "mirror://sourceforge/project/ntop/ntopng/old/${name}.tar.gz"
+      "mirror://sourceforge/project/ntop/ntopng/${name}.tar.gz"
     ];
-    sha256 = "1db83cd1v4ivl8hxzzdvvdcgk22ji7mwrfnd5nnwll6kb11i364v";
+    sha256 = "0l82ivh05cmmqcvs26r6y69z849d28njipphqzvnakf43ggddgrw";
   };
 
   patches = [
@@ -22,25 +22,31 @@ stdenv.mkDerivation rec {
     ./0002-Remove-requirement-to-have-writeable-callback-dir.patch
   ];
 
-  buildInputs = [ libpcap gnutls libgcrypt libxml2 glib geoip geolite-legacy
-    sqlite which autoreconfHook subversion pkgconfig groff ];
+  buildInputs = [ libpcap/* gnutls libgcrypt*/ libxml2 glib geoip geolite-legacy
+    sqlite which autoreconfHook git pkgconfig groff curl json_c ];
+
+
+  autoreconfPhase = ''
+    substituteInPlace autogen.sh --replace "/bin/rm" "rm"
+    substituteInPlace nDPI/autogen.sh --replace "/bin/rm" "rm"
+    $shell autogen.sh
+  '';
 
   preConfigure = ''
-    find . -name Makefile.in | xargs sed -i "s|/bin/rm|rm|"
+    substituteInPlace Makefile.in --replace "/bin/rm" "rm"
   '';
 
   preBuild = ''
-    sed -e "s|/usr/local|$out|g" \
-        -i Ntop.cpp
+    substituteInPlace src/Ntop.cpp --replace "/usr/local" "$out"
 
     sed -e "s|\(#define CONST_DEFAULT_DATA_DIR\).*|\1 \"/var/lib/ntopng\"|g" \
         -e "s|\(#define CONST_DEFAULT_DOCS_DIR\).*|\1 \"$out/share/ntopng/httpdocs\"|g" \
         -e "s|\(#define CONST_DEFAULT_SCRIPTS_DIR\).*|\1 \"$out/share/ntopng/scripts\"|g" \
         -e "s|\(#define CONST_DEFAULT_CALLBACKS_DIR\).*|\1 \"$out/share/ntopng/scripts/callbacks\"|g" \
         -e "s|\(#define CONST_DEFAULT_INSTALL_DIR\).*|\1 \"$out/share/ntopng\"|g" \
-        -i ntop_defines.h
+        -i include/ntop_defines.h
 
-    rmdir httpdocs/geoip
+    rm -rf httpdocs/geoip
     ln -s ${geolite-legacy}/share/GeoIP httpdocs/geoip
   '';
 
diff --git a/pkgs/tools/networking/ntp/default.nix b/pkgs/tools/networking/ntp/default.nix
index a131c567d89f4..8a23eeb60f4f3 100644
--- a/pkgs/tools/networking/ntp/default.nix
+++ b/pkgs/tools/networking/ntp/default.nix
@@ -3,11 +3,11 @@
 assert stdenv.isLinux -> libcap != null;
 
 stdenv.mkDerivation rec {
-  name = "ntp-4.2.8p3";
+  name = "ntp-4.2.8p4";
 
   src = fetchurl {
     url = "http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/${name}.tar.gz";
-    sha256 = "13zkzcvjm5kbxl4xbcmaq07slplhmpkgahzcqnqlba3cxpra9341";
+    sha256 = "1fgxbhv0wyiivi6kh5zpzrd0yqmc48z7d3zmjspw9lj84mbn2s8d";
   };
 
   configureFlags = [
diff --git a/pkgs/tools/networking/nzbget/default.nix b/pkgs/tools/networking/nzbget/default.nix
index 3497fd8efaf52..733e12d1e9b1e 100644
--- a/pkgs/tools/networking/nzbget/default.nix
+++ b/pkgs/tools/networking/nzbget/default.nix
@@ -1,15 +1,13 @@
 { stdenv, fetchurl, pkgconfig, libxml2, ncurses, libsigcxx, libpar2
 , gnutls, libgcrypt, zlib }:
 
-let
-  version = "15.0";
-in
 stdenv.mkDerivation rec {
   name = "nzbget-${version}";
+  version = "16.3";
 
   src = fetchurl {
     url = "http://github.com/nzbget/nzbget/releases/download/v${version}/${name}-src.tar.gz";
-    sha256 = "02nclq97gqr4zwww4j1l9sds2rwrwwvwvh2gkjhwvr0pb4z3zw9y";
+    sha256 = "03xzrvgqh90wx183sjrcyn7yilip92g2x5wffnw956ywxb3nsy2g";
   };
 
   buildInputs = [ pkgconfig libxml2 ncurses libsigcxx libpar2 gnutls
diff --git a/pkgs/tools/networking/openssh/default.nix b/pkgs/tools/networking/openssh/default.nix
index 50d53bdff2cd6..2004e453a0d95 100644
--- a/pkgs/tools/networking/openssh/default.nix
+++ b/pkgs/tools/networking/openssh/default.nix
@@ -17,11 +17,11 @@ let
 in
 with stdenv.lib;
 stdenv.mkDerivation rec {
-  name = "openssh-7.1p1";
+  name = "openssh-6.9p1";
 
   src = fetchurl {
     url = "mirror://openbsd/OpenSSH/portable/${name}.tar.gz";
-    sha256 = "0a44mnr8bvw41zg83xh4sb55d8nds29j95gxvxk5qg863lnns2pw";
+    sha256 = "1zkci5nbpb4frmzj2vr3kv9j47x2h72kvybcpr0d8mzk73sls1vf";
   };
 
   prePatch = optionalString hpnSupport
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
       export NIX_LDFLAGS="$NIX_LDFLAGS -lgcc_s"
     '';
 
-  patches = [ ./locale_archive.patch ];
+  patches = [ ./locale_archive.patch ./openssh-6.9p1-security-7.0.patch];
 
   buildInputs = [ zlib openssl libedit pkgconfig pam ]
     ++ optional withKerberos [ kerberos ];
diff --git a/pkgs/tools/networking/openssh/openssh-6.9p1-security-7.0.patch b/pkgs/tools/networking/openssh/openssh-6.9p1-security-7.0.patch
new file mode 100644
index 0000000000000..02e9eb3a9739a
--- /dev/null
+++ b/pkgs/tools/networking/openssh/openssh-6.9p1-security-7.0.patch
@@ -0,0 +1,65 @@
+http://pkgs.fedoraproject.org/cgit/openssh.git/commit/openssh-6.9p1-security-7.0.patch?h=f22&id=4776fad91e7e1f626f33e8c240d0ccecd663554d
+
+diff --git a/sshpty.c b/sshpty.c
+index 7bb7641..15da8c6 100644
+--- a/sshpty.c
++++ b/sshpty.c
+@@ -1,4 +1,4 @@
+-/* $OpenBSD: sshpty.c,v 1.29 2014/09/03 18:55:07 djm Exp $ */
++/* $OpenBSD: sshpty.c,v 1.30 2015/07/30 23:09:15 djm Exp $ */
+ /*
+  * Author: Tatu Ylonen <ylo@cs.hut.fi>
+  * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
+@@ -197,7 +197,7 @@ pty_setowner(struct passwd *pw, const char *tty)
+ 	/* Determine the group to make the owner of the tty. */
+ 	grp = getgrnam("tty");
+ 	gid = (grp != NULL) ? grp->gr_gid : pw->pw_gid;
+-	mode = (grp != NULL) ? 0622 : 0600;
++	mode = (grp != NULL) ? 0620 : 0600;
+ 
+ 	/*
+ 	 * Change owner and mode of the tty as required.
+diff --git a/monitor.c b/monitor.c
+index b410965..f1b873d 100644
+--- a/monitor.c
++++ b/monitor.c
+@@ -1084,9 +1084,7 @@ extern KbdintDevice sshpam_device;
+ int
+ mm_answer_pam_init_ctx(int sock, Buffer *m)
+ {
+-
+ 	debug3("%s", __func__);
+-	authctxt->user = buffer_get_string(m, NULL);
+ 	sshpam_ctxt = (sshpam_device.init_ctx)(authctxt);
+ 	sshpam_authok = NULL;
+ 	buffer_clear(m);
+@@ -1166,14 +1166,16 @@ mm_answer_pam_respond(int sock, Buffer *m)
+ int
+ mm_answer_pam_free_ctx(int sock, Buffer *m)
+ {
++	int r = sshpam_authok != NULL && sshpam_authok == sshpam_ctxt;
+ 
+ 	debug3("%s", __func__);
+ 	(sshpam_device.free_ctx)(sshpam_ctxt);
++	sshpam_ctxt = sshpam_authok = NULL;
+ 	buffer_clear(m);
+ 	mm_request_send(sock, MONITOR_ANS_PAM_FREE_CTX, m);
+ 	auth_method = "keyboard-interactive";
+ 	auth_submethod = "pam";
+-	return (sshpam_authok == sshpam_ctxt);
++	return r;
+ }
+ #endif
+ 
+diff --git a/monitor_wrap.c b/monitor_wrap.c
+index e6217b3..eac421b 100644
+--- a/monitor_wrap.c
++++ b/monitor_wrap.c
+@@ -614,7 +614,6 @@ mm_sshpam_init_ctx(Authctxt *authctxt)
+ 
+ 	debug3("%s", __func__);
+ 	buffer_init(&m);
+-	buffer_put_cstring(&m, authctxt->user);
+ 	mm_request_send(pmonitor->m_recvfd, MONITOR_REQ_PAM_INIT_CTX, &m);
+ 	debug3("%s: waiting for MONITOR_ANS_PAM_INIT_CTX", __func__);
+ 	mm_request_receive_expect(pmonitor->m_recvfd, MONITOR_ANS_PAM_INIT_CTX, &m);
diff --git a/pkgs/tools/networking/openvpn/update-resolv-conf.nix b/pkgs/tools/networking/openvpn/update-resolv-conf.nix
index de04c1419e2d8..f5937f0500438 100644
--- a/pkgs/tools/networking/openvpn/update-resolv-conf.nix
+++ b/pkgs/tools/networking/openvpn/update-resolv-conf.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchgit, makeWrapper, openresolv, coreutils }:
 
 stdenv.mkDerivation rec {
-  name = "update-resolv-conf-2014-10-03";
+  name = "update-resolv-conf-20141003";
 
   src = fetchgit {
     url = https://github.com/masterkorp/openvpn-update-resolv-conf/;
diff --git a/pkgs/tools/networking/plasma-nm/default.nix b/pkgs/tools/networking/plasma-nm/default.nix
index 17f809ddb8c94..0c10e6655b8e1 100644
--- a/pkgs/tools/networking/plasma-nm/default.nix
+++ b/pkgs/tools/networking/plasma-nm/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, automoc4, cmake, gettext, perl, pkgconfig
-, kdelibs, networkmanager, libnm-qt }:
+, kdelibs, networkmanager, libnm-qt, glib }:
 
 let
   pname = "plasma-nm";
@@ -14,6 +14,8 @@ stdenv.mkDerivation {
     sha256 = "0xj14isvjq8ll70b6q66n8adm8ff4j9ng195ndk2gmavjf6bb751";
   };
 
+  NIX_CFLAGS_COMPILE = "-I${glib}/include/glib-2.0 -I${glib}/lib/glib-2.0/include";
+
   nativeBuildInputs = [ automoc4 cmake gettext perl pkgconfig ];
 
   buildInputs = [ kdelibs networkmanager libnm-qt ];
@@ -23,6 +25,5 @@ stdenv.mkDerivation {
     description = "Plasma applet written in QML for managing network connections";
     license = licenses.lgpl21;
     inherit (kdelibs.meta) platforms;
-    maintainers = with maintainers; [ jgeerds ];
   };
 }
diff --git a/pkgs/tools/networking/reaver-wps/default.nix b/pkgs/tools/networking/reaver-wps/default.nix
index afce95fbd449f..9efe3df752015 100644
--- a/pkgs/tools/networking/reaver-wps/default.nix
+++ b/pkgs/tools/networking/reaver-wps/default.nix
@@ -22,5 +22,6 @@ stdenv.mkDerivation rec {
     description = "Brute force attack against Wifi Protected Setup";
     homepage = http://code.google.com/p/reaver-wps;
     license = stdenv.lib.licenses.gpl2Plus;
+    platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/tools/networking/ripmime/default.nix b/pkgs/tools/networking/ripmime/default.nix
index d9445b7497613..fd5964cb55fc5 100644
--- a/pkgs/tools/networking/ripmime/default.nix
+++ b/pkgs/tools/networking/ripmime/default.nix
@@ -29,8 +29,8 @@ rec {
   /* doConfigure should be removed if not needed */
   phaseNames = ["fixTarget" "doMakeInstall"];
   fixTarget = a.fullDepEntry (''
-    sed -i Makefile -e "s@LOCATION=.*@LOCATION=$out@"
-    mkdir -p "$out/bin" "$out/man/man1"
+    sed -i Makefile -e "s@LOCATION=.*@LOCATION=$out@" -e "s@man/man1@share/&@"
+    mkdir -p "$out/bin" "$out/share/man/man1"
   '') ["doUnpack" "minInit" "defEnsureDir"];
       
   meta = {
diff --git a/pkgs/tools/networking/smbldaptools/default.nix b/pkgs/tools/networking/smbldaptools/default.nix
index af1849565fe2d..9ca5c3be177ae 100644
--- a/pkgs/tools/networking/smbldaptools/default.nix
+++ b/pkgs/tools/networking/smbldaptools/default.nix
@@ -27,5 +27,7 @@ stdenv.mkDerivation {
     homepage = http://gna.org/projects/smbldap-tools/;
     description = "SAMBA LDAP tools";
     license = stdenv.lib.licenses.gpl2Plus;
+    # pod2man: unable to format smbldap-config.cmd
+    broken = true;
   };
 }
diff --git a/pkgs/tools/networking/snabb/default.nix b/pkgs/tools/networking/snabb/default.nix
new file mode 100644
index 0000000000000..9ca8b56491d14
--- /dev/null
+++ b/pkgs/tools/networking/snabb/default.nix
@@ -0,0 +1,32 @@
+{stdenv, fetchurl}:
+
+stdenv.mkDerivation rec {
+  name = "snabb-2015.10";
+
+  src = fetchurl {
+    url = "https://github.com/SnabbCo/snabbswitch/archive/v2015.10.tar.gz";
+    sha256 = "15cmw7k2siy9m7s1383l1h8kix8cwb143yvwhxdahbnx4lfnzfz8";
+  };
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp src/snabb $out/bin
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/SnabbCo/snabbswitch;
+    description = "Simple and fast packet networking toolkit";
+    longDescription = ''
+      Snabb Switch is a LuaJIT-based toolkit for writing high-speed
+      packet networking code (such as routing, switching, firewalling,
+      and so on). It includes both a scripting inteface for creating
+      new applications and also some built-in applications that are
+      ready to run.
+      It is especially intended for ISPs and other network operators.
+    '';
+    platforms = [ "x86_64-linux" ];
+    license = licenses.asl20;
+    maintainers = [ maintainers.lukego ];
+  };
+}
+
diff --git a/pkgs/tools/networking/tgt/default.nix b/pkgs/tools/networking/tgt/default.nix
index b5acdce800a00..f870b5463b604 100644
--- a/pkgs/tools/networking/tgt/default.nix
+++ b/pkgs/tools/networking/tgt/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchFromGitHub, libxslt, libaio, systemd, perl, perlPackages }:
+{ stdenv, fetchFromGitHub, libxslt, libaio, systemd, perl, perlPackages
+, docbook_xsl }:
 
 let
   version = "1.0.60";
@@ -11,7 +12,7 @@ in stdenv.mkDerivation rec {
     sha256 = "1bf8rn3mavjrzkp5k23akqn5ilw43g8mpfr68z1bi8s9lr2gkf37";
   };
 
-  buildInputs = [ libxslt systemd libaio ];
+  buildInputs = [ libxslt systemd libaio docbook_xsl ];
 
   DESTDIR = "$(out)";
   PREFIX = "/";
@@ -34,4 +35,4 @@ in stdenv.mkDerivation rec {
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/tools/networking/tinc/pre.nix b/pkgs/tools/networking/tinc/pre.nix
index f7d74b6a39aae..81b143921379c 100644
--- a/pkgs/tools/networking/tinc/pre.nix
+++ b/pkgs/tools/networking/tinc/pre.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchgit, autoreconfHook, texinfo, ncurses, readline, zlib, lzo, openssl }:
 
 stdenv.mkDerivation rec {
-  name = "tinc-1.1pre-2015-07-22";
+  name = "tinc-1.1pre-2015-09-25";
 
   src = fetchgit {
     url = "git://tinc-vpn.org/tinc";
-    rev = "56a8b90d863171d62e0a337b5635fbfc53a67fb0";
-    sha256 = "081z4xs5l988g1s0yr7fvnysajd05bx6s54sh84jvq7ij8af71dm";
+    rev = "73068238436d8a22abb86e67b08f573b09fd04e1";
+    sha256 = "1j8bvvzvciy21s24jdpi089svy7wipg9pm84s98xjlp2plchj5dj";
   };
 
   nativeBuildInputs = [ autoreconfHook texinfo ];
diff --git a/pkgs/tools/networking/wavemon/default.nix b/pkgs/tools/networking/wavemon/default.nix
index b5927fd247806..ece252a9b6c72 100644
--- a/pkgs/tools/networking/wavemon/default.nix
+++ b/pkgs/tools/networking/wavemon/default.nix
@@ -1,45 +1,20 @@
-x@{builderDefsPackage
-  , ncurses
-  , ...}:
-builderDefsPackage
-(a :  
-let 
-  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
-    [];
-
-  buildInputs = map (n: builtins.getAttr n x)
-    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
-  sourceInfo = rec {
-    baseName="wavemon";
-    version = "0.7.6";
-    name="${baseName}-${version}";
-    url="http://eden-feed.erg.abdn.ac.uk/wavemon/stable-releases/${name}.tar.bz2";
+{stdenv, fetchgit, ncurses, libnl, pkgconfig}:
+stdenv.mkDerivation rec {
+  version = "0.7.6.20151001";
+  baseName="wavemon";
+  name="${baseName}-${version}";
+  buildInputs = [ncurses libnl pkgconfig];
+  src = fetchgit {
+    url = https://github.com/uoaerg/wavemon.git ;
+    rev = "05753aed2ec5a786d602c7903c89fc6a230f8d42";
+    sha256 = "13y4bi4qz4596f11ng6zaqir5j234wv64z4670q3pzh3fqmzmpm4";
   };
-in
-rec {
-  src = a.fetchurl {
-    url = sourceInfo.url;
-    sha256 = "18cwlzgmwzy7z9dfr6lwd8kmkv0pqiihizm4gi0kkm52bzz6836y";
-  };
-
-  inherit (sourceInfo) name version;
-  inherit buildInputs;
-
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["doConfigure" "doMakeInstall"];
-      
   meta = {
-    description = "WiFi state monitor";
-    maintainers = with a.lib.maintainers;
-    [
-      raskin
-    ];
-    platforms = with a.lib.platforms;
-      linux;
-    license = a.lib.licenses.gpl2Plus;
-    downloadPage = "http://eden-feed.erg.abdn.ac.uk/wavemon/";
     inherit version;
-    updateWalker = true;
+    description = "WiFi state monitor";
+    license = stdenv.lib.licenses.gpl3Plus ;
+    maintainers = [stdenv.lib.maintainers.raskin];
+    platforms = stdenv.lib.platforms.linux;
+    downloadPage = https://github.com/uoaerg/wavemon.git ;
   };
-}) x
-
+}
diff --git a/pkgs/tools/networking/whois/default.nix b/pkgs/tools/networking/whois/default.nix
new file mode 100644
index 0000000000000..bab487f5fab85
--- /dev/null
+++ b/pkgs/tools/networking/whois/default.nix
@@ -0,0 +1,40 @@
+{ stdenv, fetchFromGitHub, perl, gettext }:
+
+stdenv.mkDerivation rec {
+  version = "5.2.10";
+  name = "whois-${version}";
+
+  src = fetchFromGitHub {
+    owner = "rfc1036";
+    repo = "whois";
+    rev = "v${version}";
+    sha256 = "0fqxbys3ssyplh70wjs83jsljqhmrnjic02ayaznw9m9l6fzhkkr";
+  };
+
+  buildInputs = [ perl gettext ];
+
+  preConfigure = ''
+    for i in Makefile po/Makefile; do
+      substituteInPlace $i --replace "prefix = /usr" "prefix = $out"
+    done
+  '';
+
+  buildPhase = "make whois";
+
+  installPhase = "make install-whois";
+
+  meta = with stdenv.lib; {
+    description = "Intelligent WHOIS client from Debian";
+    longDescription = ''
+      This package provides a commandline client for the WHOIS (RFC 3912)
+      protocol, which queries online servers for information such as contact
+      details for domains and IP address assignments. It can intelligently
+      select the appropriate WHOIS server for most queries.
+    '';
+
+    homepage = http://packages.qa.debian.org/w/whois.html;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ fpletz ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/tools/networking/zerotierone/default.nix b/pkgs/tools/networking/zerotierone/default.nix
index c6a456e202aba..f38b3becf4c70 100644
--- a/pkgs/tools/networking/zerotierone/default.nix
+++ b/pkgs/tools/networking/zerotierone/default.nix
@@ -3,12 +3,12 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  version = "1.0.4";
+  version = "1.0.5";
   name = "zerotierone";
 
   src = fetchurl {
     url = "https://github.com/zerotier/ZeroTierOne/archive/${version}.tar.gz";
-    sha256 = "1klnsjajlas71flbf6w2q3iqhhqrmzqpd2g4qw9my66l7kcsbxfd";
+    sha256 = "6e2de5477fefdab21802b1047d753ac38c85074a7d6b41387125fd6941f25ab2";
   };
 
   preConfigure = ''