Update of /cvsroot/popfile/engine/Proxy
In directory sc8-pr-cvs1:/tmp/cvs-serv28226/Proxy
Modified Files:
NNTP.pm POP3.pm SMTP.pm
Log Message:
Flush the child pipes used to send messages up from child proxies so that when they are non-forked we have data to pull out when yield is called. This means that the messages will get dealt with at once (i.e. they will get queued in MQ) and prevent the pipe getting full which messes up on Windows
Index: NNTP.pm
===================================================================
RCS file: /cvsroot/popfile/engine/Proxy/NNTP.pm,v
retrieving revision 1.18
retrieving revision 1.19
diff -C2 -d -r1.18 -r1.19
*** NNTP.pm 10 Sep 2003 18:26:29 -0000 1.18
--- NNTP.pm 11 Sep 2003 20:51:57 -0000 1.19
***************
*** 253,256 ****
--- 253,257 ----
print $pipe "CLASS:$class$eol";
print $pipe "NEWFL:$history_file$eol";
+ flush $pipe;
$self->yield_( $ppipe, $pid );
}
***************
*** 336,339 ****
--- 337,341 ----
close $client;
print $pipe "CMPLT$eol";
+ flush $pipe;
$self->yield_( $ppipe, $pid );
close $pipe;
Index: POP3.pm
===================================================================
RCS file: /cvsroot/popfile/engine/Proxy/POP3.pm,v
retrieving revision 1.75
retrieving revision 1.76
diff -C2 -d -r1.75 -r1.76
*** POP3.pm 10 Sep 2003 18:26:29 -0000 1.75
--- POP3.pm 11 Sep 2003 20:51:57 -0000 1.76
***************
*** 177,181 ****
--- 177,183 ----
if ( $1 ne '' ) {
print $pipe "LOGIN:$4$eol";
+ flush $pipe;
$self->yield_( $ppipe, $pid );
+
if ( $mail = $self->verify_connected_( $mail, $client, $1, $3 || 110 ) ) {
***************
*** 337,340 ****
--- 339,343 ----
print $pipe "CLASS:$class$eol";
print $pipe "NEWFL:$history_file$eol";
+ flush $pipe;
$self->yield_( $ppipe, $pid );
}
***************
*** 435,438 ****
--- 438,442 ----
print $pipe "CLASS:$class$eol";
+ flush $pipe;
$self->yield_( $ppipe, $pid );
}
***************
*** 455,458 ****
--- 459,463 ----
print $pipe "NEWFL:$history_file$eol";
print $pipe "CLASS:$class$eol";
+ flush $pipe;
$self->yield_( $ppipe, $pid );
***************
*** 497,500 ****
--- 502,506 ----
close $client;
print $pipe "CMPLT$eol";
+ flush $pipe;
$self->yield_( $ppipe, $pid );
close $pipe;
Index: SMTP.pm
===================================================================
RCS file: /cvsroot/popfile/engine/Proxy/SMTP.pm,v
retrieving revision 1.19
retrieving revision 1.20
diff -C2 -d -r1.19 -r1.20
*** SMTP.pm 10 Sep 2003 18:26:29 -0000 1.19
--- SMTP.pm 11 Sep 2003 20:51:57 -0000 1.20
***************
*** 231,234 ****
--- 231,235 ----
print $pipe "CLASS:$class$eol";
print $pipe "NEWFL:$history_file$eol";
+ flush $pipe;
$self->yield_( $ppipe, $pid );
***************
*** 267,270 ****
--- 268,272 ----
close $client;
print $pipe "CMPLT$eol";
+ flush $pipe;
$self->yield_( $ppipe, $pid );
close $pipe;
|