Commit cf484f1b authored by Nigel Kukard's avatar Nigel Kukard

Cosmetic fixes and code cleanup

parent 8a6e8bb3
Installing Policyd v2. Installing PolicyD v2.
* *
* Requirements for Policyd v2 * Requirements for PolicyD v2
* *
Note: For CentOS you will need to use RPMForge repositories. Note: For CentOS you will need to use RPMForge repositories.
......
# Bizanga protocol support module # Bizanga protocol support module
# Copyright (C) 2009-2015, AllWorldIT # Copyright (C) 2009-2015, AllWorldIT
# Copyright (C) 2008, LinuxRulz # Copyright (C) 2008, LinuxRulz
# #
# This program is free software; you can redistribute it and/or modify # 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 # it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or # the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version. # (at your option) any later version.
# #
# This program is distributed in the hope that it will be useful, # This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of # but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details. # GNU General Public License for more details.
# #
# You should have received a copy of the GNU General Public License along # You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc., # with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
...@@ -36,15 +36,15 @@ use cbp::protocols; ...@@ -36,15 +36,15 @@ use cbp::protocols;
# User plugin info # User plugin info
our $pluginInfo = { our $pluginInfo = {
name => "Bizanga Protocol Support Module", name => "Bizanga Protocol Support Module",
init => \&init, ini => \&init,
priority => 50, priority => 50,
protocol_init => \&protocol_init, protocol_init => \&protocol_init,
protocol_check => \&protocol_check, protocol_check => \&protocol_check,
protocol_parse => \&protocol_parse, protocol_parse => \&protocol_parse,
protocol_response => \&protocol_response, protocol_response => \&protocol_response,
protocol_getresponse => \&protocol_getresponse, protocol_getresponse => \&protocol_getresponse,
protocol_validate => \&protocol_validate, protocol_validate => \&protocol_validate,
}; };
# Module configuration # Module configuration
...@@ -82,7 +82,7 @@ sub protocol_init { ...@@ -82,7 +82,7 @@ sub protocol_init {
sub protocol_check { sub protocol_check {
my ($server,$buffer) = @_; my ($server,$buffer) = @_;
my $log = defined($server->{'config'}{'logging'}{'protocols'}); my $log = defined($server->{'config'}{'logging'}{'protocols'});
# If we not enabled, don't do anything # If we not enabled, don't do anything
return undef if (!$config{'enable'}); return undef if (!$config{'enable'});
...@@ -143,7 +143,7 @@ sub protocol_parse { ...@@ -143,7 +143,7 @@ sub protocol_parse {
# Process response # Process response
sub protocol_response sub protocol_response
{ {
my ($server,$resp,$data) = @_; my ($server,$resp,$data) = @_;
my $log = defined($server->{'config'}{'logging'}{'protocols'}); my $log = defined($server->{'config'}{'logging'}{'protocols'});
...@@ -215,13 +215,13 @@ sub protocol_response ...@@ -215,13 +215,13 @@ sub protocol_response
$response_data = defined($data) ? $data : "Database error"; $response_data = defined($data) ? $data : "Database error";
$server->log(LOG_DEBUG,"[PROTOCOL/Bizanga] Received PROTO_DB_ERROR with response '$response':'$response_data'") if ($log); $server->log(LOG_DEBUG,"[PROTOCOL/Bizanga] Received PROTO_DB_ERROR with response '$response':'$response_data'") if ($log);
return CBP_STOP; return CBP_STOP;
} elsif ($resp == PROTO_DATA_ERROR) { } elsif ($resp == PROTO_DATA_ERROR) {
$response = "502"; $response = "502";
$response_data = defined($data) ? $data : "Database record error"; $response_data = defined($data) ? $data : "Database record error";
$server->log(LOG_DEBUG,"[PROTOCOL/Bizanga] Received PROTO_DATA_ERROR with response '$response':'$response_data'") if ($log); $server->log(LOG_DEBUG,"[PROTOCOL/Bizanga] Received PROTO_DATA_ERROR with response '$response':'$response_data'") if ($log);
return CBP_STOP; return CBP_STOP;
# Fallthrough # Fallthrough
} else { } else {
$server->log(LOG_ERR,"[PROTOCOL/Bizanga] Cannot understand response code '$resp'"); $server->log(LOG_ERR,"[PROTOCOL/Bizanga] Cannot understand response code '$resp'");
...@@ -231,7 +231,7 @@ sub protocol_response ...@@ -231,7 +231,7 @@ sub protocol_response
# Get protocol response # Get protocol response
sub protocol_getresponse sub protocol_getresponse
{ {
my $resp; my $resp;
...@@ -243,7 +243,7 @@ sub protocol_getresponse ...@@ -243,7 +243,7 @@ sub protocol_getresponse
} }
# Check if we have any additional data # Check if we have any additional data
$response_data = "" if (!defined($response_data)); $response_data = "" if (!defined($response_data));
# Get timestamp # Get timestamp
my $timestamp = strftime("%a, %d %b %Y %H:%M:%S %Z",localtime()); my $timestamp = strftime("%a, %d %b %Y %H:%M:%S %Z",localtime());
...@@ -253,7 +253,7 @@ sub protocol_getresponse ...@@ -253,7 +253,7 @@ sub protocol_getresponse
Date: $timestamp Date: $timestamp
Content-Length: 0 Content-Length: 0
Content-Type: text/plain Content-Type: text/plain
Server: Policyd/".VERSION." (Cluebringer) Server: PolicyD/".VERSION." (Cluebringer)
Connection: close Connection: close
"; ";
...@@ -265,7 +265,7 @@ Connection: close ...@@ -265,7 +265,7 @@ Connection: close
sub protocol_validate { sub protocol_validate {
my ($server,$request) = @_; my ($server,$request) = @_;
my $log = defined($server->{'config'}{'logging'}{'protocols'}); my $log = defined($server->{'config'}{'logging'}{'protocols'});
# Check params # Check params
if (!awitpt::netip::is_valid($request->{'client_address'})) { if (!awitpt::netip::is_valid($request->{'client_address'})) {
...@@ -289,6 +289,5 @@ sub protocol_validate { ...@@ -289,6 +289,5 @@ sub protocol_validate {
1; 1;
# vim: ts=4 # vim: ts=4
...@@ -2,17 +2,17 @@ ...@@ -2,17 +2,17 @@
# Cluebringer administration tool # Cluebringer administration tool
# Copyright (C) 2009-2015, AllWorldIT # Copyright (C) 2009-2015, AllWorldIT
# Copyright (C) 2008, LinuxRulz # Copyright (C) 2008, LinuxRulz
# #
# This program is free software; you can redistribute it and/or modify # 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 # it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or # the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version. # (at your option) any later version.
# #
# This program is distributed in the hope that it will be useful, # This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of # but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details. # GNU General Public License for more details.
# #
# You should have received a copy of the GNU General Public License along # You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc., # with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
...@@ -31,8 +31,8 @@ use cbp::logging; ...@@ -31,8 +31,8 @@ use cbp::logging;
use cbp::version; use cbp::version;
print("Policyd Admin Tool (ClueBringer) v".VERSION." - Copyright (c) 2007-2010 AllWorldIT\n"); print("PolicyD Admin Tool (Cluebringer) v".VERSION." - Copyright (c) 2009-2014 AllWorldIT\n");
# Fire up commandline processing... # Fire up commandline processing...
my %opts; my %opts;
...@@ -109,7 +109,7 @@ if ($opts{'cleanup'}) { ...@@ -109,7 +109,7 @@ if ($opts{'cleanup'}) {
# #
# Misc functions # Misc functions
# #
# Register plugin info # Register plugin info
...@@ -160,13 +160,13 @@ sub loadModules ...@@ -160,13 +160,13 @@ sub loadModules
push(@modulelist,$module); push(@modulelist,$module);
} }
} }
# Emulate server # Emulate server
$server = new cbpserver; $server = new cbpserver;
$server->{'inifile'} = \%config; $server->{'inifile'} = \%config;
# Init everything # Init everything
$server->init(); $server->init();
# Load modules # Load modules
foreach my $module (@modulelist) { foreach my $module (@modulelist) {
# Split off dir and mod name # Split off dir and mod name
...@@ -222,7 +222,7 @@ sub new ...@@ -222,7 +222,7 @@ sub new
my $self = { my $self = {
}; };
bless $self, $class; bless $self, $class;
return $self; return $self;
}; };
...@@ -253,23 +253,9 @@ sub log ...@@ -253,23 +253,9 @@ sub log
my ($self,$level,@msg) = @_; my ($self,$level,@msg) = @_;
# FIXME: we shouldn't ignore $level # FIXME: we shouldn't ignore $level
print(@msg, "\n"); print(@msg, "\n");
} }
# Load modules we need and run cleanup() function
# Cleanup session_tracking older than 24hr
# Cleanup quotas_tracking
# - check last update, if its older than now - period, remove
# CheckHelo
# - Remove checkhelo_tracking older than specified period, default to 1 month
# vim: ts=4 # vim: ts=4
...@@ -154,9 +154,9 @@ sub configure { ...@@ -154,9 +154,9 @@ sub configure {
if (ref($config{'server'}{'modules'}) eq "ARRAY") { if (ref($config{'server'}{'modules'}) eq "ARRAY") {
foreach my $module (@{$config{'server'}{'modules'}}) { foreach my $module (@{$config{'server'}{'modules'}}) {
$module =~ s/\s+//g; $module =~ s/\s+//g;
# Skip comments # Skip comments
next if ($module =~ /^#/); next if ($module =~ /^#/);
$module = "modules/$module"; $module = "modules/$module";
push(@{$cfg->{'module_list'}},$module); push(@{$cfg->{'module_list'}},$module);
} }
} else { } else {
...@@ -172,11 +172,11 @@ sub configure { ...@@ -172,11 +172,11 @@ sub configure {
if (ref($config{'server'}{'protocols'}) eq "ARRAY") { if (ref($config{'server'}{'protocols'}) eq "ARRAY") {
foreach my $module (@{$config{'server'}{'protocols'}}) { foreach my $module (@{$config{'server'}{'protocols'}}) {
$module =~ s/\s+//g; $module =~ s/\s+//g;
# Skip comments # Skip comments
next if ($module =~ /^#/); next if ($module =~ /^#/);
$module = "protocols/$module"; $module = "protocols/$module";
push(@{$cfg->{'module_list'}},$module); push(@{$cfg->{'module_list'}},$module);
} }
} else { } else {
my @protocolList = split(/\s+/,$config{'server'}{'protocols'}); my @protocolList = split(/\s+/,$config{'server'}{'protocols'});
foreach my $module (@protocolList) { foreach my $module (@protocolList) {
...@@ -239,7 +239,7 @@ sub post_configure_hook { ...@@ -239,7 +239,7 @@ sub post_configure_hook {
my $log_mail = $self->{'config'}{'log_mail'}; my $log_mail = $self->{'config'}{'log_mail'};
$self->log(LOG_NOTICE,"[CBPOLICYD] Policyd v2 / Cluebringer - v".VERSION); $self->log(LOG_NOTICE,"[CBPOLICYD] PolicyD v2 / Cluebringer - v".VERSION);
$self->log(LOG_NOTICE,"[CBPOLICYD] Initializing system modules."); $self->log(LOG_NOTICE,"[CBPOLICYD] Initializing system modules.");
# Init config # Init config
...@@ -761,7 +761,7 @@ sub protocol_getresponse ...@@ -761,7 +761,7 @@ sub protocol_getresponse
# Display help # Display help
sub displayHelp { sub displayHelp {
print(STDERR "Policyd (ClueBringer) v".VERSION." - Copyright (c) 2007-2009 AllWorldIT\n"); print(STDERR "PolicyD (Cluebringer) v".VERSION." - Copyright (c) 2007-2014 AllWorldIT\n");
print(STDERR<<EOF); print(STDERR<<EOF);
...@@ -775,9 +775,9 @@ EOF ...@@ -775,9 +775,9 @@ EOF
__PACKAGE__->run; __PACKAGE__->run;
1; 1;
# vim: ts=4 # vim: ts=4
...@@ -37,13 +37,13 @@ AutoProv: no ...@@ -37,13 +37,13 @@ AutoProv: no
%description %description
Policyd v2 (codenamed "cluebringer") is a multi-platform policy server PolicyD v2 (codenamed "cluebringer") is a multi-platform policy server
for popular MTAs. This policy daemon is designed mostly for large for popular MTAs. This policy daemon is designed mostly for large
scale mail hosting environments. The main goal is to implement as many scale mail hosting environments. The main goal is to implement as many
spam combating and email compliance features as possible while at the spam combating and email compliance features as possible while at the
same time maintaining the portability, stability and performance same time maintaining the portability, stability and performance
required for mission critical email hosting of today. Most of the required for mission critical email hosting of today. Most of the
ideas and methods implemented in Policyd v2 stem from Policyd v1 ideas and methods implemented in PolicyD v2 stem from PolicyD v1
as well as the authors' long time involvement in large scale mail as well as the authors' long time involvement in large scale mail
hosting industry. hosting industry.
......
# Policyd v2 (codenamed "cluebringer") is a multi-platform policy server # PolicyD v2 (codenamed "cluebringer") is a multi-platform policy server
# for popular MTAs. This policy daemon is designed mostly for large # for popular MTAs. This policy daemon is designed mostly for large
# scale mail hosting environments. The main goal is to implement as many # scale mail hosting environments. The main goal is to implement as many
# spam combating and email compliance features as possible while at the # spam combating and email compliance features as possible while at the
# same time maintaining the portability, stability and performance # same time maintaining the portability, stability and performance
# required for mission critical email hosting of today. Most of the # required for mission critical email hosting of today. Most of the
# ideas and methods implemented in Policyd v2 stem from Policyd v1 # ideas and methods implemented in PolicyD v2 stem from PolicyD v1
# as well as the authors' long time involvement in large scale mail # as well as the authors' long time involvement in large scale mail
# hosting industry. # hosting industry.
Alias /cluebringer /usr/share/cluebringer/webui Alias /cluebringer /usr/share/cluebringer/webui
<Directory /usr/share/cluebringer/webui> <Directory /usr/share/cluebringer/webui>
# Comment out the following 3 lines to make web ui accessible from anywhere # Comment out the following 3 lines to make web ui accessible from anywhere
Order Deny,Allow Order Deny,Allow
Deny from all Deny from all
Allow from 127.0.0.1 Allow from 127.0.0.1
</Directory> </Directory>
# Amavis module schema # Amavis module schema
# Copyright (C) 2009-2015, AllWorldIT # Copyright (C) 2009-2015, AllWorldIT
# Copyright (C) 2008, LinuxRulz # Copyright (C) 2008, LinuxRulz
# #
# This program is free software; you can redistribute it and/or modify # 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 # it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or # the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version. # (at your option) any later version.
# #
# This program is distributed in the hope that it will be useful, # This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of # but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details. # GNU General Public License for more details.
# #
# You should have received a copy of the GNU General Public License along # You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc., # with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
/* Amavisd-new integration for Policyd */ /* Amavisd-new integration for PolicyD */
CREATE TABLE @PREFIX@amavis_rules ( CREATE TABLE @PREFIX@amavis_rules (
ID @SERIAL_TYPE@, ID @SERIAL_TYPE@,
...@@ -32,7 +32,7 @@ Mode of operation (the _m columns): ...@@ -32,7 +32,7 @@ Mode of operation (the _m columns):
0 - Inherit 0 - Inherit
1 - Merge (only valid for lists) 1 - Merge (only valid for lists)
2 - Overwrite 2 - Overwrite
*/ */
...@@ -75,10 +75,10 @@ Mode of operation (the _m columns): ...@@ -75,10 +75,10 @@ Mode of operation (the _m columns):
spam_tag_subject VARCHAR(255), /* _SCORE_ is the score, _REQD_ is the required score */ spam_tag_subject VARCHAR(255), /* _SCORE_ is the score, _REQD_ is the required score */
spam_tag_subject_m SMALLINT NOT NULL DEFAULT '0', spam_tag_subject_m SMALLINT NOT NULL DEFAULT '0',
spam_tag2_subject VARCHAR(255), spam_tag2_subject VARCHAR(255),
spam_tag2_subject_m SMALLINT NOT NULL DEFAULT '0', spam_tag2_subject_m SMALLINT NOT NULL DEFAULT '0',
spam_tag3_subject VARCHAR(255), spam_tag3_subject VARCHAR(255),
spam_tag3_subject_m SMALLINT NOT NULL DEFAULT '0', spam_tag3_subject_m SMALLINT NOT NULL DEFAULT '0',
...@@ -125,7 +125,7 @@ Mode of operation (the _m columns): ...@@ -125,7 +125,7 @@ Mode of operation (the _m columns):
quarantine_bad_header VARCHAR(255), quarantine_bad_header VARCHAR(255),
quarantine_bad_header_m SMALLINT NOT NULL DEFAULT '0', quarantine_bad_header_m SMALLINT NOT NULL DEFAULT '0',
quarantine_spam VARCHAR(255), quarantine_spam VARCHAR(255),
quarantine_spam_m SMALLINT NOT NULL DEFAULT '0', quarantine_spam_m SMALLINT NOT NULL DEFAULT '0',
...@@ -148,8 +148,8 @@ INSERT INTO @PREFIX@amavis_rules ...@@ -148,8 +148,8 @@ INSERT INTO @PREFIX@amavis_rules
Name, Name,
max_message_size,max_message_size_m, max_message_size,max_message_size_m,
bypass_banned_checks, bypass_banned_checks_m bypass_banned_checks, bypass_banned_checks_m
) )
VALUES VALUES
( (
1, 1,
'Default system amavis policy', 'Default system amavis policy',
......
...@@ -22,13 +22,13 @@ Breaks: ...@@ -22,13 +22,13 @@ Breaks:
Recommends: cluebringer-webui Recommends: cluebringer-webui
Suggests: mysql-server Suggests: mysql-server
Description: Postfix Policy Daemon Description: Postfix Policy Daemon
Policyd v2 (codenamed "cluebringer") is a multi-platform policy server PolicyD v2 (codenamed "cluebringer") is a multi-platform policy server
for popular MTAs. This policy daemon is designed mostly for large for popular MTAs. This policy daemon is designed mostly for large
scale mail hosting environments. The main goal is to implement as many scale mail hosting environments. The main goal is to implement as many
spam combating and email compliance features as possible while at the spam combating and email compliance features as possible while at the
same time maintaining the portability, stability and performance same time maintaining the portability, stability and performance
required for mission critical email hosting of today. Most of the required for mission critical email hosting of today. Most of the
ideas and methods implemented in Policyd v2 stem from Policyd v1 ideas and methods implemented in PolicyD v2 stem from PolicyD v1
as well as the authors' long time involvement in large scale mail as well as the authors' long time involvement in large scale mail
hosting industry. hosting industry.
...@@ -37,14 +37,14 @@ Architecture: all ...@@ -37,14 +37,14 @@ Architecture: all
Depends: ${misc:Depends} Depends: ${misc:Depends}
Suggests: apache2, php5, php5-mysql Suggests: apache2, php5, php5-mysql
Description: Postfix Policy Daemon (webui) Description: Postfix Policy Daemon (webui)
Policyd v2 (codenamed "cluebringer") is a multi-platform policy server PolicyD v2 (codenamed "cluebringer") is a multi-platform policy server
for popular MTAs. This policy daemon is designed mostly for large for popular MTAs. This policy daemon is designed mostly for large
scale mail hosting environments. The main goal is to implement as many scale mail hosting environments. The main goal is to implement as many
spam combating and email compliance features as possible while at the spam combating and email compliance features as possible while at the
same time maintaining the portability, stability and performance same time maintaining the portability, stability and performance
required for mission critical email hosting of today. Most of the required for mission critical email hosting of today. Most of the
ideas and methods implemented in Policyd v2 stem from Policyd v1 ideas and methods implemented in PolicyD v2 stem from PolicyD v1
as well as the authors' long time involvement in large scale mail as well as the authors' long time involvement in large scale mail
hosting industry. hosting industry.
. .
This package contains the webui for Policyd. This package contains the webui for PolicyD.
...@@ -2,17 +2,17 @@ ...@@ -2,17 +2,17 @@
# Database functions # Database functions
# Copyright (C) 2009-2015, AllWorldIT # Copyright (C) 2009-2015, AllWorldIT
# Copyright (C) 2008, LinuxRulz # Copyright (C) 2008, LinuxRulz
# #
# This program is free software; you can redistribute it and/or modify # 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 # it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or # the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version. # (at your option) any later version.
# #
# This program is distributed in the hope that it will be useful, # This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of # but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details. # GNU General Public License for more details.
# #
# You should have received a copy of the GNU General Public License along # You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc., # with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
...@@ -35,7 +35,7 @@ function connect_db() ...@@ -35,7 +35,7 @@ function connect_db()
$dbh->setAttribute(PDO::ATTR_CASE,PDO::CASE_LOWER); $dbh->setAttribute(PDO::ATTR_CASE,PDO::CASE_LOWER);
} catch (PDOException $e) { } catch (PDOException $e) {
die("Error connecting to Policyd v2 DB: " . $e->getMessage()); die("Error connecting to the database: " . $e->getMessage());
} }
return $dbh; return $dbh;
...@@ -64,5 +64,4 @@ function connect_postfix_db() ...@@ -64,5 +64,4 @@ function connect_postfix_db()
} }
# vim: ts=4
?>
...@@ -2,24 +2,24 @@ ...@@ -2,24 +2,24 @@
# Page footer # Page footer
# Copyright (C) 2009-2015, AllWorldIT # Copyright (C) 2009-2015, AllWorldIT
# Copyright (C) 2008, LinuxRulz # Copyright (C) 2008, LinuxRulz
# #
# This program is free software; you can redistribute it and/or modify # 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 # it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or # the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version. # (at your option) any later version.
# #
# This program is distributed in the hope that it will be useful, # This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of # but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details. # GNU General Public License for more details.
# #
# You should have received a copy of the GNU General Public License along # You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc., # with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
# Print page footer # Print page footer
function printFooter() function printFooter()
{ {
?> ?>
</td> </td>
...@@ -32,11 +32,10 @@ function printFooter() ...@@ -32,11 +32,10 @@ function printFooter()
</tr> </tr>
<tr> <tr>
<td id="footer">Policyd - Copyright &copy; 2008, LinuxRulz - <a href="http://www.policyd.org/v2/">http://www.policyd.org/v2/</a></td> <td id="footer">PolicyD - Copyright &copy; 2008-2015, AllWorldIT - <a href="http://www.policyd.org/v2/">http://www.policyd.org/v2/</a></td>
</tr> </tr>
</table> </table>
</body> </body>
</html> </html>
<?php <?php
} }
?>
...@@ -2,17 +2,17 @@ ...@@ -2,17 +2,17 @@
# Page header # Page header
# Copyright (C) 2009-2015, AllWorldIT # Copyright (C) 2009-2015, AllWorldIT
# Copyright (C) 2008, LinuxRulz # Copyright (C) 2008, LinuxRulz
# #
# This program is free software; you can redistribute it and/or modify # 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 # it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or # the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version. # (at your option) any later version.
# #
# This program is distributed in the hope that it will be useful, # This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of # but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details. # GNU General Public License for more details.
# #
# You should have received a copy of the GNU General Public License along # You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc., # with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
...@@ -27,8 +27,8 @@ function printHeader($params = NULL) ...@@ -27,8 +27,8 @@ function printHeader($params = NULL)
global $DB_POSTFIX_DSN; global $DB_POSTFIX_DSN;
# Pull in params # Pull in params
if (!is_null($params)) { if (!is_null($params)) {
if (isset($params['Tabs'])) { if (isset($params['Tabs'])) {
$tabs = $params['Tabs']; $tabs = $params['Tabs'];
} }
...@@ -38,20 +38,20 @@ function printHeader($params = NULL) ...@@ -38,20 +38,20 @@ function printHeader($params = NULL)
if (isset($params['Title'])) { if (isset($params['Title'])) {