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
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-void silc_socket_alloc(int sock, SilcSocketType type, void *user_data,
+void silc_socket_alloc(int sock, SilcSocketType type, void *user_data,
silc_socket_heartbeat,
context, hb->heartbeat, 0,
SILC_TASK_TIMEOUT,
silc_socket_heartbeat,
context, hb->heartbeat, 0,
SILC_TASK_TIMEOUT,
but will be freed automatically when calling silc_socket_free. The
`schedule' is the application's scheduler. */
but will be freed automatically when calling silc_socket_free. The
`schedule' is the application's scheduler. */
that is read. It is guaranteed that silc_socket_read never returns
more that `read_limit_bytes' of data. If more is read the limit
will be applied for the reading. The `limit_sec' and `limit_usec'
that is read. It is guaranteed that silc_socket_read never returns
more that `read_limit_bytes' of data. If more is read the limit
will be applied for the reading. The `limit_sec' and `limit_usec'
sock->qos->schedule = schedule;
memset(&sock->qos->next_limit, 0, sizeof(sock->qos->next_limit));
sock->qos->cur_rate = 0;
sock->qos->schedule = schedule;
memset(&sock->qos->next_limit, 0, sizeof(sock->qos->next_limit));
sock->qos->cur_rate = 0;