ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/AnyEvent/lib/AnyEvent/Handle.pm
(Generate patch)

Comparing AnyEvent/lib/AnyEvent/Handle.pm (file contents):
Revision 1.182 by root, Thu Sep 3 12:35:01 2009 UTC vs.
Revision 1.183 by root, Thu Sep 3 12:45:35 2009 UTC

306 306
307BSD majorly fucked up the implementation of TCP urgent data. The result 307BSD majorly fucked up the implementation of TCP urgent data. The result
308is that almost no OS implements TCP according to the specs, and every OS 308is that almost no OS implements TCP according to the specs, and every OS
309implements it slightly differently. 309implements it slightly differently.
310 310
311If you want to handle TCP urgent data, then setting this flag gives you 311If you want to handle TCP urgent data, then setting this flag (the default
312the most portable way of getting urgent data, by putting it into the 312is enabled) gives you the most portable way of getting urgent data, by
313stream. 313putting it into the stream.
314
315Since BSD emulation of OOB data on top of TCP's urgent data can have
316security implications, AnyEvent::Handle sets this flag automatically
317unless explicitly specified.
314 318
315=item read_size => <bytes> 319=item read_size => <bytes>
316 320
317The default read block size (the amount of bytes this module will 321The default read block size (the amount of bytes this module will
318try to read during each loop iteration, which affects memory 322try to read during each loop iteration, which affects memory
519 523
520 $self->timeout (delete $self->{timeout} ) if $self->{timeout}; 524 $self->timeout (delete $self->{timeout} ) if $self->{timeout};
521 $self->rtimeout (delete $self->{rtimeout} ) if $self->{rtimeout}; 525 $self->rtimeout (delete $self->{rtimeout} ) if $self->{rtimeout};
522 $self->wtimeout (delete $self->{wtimeout} ) if $self->{wtimeout}; 526 $self->wtimeout (delete $self->{wtimeout} ) if $self->{wtimeout};
523 527
524 $self->no_delay (delete $self->{no_delay} ) if exists $self->{no_delay}; 528 $self->no_delay (delete $self->{no_delay} ) if exists $self->{no_delay} && $self->{no_delay};
525 $self->keepalive (delete $self->{keepalive}) if exists $self->{keepalive}; 529 $self->keepalive (delete $self->{keepalive}) if exists $self->{keepalive} && $self->{keepalive};
530
526 $self->oobinline (delete $self->{oobinline}) if exists $self->{oobinline}; 531 $self->oobinline (exists $self->{oobinline} ? delete $self->{oobinline} : 1);
527 532
528 $self->starttls (delete $self->{tls}, delete $self->{tls_ctx}) 533 $self->starttls (delete $self->{tls}, delete $self->{tls_ctx})
529 if $self->{tls}; 534 if $self->{tls};
530 535
531 $self->on_drain (delete $self->{on_drain}) if $self->{on_drain}; 536 $self->on_drain (delete $self->{on_drain}) if $self->{on_drain};

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines