🐪 CheckSum.pm (Perl) 1.4 KB 2024-08-08
Perl module for CheckSum
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl
#########################################
##### Author: Sebastian Enger / B.Sc
##### CopyRight: BitJoe GmbH
##### LastModified 16.07.2006
##### Function: MD5 Checksum erstellen
##### Todo:
########################################
package PhexProxy::CheckSum;
# use Digest::MD5 qw(md5 md5_hex md5_base64);
use Digest::MD5 qw( md5_hex ); # perl -MCPAN -e 'force install "Digest::MD5"'
#use Digest::MD4 qw( md4_hex );
#use Digest::SHA1 qw( sha1_hex );
use strict;
my $VERSION = '0.20';
sub new(){
my $self = bless {}, shift;
return $self;
}; # sub new() {}
sub MD5ToHEX(){
my $self = shift;
my $String = shift;
if ( ref($String) eq 'SCALAR' ) {
return md5_hex( ${$String} );
} elsif ( ref($String) eq '' ) {
return md5_hex( $String );
};
}; # sub md5_hex(){}
sub MD4ToHEX(){
my $self = shift;
my $String = shift;
... [truncated, 33 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "CheckSum.pm",
"description": "Perl module for CheckSum",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "1.4 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/CheckSum.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 CryptoLibrary.pm (Perl) 7.3 KB 2024-08-08
Perl module for CryptoLibrary
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Sebastian Enger / B.Sc
##### CopyRight: BitJoe GmbH
##### LastModified 13.07.2006
##### Function:
##### Todo: DEFAULT in encrypt und decrypt lschen!!
########################################
package PhexProxy::CryptoLibrary;
use PhexProxy::CheckSum;
use PhexProxy::Time;
#use Crypt::Rijndael;
#use PhexProxy::SQL;
use PhexProxy::IO;
use IO::Socket;
#use Crypt::CBC;
use strict;
no strict "subs";
# use Data::Dumper;
my $VERSION = '0.30.0';
use constant CRYPT => "/usr/bin/java /srv/server/phexproxy/decrypt/Crypt";
use constant DECRYPT => "/usr/bin/java /srv/server/phexproxy/decrypt/Decrypt";
my %CryptoHashRef = (
# public => privatekey
'0123456789abcdef0123456789abcdef' => '!123456789abcdef0123456789abcdef',
'399e8c5b89f81fd31a9341f1e6c539d7' => '380971de720bf96f51d372441d4cacf3'
);
sub new(){
my $self = bless {}, shift;
return $self;
}; # new(){}
sub GetPrivateCryptoKeyFromDatabase(){
my $self = shift;
my $PublicKey = shift;
# print "\n\n\n PublicKey=$PublicKey \n\n\n";
... [truncated, 282 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "CryptoLibrary.pm",
"description": "Perl module for CryptoLibrary",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "7.3 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/CryptoLibrary.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 Daemon.pm (Perl) 4.5 KB 2024-08-08
Perl module for Daemon
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | package PhexProxy::Daemon;
#########################################
##### Author: Lincoln Stein
##### CopyRight: GPL
##### LastModified 11.07.2006
##### Function: Daemon Fhigkeiten des Servers
##### Todo:
########################################
use strict;
use vars qw(@EXPORT @ISA @EXPORT_OK $VERSION);
use POSIX qw(:signal_h setsid WNOHANG);
use Carp 'croak','cluck';
use Carp::Heavy;
use File::Basename;
use IO::File;
use Cwd;
use Sys::Syslog qw(:DEFAULT setlogsock);
require Exporter;
@EXPORT_OK = qw(init_server prepare_child kill_children
launch_child do_relaunch
log_debug log_notice log_warn
log_die %CHILDREN);
@EXPORT = @EXPORT_OK;
@ISA = qw(Exporter);
my $VERSION = '1.00';
use constant PIDPATH => '/var/run';
use constant FACILITY => 'local0';
use vars qw(%CHILDREN);
my ($pid,$pidfile,$saved_dir,$CWD);
sub init_server {
my ($user,$group);
($pidfile,$user,$group) = @_;
$pidfile ||= getpidfilename();
my $fh = open_pid_file($pidfile);
become_daemon();
print $fh $$;
close $fh;
init_log();
change_privileges($user,$group) if defined $user && defined $group;
return $pid = $$;
};
sub become_daemon {
croak "Can't fork" unless defined (my $child = fork);
... [truncated, 121 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "Daemon.pm",
"description": "Perl module for Daemon",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "4.5 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/Daemon.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 FileTypes.pm (Perl) 4.0 KB 2024-08-08
Perl module for FileTypes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Sebastian | modified 27.07.06 Torsten
##### CopyRight: BitJoe GmbH
##### LastModified 27.07.06
##### Function: Dateitypen definieren
##### Todo:
########################################
package PhexProxy::FileTypes;
use Data::Dumper;
use strict;
my $VERSION = '0.18';
sub new(){
my $self = bless {}, shift;
return $self;
}; # new()
sub getSearchFiles(){
my $self = shift;
my $RawString = shift; # b001000100
my ( @content ) = split('', $RawString);
my $FileReturnString = "-filetype:"; #v2
my $FileType = $content[0];
$FileType = lc($FileType);
my $CurrentFileType;
# Stelle sicher, dass zu dem "gewollten" Format auch die Lizenz passt -> sonst error meldung
if ( $FileType eq 'b' ) {
$CurrentFileType = $self->BilderFileTypes();
} elsif ( $FileType eq 'm' ) {
$CurrentFileType = $self->MP3FileTypes();
} elsif ( $FileType eq 'k' ) {
$CurrentFileType = $self->RingtonesFileTypes();
} elsif ( $FileType eq 'v' ) {
$CurrentFileType = $self->VideoFileTypes();
} elsif ( $FileType eq 'j' ) {
$CurrentFileType = $self->JavaFileTypes();
} elsif ($FileType eq 'd' ) {
... [truncated, 173 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "FileTypes.pm",
"description": "Perl module for FileTypes",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "4.0 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/FileTypes.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 Filter.pm (Perl) 3.7 KB 2024-08-08
Perl module for Filter
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Sebastian Enger / B.Sc
##### CopyRight: BitJoe GmbH
##### LastModified 27.07.2006
##### Function: verschiede Filter fr die Results
##### Todo: eventuell die filter datei schon als Array mit in diese Datei einbauen, damit nicht soviele IO zugriffe gemacht werden mssen
########################################
package PhexProxy::Filter;
use PhexProxy::IO;
use strict;
# FORMATBILD=200K
# FORMATMP3=6M
# FORMATRING=200K
# FORMATVIDEO=15M
# FORMATJAVA=350K
# FORMATDOC=500K
my $SIZEFILTER = '/server/phexproxy/filter/sizefilter.dat';
my $SizeFilerContentArrayRef = PhexProxy::IO->ReadFileIntoArray( $SIZEFILTER ); # later: read it into memory on Module compile
my $StringLengthIndicateSpamResult = 2999; # 3000% - wenn ein result $StringLengthIndicateSpamReasult % lnger ist als der suchbegriff, dann ist es ein spam result und bekommt 0 punkte im ranking
sub new(){
my $self = bless {}, shift;
return $self;
}; # sub new(){}
sub SpamFilter(){
my $self = shift;
my $FileName = shift;
my $SearchQuery = shift;
$SearchQuery = lc($SearchQuery);
my $IsSpamFlag = $self->ClassifySpamResult($SearchQuery,$FileName); #1=spam | 0=kein spam
if ( $FileName =~ /[(\w)|(\d)|(\s)]+\.(com|net|org|biz|de|info|tv|vu|eu|at|ch)/i) {
return -1; # sind equal
} elsif ( $FileName =~ /[(\w)|(\d)|(\s)]+\.(zip|arj|rar|exe|com)/i) {
return -1; # sind equal
... [truncated, 90 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "Filter.pm",
"description": "Perl module for Filter",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "3.7 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/Filter.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 Gzip.pm (Perl) 9.9 KB 2024-08-08
Perl module for Gzip
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Patrick Canterino / Sebastian Enger / B.Sc
##### CopyRight: 2003 Patrick Canterino / since 2006 BitJoe GmbH
##### LastModified 11.07.2006
##### Function: Gzip (De)Compression of Files/Strings
##### Todo: Testing
########################################
package PhexProxy::Gzip;
use PhexProxy::CryptoLibrary;
use PhexProxy::CheckSum;
use base qw(Exporter);
# use Compress::Zlib;
use PhexProxy::IO;
use strict;
my $VERSION = '0.10';
use vars qw( @EXPORT ); #$gzippath
### Export ###
@EXPORT = qw( gzip_compress_string );
# gzip_compress
# gzip_decompress
# gzip_decompress_string
# Constructor
sub new(){
my $self = bless {}, shift;
return $self;
}; # new()
# Pfad zum GZip-Programm (erreichbar ueber $GZip::gzippath)
my $gzippath = '/bin/gzip';
my $temppath = '/server/phexproxy/tmp';
mkdir $temppath;
# ============================
# Zugriff mit Compress::Zlib
# ============================
# decompress_string_zlib(): Interne Funktion
... [truncated, 326 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "Gzip.pm",
"description": "Perl module for Gzip",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "9.9 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/Gzip.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 Gzip1.pm (Perl) 9.5 KB 2024-08-08
Perl module for Gzip1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Patrick Canterino / Sebastian Enger / B.Sc
##### CopyRight: 2003 Patrick Canterino / since 2006 BitJoe GmbH
##### LastModified 11.07.2006
##### Function: Gzip (De)Compression of Files/Strings
##### Todo: Testing
########################################
package PhexProxy::Gzip1;
use PhexProxy::CryptoLibrary;
use PhexProxy::CheckSum;
use base qw(Exporter);
use Compress::Zlib;
use PhexProxy::IO;
use strict;
my $VERSION = '0.10';
use vars qw( @EXPORT
$gzippath);
### Export ###
@EXPORT = qw(
gzip_compress
gzip_decompress
gzip_compress_string
gzip_decompress_string
);
# Constructor
sub new(){
my $self = bless {}, shift;
return $self;
}; # new()
# Pfad zum GZip-Programm (erreichbar ueber $GZip::gzippath)
my $gzippath = '/bin/gzip';
my $temppath = '/server/phexproxy/tmp';
mkdir $temppath;
# ============================
... [truncated, 323 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "Gzip1.pm",
"description": "Perl module for Gzip1",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "9.5 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/Gzip1.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 ICQ.pm (Perl) 1.6 KB 2024-08-08
Perl module for ICQ
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Sebastian Enger / B.Sc
##### CopyRight: BitJoe GmbH
##### LastModified 11.07.2006
##### Function: SMS
##### Todo:
########################################
package PhexProxy::ICQ;
use PhexProxy::Time;
use strict;
my $TIME = PhexProxy::Time->new();
my @Admins = ("135846444"); # Admins to Inform
my $uid = "473836055"; # icq des bots
my $pw = "123test"; # pwd des bots
my $climm = "/usr/local/bin/climm"; # climm binary - muss nach installieren erst noch ein account aufgesetzt werden - http://www.climm.org/
sub new() {
my $self = bless {}, shift;
return $self;
}; # new()
sub SendICQMessage(){
my $self = shift;
my $Message = shift;
my $time = $TIME->MySQLDateTime();
my $tmp = "[$time] $Message";
$Message = $tmp;
foreach my $ICQNumber ( @Admins ) {
my $back = system("$climm -u $uid -p $pw -C \"msg $ICQNumber $Message\" \"exit\"");
}; # foreach my $entry ( @Admins ) {
system("/usr/bin/killall climm");
return 1;
}; # sub SendICQMessage(){
... [truncated, 20 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "ICQ.pm",
"description": "Perl module for ICQ",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "1.6 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/ICQ.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 IO.pm (Perl) 6.6 KB 2024-08-08
Perl module for IO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Sebastian Enger / B.Sc
##### CopyRight: BitJoe GmbH
##### LastModified 16.07.2006
##### Function: IO spezifisches Modul
##### Todo:
########################################
package PhexProxy::IO;
$| = 1;
# use IO::Socket::SSL qw(debug4);
use PhexProxy::CryptoLibrary;
use PhexProxy::CheckSum;
#use PhexProxy::Mail;
#use PhexProxy::SMS;
#use PhexProxy::ICQ;
use IO::Socket;
use strict;
no strict 'subs';
#my $ICQ = PhexProxy::ICQ->new();
#my $SMS = PhexProxy::SMS->new();
my $TIME = PhexProxy::Time->new();
#my $MAIL = PhexProxy::Mail->new();
use constant RANDOM_DEVICE => '/dev/urandom';
use constant MAXINCBYTES => 50 * 1024 * 1024; # 10 mbytes
my $MaxCreateSocketTry = 1; # Anzahl Versuche fr Aufbau eines Sockets
my $MaxCreateSocketRandSleep = 1; # Anzahl max Sekunden Wartezeit zwischen Aufbau des Sockets
sub new(){
my $self = bless {}, shift;
return $self;
}; # new()
sub readSocket() {
my $self = shift;
my $socket = shift;
... [truncated, 242 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "IO.pm",
"description": "Perl module for IO",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "6.6 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/IO.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 IPFilter.pm (Perl) 6.1 KB 2024-08-08
Perl module for IPFilter
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Sebastian Enger / B.Sc
##### CopyRight: BitJoe GmbH
##### LastModified 16.07.2006
##### Function: IP Filter fr die Results
##### Todo:
########################################
package PhexProxy::IPFilter;
use strict;
my $VERSION = '0.18.1';
mkdir '/server/phexproxy/IPFILTER';
my $REALOADFILE = '/server/phexproxy/IPFILTER/reload.txt';
my $IPFILTER = '/server/mutella/IPFILTER/ipfilter.dat';
my $TMPFILTER = '/server/mutella/IPFILTER/tempfilter.txt';
my $IPBLOCKER = '/server/mutella/IPFILTER/ipblocker.txt'; # eine IP pro Zeile
sub new(){
my $self = bless {}, shift;
return $self;
}; # sub new(){}
sub IPBlocker(){
my $self = shift;
my $GivenIP = shift;
open(BLOCKER, "<$IPBLOCKER") or sub { warn "PhexProxy::IPFilter->IPBlocker(): Blocking not possible: IO ERROR: $!\n"; return -1; };
flock (BLOCKER, 2);
while( defined( my $IPperLine = <BLOCKER> ) ){
$IPperLine =~ s/[\s]//g;
if ( $IPperLine eq $GivenIP ) {
close BLOCKER;
return -1; # sind equal
}; # if ( $IPperLine eq
}; # while
close BLOCKER;
return 0; # nicht gleich, wenn kein Match
}; # sub IPBlocker(){}
... [truncated, 190 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "IPFilter.pm",
"description": "Perl module for IPFilter",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "6.1 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/IPFilter.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 LicenceGenerator.pm (Perl) 27.3 KB 2024-08-08
Perl module for LicenceGenerator
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Sebastian Enger / B.Sc
##### CopyRight: BitJoe GmbH
##### LastModified 16.07.2006
##### Function: Lizenzen generieren
##### Todo:
########################################
package PhexProxy::LicenceGenerator;
use PhexProxy::CryptoLibrary;
use PhexProxy::CheckSum;
use PhexProxy::Phex;
use PhexProxy::Time;
use PhexProxy::SQL;
use strict;
# todo: hier alle sql werte anpassen und die sql fr den private/public key mit einbauen
my $VERSION = '0.9 20080330';
my $LICENCESTOREPATH = '/server/phexproxy/Licence'; mkdir $LICENCESTOREPATH; # later Config
# diese werte mssen ensprechend gendert werden
# my $ClientCurrentMin = "1.0";
# my $ClientCurrentMax = "1.1";
sub new(){
my $self = bless {}, shift;
return $self;
}; # new(){}
sub GenerateALLLicenceForToday(){
my $self = shift;
my $AsciiDate = shift;
my $ClientVersion = shift;
my $ValidUntil = shift;
my $Licence = $self->GenerateLicence( $AsciiDate, $ClientVersion, $ValidUntil );
my $PUBLICKEY = $self->GenerateLicence( $AsciiDate, $ClientVersion, $ValidUntil );
my $PRIVATEKEY = $self->GenerateLicence( $AsciiDate, $ClientVersion, $ValidUntil );
# my $ValidUntil = PhexProxy::Time->GetValid8DayDateForLicence();
my $MySQLDateTime = PhexProxy::Time->MySQLDateTime();
my ($ClientCurrentMin, $ClientCurrentMax) = split("-", $ClientVersion);
... [truncated, 716 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "LicenceGenerator.pm",
"description": "Perl module for LicenceGenerator",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "27.3 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/LicenceGenerator.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 LicenceManagement.pm (Perl) 10.6 KB 2024-08-08
Perl module for LicenceManagement
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Sebastian Enger / B.Sc
##### CopyRight: BitJoe GmbH
##### LastModified 12.07.2006
##### Function: LicenceManagement
##### Todo:
########################################
# INSERT INTO `licence` ( `PUBLICKEY`, `PRIVATEKEY`) VALUES ( '0123456789abcdef0123456789abcdef','!123456789abcdef0123456789abcdef' );
package PhexProxy::LicenceManagement;
# use PhexProxy::CryptoLibrary;
use Digest::MD5 qw( md5_hex );
use PhexProxy::Time;
use PhexProxy::SQL;
use Fcntl ':flock';
use strict;
# use Data::Dumper;
my $VERSION = '1.1.a';
my $ERRORLOG = "/server/logs/bjparisBackend_error.log";
my $BitJoeTable = "bjparis_new";
sub new() {
my $self = bless {}, shift;
return $self;
}; # new()
sub CheckLicence(){
my $self = shift;
my $UP_MD5 = shift;
my $SEC_MD5 = shift;
my $HandyIP = shift;
my $sth;
my $update = 0;
my $DBHandle;
my $ResultHashRef = {};
... [truncated, 251 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "LicenceManagement.pm",
"description": "Perl module for LicenceManagement",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "10.6 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/LicenceManagement.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 LicenceManagement1.pm (Perl) 23.5 KB 2024-08-08
Perl module for LicenceManagement1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Sebastian Enger / B.Sc
##### CopyRight: BitJoe GmbH
##### LastModified 12.07.2006
##### Function: LicenceManagement
##### Todo:
########################################
# INSERT INTO `licence` ( `PUBLICKEY`, `PRIVATEKEY`) VALUES ( '0123456789abcdef0123456789abcdef','!123456789abcdef0123456789abcdef' );
package PhexProxy::LicenceManagement;
###use PhexProxy::Messages;
use PhexProxy::CryptoLibrary;
use Digest::MD5 qw( md5_hex );
use PhexProxy::Time;
use PhexProxy::SQL;
use Fcntl ':flock';
use strict;
# use Data::Dumper;
####
# neue Gratis User bekommen userType=3 damit die anderen noch weiter suchen können, dann bei jedem lizenzcheck auf userType=1 testen=(bekommen komplette ergebnisse) oder UserType=2=(paying user) oder usertype=3 = ( gratis user handyanmeldung ) testen
####
my $VERSION = '1.1.a';
###my $MESSAGES = PhexProxy::Messages->new();
my $ERRORLOG = "/server/logs/bjparisBackend_error.log";
my $IsSuccessSearchKB = 5 * 1024; # für $hc_userType != 3 user
my $IsSuccessSearchHandyAnmeldungKB = 3 * 1024; # für $hc_userType == 3 user
my $successfull_searches = 3; # 3 erfolgreiche suchen - weil der user effektiv nur 3 mal suchen incl downloaden darf
my $overall_searches = 21; # 21 maximale suchen sind eigentlich nur 20 suchen, aber da ein bug auftritt wenn man nur noch 1=overall hat, wurde der wert hier erhöht
sub new() {
my $self = bless {}, shift;
return $self;
}; # new()
sub CheckLicence(){
... [truncated, 551 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "LicenceManagement1.pm",
"description": "Perl module for LicenceManagement1",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "23.5 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/LicenceManagement1.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 LicenceTransfer.pm (Perl) 11.6 KB 2024-08-08
Perl module for LicenceTransfer
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Sebastian Enger / B.Sc
##### CopyRight: BitJoe GmbH
##### LastModified 16.07.2006
##### Function: LicenceTransfer
##### Todo:
########################################
# my $scpe = Net::SCP::Expect->new(host=>'85.214.59.105', user=>'root', password=>'PQdfqZHr');
# $scpe->auto_yes(1);
# $scpe->scp('/server/mutella/MutellaProxy_V0.1.9.pl','root@85.214.59.105:/root/');
package PhexProxy::LicenceTransfer;
use PhexProxy::CryptoLibrary;
use PhexProxy::CheckSum;
use PhexProxy::Mail;
use PhexProxy::Time;
use PhexProxy::SQL;
use PhexProxy::IO;
use Net::SCP::Expect; # perl -MCPAN -e 'install "Net::SCP::Expect"'
use strict;
my $VERSION = '0.20.1';
mkdir '/server/phexproxy/LICENCE';
mkdir '/server/phexproxy/LICENCE/ENCRYPTED';
mkdir '/server/phexproxy/LICENCE/DECRYPTED';
my $LICENCEPATH = '/server/phexproxy/LICENCE'; # todo: config auslesen
my $CRYPTOLICENCEPATH = '/server/phexproxy/LICENCE/ENCRYPTED'; # todo: config auslesen
my $DECRYPTEDLICENCEPATH = '/server/phexproxy/LICENCE/DECRYPTED';
my $CRYPTOKEY = '12341234123412341234123412342341'; # todo: config auslesen
# Definiere einen Config Hash - hier stehen alle Username,Passwords u. Hostnames drinne, zu denen die verschlsselten Daten bertragen werden sollen
my %ConfigHash =(
"1" => my $CfG1 = {
"HOST" => "85.214.59.105",
"USER" => "root",
"PASS" => "PQdfqZHr",
"PATH" => "/server/mutella/"
},
# "2" => my $CfG2 = {
# "HOST" => "HOSTIP",
# "USER" => "USERNAME",
# "PASS" => "PASSWORD",
# "PATH" => "/root/.mutella" # wo soll es gespeichert werden
... [truncated, 370 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "LicenceTransfer.pm",
"description": "Perl module for LicenceTransfer",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "11.6 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/LicenceTransfer.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 Logging.pm (Perl) 15.5 KB 2024-08-08
Perl module for Logging
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Sebastian Enger / B.Sc
##### CopyRight: BitJoe GmbH
##### LastModified 11.07.2006
##### Function: Logging
##### Todo: logging ^^
########################################
package PhexProxy::Logging;
my $VERSION = '0.47';
use PhexProxy::Time;
#use IO::Handle;
use strict;
mkdir '/server/phexproxy/LOGS/';
my $LOGINIT = '/server/phexproxy/LOGS/INITLOG.txt';
my $LOGRESULTS = '/server/phexproxy/LOGS/GETRESULTSLOG.txt';
my $LOGSTARTDL = '/server/phexproxy/LOGS/STARTDOWNLOADLOG.txt';
my $LOGENDDL = '/server/phexproxy/LOGS/FINISHDOWNLOADLOG.txt';
my $LOGLICENCE = '/server/phexproxy/LOGS/INVALIDLICENCELOG.txt';
my $LOGINITDISTR = '/server/phexproxy/LOGS/INITLOG_DISTR.txt';
my $LOGRESULTSDISTR = '/server/phexproxy/LOGS/GETRESULTSLOG_DISTR.txt';
my $LOGSTARTDLDISTR = '/server/phexproxy/LOGS/STARTDOWNLOADLOG_DISTR.txt';
my $LOGENDDLDISTR = '/server/phexproxy/LOGS/FINISHDOWNLOADLOG_DISTR.txt';
my $LOGLICENCEDISTR = '/server/phexproxy/LOGS/INVALIDLICENCELOG_DISTR.txt';
sub new() {
my $self = bless {}, shift;
return $self;
}; # new();
######## Distributed Paris
sub LogToFileInitDistr(){
my $self = shift;
my $LogScalarRef = shift;
... [truncated, 404 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "Logging.pm",
"description": "Perl module for Logging",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "15.5 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/Logging.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 Mail.pm (Perl) 3.0 KB 2024-08-08
Perl module for Mail
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Sebastian Enger / B.Sc
##### CopyRight: BitJoe GmbH
##### LastModified 14.07.2006
##### Function: Mail
##### Todo:
########################################
package PhexProxy::Mail;
use PhexProxy::Time;
#use MIME::Lite; # perl -MCPAN -e 'force install "MIME::Lite"'
use strict;
# Variablendefinition
my $MailTo = 'thecerial@gmail.com';
my $MailTo2 = '', #'torsten.morgenroth@gmail.com';
my $MailFrom = 'root@zoozle.net';
my $MailSubject = 'PhexProxy::Mail';
my $MailBody = 'HOSTNAME: zoozle.net '; # later: bestimme den hostname und sende ihn mit
my $SmtpUser = "xxxx";
my $SmtpPass = "xxxx";
my $VERSION = '0.17.1';
sub new(){
my $self = bless {}, shift;
return $self;
}; # new(){}
sub SendNoHandyClientSocketMail(){
my $self = shift;
my $host = shift;
my $time = PhexProxy::Time->MySQLDateTime();
my $msg = MIME::Lite->new(
From => "servererror\@bitjoe.de",
To => "thecerial\@gmail.com",
Subject => "Paris Frontend Connection Down at [$time] on Server $host!",
Type => 'text/plain',
Data => "Paris Frontend Connection Down at [$time] on Server $host!",
... [truncated, 68 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "Mail.pm",
"description": "Perl module for Mail",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "3.0 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/Mail.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 Messages.pm (Perl) 11.6 KB 2024-08-08
Perl module for Messages
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Sebastian | modified 27.07.06 Torsten
##### CopyRight: BitJoe GmbH
##### LastModified 27.07.06
##### Function: Dateitypen definieren
##### Todo:
########################################
package PhexProxy::Messages;
use PhexProxy::Time;
use strict;
my $VERSION = '0.18';
my $TIME = PhexProxy::Time->new();
sub new(){
my $self = bless {}, shift;
$self->{'MessageHandler'} = $self->Messages();
$self->{'MessageHandlerEN'} = $self->MessagesEN();
return $self;
}; # new()
sub WelcomeMessageHandler(){
my $self = shift;
my $ResultHashRef = shift;
my $language = shift;
my $hc_contingent_volume_success = $ResultHashRef->{'searchcontingent'};
my $MessageHandlerString = "";
if ( $language eq "GER") {
$MessageHandlerString = "MessageHandler";
} elsif ( $language eq "EN" ) {
$MessageHandlerString = "MessageHandlerEN";
}
if ( $hc_contingent_volume_success > 4 ) {
return $self->{$MessageHandlerString}{'G5'};
} elsif ( $hc_contingent_volume_success == 4 ) {
return $self->{$MessageHandlerString}{'G4'};
... [truncated, 157 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "Messages.pm",
"description": "Perl module for Messages",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "11.6 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/Messages.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 Messages1.pm (Perl) 13.6 KB 2024-08-08
Perl module for Messages1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Sebastian | modified 27.07.06 Torsten
##### CopyRight: BitJoe GmbH
##### LastModified 27.07.06
##### Function: Dateitypen definieren
##### Todo:
########################################
package PhexProxy::Messages;
use PhexProxy::Time;
use strict;
my $VERSION = '0.18';
my $TIME = PhexProxy::Time->new();
sub new(){
my $self = bless {}, shift;
$self->{'MessageHandler'} = $self->Messages();
$self->{'MessageHandlerEN'} = $self->MessagesEN();
return $self;
}; # new()
sub WelcomeMessageHandler(){
my $self = shift;
my $ResultHashRef = shift;
my $language = shift;
my $hc_userType = $ResultHashRef->{'hc_userType'};
my $web_servicetype = $ResultHashRef->{'web_servicetype'};
my $web_flatrate_validUntil = $ResultHashRef->{'web_flatrate_validUntil'};
my $hc_contingent_volume_success = $ResultHashRef->{'hc_contingent_volume_success'};
my $MessageHandlerString = "";
if ( $language eq "GER") {
$MessageHandlerString = "MessageHandler";
} elsif ( $language eq "EN" ) {
$MessageHandlerString = "MessageHandlerEN";
}
### print "[$hc_userType] {$web_servicetype} $hc_contingent_volume_success - $web_flatrate_validUntil \n";
... [truncated, 215 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "Messages1.pm",
"description": "Perl module for Messages1",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "13.6 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/Messages1.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 Phex.pm (Perl) 7.9 KB 2024-08-08
Perl module for Phex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Sebastian Enger / B.Sc
##### CopyRight: BitJoe GmbH
##### LastModified 12.07.2006
##### Function: Mutella spezifische Funktionen
##### Todo:
########################################
package PhexProxy::Phex;
use PhexProxy::Time;
use Fcntl ':flock';
#use PhexProxy::SMS;
use PhexProxy::IO;
use strict;
# use Data::Dumper;
my $VERSION = '0.7 - 3.55 Uhr - 14.2.2008';
my $AlarmTimeout = 6;
my $PhexServerTimeout = 4; # Timeout fr einen Socket-open Request zum Phex Server Socket
# my $FLOCKINGFILE = "/server/phexproxy/tmp/flocking_$$.flock"; # eventuell spter mehrere flock dateien fr
# my $FLOCKINGFILE_DEL = "/server/phexproxy/tmp/flocking_DEL_$$.flock"; # eventuell spter mehrere flock dateien fr - 20.2.2008: diese datei nicht verwenden
my $SIZEFILTER = "/server/phexproxy/filter/sizefilter.dat"; # dieser String steht auch nochtmal in Filter.pm und muss dort auch angepasst werden
my $SizeFilerContentArrayRef = PhexProxy::IO->ReadFileIntoArray( $SIZEFILTER );
use constant TOKENPATH => "/server/phexproxy/PhexProxy/token.conf";
use constant CRLF => "\r\n";
my $TIME = PhexProxy::Time->new();
#my $SMS = PhexProxy::SMS->new();
################
### Flocking Algorithmus
###
### 1. ffne $FLOCKINGFILE als WH
### 2. flocke exclusive WH
### 3. Socket ffnen
### 4. Befehl ber Socket schreiben
### 5. Socket schlieen
### 6. X MS warten mittels select (undef, undef, undef, rand(0.2) );
### 7.) flock lsen
### 8. Datei schlieen
###
################
... [truncated, 252 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "Phex.pm",
"description": "Perl module for Phex",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "7.9 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/Phex.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 PhexSortRank.pm (Perl) 23.3 KB 2024-08-08
Perl module for PhexSortRank
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl
package PhexProxy::PhexSortRank;
# Sort::Key - nkeysort - similar to keysort but compares the keys numerically instead of as strings.
# use PhexProxy::SortArray qw( Sort_Table );
# use Sort::Array qw( Sort_Table );
# use String::Approx 'amatch';
# use Sort::Key qw(keysort nkeysort ikeysort ukeysort); # perl -MCPAN -e 'force install "Sort::Key"'
# use PhexProxy::IPFilter;
# use Math::BigFloat; # perl -MCPAN -e 'force install "Math::BigFloat"'
# use PhexProxy::Filter;
# use Benchmark;
# use Data::Dumper;
# use POSIX qw(ceil);
### use URI::Escape qw(uri_escape);
use PhexProxy::CheckSum;
# use Data::Dumper;
# use HTML::Entities;
use strict;
######################
##### Idee: Alarm Timeout Einbauen: wenn die Funktion zu lange braucht, dann einfach rasch alles beenden und fix 10 ergebnisse zusammenstellen und diese dann zurckliefern
######################
my $MaxSourcesForOneHit = 30; # org: 30;
# speed related Things
my $SpeedRankingPointsforModem = 0.85;
my $SpeedRankingPointsforISDN = 1.05;
my $SpeedRankingPointsforDSLLite = 1.25;
my $SpeedRankingPointsforDSL1000 = 1.35;
my $SpeedRankingPointsforDSL2000 = 1.4;
my $SpeedRankingPointsforDSL3000 = 1.45;
my $SpeedRankingPointsforDSL4000 = 1.5;
my $SpeedRankingPointsforDSL6000 = 1.55;
my $SpeedRankingPointsforT1 = 1.6;
my $SpeedRankingPointsforDSL16000 = 1.65;
my $SpeedRankingPointsforT3 = 1.7;
my $IsSpeedModem = 5; # alles in Kbyte/s
my $IsSpeedISDN = 8;
my $IsSpeedDSLLite = 56;
my $IsSpeedDSL1000 = 128;
my $IsSpeedDSL2000 = 256;
my $IsSpeedDSL3000 = 376;
... [truncated, 655 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "PhexSortRank.pm",
"description": "Perl module for PhexSortRank",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "23.3 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/PhexSortRank.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 ResultCache.pm (Perl) 3.9 KB 2024-08-08
Perl module for ResultCache
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Sebastian Enger / B.Sc
##### CopyRight: BitJoe GmbH
##### LastModified 11.07.2006
##### Function: Cache die Results
##### Todo: readCache(){}
########################################
# cache fr cache.bild:mp3:java eine separate datei anlegen und beim cacheRead auch nur aus dieser datei lesen
package PhexProxy::ResultCache;
use PhexProxy::IO;
use IO::Handle;
use strict;
my $VERSION = '0.18.1';
my $CACHEPATH = '/server/phexproxy/cache';
my $CACHEVALIDTIME = 168; # in hours = 7 tage
sub new() {
my $self = bless {}, shift;
return $self;
}; # new()
sub readCache(){
my $self = shift;
my $ReadCacheFrom = shift || 0;
my $ReadCacheTo = shift || 10;
my $SearchQuery = shift;
my $FileTypeHashRef = shift;
# my $KeyCount = keys( %{$FileTypeHashRef} );
# my $FileTyp = $FileTypeHashRef->{$KeyCount};
my $FileTyp = $FileTypeHashRef->{ 1 };
$SearchQuery =~ s/\s/\+/g;
$SearchQuery = lc($SearchQuery);
my $SendString = '';
... [truncated, 73 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "ResultCache.pm",
"description": "Perl module for ResultCache",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "3.9 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/ResultCache.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 SMS.pm (Perl) 2.3 KB 2024-08-08
Perl module for SMS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Sebastian Enger / B.Sc
##### CopyRight: BitJoe GmbH
##### LastModified 11.07.2006
##### Function: SMS
##### Todo:
########################################
package PhexProxy::SMS;
use LWP::Simple;
use strict;
my @Admins = ("01607979247"); # Admins to Inform
sub new() {
my $self = bless {}, shift;
return $self;
}; # new()
sub SendCustomSMS(){
my $self = shift;
my $SmsMessage = shift;
foreach my $PhoneNumber ( @Admins ) {
my $Absender = "BJParis";
my $HiddenGateWayKey = "0efe39e0c019fd11f32044749dbb1ab2";
$SmsMessage =~ s/([^A-Za-z0-9])/sprintf("%%%02X", ord($1))/seg; # perl urlencode()
my $QueryUri = "http://gateway.mobilant.net/?key=" . $HiddenGateWayKey . "&handynr=" . $PhoneNumber . "&text=" . $SmsMessage . "&kennung=". $Absender;
my $get = get($QueryUri);
}; # foreach my $entry ( @Admins ) {
return 1;
}; # sub SendParisDownSMS(){
sub SendHandyClientSocketDownSMS(){
my $self = shift;
my $ServerDownIPAdresse = shift;
... [truncated, 39 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "SMS.pm",
"description": "Perl module for SMS",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "2.3 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/SMS.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 SQL.pm (Perl) 6.5 KB 2024-08-08
Perl module for SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Sebastian Enger / B.Sc
##### CopyRight: BitJoe GmbH
##### LastModified 11.07.2006
##### Function: SQL Verbindungen aufbauen
##### Todo:
########################################
package PhexProxy::SQL;
use DBI;
use strict; no strict 'subs';
use PhexProxy::Time;
use DB_File;
use IO::Socket;
use LWP::UserAgent;
use HTTP::Request;
my $VERSION = '1.1 since 24.08.2009 with sql balancing!';
### later: alles aus config lesen
#my $HOST = "87.106.63.182"; # bitjoe.de
#my $DB = "bitjoe";
#my $USER = "bitjoe7724717820";
#my $PASS = "bj236xw23571sdGdhS4522dSfH2";
#my $HOST = "77.247.178.21"; # bitjoe.de
my $DB = "bitjoe";
my $USER = "root";
my $PASS = "rouTer99";
my $ServerSocket;
my %CurrentSearchRequests = ();
my $ServerStatus = {};
my @admin_sms_deliver = ('0041789354830'); # diese handynr sollen error sms bekommen
my $MaxFileSizeOfWebDocument = (5 * 1024 * 1024); # 5mb
my $MaxRedirectRequests = 0;
my $AuthorEmail = 'test@cpan.org';
my $Timeout = 5;
my $CrawlDelay = int(rand(3));
my $SMS_DB = "/server/phexproxy/tmp/SMSDB.db"; unlink $SMS_DB || system("/bin/rm -rf $SMS_DB");
my $SendSmsDelay = 300; # nur alle 300 sekundn soll eine sms gesendet werden
my $MainSqlServer = "77.247.178.21"; # read write sql server
my %SqlHosts = ( # hier stehen die sql server drinne, die zum bitjoe balancing gehren
"77.247.178.21" => "3306", # sql Yeon server - 77.247.178.21
... [truncated, 213 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "SQL.pm",
"description": "Perl module for SQL",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "6.5 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/SQL.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 SQL1.pm (Perl) 942 bytes 2024-08-08
Perl module for SQL1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Sebastian Enger / B.Sc
##### CopyRight: BitJoe GmbH
##### LastModified 11.07.2006
##### Function: SQL Verbindungen aufbauen
##### Todo:
########################################
package PhexProxy::SQL;
use DBI;
use strict;
my $VERSION = '0.17';
### later: alles aus config lesen
#my $HOST = "87.106.63.182"; # bitjoe.de
#my $DB = "bitjoe";
#my $USER = "bitjoe7724717820";
#my $PASS = "bj236xw23571sdGdhS4522dSfH2";
my $HOST = "77.247.178.21"; # bitjoe.de
my $DB = "bitjoe";
my $USER = "root";
my $PASS = "rouTer99";
sub new(){
my $self = bless {}, shift;
return $self;
}; # new()
sub SQLConnect(){
my $self = shift;
# my $drh = DBI->install_driver("mysql");
my $dbh = DBI->connect("DBI:mysql:database=$DB;host=$HOST", "$USER", "$PASS", {'RaiseError' => 0});
return $dbh;
}; # sub SQLConnect(){}
return 1;
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "SQL1.pm",
"description": "Perl module for SQL1",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "942 bytes",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/SQL1.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 SortArray.pm (Perl) 11.0 KB 2024-08-08
Perl module for SortArray
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | # Sort::Array.pm
#
# Copyright (c) 2001 Michael Diekmann <michael.diekmann@undef.de>. All rights
# reserved. This program is free software; you can redistribute it and/or
# modify it under the same terms as Perl itself.
# Documentation could be found at the bottom or use (after install):
# > perldoc Sort::Array
package PhexProxy::SortArray;
require 5.003_03;
require Exporter;
use strict;
use vars qw(@EXPORT_OK @ISA $VERSION $error);
@ISA = qw(Exporter);
# we export nothing by default :)
@EXPORT_OK = qw(
Sort_Table
Discard_Duplicates
);
$VERSION = '0.26';
#///////////////////////////////////////////////////////////////////////#
# #
#///////////////////////////////////////////////////////////////////////#
sub Discard_Duplicates(){
# Get the args and put them into a Hash.
my (%arg) = @_;
$error = 0;
# Check for content that should be sorted,
# else return error-code.
if (scalar(@{$arg{data}}) == 0) {
$error = 104;
return undef;
}
my $use_warn = 0;
# Turn warnings off, because we do first a '<=>' and if that
# fails, we do a 'cmp'. And then a warning comes up.
# After working, we turn $^W to the same as before.
if ($^W) {
$use_warn = $^W;
$^W = 0;
}
... [truncated, 489 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "SortArray.pm",
"description": "Perl module for SortArray",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "11.0 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/SortArray.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
🐪 Time.pm (Perl) 1.9 KB 2024-08-08
Perl module for Time
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 | #!/usr/bin/perl -I/server/phexproxy/PhexProxy
#########################################
##### Author: Sebastian Enger / B.Sc
##### CopyRight: BitJoe GmbH
##### LastModified 11.07.2006
##### Function: Zeitspezifische Daten
##### Todo:
########################################
package PhexProxy::Time;
#use PhexProxy::SQL;
use strict;
my $VERSION = '0.17.1';
my $LicenceIsValid = "8"; # SELECT DATE_ADD( CURDATE( ) , INTERVAL 8 DAY );
# SELECT DATE_ADD( CURDATE( ) , INTERVAL $LicenceIsValid DAY )
sub new() {
my $self = bless {}, shift;
return $self;
}; # new()
sub GetCurrentTimeStamp(){
my $self = shift;
return time();
}; # sub GetCurrentTimeStamp(){}
sub MySQLDateTime(){
my ( $sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst ) = localtime(time);
$year = $year+1900;
$mon = $mon + 1;
if ( length($mon) == 1 ) {
$mon = "0". $mon;
};
if ( length($mday) == 1 ) {
$mday = "0". $mday;
};
if ( length($sec) == 1 ) {
$sec = "0". $sec;
};
... [truncated, 47 more lines] ...
|
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "Time.pm",
"description": "Perl module for Time",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "1.9 KB",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/Time.pm",
"encodingFormat": "text/x-perl",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Perl"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}
📄 token.conf (Text) 51 bytes 2024-08-08
Source code file for token
{
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
"name": "token.conf",
"description": "Source code file for token",
"dateModified": "2024-08-08",
"dateCreated": "2025-03-23",
"contentSize": "51 bytes",
"contentUrl": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/token.conf",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "Text"
},
"codeRepository": "https://www.artikelschreiber.com/opensource/bitjoe/PhrexProxy/PhexProxy/"
}