diff --git a/check_sieve/.control.swp b/check_sieve/.control.swp
new file mode 100644
index 0000000..c150407
Binary files /dev/null and b/check_sieve/.control.swp differ
diff --git a/check_sieve/Makefile b/check_sieve/Makefile
new file mode 100644
index 0000000..cf9673d
--- /dev/null
+++ b/check_sieve/Makefile
@@ -0,0 +1,3 @@
+#/usr/bin/make -f
+
+include ../common.mk
diff --git a/check_sieve/check_sieve b/check_sieve/check_sieve
new file mode 100644
index 0000000..2bb21f0
--- /dev/null
+++ b/check_sieve/check_sieve
@@ -0,0 +1,236 @@
+#!/usr/local/bin/perl
+
+###########################################################################
+# $Id: check_sieve.pl 214 2014-01-08 09:37:22Z alan $
+#
+# check SIEVE connections as per rfc 5804
+#
+# Copyright (c) 2013 Persistent Objects Ltd - http://p-o.co.uk
+#
+# Dual licence AL/GPL
+#
+# Artistic License 2.0 (http://www.perlfoundation.org/artistic_license_2_0)
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see .
+#
+###########################################################################
+# Inspired by check_stuff.pl, originally by Nathan Vonnahme, n8v at users
+# dot sourceforge dot net, July 19 2006
+###########################################################################
+
+###########################################################################
+# prologue
+use strict;
+use warnings;
+use IO::Socket::INET6;
+use Time::HiRes;
+use Nagios::Plugin;
+
+use vars qw($VERSION $PROGNAME);
+use vars qw($start $duration $sock $family $code $line $implementation);
+use vars qw($capability $message $peer_address);
+$VERSION = '1.02';
+
+# get the base name of this script for use in the examples
+use File::Basename;
+$PROGNAME = basename($0);
+
+
+# Instantiate Nagios::Plugin object (the 'usage' parameter is mandatory)
+my $p = Nagios::Plugin->new(
+    usage => "Usage: %s
+    [ -v|--verbose ]
+    [ -H|--host ]
+    [ -P|--port ]
+    [ -4|--ipv4]
+    [ -6|--ipv6]
+    [ -t|--timeout ]
+    [ -c|--critical= ] 
+    [ -w|--warning= ]  
+    [ -r|--result =  ]",
+    version => $VERSION,
+    blurb => 'This plugin checks for a running Sieve daemon.', 
+
+	extra => "
+
+  Examples:
+
+  $PROGNAME -H localhost -P 4190 -w 5 -c 10
+  Returns a warning if the response is greater than 5 seconds,
+  or a critical error if it is greater than 10.
+
+  "
+);
+
+###########################################################################
+# define, document and get the command line options.
+#   see the command line option guidelines at 
+#   http://nagiosplug.sourceforge.net/developer-guidelines.html#PLUGOPTIONS
+# usage, help, version, timeout and verbose are defined by default.
+
+$p->add_arg(
+	spec => 'host|H=s',
+	help => 
+qq{-H, --host=STRING
+   Host where the running daemon can be found, defaults to localhost.},
+	required => 0,
+	default => 'localhost',
+);
+
+$p->add_arg(
+	spec => 'port|P=i',
+	help => 
+qq{-P, --port=INTEGER
+   Port number for the running daemon, default 4190.},
+	required => 0,
+	default => 4190,
+);
+
+$p->add_arg(
+	spec => 'warning|w=i',
+	help => 
+qq{-w, --warning=INTEGER:INTEGER
+   Minimum and maximum number of allowable result, outside of which a
+   warning will be generated.  If omitted, no warning is generated.},
+
+	required => 0,
+	default => 5,
+);
+
+$p->add_arg(
+	spec => 'critical|c=i',
+	help => 
+qq{-c, --critical=INTEGER:INTEGER
+   Minimum and maximum number of the generated result, outside of
+   which a critical will be generated. },
+	required => 0,
+	default => 10,
+);
+
+$p->add_arg(
+	spec => 'ipv6|6',
+	help => 
+qq{-6, --ipv6
+   Use ipv6. },
+);
+$p->add_arg(
+	spec => 'ipv4|4',
+	help => 
+qq{-4, --ipv4
+   Use ipv4. },
+);
+
+$p->add_arg(
+	spec => 'result|r=i',
+	help => 
+qq{-r, --result=INTEGER
+   Supplied result for testing.},
+	required => 0,
+);
+
+###########################################################################
+# Parse arguments and process standard ones (e.g. usage, help, version)
+$p->getopts;
+
+###########################################################################
+# perform sanity checking on command line options
+if ( (defined $p->opts->result) && ($p->opts->result < 0 || $p->opts->result > 20) )  {
+    $p->nagios_die( ' invalid number supplied for the -r option ' );
+}
+unless ( defined $p->opts->warning || defined $p->opts->critical ) {
+	$p->nagios_die('Please supply a warning or critical threshold argument', UNKNOWN);
+}
+if ( $p->opts->warning == $p->opts->critical ) {
+	$p->nagios_die('Critical is equal to Warning', UNKNOWN);
+}
+if ( $p->opts->warning > $p->opts->critical ) {
+	$p->nagios_die('Critical is longer than Warning', UNKNOWN);
+}
+
+
+###########################################################################
+# Set the protocol family
+if ( $p->opts->ipv6) {
+	$family = AF_INET6;
+}elsif ( $p->opts->ipv4) {
+	$family = AF_INET;
+}
+
+
+###########################################################################
+# Set the timeout
+#$SIG{'ALRM'} = sub { $p->nagios_die("Timeout", CRITICAL); };
+alarm $p->opts->timeout;
+
+
+###########################################################################
+# Check Sieve daemon is running
+
+$start = Time::HiRes::time;
+
+$sock = IO::Socket::INET6->new(
+	PeerAddr => $p->opts->host,
+	PeerPort => $p->opts->port,
+	Domain   => $family,
+	Proto    => 'tcp',
+	Timeout  => $p->opts->timeout
+) or $p->nagios_exit(UNKNOWN, 'Unable to connect to: '. $p->opts->host .':'.$p->opts->port);
+$peer_address = $sock->peerhost() . ':' . $sock->peerport();
+
+SOCKETLOOP:
+while (defined($line = <$sock>)) {
+	#print $line;
+	if ($line =~ /SIEVE/) {
+		$capability = $line;
+	}
+	if ($line =~ /implementation/i) {
+		$implementation = $line;
+	}
+	
+	last SOCKETLOOP if $line =~ /^OK/;
+}
+close($sock);
+
+# Get rid of quotes if they have been used
+$implementation =~ tr/0-9a-zA-Z. //csd;
+$implementation = substr $implementation, 15;
+$capability =~ tr/0-9a-zA-Z. //cd;
+$capability = substr $capability, 6;
+
+$duration = sprintf("%.4f",Time::HiRes::time - $start);
+
+###########################################################################
+# check the result against the defined warning and critical thresholds,
+# output the result and exit
+if ($p->opts->result) {
+	# We are testing
+	$duration = $p->opts->result;
+}
+$code = $p->check_threshold(
+	check => $duration,
+	warning => $p->opts->warning,
+	critical => $p->opts->critical,
+);
+$message .= $duration . ' second response time;';
+
+if ($p->opts->verbose) {
+	$message .= ' connected to ' . $peer_address . ';';
+	if ($implementation) {
+		$message .= ' ' . $implementation . ';';
+	}
+	$message .= ' [' . $capability . '];';
+}
+
+# Output the result
+$p->nagios_exit($code, $message);
diff --git a/check_sieve/check_sieve.cfg b/check_sieve/check_sieve.cfg
new file mode 100644
index 0000000..45aaa25
--- /dev/null
+++ b/check_sieve/check_sieve.cfg
@@ -0,0 +1,5 @@
+# 'check_sieve' command definition
+define command{
+        command_name    check_sieve
+	command_line	/usr/lib/monitoring-plugins/check_sieve -H $HOSTADDRESS$ $ARG1$
+	}
diff --git a/check_sieve/control b/check_sieve/control
new file mode 100644
index 0000000..b93b96c
--- /dev/null
+++ b/check_sieve/control
@@ -0,0 +1,7 @@
+Homepage: https://raw.githubusercontent.com/alan-hicks/check_sieve/master/check_sieve.pl
+Watch: https://raw.githubusercontent.com/alan-hicks/check_sieve/master/check_sieve.pl \$VERSION\ =\ '([0-9.]+)'
+Recommends: libio-socket-inet6-perl, monitoring-plugins-common | nagios-plugins-common
+Version: 1.02
+Uploaders: Jan Wagner 
+Description: plugin checking for a running Sieve daemon
+ Check SIEVE connections as per rfc 5804 for Nagios
diff --git a/check_sieve/copyright b/check_sieve/copyright
new file mode 100644
index 0000000..3d89cc9
--- /dev/null
+++ b/check_sieve/copyright
@@ -0,0 +1,7 @@
+Copyright (c) 2012 William Leibzon 
+
+License: GPL v2
+
+  On Debian systems, the complete text of the GNU General
+  Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
+
diff --git a/debian/README.Debian.plugins b/debian/README.Debian.plugins
index 31715f2..891ce28 100644
--- a/debian/README.Debian.plugins
+++ b/debian/README.Debian.plugins
@@ -37,8 +37,11 @@ check_redis:
 check_sentinel:
     Required Packages: ruby-redis
 
+check_sieve:
+    Required Packages: libio-socket-inet6-perl, monitoring-plugins-common | nagios-plugins-common
+
 check_smart:
-    Required Packages: perl-base, perl-modules, monitoring-plugins-common | nagios-plugins-common
+    Required Packages: perl-modules, monitoring-plugins-common | nagios-plugins-common
 
 check_tftp:
     Required Packages: libnet-tftp-perl, monitoring-plugins-common | nagios-plugins-common
diff --git a/debian/control b/debian/control
index 002a09f..09298ee 100644
--- a/debian/control
+++ b/debian/control
@@ -11,7 +11,7 @@ Vcs-Browser: http://github.com/waja/monitoring-plugins-cyconet
 Package: monitoring-plugins-cyconet
 Architecture: any
 Depends: ${misc:Depends}
-Recommends: ${shlibs:Depends}, ${python:Depends}, libnet-snmp-perl, monitoring-plugins-common | nagios-plugins-common, libtime-modules-perl, libwww-perl, python-argparse, libredis-perl, ruby-redis, perl-modules, libnet-tftp-perl, libxml-xpath-perl, ${perl:Depends}
+Recommends: ${shlibs:Depends}, ${python:Depends}, libnet-snmp-perl, monitoring-plugins-common | nagios-plugins-common, libtime-modules-perl, libwww-perl, python-argparse, libredis-perl, ruby-redis, libio-socket-inet6-perl, perl-modules, libnet-tftp-perl, libxml-xpath-perl, ${perl:Depends}
 Suggests: 
 Enhances: nagios-plugins, nagios-plugins-basic, nagios-plugins-standard
 Description: Plugins for nagios compatible monitoring systems
@@ -21,7 +21,7 @@ Description: Plugins for nagios compatible monitoring systems
  .
    * check_bgp (0.4): plugin to check BGP peer status via SNMP.
    * check_file: plugin to check file count,  size and ages
-   * check_nginx_status (0.9): plugin checking the nginx_status page report from nginx
+   * check_nginx_status (0.10): plugin checking the nginx_status page report from nginx
      Tracking Active connections processes, request per second, connections per
      seconds, Connections status.
    * check_nwc_health (3.0.3.7): This plugin checks the hardware health and interface metrics
@@ -30,6 +30,8 @@ Description: Plugins for nagios compatible monitoring systems
    * check_phpfpm_status (0.9): plugin to check the fpm-status page report from php-fpm
    * check_redis (0.72): plugin that verifies redis server is working.
    * check_sentinel (0b8e0e388a): plugin to monitor Redis sentinel
+   * check_sieve (1.02): plugin checking for a running Sieve daemon
+     Check SIEVE connections as per rfc 5804 for Nagios
    * check_smart: plugin to check SMART status of ATA/SCSI disks
    * check_tftp (0.11): plugin that verifies TFTP server is working.
    * check_tomcat (1.4): plugin to check the tomcat status page.
diff --git a/debian/copyright b/debian/copyright
index eadac19..9c185a6 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -199,6 +199,34 @@ https://raw.github.com/reedox/check_sentinel/master/check_sentinel
   THE SOFTWARE.
   
 
+------------------------------------------------------------------------------
+
+check_sieve:
+
+The plugin was downloaded from: 
+https://raw.githubusercontent.com/alan-hicks/check_sieve/master/check_sieve.pl
+
+  Copyright (c) 2012 William Leibzon 
+  
+  License: GPL v2
+  
+    On Debian systems, the complete text of the GNU General
+    Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
+  
+  
+
+------------------------------------------------------------------------------
+
+check_smart:
+
+The plugin was downloaded from: 
+https://exchange.icinga.org/exchange/check_smart+hwraid
+
+  Copyright (c) Kurt Yoder, Giles Westwood
+  
+  License: public-domain
+  
+
 ------------------------------------------------------------------------------
 
 check_tftp:
diff --git a/debian/patches/check_sieve/10_pathes b/debian/patches/check_sieve/10_pathes
new file mode 100644
index 0000000..786ee3f
--- /dev/null
+++ b/debian/patches/check_sieve/10_pathes
@@ -0,0 +1,14 @@
+Author: Jan Wagner 
+Description:
+ Patches check_sieve to use debian specific paths.
+
+diff --git a/check_sieve/check_sieve b/check_sieve/check_sieve
+index 2bb21f0..7405671 100644
+--- a/check_sieve/check_sieve
++++ b/check_sieve/check_sieve
+@@ -1,4 +1,4 @@
+-#!/usr/local/bin/perl
++#!/usr/bin/perl
+ 
+ ###########################################################################
+ # $Id: check_sieve.pl 214 2014-01-08 09:37:22Z alan $
diff --git a/debian/patches/series b/debian/patches/series
index 6c249ef..c3e9e36 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1,4 @@
 check_tomcat/epn
 check_tftp/epn
 check_phpfpm_status/10_pathes
+check_sieve/10_pathes