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

SilcProtocolState
NAME

        typedef unsigned char SilcProtocolState;

DESCRIPTION

        Protocol state definition and the defined protocol states. These
        states are the generic states. However, each protocol actually
        implements the states. The state after SILC_PROTOCOL_STATE_START
        would be state 2 in the application. These states can be easily
        used for example inside switch() statement.

EXAMPLE

        switch (protocol->state) {
        case SILC_PROTOCOL_STATE_START:
          protocol_starts_here();
        case 2:
          ...
        case 3:
          ...
        case SILC_PROTOCOL_STATE_END:
          protocol_ends_here();
        case SILC_PROTOCOL_STATE_FAILURE:
          remote_end_sent_failure();
        case SILC_PROTOCOL_STATE_ERROR:
          local_error_during_protocol();
        }

SOURCE

        typedef unsigned char SilcProtocolState;

        /* Protocol states. Do NOT change the values of these states, especially
           the START state or you break every protocol. */
        #define SILC_PROTOCOL_STATE_UNKNOWN 0
        #define SILC_PROTOCOL_STATE_START 1
        #define SILC_PROTOCOL_STATE_END 252
        #define SILC_PROTOCOL_STATE_FAILURE 253  /* Received failure from remote */
        #define SILC_PROTOCOL_STATE_ERROR 254    /* Local error at our end */

SILC Protocol Interface SilcProtocolType SilcProtocolState SilcProtocolCallback SilcProtocolFinalCallback SilcProtocolObject SilcProtocol silc_protocol_register silc_protocol_unregister silc_protocol_alloc silc_protocol_free silc_protocol_execute silc_protocol_execute_final silc_protocol_cancel

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