]> git.ipfire.org Git - ipfire-2.x.git/blobdiff - src/wio/wio-lib.pl
wio: moved files from src/wio directory to standard IPFire location
[ipfire-2.x.git] / src / wio / wio-lib.pl
diff --git a/src/wio/wio-lib.pl b/src/wio/wio-lib.pl
deleted file mode 100644 (file)
index 46de7be..0000000
+++ /dev/null
@@ -1,233 +0,0 @@
-#!/usr/bin/perl
-#
-###############################################################################
-#                                                                             #
-# IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2017-2020 Stephan Feddersen <sfeddersen@ipfire.org>           #
-# All Rights Reserved.                                                        #
-#                                                                             #
-# 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 <http://www.gnu.org/licenses/>.       #
-#                                                                             #
-###############################################################################
-#
-# Version: 2020/05/25 19:39:23
-#
-# This wio-lib.pl is based on the code from the IPCop WIO Addon
-# and is extremly adapted to work with IPFire.
-#
-# Autor: Stephan Feddersen
-# Co-Autor: Alexander Marx
-# Co-Autor: Frank Mainz (for some code for the IPCop WIO Addon)
-#
-
-package WIO;
-
-# enable only the following on debugging purpose
-#use warnings;
-
-use strict;
-use Socket;
-use Time::Local;
-use MIME::Lite;
-
-require '/var/ipfire/general-functions.pl';
-require '/var/ipfire/header.pl';
-require '/var/ipfire/lang.pl';
-
-my %mailsettings = ();
-
-&General::readhash('/var/ipfire/dma/mail.conf', \%mailsettings);
-
-############################################################################################################################
-
-sub getdyndnsip {
-       my $ipadr = $_[0];
-       my $host = $_[1];
-       my @fetchip = ();
-
-       if ( -e "/var/ipfire/red/active" ) {
-               @fetchip = gethostbyname($host);
-
-               if ( defined($fetchip[0]) ) {
-                       @fetchip = map ( &Socket::inet_ntoa($_), @fetchip[4..$#fetchip]);
-                       return ($fetchip[0], $Lang::tr{'wio_dyndns_success'});
-               }
-       }
-       else {
-               return ($ipadr, $Lang::tr{'wio_dyndns_info'});
-       }
-}
-
-############################################################################################################################
-
-sub contime {
-       chomp(my $str = $_[0]);
-       chomp(my $vpn = $_[1]);
-
-       my %m = ();
-       @m{qw/Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec/} = (0 .. 11);
-
-       my $totalsecs = '';
-
-       if ( $vpn eq 'ipsec' ) {
-               my @temp = split (/ /, $str);
-
-               if ( $temp[1] eq 'seconds' ) {
-                       $totalsecs = $temp[0];
-               }
-
-               if ( $temp[1] eq 'minutes' ) {
-                       $totalsecs = $temp[0] * 60;
-               }
-
-               if ( $temp[1] eq 'hours' ) {
-                       $totalsecs = $temp[0] * 3600;
-               }
-
-               if ( $temp[1] eq 'days' ) {
-                       $totalsecs = $temp[0] * 86400;
-               }
-       }
-
-       if ( $vpn eq 'ovpn' ) {
-               if ( $str =~ /^\w{3}\ ([a-zA-Z]+)\ (\d{1,2})\ (\d{2})\:(\d{2})\:(\d{2}) (\d{4})$/ ||
-                        $str =~ /^\w{3}\ ([a-zA-Z]+)\  (\d{1})\ (\d{2})\:(\d{2})\:(\d{2}) (\d{4})$/ )
-               {
-                       my $past = timelocal($5, $4, $3, $2, $m{$1}, $6);
-                       my $now  = time;
-                       $totalsecs = $now - $past;
-               }
-       }
-
-       if ( $totalsecs ne '' )  {
-               my $days = int($totalsecs / 86400);
-               my $totalhours = int($totalsecs / 3600);
-               my $hours = $totalhours % 24;
-               my $totalmins = int($totalsecs / 60);
-               my $mins = $totalmins % 60;
-               my $secs = $totalsecs % 60;
-
-               return "${days}d ${hours}h ${mins}m ${secs}s";
-       }
-       else {
-               return;
-       }
-}
-
-############################################################################################################################
-
-sub statustime {
-       my $str = $_[0];
-       my ( $day, $mon ) = '';
-
-       my %m = qw ( Jan 01 Feb 02 Mar 03 Apr 04 May 05 Jun 06 Jul 07 Aug 08 Sep 09 Oct 10 Nov 11 Dec 12 );
-
-       if ( $str =~ /^\w{3}\ ([a-zA-Z]+)\ (\d{1,2})\ (\d{2})\:(\d{2})\:(\d{2}) (\d{4})$/ ||
-                $str =~ /^\w{3}\ ([a-zA-Z]+)\  (\d{1})\ (\d{2})\:(\d{2})\:(\d{2}) (\d{4})$/ )
-       {
-               $mon = $m{$1};
-
-               if (length $2 < 2) { $day = "0$2"; }
-               else { $day = $2; }
-
-               return "$day.$mon.$6 - $3:$4:$5";
-       }
-       else {
-               return;
-       }
-}
-
-############################################################################################################################
-
-sub mailsender {
-       my $msg = '';
-
-       $msg = MIME::Lite->new(
-               From    => $mailsettings{'SENDER'},
-               To              => $mailsettings{'RECIPIENT'},
-               Subject => $_[0],
-               Type    => 'multipart/alternative'
-       );
-
-       $msg->attach(
-               Type    => 'TEXT',
-               Data    => $_[1]
-       );
-
-       $msg->send_by_sendmail;
-}
-
-############################################################################################################################
-
-sub checkinto {
-       my ($checkip, $checkhost, @checkfile) = @_;
-
-       if ( $checkip ne '' ) {
-               foreach (@checkfile) {
-                       chomp;
-                       if ( (split (/\,/, $_))[2] eq $checkip ) { return $Lang::tr{'wio_ip_exists'}; last; }
-               }
-       }
-
-       if ( $checkhost ne '' ) {
-               foreach (@checkfile) {
-                       chomp;
-                       if ( (split (/\,/, $_))[3] eq $checkhost ) {
-                               if ( $checkip ne '' ) {
-                                       my $fileip = (split (/\,/, $_))[2];
-
-                                       $fileip =~ /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/;
-
-                                       my $fileip1 = $1;
-                                       my $fileip2 = $2;
-                                       my $fileip3 = $3;
-                                       my $fileip4 = $4;
-                                       
-                                       $checkip =~ /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/;
-
-                                       if ( $fileip1 == $1 && $fileip2 == $2 && $fileip3 == $3 ) {
-                                               return $Lang::tr{'wio_host_exists'}; last; }
-                               }
-                               else { return $Lang::tr{'wio_host_exists'}; last; }
-                       }
-               }
-       }
-
-       return;
-}
-
-############################################################################################################################
-
-sub clearfile {
-       my $file = $_[0];
-
-       open(FILE, "> $file");
-       close(FILE);
-}
-
-############################################################################################################################
-
-sub color_devices() {
-       my $output = shift;
-
-       if ( uc($output) eq "GREEN0" ) { $output = "<b><font color ='$Header::colourgreen'>$output</b>";}
-       elsif ( uc($output) eq "BLUE0" ) { $output = "<b><font color ='$Header::colourblue'>$output</b>"; }
-       elsif ( uc($output) eq "ORANGE0" ) { $output = "<b><font color ='$Header::colourorange'>$output</b>"; }
-       elsif ( uc($output) eq "RED0" ) { $output = "<b><font color ='$Header::colourred'>$output</b>"; }
-       else { return $output = "<b><font color ='#696565'>$output</b>"; }
-
-       return $output;
-}
-
-return 1;