projects
/
silc.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fixed QoS data limit handling in socket stream when reading data.
[silc.git]
/
lib
/
silcutil
/
silcsocketstream.c
diff --git
a/lib/silcutil/silcsocketstream.c
b/lib/silcutil/silcsocketstream.c
index e4b59f5a601c6d0019632438514f780a48729507..af8f2c34cba0b60f6584b07dd57b10931fe115ab 100644
(file)
--- a/
lib/silcutil/silcsocketstream.c
+++ b/
lib/silcutil/silcsocketstream.c
@@
-4,7
+4,7
@@
Author: Pekka Riikonen <priikone@silcnet.org>
Author: Pekka Riikonen <priikone@silcnet.org>
- Copyright (C) 2005 - 200
7
Pekka Riikonen
+ Copyright (C) 2005 - 200
8
Pekka Riikonen
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@
-350,6
+350,7
@@
SilcBool silc_socket_stream_set_qos(SilcStream stream,
!limit_sec && !limit_usec) {
silc_schedule_task_del_by_context(socket_stream->schedule,
socket_stream->qos);
!limit_sec && !limit_usec) {
silc_schedule_task_del_by_context(socket_stream->schedule,
socket_stream->qos);
+ silc_free(socket_stream->qos->buffer);
silc_free(socket_stream->qos);
socket_stream->qos = NULL;
return TRUE;
silc_free(socket_stream->qos);
socket_stream->qos = NULL;
return TRUE;
@@
-370,7
+371,8
@@
SilcBool silc_socket_stream_set_qos(SilcStream stream,
socket_stream->qos->cur_rate = 0;
socket_stream->qos->sock = socket_stream;
socket_stream->qos->cur_rate = 0;
socket_stream->qos->sock = socket_stream;
- socket_stream->qos->buffer = silc_malloc(read_limit_bytes);
+ socket_stream->qos->buffer = silc_realloc(socket_stream->qos->buffer,
+ read_limit_bytes);
if (!socket_stream->qos->buffer)
return FALSE;
if (!socket_stream->qos->buffer)
return FALSE;