Copyright © 2001 - 2005 SILC Project
SILC Project Website
SILC Toolkit Reference Manual
Index

SILC Toolkit Reference Manual
SILC Core Library
    SILC Authentication Interface
    SILC Message Interface
    SILC Channel Interface
    SILC Command Interface
    SILC Notify Interface
    SILC Status Types
    SILC Modes
    SILC ID Interface
    SILC ID Cache Interface
    SILC Argument Interface
    SILC Attributes Interface
    Packet Protocol Interface
SILC Utility Library
    Basic SILC Types
    SILC Buffer Interface
    SILC Buffer Format Interface
    SILC Hash Table Interface
    SILC Logging Interface
    SILC Memory Interface
    SILC Mutex Interface
    SILC Thread Interface
    SILC Network Interface
    SILC Schedule Interface
    SILC Socket Interface
    SILC Protocol Interface
    SILC Config Interface
    SILC File Util Interface
    SILC String Util Interface
    SILC UTF-8 Interface
    SILC Stringprep Interface
    SILC Util Interface
    SILC List Interface
    SILC Dynamic List Interface
    SILC VCard Interface
    SILC Application Utilities
    SILC MIME Interface
SILC Crypto Library
    Introduction to SILC RNG
    SILC RNG Interface
    SILC Cipher API
    SILC PKCS API
    SILC PKCS#1 API
    SILC Hash Interface
    SILC HMAC Interface
SILC SFTP Library
    SILC SFTP Interface
    SFTP Filesystems Interface
SILC Client Library
    Using SILC Client Library Tutorial
    Arguments for command_reply Client Operation
    SilcStatus Error Arguments in command_reply Client Operation
    Arguments for notify Client Operation
    Unicode and UTF-8 Strings in Client Library
    Client Library Interface Reference
SILC Key Exchange Library
    SILC SKE Interface
    SKE Status Types
    SKE Diffie Hellman Groups
    SKE Payloads
SILC Math Library
    SILC MP Interface
    SILC Math Interface

Resource Links
SILC Project Website
SILC Protocol Documentation
SILC White Paper
SILC FAQs





Structure SilcSocketConnectionStruct

NAME

    struct SilcSocketConnectionStruct { ... };

DESCRIPTION

    This object holds information about the connected sockets to the server.
    This is quite important object since this is referenced by the server all
    the time when figuring out what the connection is supposed to be doing
    and to whom we should send a message. This structure is the structure
    for the SilcSocketConnection forward declaration.

    Following short description of the fields:

    int sock

      The actual connected socket. This is usually saved when accepting
      new connection to the server.

    SilcSocketType type

      Type of the socket. This identifies the type of the connection. This
      is mainly used to identify whether the connection is a client or a
      server connection.

    void *user_data

      This is a pointer to a data that is is saved here at the same
      time a new connection object is allocated. Usually this is a
      back-pointer to some important data for fast referencing. For
      SILC server this is a pointer to the ID list and for SILC client
      to object holding active connections (windows).

    SilcProtocol protocol

      Protocol object for the socket. Currently only one protocol can be
      executing at a time for a particular socket.

    SilcUInt32 flags

      Socket flags that indicate the status of the socket. This can
      indicate several different status that can affect the use of the
      socket object.

    int users

      Reference counter. When allocated it is set to one (1) and it won't
      be freed until it hits zero (0).

    SilcSocketConnectionHB hb

      The heartbeat context.  If NULL, heartbeat is not performed.

    SilcBuffer inbuf
    SilcBuffer outbuf

      Incoming and outgoing buffers for the particular socket connection.
      Incoming data from the socket is put after decryption in to the
      inbuf buffer and outgoing data after encryption is put to the outbuf
      buffer.

    char *hostname
    char *ip
    SilcUInt16 port

      Resolved hostname, IP address and port of the connection who owns
      this object.






SILC Socket Interface
SilcSocketConnection
SilcSocketConnectionHB
SilcSocketConnectionQos
SilcSocketType
SilcSocketConnectionStruct
silc_socket_alloc
silc_socket_free
silc_socket_dup
silc_socket_read
silc_socket_write
silc_socket_get_error
SilcSocketConnectionHBCb
silc_socket_set_heartbeat
silc_socket_set_qos
SilcSocketHostLookupCb
silc_socket_host_lookup




Copyright © 2001 - 2005 SILC Project
SILC Project Website
SILC Toolkit Reference Manual
Index