+++ /dev/null
-#!/usr/bin/perl
-################################################################################
-#
-# File: $RCSfile: nuke,v $
-# Revision: $Revision: 1.1 $
-# Description: Displays list of email addresses based on report type.
-# Author: Andrew@DeFaria.com
-# Created: Fri Nov 29 14:17:21 2002
-# Modified: $Date: 2013/06/12 14:05:47 $
-# Language: perl
-#
-# (c) Copyright 2000-2006, Andrew@DeFaria.com, all rights reserved.
-#
-################################################################################
-use strict;
-use warnings;
-
-use FindBin;
-
-use lib $FinBin::Bin, '/opt/clearscm/lib';
-
-use MAPS;
-
-use Display;
-
-# Just me
-my $userid = "andrew";
-
-sub GetMailLoops {
- my $type = "mailloop";
-
- my @emails;
-
- # Hack: ReturnEmails normally wants a start and end range of what
- # emails to get. We really want all of them so let's just use 10000.
- @emails = ReturnEmails $userid, $type, 0, 10000;
-
- my %senders;
-
- foreach (@emails) {
- my $sender = shift @{$_};
- my @msgs = @{$_};
- my ($pattern, $domain) = split (/@/, $sender);
-
- if (scalar @msgs > 0) {
- $senders{$domain} = scalar @msgs;
- } # if
- } # foreach
-
- return %senders;
-} # GetMailLoops
-
-sub Add2List {
- my $type = shift;
- my @items = @_;
-
- my $sender = "";
- my $nextseq = MAPSDB::GetNextSequenceNo $userid, $type;
-
- foreach (@items) {
- my $domain = "\@$_";
-
- display_nolf "Adding $domain to null list ($nextseq)...";
-
- if (OnNulllist $domain) {
- display_nolf " Already on list";
- DeleteLog $domain;
- display " - cleaned";
- } else {
- Add2Nulllist $domain, $userid, "";
- display " done";
-
- # Now remove this entry from the other lists (if present)
- foreach my $otherlist ("white", "black") {
- my $sth = FindList $otherlist, $domain;
- my ($sequence, $count);
- ($_, $_, $_, $_, $_, $sequence) = GetList $sth;
- if (defined $sequence) {
- $count = DeleteList $otherlist, $sequence;
- } # if
- } # foreach
- } # if
- $nextseq++;
- } # while
-} # Add2List
-
-# Main
-
-# Set no output buffering
-$| = 1;
-
-# Let's be nice
-setpriority 0, 0, 10;
-
-SetContext $userid;
-
-my %senders = GetMailLoops;
-
-foreach (sort (keys (%senders))) {
- print "\@$_\n";
-} # foreach
-
-if (scalar keys (%senders) eq 0) {
- display "No mailloops detected";
- exit 0;
-} # if
-
-print "Nuke these domains? ";
-$_ = <STDIN>;
-
-if (/y/i) {
- Add2List "null", (sort (keys (%senders)));
-} # if
-
-exit;
+++ /dev/null
-#!/usr/bin/perl
-################################################################################
-#
-# File: $RCSfile: weed,v $
-# Revision: $Revision: 1.1 $
-# Description: Weed out obvious spams from the mail store
-# Author: Andrew@DeFaria.com
-# Created: Mon Feb 19 22:37:30 CST 2007
-# Modified: $Date: 2013/06/12 14:05:47 $
-# Language: perl
-#
-# (c) Copyright 2007, Andrew@DeFaria.com, all rights reserved.
-#
-################################################################################
-use strict;
-use warnings;
-
-use lib $FindBin::Bin, '/opt/clearscm/lib';
-
-use Getopt::Long;
-
-use MAPS;
-
-use Display;
-use Utils;
-
-my $mailstore = "/var/spool/exim/input";
-
-sub Usage {
- display "Usage: weed: [ -v|erbose ] [ -d|ebug ]\n";
- display "Where:";
- display " -v|erbose\tTurn on verbose mode (default off)";
- display " -d|ebug\tTurn on debug mode (default off)";
- display " -u|sage\tDisplay this usage message";
- exit 1;
-} # usage
-
-# Just me
-my $userid = "andrew";
-
-my ($username, $user_email) = SetContext $userid;
-
-sub GetEmailsInSpool () {
- my %emails;
-
- # Open mailstore directory. Note must have read access to this
- # directory and the files in this directory. IOW we probably need to
- # be running as root. Also, the MTA should not be running because we
- # may be removing files...
- opendir MAILSTORE, $mailstore
- or error "Unable to open mailstore $mailstore - $!", 1;
-
- # Weed out . and ..
- my @msgs = grep {!/^\./} readdir MAILSTORE;
-
- # Don't need the directory opened anymore...
- closedir MAILSTORE;
-
- # Select only the "-H" header files...
- @msgs = grep {/-H$/} @msgs;
-
- # Now search for "From:" in the header files, extract email address
- # and put into return hash.
- my $msg_nbr;
-
- foreach (@msgs) {
- $msg_nbr = $_;
-
- my @lines = ReadFile "$mailstore/$msg_nbr";
-
- foreach (@lines) {
- if (/From:\s*(.*)/) {
- my $sender = $1;
-
- if ($sender =~ /<(\S*)@(\S*)>/) {
- $sender = lc ("$1\@$2");
- } elsif ($sender =~ /(\S*)@(\S*)\ /) {
- $sender = lc ("$1\@$2");
- } elsif ($sender =~ /(\S*)@(\S*)/) {
- $sender = lc ("$1\@$2");
- } # if
-
- $emails {$msg_nbr} = $sender;
- } # if
- } # foreach
- } # foreach
-
- verbose scalar (keys (%emails)) . " emails to process";
-
- return %emails;
-} # GetEmailsInSpool
-
-sub RemoveEmailInSpool ($) {
- my ($msg_nbr) = @_;
-
- my $datafile = "$mailstore/${msg_nbr}-D";
- my $header_file = "$mailstore/${msg_nbr}-H";
- my $j_file = "$mailstore/${msg_nbr}-J";
-
- if (-f $datafile) {
- unlink $datafile
- or error "Unable to unlink $datafile - $!";
- } # if
-
- if (-f $header_file) {
- unlink $header_file
- or error "Unable to unlink $header_file - $!";
- } # if
-
- if (-f $j_file) {
- unlink $j_file
- or error "Unable to unlink $j_file - $!";
- } # if
-} # RemoveEmailInSpool
-
-sub FilterEmails (%) {
- my %emails= @_;
-
- my $removed = 0;
-
- foreach (sort (keys (%emails))) {
- my $msg_nbr;
-
- if (/(\S+)-H$/) {
- $msg_nbr = $1;
- } # if
-
- my $sender = $emails {"${msg_nbr}-H"};
-
- if ($sender eq "maps\@defaria.com" ||
- $sender eq "mailer-daemon\@defaria.com" ||
- $sender =~ /^defaria.*\@defaria.com$/) {
- verbose "Removing email $msg_nbr with sender of $sender";
- RemoveEmailInSpool $msg_nbr;
- $removed++;
-
-# Need to get $sender_long. Should call ReadMsg from maps. Have to
-# reorganize how this program flows...
-#
-# } elsif ($sender eq $user_email and
-# (lc ($sender_long) !~ lc ("\"$username\" <$user_email>") and
-# lc ($sender_long) !~ lc ("$username <$user_email>"))) {
-# RemoveEmailInSpool $msg_nbr;
-# $removed++;
- } elsif (OnNulllist $sender) {
- verbose "Nulllist $msg_nbr ($sender)";
-
- Nulllist $sender;
- RemoveEmailInSpool $msg_nbr;
- $removed++;
- } # if
- } # foreach
-
- return $removed;
-} # FilterEmails
-# Main
-
-my %opts;
-my $result = GetOptions (\%opts,
- "usage" => sub { Usage },
- "verbose" => sub { set_verbose },
- "debug" => sub { set_debug },
- );
-
-my $removed = FilterEmails (GetEmailsInSpool ());
-
-verbose "$removed emails removed from the mail store";
-
-exit;
function DBError ($msg, $statement) {
$errno = mysql_errno ();
$errmsg = mysql_error ();
- print "$msg\nError # $errno $errmsg";
- print "SQL Statement: $statement";
+ print "$msg<br>Error # $errno $errmsg";
+ print "<br>SQL Statement: $statement";
exit ($errno);
} // DBError
function OpenDB () {
- $db = mysql_pconnect ("localhost", "mapsadmin", "mapsadmin")
+ $db = mysql_connect ("mysql.clearscm.com", "adefaria_admin", "adefaria_admin")
or DBError ("OpenDB: Unable to connect to database server", "Connect");
- mysql_select_db ("MAPS")
- or DBError ("OpenDB: Unable to select MAPS database", "MAPS");
+ mysql_select_db ("adefaria_maps")
+ or DBError ("OpenDB: Unable to select MAPS database", "adefaria_maps");
} // OpenDB
function SetContext ($new_userid) {
<div class="copyright">
-Copyright © 2001-2013 - All rights reserved<br>
+Copyright © 2001-2014 - All rights reserved<br>
<a href="http://defaria.com/">Andrew DeFaria</a> <a
href="mailto:Andrew@DeFaria.com"><Andrew@DeFaria.com></a>
Redirect /resume /Resumes/Andrew
+ModPagespeed off
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="GENERATOR" content="Mozilla/4.61 [en] (Win98; U) [Netscape]">
<meta name="verify-v1" content="zmJmtrlhCOjGAk5w/JcwHaDsI3gxxRug9f4Vcl8YftU=" />
+ <meta name="google-site-verification" content="zkTOHKQ7DzVWZ4QCw33m9wJb6-FSRWEIlZhEKwVl6is" />
<title>ClearSCM</title>
--- /dev/null
+# Robots.txt: Configure which spiders can crawl this site
+
+# Why is this server crawling my site?
+User-agent: panscient_data_services.demarc.cogentco.com
+Disallow: /
+User-agent: Inktomi
+Disallow: /
+User-agent: BaiDuSpider
+Disallow: /
+User-agent: crawl
+Disallow: /
+User-agent: GigaBot
+Disallow: /
+User-agent: arks
+Disallow: /
+User-agent: EchO!
+Disallow: /
+User-agent: Viola
+Disallow: /
+User-agent: hit
+Disallow: /
+User-agent: WISENutbot
+Disallow: /
+User-agent: BBot
+Disallow: /
+User-agent: spider
+Disallow: /
+User-agent: psbot
+Disallow: /
+User-agent: SurveyBot
+Disallow: /
+
+# Allow all others not listed above
+User-agent: *
+Disallow: /Backgrounds
+Disallow: /bin
+Disallow: /binme
+Disallow: /doc
+Disallow: /Fonts
+Disallow: /gallery
+Disallow: /Icons
+Disallow: /Images
+Disallow: /INS
+Disallow: /Legal
+Disallow: /msoffice
+Disallow: /Music
+Disallow: /Olga
+Disallow: /Personal
+Disallow: /Pictures
+Disallow: /Senators
+Disallow: /Software
+Disallow: /Sounds
+Disallow: /Warsaw
+Disallow: /Wedding
+Disallow: /jinzora
+Disallow: /jinzora2
+Disallow: /blogs/Status
+Disallow: /IBM
+Disallow: /Broadcom