version 1.273, 2008/04/02 21:36:51 |
version 1.274, 2008/05/08 06:59:01 |
|
|
return; |
return; |
|
|
/* Get the data. */ |
/* Get the data. */ |
data = packet_get_string(&data_len); |
data = packet_get_string_ptr(&data_len); |
|
|
/* |
/* |
* Ignore data for protocol > 1.3 if output end is no longer open. |
* Ignore data for protocol > 1.3 if output end is no longer open. |
|
|
c->local_window -= data_len; |
c->local_window -= data_len; |
c->local_consumed += data_len; |
c->local_consumed += data_len; |
} |
} |
xfree(data); |
|
return; |
return; |
} |
} |
|
|
|
|
if (data_len > c->local_window) { |
if (data_len > c->local_window) { |
logit("channel %d: rcvd too much data %d, win %d", |
logit("channel %d: rcvd too much data %d, win %d", |
c->self, data_len, c->local_window); |
c->self, data_len, c->local_window); |
xfree(data); |
|
return; |
return; |
} |
} |
c->local_window -= data_len; |
c->local_window -= data_len; |
} |
} |
packet_check_eom(); |
|
if (c->datagram) |
if (c->datagram) |
buffer_put_string(&c->output, data, data_len); |
buffer_put_string(&c->output, data, data_len); |
else |
else |
buffer_append(&c->output, data, data_len); |
buffer_append(&c->output, data, data_len); |
xfree(data); |
packet_check_eom(); |
} |
} |
|
|
/* ARGSUSED */ |
/* ARGSUSED */ |