SILC Core Library
    SILC Auth API
    SILC Channel API
    SILC Command API
    SILC ID API
    SILC ID Cache API
    SILC Modes
    SILC Notify API
    SILC Packet API
    SILC Argument API
    SILC Private API
SILC Math Library
    SILC Math API
    SILC MP API
SILC SFTP Library
    SILC SFTP API
    SILC SFTP Filesystems
SILC Utility Library
    SILC Buffer API
    SILC Buffer Format API
    SILC Buffer Utility API
    SILC Hash Table API
    SILC Log and Debug API
    SILC Memory API
    SILC Mutex API
    SILC Thread API
    SILC Net API
    SILC Schedule API
    SILC Socket Connection API
    SILC Protocol API
    SILC Util API
    SILC Zip API
    SILC List API
    SILC Dynamic List API
SILC Key Exchange Library
    SILC SKE API
    SILC SKE Status
SILC Client Library
    SILC Client API
SILC Crypto Library
    SILC Cipher API
    SILC Hash API
    SILC HMAC API
    SILC PKCS API
    SILC RNG API
Structure SilcPacketContext

NAME
 
    typedef struct { ... } SilcPacketContext;

DESCRIPTION

    In packet sending this is filled and sent to silc_packet_assemble 
    which then uses it to assemble new packet. In packet reception pointer 
    to this context is sent to silc_packet_parse which parses the packet 
    and returns the relevant information to this structure. On packet 
    reception returned ID's are always the hash values of the ID's from 
    the packet. 

    Short description of the fields following:

    SilcBuffer buffer

      The data buffer.

    SilcPacketType type

      Type of the packet. Types are defined below.

    SilcPacketFlags flags

      Packet flags. Flags are defined above.

    unsigned char *src_id
    uint8 src_id_len
    unsigned char src_id_type

      Source ID, its length and type. On packet reception retuned ID's
      are always the hash values of the ID's from the packet.

    unsigned char *dst_id;
    uint8 dst_id_len;
    unsigned char src_id_type;

      Destination ID, its length and type. On packet reception retuned
      ID's are always the hash values of the ID's from the packet.

    uint16 truelen
    uint8 padlen

      The true lenght of the packet and the padded length of the packet.
      These may be set by the caller before calling any of the 
      silc_packet_* routines. If not provided the library will calculate
      the values.

    int users;

      Reference counter for this context. The context is freed only 
      after the reference counter hits zero. The counter is added
      calling silc_packet_context_dup and decreased by calling the
      silc_packet_context_free.

    uint32 sequence;

      Packet sequence number.

>> SilcPacketAPI
>> SilcPacketType
>> SilcPacketVersion
>> SilcPacketFlags
>> SilcPacketContext
>> SilcPacketParserContext
>> SilcPacketParserCallback
>> SILC_PACKET_LENGTH
>> SILC_PACKET_PADLEN
>> SILC_PACKET_PADLEN_MAX
>> silc_packet_send
>> silc_packet_encrypt
>> silc_packet_assemble
>> silc_packet_send_prepare
>> silc_packet_receive
>> silc_packet_receive_process
>> silc_packet_parse
>> silc_packet_parse_special
>> silc_packet_context_alloc
>> silc_packet_context_dup
>> silc_packet_context_free