Beispiel #1
0
static void
dsk_client_stream_finalize (DskClientStream *stream)
{
  dsk_hook_clear (&stream->disconnect_hook);
  dsk_hook_clear (&stream->connect_hook);
  if (stream->idle_disconnect_timer)
    dsk_dispatch_remove_timer (stream->idle_disconnect_timer);
  if (stream->reconnect_timer)
    dsk_dispatch_remove_timer (stream->reconnect_timer);
  if (stream->fd >= 0)
    {
      dsk_main_close_fd (stream->fd);
      stream->fd = -1;
    }
  dsk_free (stream->name);
}
Beispiel #2
0
static void
dsk_websocket_finalize (DskWebsocket *websocket)
{
  if (websocket->read_trap)
    dsk_hook_trap_destroy (websocket->read_trap);
  if (websocket->write_trap)
    dsk_hook_trap_destroy (websocket->write_trap);
  if (websocket->source)
    dsk_object_unref (websocket->source);
  if (websocket->sink)
    dsk_object_unref (websocket->sink);
  dsk_buffer_clear (&websocket->incoming);
  dsk_buffer_clear (&websocket->outgoing);
  dsk_hook_clear (&websocket->readable);
}
Beispiel #3
0
static void
dsk_client_stream_sink_shutdown   (DskOctetSink   *sink)
{
  DskClientStream *stream;
  if (sink->stream == NULL)
    return;
  stream = DSK_CLIENT_STREAM (sink->stream);
  if (stream->fd >= 0)
    shutdown (stream->fd, SHUT_WR);

  stream->shutdown_write = 1;
  dsk_hook_clear (&sink->writable_hook);

  stream_do_watch_fd (stream);
}
Beispiel #4
0
static void
dsk_client_stream_source_shutdown (DskOctetSource *source)
{
  DskClientStream *stream;
  if (source->stream == NULL)
    return;
  stream = DSK_CLIENT_STREAM (source->stream);
  if (stream->fd >= 0)
    shutdown (stream->fd, SHUT_RD);

  stream->shutdown_read = 1;
  dsk_hook_clear (&source->readable_hook);

  stream_do_watch_fd (stream);
}
Beispiel #5
0
static void
dsk_memory_sink_finalize (DskMemorySink *sink)
{
  dsk_buffer_clear (&sink->buffer);
  dsk_hook_clear (&sink->buffer_nonempty);
}