ebcd0e3178902e8600e5c1c39deed68de7320cbf
[silc.git] / apps / silc / client_ops.h
1 /*
2
3   client_ops.h
4
5   Author: Pekka Riikonen <priikone@poseidon.pspt.fi>
6
7   Copyright (C) 2000 Pekka Riikonen
8
9   This program is free software; you can redistribute it and/or modify
10   it under the terms of the GNU General Public License as published by
11   the Free Software Foundation; either version 2 of the License, or
12   (at your option) any later version.
13   
14   This program is distributed in the hope that it will be useful,
15   but WITHOUT ANY WARRANTY; without even the implied warranty of
16   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17   GNU General Public License for more details.
18
19 */
20
21 #ifndef CLIENT_OPS_H
22 #define CLIENT_OPS_H
23
24 void silc_say(SilcClient client, SilcClientConnection conn, char *msg, ...);
25 void silc_channel_message(SilcClient client, SilcClientConnection conn,
26                           SilcClientEntry sender, 
27                           SilcChannelEntry channel, 
28                           SilcMessageFlags flags, char *msg);
29 void silc_private_message(SilcClient client, SilcClientConnection conn,
30                           SilcClientEntry sender, 
31                           SilcMessageFlags flags, char *msg);
32 void silc_notify(SilcClient client, SilcClientConnection conn, 
33                  SilcNotifyType type, ...);
34 void silc_command(SilcClient client, SilcClientConnection conn, 
35                   SilcClientCommandContext cmd_context, int success,
36                   SilcCommand command);
37 void silc_command_reply(SilcClient client, SilcClientConnection conn,
38                         SilcCommandPayload cmd_payload, int success,
39                         SilcCommand command, SilcCommandStatus status, ...);
40 void silc_connect(SilcClient client, SilcClientConnection conn, int success);
41 void silc_disconnect(SilcClient client, SilcClientConnection conn);
42 unsigned char *silc_ask_passphrase(SilcClient client, 
43                                    SilcClientConnection conn);
44 int silc_verify_public_key(SilcClient client,
45                            SilcClientConnection conn, 
46                            SilcSocketType conn_type,
47                            unsigned char *pk, uint32 pk_len,
48                            SilcSKEPKType pk_type);
49 int silc_get_auth_method(SilcClient client, SilcClientConnection conn,
50                          char *hostname, uint16 port,
51                          SilcProtocolAuthMeth *auth_meth,
52                          unsigned char **auth_data,
53                          uint32 *auth_data_len);
54 void silc_failure(SilcClient client, SilcClientConnection conn, 
55                   SilcProtocol protocol, void *failure);
56 int silc_key_agreement(SilcClient client, SilcClientConnection conn,
57                        SilcClientEntry client_entry, char *hostname,
58                        int port,
59                        SilcKeyAgreementCallback *completion,
60                        void **context);
61 #endif