Branch Coverage

blib/lib/Mail/Sendmail.pm
Criterion Covered Total %
branch 40 170 23.5


line true false branch
92 0 0 if $@
93 0 0 $@ ? :
100 0 0 if $@
101 0 0 $@ ? :
107 0 0 if length $pass > $size
151 2 0 if ($TZ eq '')
187 0 0 if ($Mail::Sendmail::server_reply)
189 0 0 if $^W
199 1 14 ref $_[$i] ? :
200 0 15 if ($Mail::Sendmail::mailcfg{'debug'} > 5)
201 0 0 if (length $$data < 500) { }
208 0 15 unless print S $$data
219 0 16 if $Mail::Sendmail::mailcfg{'debug'} > 5
220 0 16 if (/^[45]/ or not $_)
232 0 8 if ($k =~ /[A-Z]/)
240 0 0 if (not $k and $^W)
252 4 1 unless ($k =~ /^(Message|Body|Text)$/i)
260 1 0 if $smtp and $Mail::Sendmail::mailcfg{'smtp'}[0] ne $smtp
287 0 1 unless ($fromaddr =~ /$Mail::Sendmail::address_rx/)
302 1 0 unless ($mail{'Content-Transfer-Encoding'} or $mail{'Content-Type'} =~ /multipart/io)
305 1 0 if ($Mail::Sendmail::mailcfg{'mime'}) { }
311 0 0 if ($mail{'Message'} =~ /[\x80-\xFF]/o)
313 0 0 if $^W
335 0 1 unless (@recipients)
345 0 1 unless (socket S, 2, 1, scalar getprotobyname 'tcp')
349 0 1 if $Mail::Sendmail::mailcfg{'debug'} > 1
353 0 1 $server =~ s/:(\d+)$//o ? :
357 0 1 unless ($smtpaddr)
368 0 0 if $Mail::Sendmail::mailcfg{'debug'} > 1
369 0 0 if $Mail::Sendmail::mailcfg{'debug'} > 1
373 1 0 if ($connected) { }
374 0 1 if $Mail::Sendmail::mailcfg{'debug'} > 3
379 0 0 if $Mail::Sendmail::mailcfg{'debug'} > 1
384 0 1 unless ($connected)
399 0 1 unless socket_read()
401 0 1 unless socket_write("EHLO $localhost$CRLF")
404 1 0 if ($ehlo) { }
409 10 0 if $k
414 0 0 unless socket_write("HELO $localhost$CRLF")
418 0 1 if ($auth)
419 0 0 if $Mail::Sendmail::mailcfg{'debug'} > 4
425 0 0 if (@methods) { }
428 0 0 if (exists $$auth{'pass'})
433 0 0 unless _require_base64()
434 0 0 if ($method eq 'LOGIN') { }
0 0 elsif ($method eq 'PLAIN') { }
0 0 elsif ($method eq 'CRAM-MD5') { }
0 0 elsif ($method eq 'DIGEST-MD5') { }
435 0 0 if $Mail::Sendmail::mailcfg{'debug'} > 9
436 0 0 unless socket_write("AUTH LOGIN$CRLF")
438 0 0 unless socket_read()
440 0 0 unless socket_write(encode_base64($$auth{'user'}, $CRLF))
442 0 0 unless socket_read()
444 0 0 unless socket_write(encode_base64($$auth{'password'}, $CRLF))
446 0 0 unless socket_read()
450 0 0 if $Mail::Sendmail::mailcfg{'debug'} > 9
451 0 0 unless socket_write('AUTH PLAIN ' . encode_base64(join("\000", $$auth{'user'}, $$auth{'user'}, $$auth{'password'}), $CRLF))
455 0 0 unless socket_read()
459 0 0 unless _require_md5()
460 0 0 if $Mail::Sendmail::mailcfg{'debug'} > 9
461 0 0 unless socket_write("AUTH CRAM-MD5$CRLF")
467 0 0 unless socket_write(encode_base64("$$auth{'user'} $response", $CRLF))
469 0 0 unless socket_read()
473 0 0 unless _require_md5()
474 0 0 if $Mail::Sendmail::mailcfg{'debug'} > 9
475 0 0 unless socket_write("AUTH DIGEST-MD5$CRLF")
480 0 0 if $Mail::Sendmail::mailcfg{'debug'} > 10
482 0 0 if $Mail::Sendmail::mailcfg{'debug'} > 10
483 0 0 unless socket_write(encode_base64($response, ''), $CRLF)
487 0 0 if ($status =~ /^3/)
488 0 0 unless socket_write($CRLF)
490 0 0 unless socket_read()
501 0 0 if ($$auth{'required'}) { }
510 0 1 unless socket_write("MAIL FROM:<$fromaddr>$CRLF")
512 0 1 unless socket_read()
517 0 1 unless socket_write("RCPT TO:<$to>$CRLF")
519 1 0 if (socket_read()) { }
527 0 1 unless ($to_ok)
533 0 1 unless socket_write("DATA$CRLF")
535 0 1 unless socket_read()
540 1 7 if $header eq 'Message'
542 0 7 unless socket_write("${header}: $mail{$header}$CRLF")
552 0 1 unless socket_write($CRLF, \$mail{'Message'}, "$CRLF.$CRLF")
554 0 1 unless socket_read()
559 0 1 unless socket_write("QUIT$CRLF")