Add ARM files
[dh-make-perl] / dev / arm / libnet-ssleay-perl / libnet-ssleay-perl-1.35 / debian / libnet-ssleay-perl / usr / lib / perl5 / auto / Net / SSLeay / tcp_write_all.al
1 # NOTE: Derived from blib/lib/Net/SSLeay.pm.
2 # Changes made here will be lost when autosplit is run again.
3 # See AutoSplit.pm.
4 package Net::SSLeay;
5
6 #line 1939 "blib/lib/Net/SSLeay.pm (autosplit into blib/lib/auto/Net/SSLeay/tcp_write_all.al)"
7 sub tcp_write_all {
8     my ($data_ref, $errs);
9     if (ref $_[0]) {
10         $data_ref = $_[0];
11     } else {
12         $data_ref = \$_[0];
13     }
14     my ($wrote, $written, $to_write) = (0,0, blength($$data_ref));
15     my $vm = $trace>2 && $linux_debug ?
16         (split ' ', `cat /proc/$$/stat`)[22] : 'vm_unknown';
17     warn "  write_all VM at entry=$vm to_write=$to_write\n" if $trace>2;
18     while ($to_write) {
19         warn "partial `$$data_ref'\n" if $trace>3;
20         $wrote = syswrite(SSLCAT_S, $$data_ref, $to_write, $written);
21         if (defined $wrote && ($wrote > 0)) {  # write_partial can return -1
22             $written += $wrote;
23             $to_write -= $wrote;
24         } elsif (!defined($wrote)) {
25             warn "tcp_write_all: $!";
26             return (wantarray ? (undef, "$!") : undef);
27         }
28         $vm = $trace>2 && $linux_debug ?
29             (split ' ', `cat /proc/$$/stat`)[22] : 'vm_unknown';
30         warn "  written so far $wrote:$written bytes (VM=$vm)\n" if $trace>2;
31     }
32     return wantarray ? ($written, '') : $written;
33 }
34
35 # end of Net::SSLeay::tcp_write_all
36 1;