X-Git-Url: http://git.silcnet.org/gitweb/?p=website.git;a=blobdiff_plain;f=docs%2Ftoolkit%2Fmanual%2Fsilcclient.html;fp=docs%2Ftoolkit%2Fmanual%2Fsilcclient.html;h=5c516f5127b32585cab0e35528c98433825940e9;hp=0000000000000000000000000000000000000000;hb=80b80cef93d9dff6acc4bc8e3a522c55fcdc3fca;hpb=43e53f529ca5c7d2ddb7cee8e76e273631e6f1e2 diff --git a/docs/toolkit/manual/silcclient.html b/docs/toolkit/manual/silcclient.html new file mode 100644 index 0000000..5c516f5 --- /dev/null +++ b/docs/toolkit/manual/silcclient.html @@ -0,0 +1,307 @@ + + + + + + + + + + + + + + + + + + + +
Copyright © 2001 - 2007 SILC Project
+ SILC Project Website
+ SILC Toolkit Reference Manual
+ Index
+ + +
+ + + + + + + + + + + + + + +
+ + + +
+
+ + + +SILC Toolkit Reference Manual
+ + +SILC Crypto Library
+    Introduction to SILC RNG
+    SILC RNG Interface
+    SILC Cipher API
+    SILC PKCS API
+    SILC Public Key API
+    SILC PKCS #1 API
+    SILC Hash Interface
+    SILC HMAC Interface
+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 Argument Interface
+    SILC Attributes Interface
+    Packet Engine Interface
+    SILC Public Key Payload Interface
+SILC Key Exchange Library
+    SILC SKE Interface
+    SILC Connection Authentication Interface
+SILC VCard Library
+    SILC VCard Interface
+SILC Math Library
+    SILC MP Interface
+    SILC Math 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
+    Client Entry Interface Reference
+SILC ASN.1 Library
+    SILC ASN.1 Interface
+    SILC BER interface
+SILC HTTP Library
+    SILC HTTP Server Interface
+    SILC HTTP PHP Translator
+SILC Utility Library
+    Basic Types and Definitions
+    Data Buffer Interface
+    Data Buffer Format Interface
+    Hash Table Interface
+    Memory Allocation Interface
+    Data Stack (memory pool) Interface
+    Finite State Machine Interface
+    Thread Interface
+    Mutual Exclusion Lock Interface
+    Condition Variable Interface
+    Atomic Operations Interface
+    Network (TCP and UDP) Interface
+    Scheduler Interface
+    Asynchronous Operation Interface
+    Abstract Stream Interface
+    Socket Stream Interface
+    File Descriptor Stream Interface
+    File Utility Functions
+    String Utility Interface
+    Snprintf Interface
+    UTF-8 String Interface
+    Stringprep Interface
+    Utility Functions
+    List Interface
+    Dynamic List Interface
+    MIME Interface
+    Time Utility Functions
+    Logging Interface
+    Config File Interface
+SILC Key Repository Library
+    SILC SKR Interface
+SILC Application Utility Library
+    SILC Application Utilities
+    SILC ID Cache Interface
+SILC SFTP Library
+    SILC SFTP Interface
+    SFTP Filesystems Interface
+ +
+Resource Links +
+SILC Project Website
+SILC Protocol Documentation
+SILC White Paper
+SILC FAQs
+ +
+



+
+
+ + + + +
+
+ + +silcclient.html + + + + +
+ +Client Library Interface
Header: silcclient.h

+ + +DESCRIPTION + +

+ This interface defines the SILC Client Library API for the application.
+ The Client Library is a full featured SILC client without user interface.
+ A simple interface called SILC Client Operations (SilcClientOperations)
+ is provided for applications to implmeent the necessary functions to use
+ the client library.  The silcclient.h header file includes client library
+ API, such as command handling and message sending.  The silcclient_entry.h
+ header file includes entry handling, such as channel and user entry
+ handling.
+
+ Practically all functions in the Client Library API accepts SilcClient
+ and SilcClientConnection as their first two argument.  The first argument
+ is the actual SilcClient context and the second is the SilcClientConnection
+ context of the connection in question.  Application may create and handle
+ multiple connections in one SilcClient.  Connections can be created to
+ servers and other clients.
+
+ The Client Library support multiple threads and is threads safe if used
+ correctly.  Messages can be sent from multiple threads without any
+ locking.  Messages however are always received only in one thread unless
+ message waiting (see silc_client_private_message_wait as an example) is
+ used.  The threads can be turned on and off by giving a parameter to the
+ SilcClient.  When turned on, each new connection to remote host is always
+ executed in an own thread.  All tasks related to that connection are then
+ executed in that thread.  This means that client operation callbacks for
+ that connections may be called from threads and application will need to
+ employ concurrency control if the callbacks need to access shared data
+ in the application.  Messages are also received in that thread.
+
+
  • SilcClientConnectionStatus +
  • SilcClientRunning +
  • SilcClientStopped +
  • SilcClientConnectCallback +
  • SilcClient +
  • SilcClientConnection +
  • SilcChannelUser +
  • SilcClientStats +
  • SilcKeyAgreementStatus +
  • SilcKeyAgreementCallback +
  • SilcPrivateMessageKeys +
  • SilcChannelPrivateKey +
  • SilcAskPassphrase +
  • SilcVerifyPublicKey +
  • SilcGetAuthMeth +
  • SilcClientMessageType +
  • SilcClientOperations +
  • SilcClientParams +
  • silc_client_alloc +
  • silc_client_free +
  • silc_client_init +
  • silc_client_run +
  • silc_client_run_one +
  • silc_client_stop +
  • SilcClientConnectionParams +
  • silc_client_connect_to_server +
  • silc_client_connect_to_client +
  • silc_client_key_exchange +
  • silc_client_close_connection +
  • silc_client_send_channel_message +
  • silc_client_send_private_message +
  • silc_client_private_message_wait_init +
  • silc_client_private_message_wait_uninit +
  • silc_client_private_message_wait +
  • silc_client_on_channel +
  • silc_client_command_call +
  • SilcClientCommandReply +
  • silc_client_command_send +
  • silc_client_command_pending +
  • silc_client_add_private_message_key +
  • silc_client_add_private_message_key_ske +
  • silc_client_del_private_message_key +
  • silc_client_list_private_message_keys +
  • silc_client_free_private_message_keys +
  • silc_client_private_message_key_is_set +
  • silc_client_add_channel_private_key +
  • silc_client_del_channel_private_keys +
  • silc_client_del_channel_private_key +
  • silc_client_list_channel_private_keys +
  • silc_client_current_channel_private_key +
  • silc_client_send_key_agreement +
  • silc_client_perform_key_agreement +
  • silc_client_perform_key_agreement_stream +
  • silc_client_abort_key_agreement +
  • silc_client_set_away_message +
  • SilcClientMonitorStatus +
  • SilcClientFileError +
  • SilcClientFileMonitor +
  • SilcClientFileName +
  • SilcClientFileAskName +
  • silc_client_file_send +
  • silc_client_file_receive +
  • silc_client_file_close +
  • silc_client_attribute_add +
  • silc_client_attribute_del +
  • silc_client_attributes_get +
  • silc_client_attributes_request +
  • silc_client_nickname_format +
  • silc_client_nickname_parse + +



    +
  • +
    + + + + +
    +
    + + + +



    +
    +
    + + + +
    + + + + + + +
    Copyright © 2001 - 2007 SILC Project
    + SILC Project Website
    + SILC Toolkit Reference Manual
    + Index
    + + +