On Thu, Mar 03, 2005 at 11:59:50AM +0100, Martin Waitz wrote:
> hoi :)
> 
> I just tested my little script that can send changesets per mail.
> okok, it still had a bug when I first tested it but that should be
> fixed now.

Greg has a similar script - could you take a look and tell
which is the better (and why). We only want one in the kernel.

It is attached.

        Sam
        
send_lots_of_emails.pl:

#!/usr/bin/perl -w

# horrible hack of a script to send off a large number of email messages, one 
after
# each other, all chained together.  This is useful for large numbers of 
patches.
#
# Use at your own risk!!!!
#
# greg kroah-hartman Jan 8, 2002
# <[EMAIL PROTECTED]>a
# 
# updated to give a valid subject and CC the owner of the patch - Jan 2005
# 

# change this to your email address.
$from = "SOMEONE <[EMAIL PROTECTED]>";

# modify these options each time you run the script
$to = 'linux-kernel@vger.kernel.org';
$initial_reply_to = '<[EMAIL PROTECTED]>';
$initial_subject = "[PATCH] XXX fixes for 2.6.11-rc3";
@files = (
"rev-1.2041.patch",
"rev-1.2042.patch",
"rev-1.2043.patch",
"rev-1.2044.patch",
"rev-1.2045.patch",
"rev-1.2046.patch",
);

use Mail::Sendmail;


# we make a "fake" message id by taking the current number
# of seconds since the beginning of Unix time and tacking on
# a random number to the end, in case we are called quicker than
# 1 second since the last time we were called.
sub make_message_id
{
        my $date = `date "+\%s"`;
        chomp($date);
        my $pseudo_rand = int (rand(4200));
        $message_id = "<[EMAIL PROTECTED]>";
        print "new message id = $message_id\n";
}



$cc = "";

sub send_message
{
        %mail = (       To      =>      $to,
                        From    =>      $from,
                        CC      =>      $cc,
                        Subject =>      $subject,
                        Message =>      $message,
                        'Reply-to'      =>      "Greg K-H <[EMAIL PROTECTED]>",
                        'In-Reply-To'   =>      $reply_to,
                        'Message-ID'    =>      $message_id,
                        'X-Mailer'      =>      "gregkh_patchbomb",
                );

        $mail{smtp} = 'localhost';

        sendmail(%mail) or die $Mail::Sendmail::error;

        print "OK. Log says:\n", $Mail::Sendmail::log;
        print "\n\n"
}


$reply_to = $initial_reply_to;
make_message_id();
$subject = $initial_subject;

foreach $t (@files) {
        $F = $t;
        open F or die "can't open file $t";

        # first line is the CC: list
        $cc = <F>;
        print "cc: $cc";
        
        # second line is the Subject:
        $subject = <F>;
        print "subject: $subject";

        undef $/;
        $message = <F>; # slurp the whole file in
        close F;
        $/ = "\n";
        send_message();

        # set up for the next message
        $reply_to = $message_id;
        make_message_id();
#       $subject = "Re: ".$initial_subject;
}

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to