HEX
Server: Apache
System: Linux pdx1-shared-a1-38 6.6.104-grsec-jammy+ #3 SMP Tue Sep 16 00:28:11 UTC 2025 x86_64
User: mmickelson (3396398)
PHP: 8.1.31
Disabled: NONE
Upload Files
File: //usr/share/doc/libnet-imap-simple-perl/examples/33189_attach.pl
#!/usr/bin/perl

# Warning: the returned message numbers are not always correct!

use strict;
use warnings;
use Email::Simple;
use lib 'inc', "blib/lib", "blib/arch";
use rebuild_iff_necessary;
use slurp_fetchmail;
use Net::IMAP::Simple;

my $show_subjects = $ENV{SHOW_SUBJECTS};

my $imap = slurp_fetchmail->login(use_ssl=>1);
my $folder = shift || 'INBOX';

my ( $newmsg, $unseenmsg, $oldmsg, $flags );

my $nm = $imap->select($folder);

print "folder $folder: $nm total";

$newmsg = $imap->recent;
$flags  = $imap->flags;

$unseenmsg = 0;
for ( my $i = 1 ; $i <= $nm ; $i++ ) {
    $unseenmsg++ if not $imap->seen($i);
}

$oldmsg = $unseenmsg - $newmsg;

print ", $newmsg new, $unseenmsg unseen, $oldmsg old\n";

# Print the subjects of all the messages in the INBOX
if ($show_subjects) {
    for ( my $i = 1 ; $i <= $nm ; $i++ ) {
        if ( $imap->seen($i) ) {
            print "  ";
        } else {
            print "N ";
        }

        my $es = Email::Simple->new( join '', @{ $imap->top($i) } );

        printf( "[%03d] %s\n", $i, $es->header('Subject') );
    }
}

$imap->quit;