| SilcSKEStatus
 
 NAME
 
    typedef enum { ... } SilcSKEStatus;
DESCRIPTION
    Status types returned in SKE callbacks. This tell the status of
    the SKE session, and if an error occurred. Application can map the
    status to human readable string with silc_ske_map_status function.
SOURCE    typedef enum {
      /* These are defined by the protocol */
      SILC_SKE_STATUS_OK                     = 0,  /* No error */
      SILC_SKE_STATUS_ERROR                  = 1,  /* Unknown error */
      SILC_SKE_STATUS_BAD_PAYLOAD            = 2,  /* Malformed payload */
      SILC_SKE_STATUS_UNKNOWN_GROUP          = 3,  /* Unsupported DH group */
      SILC_SKE_STATUS_UNKNOWN_CIPHER         = 4,  /* Unsupported cipher */
      SILC_SKE_STATUS_UNKNOWN_PKCS           = 5,  /* Unsupported PKCS algorithm */
      SILC_SKE_STATUS_UNKNOWN_HASH_FUNCTION  = 6,  /* Unsupported hash function */
      SILC_SKE_STATUS_UNKNOWN_HMAC           = 7,  /* Unsupported HMAC */
      SILC_SKE_STATUS_UNSUPPORTED_PUBLIC_KEY = 8,  /* Unsupported/not trusted PK */
      SILC_SKE_STATUS_INCORRECT_SIGNATURE    = 9,  /* Incorrect signature */
      SILC_SKE_STATUS_BAD_VERSION            = 10, /* Unsupported version */
      SILC_SKE_STATUS_INVALID_COOKIE         = 11, /* Cookie was modified */
    
      /* Implementation specific status types */
      SILC_SKE_STATUS_PUBLIC_KEY_NOT_PROVIDED,     /* Remote did not send PK */
      SILC_SKE_STATUS_BAD_RESERVED_FIELD,          /* Reserved field was not 0 */
      SILC_SKE_STATUS_BAD_PAYLOAD_LENGTH,          /* Payload includes garbage */
      SILC_SKE_STATUS_SIGNATURE_ERROR,             /* Error computing signature */
      SILC_SKE_STATUS_OUT_OF_MEMORY,               /* System out of memory */
      SILC_SKE_STATUS_TIMEOUT,                     /* Timeout */
      SILC_SKE_STATUS_PROBE_TIMEOUT,               /* Probe timeout */
    } SilcSKEStatus;
 
 
 
 |