Re: [Koha] Configuring smtp mail server to work with Koha
Javed, (Please reply to my message rather than starting a new thread.) Could you please repeat this, but with a somewhat different sequence of commands? c C4::Letters::SendQueuedMessages c sendmail x \%mailcfg $mailcfg{'debug'} = 2 r Then post all of the output to the list. Paul. On Wed, Dec 06, 2017 at 11:47:18PM +0500, Javed Sahil wrote:
Hi Paul,
here are your required results.
-- javed@iolhost:~$ koha-shell library [sudo] password for javed: library-koha@iolhost:~$ cd /usr/share/koha/bin/cronjobs library-koha@iolhost:/usr/share/koha/bin/cronjobs$ perl -d process_message_queue.pl
Loading DB routines from perl5db.pl version 1.49 Editor support available.
Enter h or 'h h' for help, or 'man perldebug' for more help.
main::(process_message_queue.pl:32): 32: my $username = undef; DB<1> c C4::Letters::sendqueuedmessages Subroutine C4::Letters::sendqueuedmessages not found. DB<2> c C4::Letters::SendQueuedMessages C4::Letters::SendQueuedMessages(/usr/share/koha/lib/C4/Letters.pm:1032): 1032: my $params = shift; DB<3> c sendmail Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:170): 170: $error = ''; DB<4> t Trace = on DB<4> r Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:171): 171: $log = "Mail::Sendmail v. $VERSION - " . scalar(localtime()) . "\n"; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:173): 173: my $CRLF = "\015\012"; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:174): 174: local $/ = $CRLF; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:175): 175: local $\ = ''; # to protect us from outside settings Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:176): 176: local $_; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:178): 178: my (%mail, $k, 179: $smtp, $server, $port, $connected, $localhost, 180: $fromaddr, $recip, @recipients, $to, $header, 181: %esmtp, @wanted_methods, 182: ); Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:232): 232: foreach $k (keys %mailcfg) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:233): 233: if ($k =~ /[A-Z]/) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:233): 233: if ($k =~ /[A-Z]/) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:233): 233: if ($k =~ /[A-Z]/) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:233): 233: if ($k =~ /[A-Z]/) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:233): 233: if ($k =~ /[A-Z]/) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:233): 233: if ($k =~ /[A-Z]/) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:233): 233: if ($k =~ /[A-Z]/) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:233): 233: if ($k =~ /[A-Z]/) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:239): 239: while (@_) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:240): 240: $k = shift @_; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:241): 241: if (!$k and $^W) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:246): 246: $k = ucfirst lc($k); Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:248): 248: $k =~ s/\s*:\s*$//o; # kill colon (and possible spaces) at end, we add it later. Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:251): 251: $k =~ s/-(.)/"-" . uc($1)/ge; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:252): 252: $mail{$k} = shift @_; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:253): 253: if ($k !~ /^(Message|Body|Text)$/i) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:255): 255: $mail{$k} =~ s/\015\012?/\012/go; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:256): 256: $mail{$k} =~ s/\012/$CRLF/go; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:240): 240: $k = shift @_; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:241): 241: if (!$k and $^W) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:246): 246: $k = ucfirst lc($k); Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:248): 248: $k =~ s/\s*:\s*$//o; # kill colon (and possible spaces) at end, we add it later. Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:251): 251: $k =~ s/-(.)/"-" . uc($1)/ge; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:252): 252: $mail{$k} = shift @_; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:253): 253: if ($k !~ /^(Message|Body|Text)$/i) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:255): 255: $mail{$k} =~ s/\015\012?/\012/go; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:256): 256: $mail{$k} =~ s/\012/$CRLF/go; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:240): 240: $k = shift @_; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:241): 241: if (!$k and $^W) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:246): 246: $k = ucfirst lc($k); Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:248): 248: $k =~ s/\s*:\s*$//o; # kill colon (and possible spaces) at end, we add it later. Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:251): 251: $k =~ s/-(.)/"-" . uc($1)/ge; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:252): 252: $mail{$k} = shift @_; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:253): 253: if ($k !~ /^(Message|Body|Text)$/i) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:255): 255: $mail{$k} =~ s/\015\012?/\012/go; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:256): 256: $mail{$k} =~ s/\012/$CRLF/go; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:240): 240: $k = shift @_; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:241): 241: if (!$k and $^W) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:246): 246: $k = ucfirst lc($k); Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:248): 248: $k =~ s/\s*:\s*$//o; # kill colon (and possible spaces) at end, we add it later. Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:251): 251: $k =~ s/-(.)/"-" . uc($1)/ge; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:252): 252: $mail{$k} = shift @_; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:253): 253: if ($k !~ /^(Message|Body|Text)$/i) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:240): 240: $k = shift @_; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:241): 241: if (!$k and $^W) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:246): 246: $k = ucfirst lc($k); Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:248): 248: $k =~ s/\s*:\s*$//o; # kill colon (and possible spaces) at end, we add it later. Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:251): 251: $k =~ s/-(.)/"-" . uc($1)/ge; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:251): 251: $k =~ s/-(.)/"-" . uc($1)/ge; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:252): 252: $mail{$k} = shift @_; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:253): 253: if ($k !~ /^(Message|Body|Text)$/i) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:255): 255: $mail{$k} =~ s/\015\012?/\012/go; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:256): 256: $mail{$k} =~ s/\012/$CRLF/go; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:240): 240: $k = shift @_; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:241): 241: if (!$k and $^W) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:246): 246: $k = ucfirst lc($k); Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:248): 248: $k =~ s/\s*:\s*$//o; # kill colon (and possible spaces) at end, we add it later. Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:251): 251: $k =~ s/-(.)/"-" . uc($1)/ge; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:252): 252: $mail{$k} = shift @_; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:253): 253: if ($k !~ /^(Message|Body|Text)$/i) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:255): 255: $mail{$k} =~ s/\015\012?/\012/go; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:256): 256: $mail{$k} =~ s/\012/$CRLF/go; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:240): 240: $k = shift @_; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:241): 241: if (!$k and $^W) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:246): 246: $k = ucfirst lc($k); Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:248): 248: $k =~ s/\s*:\s*$//o; # kill colon (and possible spaces) at end, we add it later. Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:251): 251: $k =~ s/-(.)/"-" . uc($1)/ge; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:251): 251: $k =~ s/-(.)/"-" . uc($1)/ge; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:252): 252: $mail{$k} = shift @_; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:253): 253: if ($k !~ /^(Message|Body|Text)$/i) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:255): 255: $mail{$k} =~ s/\015\012?/\012/go; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:256): 256: $mail{$k} =~ s/\012/$CRLF/go; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:260): 260: $smtp = $mail{'Smtp'} || $mail{'Server'}; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:261): 261: unshift @{$mailcfg{'smtp'}}, $smtp if ($smtp and $mailcfg{'smtp'}->[0] ne $smtp); Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:267): 267: delete $mail{'Smtp'}; delete $mail{'Server'}; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:267): 267: delete $mail{'Smtp'}; delete $mail{'Server'}; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:269): 269: $mailcfg{'port'} = $mail{'Port'} || $mailcfg{'port'} || 25; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:270): 270: delete $mail{'Port'}; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:272): 272: my $auth = $mail{'Auth'}; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:273): 273: delete $mail{'Auth'}; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:277): 277: local $^W = 0; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:277): 277: local $^W = 0; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:278): 278: $mail{'Message'} = join("", $mail{'Message'}, $mail{'Body'}, $mail{'Text'}); Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:282): 282: delete $mail{'Body'}; delete $mail{'Text'}; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:282): 282: delete $mail{'Body'}; delete $mail{'Text'}; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:286): 286: $fromaddr = $mail{'Sender'} || $mail{'From'} || $mailcfg{'from'}; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:288): 288: unless ($fromaddr =~ /$address_rx/) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:291): 291: $fromaddr = $1; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:294): 294: $mail{Date} ||= time_to_date() ; Mail::Sendmail::time_to_date(/usr/share/perl5/Mail/Sendmail.pm:143): 143: my $time = $_[0] || time(); # default to now if no argument Mail::Sendmail::time_to_date(/usr/share/perl5/Mail/Sendmail.pm:145): 145: my @months = qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec); Mail::Sendmail::time_to_date(/usr/share/perl5/Mail/Sendmail.pm:146): 146: my @wdays = qw(Sun Mon Tue Wed Thu Fri Sat); Mail::Sendmail::time_to_date(/usr/share/perl5/Mail/Sendmail.pm:148): 148: my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) 149: = localtime($time); Mail::Sendmail::time_to_date(/usr/share/perl5/Mail/Sendmail.pm:151): 151: my $TZ = $mailcfg{'tz'}; Mail::Sendmail::time_to_date(/usr/share/perl5/Mail/Sendmail.pm:152): 152: if ( $TZ eq "" ) { Mail::Sendmail::time_to_date(/usr/share/perl5/Mail/Sendmail.pm:154): 154: my $offset = sprintf "%.1f", (timegm(localtime) - time) / 3600; Time::Local::timegm(/usr/share/perl/5.22/Time/Local.pm:98): 98: my ( $sec, $min, $hour, $mday, $month, $year ) = @_; Time::Local::timegm(/usr/share/perl/5.22/Time/Local.pm:100): 100: if ( $year >= 1000 ) { Time::Local::timegm(/usr/share/perl/5.22/Time/Local.pm:107): 107: unless ( $Options{no_range_check} ) { Time::Local::timegm(/usr/share/perl/5.22/Time/Local.pm:108): 108: croak "Month '$month' out of range 0..11" 109: if $month > 11 110: or $month < 0; Time::Local::timegm(/usr/share/perl/5.22/Time/Local.pm:112): 112: my $md = $MonthDays[$month]; Time::Local::timegm(/usr/share/perl/5.22/Time/Local.pm:113): 113: ++$md 114: if $month == 1 && _is_leap_year( $year + 1900 ); Time::Local::timegm(/usr/share/perl/5.22/Time/Local.pm:116): 116: croak "Day '$mday' out of range 1..$md" if $mday > $md or $mday < 1; Time::Local::timegm(/usr/share/perl/5.22/Time/Local.pm:117): 117: croak "Hour '$hour' out of range 0..23" if $hour > 23 or $hour < 0; Time::Local::timegm(/usr/share/perl/5.22/Time/Local.pm:118): 118: croak "Minute '$min' out of range 0..59" if $min > 59 or $min < 0; Time::Local::timegm(/usr/share/perl/5.22/Time/Local.pm:119): 119: croak "Second '$sec' out of range 0..59" if $sec >= 60 or $sec < 0; Time::Local::timegm(/usr/share/perl/5.22/Time/Local.pm:122): 122: my $days = _daygm( undef, undef, undef, $mday, $month, $year ); Time::Local::_daygm(/usr/share/perl/5.22/Time/Local.pm:75): 75: $Cheat{ pack( 'ss', @_[ 4, 5 ] ) } ||= do { Time::Local::_daygm(/usr/share/perl/5.22/Time/Local.pm:76): 76: my $month = ( $_[4] + 10 ) % 12; Time::Local::_daygm(/usr/share/perl/5.22/Time/Local.pm:77): 77: my $year = $_[5] + 1900 - int($month / 10); Time::Local::_daygm(/usr/share/perl/5.22/Time/Local.pm:79): 79: ( ( 365 * $year ) 80: + int( $year / 4 ) 81: - int( $year / 100 ) 82: + int( $year / 400 ) 83: + int( ( ( $month * 306 ) + 5 ) / 10 ) 84: ) 85: - $Epoc; Time::Local::timegm(/usr/share/perl/5.22/Time/Local.pm:124): 124: unless ($Options{no_range_check} or abs($days) < $MaxDay) { Time::Local::timegm(/usr/share/perl/5.22/Time/Local.pm:134): 134: return $sec 135: + $SecOff 136: + ( SECS_PER_MINUTE * $min ) 137: + ( SECS_PER_HOUR * $hour ) 138: + ( SECS_PER_DAY * $days ); Mail::Sendmail::time_to_date(/usr/share/perl5/Mail/Sendmail.pm:155): 155: my $minutes = sprintf "%02d", abs( $offset - int($offset) ) * 60; Mail::Sendmail::time_to_date(/usr/share/perl5/Mail/Sendmail.pm:156): 156: $TZ = sprintf("%+03d", int($offset)) . $minutes; Mail::Sendmail::time_to_date(/usr/share/perl5/Mail/Sendmail.pm:158): 158: return join(" ", 159: ($wdays[$wday] . ','), 160: $mday, 161: $months[$mon], 162: $year+1900, 163: sprintf("%02d:%02d:%02d", $hour, $min, $sec), 164: $TZ 165: ); Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:295): 295: $log .= "Date: $mail{Date}\n"; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:298): 298: $mail{'Message'} =~ s/\r\n/\n/go; # normalize line endings, step 1 of 2 (next step after MIME encoding) Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:300): 300: $mail{'Mime-Version'} ||= '1.0'; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:301): 301: $mail{'Content-Type'} ||= 'text/plain; charset="iso-8859-1"'; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:303): 303: unless ( $mail{'Content-Transfer-Encoding'} 304: || $mail{'Content-Type'} =~ /multipart/io ) 305: { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:306): 306: if ($mailcfg{'mime'}) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:307): 307: $mail{'Content-Transfer-Encoding'} = 'quoted-printable'; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:308): 308: $mail{'Message'} = encode_qp($mail{'Message'}); Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:321): 321: $mail{'Message'} =~ s/^\./\.\./gom; # handle . as first character Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:322): 322: $mail{'Message'} =~ s/\n/$CRLF/go; # normalize line endings, step 2. Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:326): 326: local $^W = 0; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:326): 326: local $^W = 0; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:327): 327: $recip = join(", ", $mail{To}, $mail{Cc}, $mail{Bcc}); Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:330): 330: delete $mail{'Bcc'}; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:332): 332: @recipients = (); Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:333): 333: while ($recip =~ /$address_rx/go) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:334): 334: push @recipients, $1; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:336): 336: unless (@recipients) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:341): 341: $localhost = hostname_long() || hostname() || 'localhost'; Sys::Hostname::Long::hostname_long(/usr/share/perl5/Sys/Hostname/Long.pm:161): 161: return $hostlong if defined $hostlong; # Cached copy (takes a while to lookup sometimes) Sys::Hostname::Long::hostname_long(/usr/share/perl5/Sys/Hostname/Long.pm:162): 162: my ($ip, $debug) = @_; Sys::Hostname::Long::hostname_long(/usr/share/perl5/Sys/Hostname/Long.pm:164): 164: $hostlong = dispatcher('uname'); Sys::Hostname::Long::dispatcher(/usr/share/perl5/Sys/Hostname/Long.pm:143): 143: my ($method, @rest) = @_; Sys::Hostname::Long::dispatcher(/usr/share/perl5/Sys/Hostname/Long.pm:144): 144: $lastdispatch = $method; Sys::Hostname::Long::dispatcher(/usr/share/perl5/Sys/Hostname/Long.pm:145): 145: return $dispatch{$method}{exec}(@rest); Sys::Hostname::Long::CODE(0x1dd7a50)(/usr/share/perl5/Sys/Hostname/Long.pm:51): 51: return eval { Sys::Hostname::Long::CODE(0x1dd7a50)(/usr/share/perl5/Sys/Hostname/Long.pm:52): 52: local $SIG{__DIE__}; Sys::Hostname::Long::CODE(0x1dd7a50)(/usr/share/perl5/Sys/Hostname/Long.pm:53): 53: require POSIX; Sys::Hostname::Long::CODE(0x1dd7a50)(/usr/share/perl5/Sys/Hostname/Long.pm:54): 54: (POSIX::uname())[1]; Sys::Hostname::Long::hostname_long(/usr/share/perl5/Sys/Hostname/Long.pm:166): 166: unless ($hostlong =~ m|.*\..*|) { Sys::Hostname::Long::hostname_long(/usr/share/perl5/Sys/Hostname/Long.pm:167): 167: if ($^O eq 'MacOS') { Sys::Hostname::Long::hostname_long(/usr/share/perl5/Sys/Hostname/Long.pm:193): 193: $hostlong = dispatcher('exec_hostname_fqdn'); Sys::Hostname::Long::dispatcher(/usr/share/perl5/Sys/Hostname/Long.pm:143): 143: my ($method, @rest) = @_; Sys::Hostname::Long::dispatcher(/usr/share/perl5/Sys/Hostname/Long.pm:144): 144: $lastdispatch = $method; Sys::Hostname::Long::dispatcher(/usr/share/perl5/Sys/Hostname/Long.pm:145): 145: return $dispatch{$method}{exec}(@rest); Sys::Hostname::Long::CODE(0x1de1810)(/usr/share/perl5/Sys/Hostname/Long.pm:77): 77: my $tmp; Sys::Hostname::Long::CODE(0x1de1810)(/usr/share/perl5/Sys/Hostname/Long.pm:78): 78: if ( $^O ne 'darwin' ) { Sys::Hostname::Long::CODE(0x1de1810)(/usr/share/perl5/Sys/Hostname/Long.pm:79): 79: if ($< == 0) { Sys::Hostname::Long::CODE(0x1de1810)(/usr/share/perl5/Sys/Hostname/Long.pm:82): 82: $tmp = `hostname --fqdn`; Sys::Hostname::Long::CODE(0x1de1810)(/usr/share/perl5/Sys/Hostname/Long.pm:84): 84: $tmp =~ tr/\0\r\n//d; Sys::Hostname::Long::CODE(0x1de1810)(/usr/share/perl5/Sys/Hostname/Long.pm:86): 86: return $tmp; Sys::Hostname::Long::hostname_long(/usr/share/perl5/Sys/Hostname/Long.pm:196): 196: if (!defined($hostlong) || $hostlong eq "") { Sys::Hostname::Long::hostname_long(/usr/share/perl5/Sys/Hostname/Long.pm:202): 202: if ($ip && !defined($hostlong) || $hostlong eq "") { Sys::Hostname::Long::hostname_long(/usr/share/perl5/Sys/Hostname/Long.pm:206): 206: warn "Sys::Hostname::Long - Last Dispatch method = $lastdispatch" if ($debug); Sys::Hostname::Long::hostname_long(/usr/share/perl5/Sys/Hostname/Long.pm:207): 207: return $hostlong; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:343): 343: foreach $server ( @{$mailcfg{'smtp'}} ) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:343): 343: foreach $server ( @{$mailcfg{'smtp'}} ) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:346): 346: unless ( socket S, AF_INET, SOCK_STREAM, scalar(getprotobyname 'tcp') ) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:350): 350: print "- trying $server\n" if $mailcfg{'debug'} > 1; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:352): 352: $server =~ s/\s+//go; # remove spaces just in case of a typo Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:354): 354: $port = ($server =~ s/:(\d+)$//o) ? $1 : $mailcfg{'port'}; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:355): 355: $smtp = $server; # save $server for use outside foreach loop Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:357): 357: my $smtpaddr = inet_aton $server; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:358): 358: unless ($smtpaddr) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:363): 363: my $retried = 0; # reset retries for each server Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:364): 364: while ( ( not $connected = connect S, pack_sockaddr_in($port, $smtpaddr) ) 365: and ( $retried < $mailcfg{'retries'} ) 366: ) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:367): 367: $retried++; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:368): 368: $error .= "connect to $server failed ($!)\n"; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:369): 369: print "- connect to $server failed ($!)\n" if $mailcfg{'debug'} > 1; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:370): 370: print "retrying in $mailcfg{'delay'} seconds...\n" if $mailcfg{'debug'} > 1; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:371): 371: sleep $mailcfg{'delay'}; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:374): 374: if ( $connected ) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:379): 379: $error .= "connect to $server failed\n"; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:380): 380: print "- connect to $server failed, next server...\n" if $mailcfg{'debug'} > 1; Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:381): 381: next; # next server Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:385): 385: unless ( $connected ) { Mail::Sendmail::sendmail(/usr/share/perl5/Mail/Sendmail.pm:386): 386: return fail("connect to $smtp failed ($!) no (more) retries!") Mail::Sendmail::fail(/usr/share/perl5/Mail/Sendmail.pm:187): 187: $error .= join(" ", @_) . "\n"; Mail::Sendmail::fail(/usr/share/perl5/Mail/Sendmail.pm:188): 188: if ($server_reply) { Mail::Sendmail::fail(/usr/share/perl5/Mail/Sendmail.pm:192): 192: close S; Mail::Sendmail::fail(/usr/share/perl5/Mail/Sendmail.pm:193): 193: return 0; scalar context return from Mail::Sendmail::sendmail: 0 C4::Letters::_send_message_by_email(/usr/share/koha/lib/C4/Letters.pm:1349): 1349: _set_message_status( { message_id => $message->{'message_id'}, 1350: status => 'failed' } ); DB<4>
Regards,
Javed Shoukat
Management Trainee Officer (MTO) Lahore University of Management Sciences (LUMS), Lahore.
Contact #: +92 300 6548748 <+92%20300%206548748> Email: javedshoukat900@gmail.com
-- Paul Hoffman <paul@flo.org> Software Manager Fenway Library Organization 550 Huntington Ave. Boston, MA 02115 (617) 442-2384 (FLO main number)
participants (1)
-
Paul Hoffman