Integer type name change.
[silc.git] / apps / irssi / src / silc / core / silc-servers.h
index 1f9dd7f172821b26e8ee6a07fad012a9ccd77ccf..965e1f9661b3ba0d7025a05848d4d157b0065d8b 100644 (file)
@@ -7,14 +7,11 @@
 /* returns SILC_SERVER_REC if it's SILC server, NULL if it isn't */
 #define SILC_SERVER(server) \
        PROTO_CHECK_CAST(SERVER(server), SILC_SERVER_REC, chat_type, "SILC")
-
 #define SILC_SERVER_CONNECT(conn) \
        PROTO_CHECK_CAST(SERVER_CONNECT(conn), SILC_SERVER_CONNECT_REC, \
                         chat_type, "SILC")
-
 #define IS_SILC_SERVER(server) \
        (SILC_SERVER(server) ? TRUE : FALSE)
-
 #define IS_SILC_SERVER_CONNECT(conn) \
        (SILC_SERVER_CONNECT(conn) ? TRUE : FALSE)
 
@@ -24,6 +21,20 @@ typedef struct {
 #include "server-connect-rec.h"
 } SILC_SERVER_CONNECT_REC;
 
+typedef struct {
+  SilcClientEntry client_entry;
+  SilcClientConnection conn;
+  SilcUInt32 session_id;
+  char *filepath;
+  bool send;
+
+  long starttime;              /* Start time of transfer */
+  double kps;                  /* Kilos per second */
+  SilcUInt64 offset;           /* Current offset */
+  SilcUInt64 filesize;         /* Total file size */
+  SilcUInt32 percent;          /* Percent of current transmission */
+} *FtpSession;
+
 #define STRUCT_SERVER_CONNECT_REC SILC_SERVER_CONNECT_REC
 typedef struct {
 #include "server-rec.h"
@@ -39,9 +50,13 @@ typedef struct {
   
   GSList *idles;       /* Idle queue - send these commands to server
                           if there's nothing else to do */
+
+  SilcDList ftp_sessions;
+  FtpSession current_session;
   
   gpointer chanqueries;
   SilcClientConnection conn;
+  SilcUInt32 umode;
 } SILC_SERVER_REC;
 
 SILC_SERVER_REC *silc_server_connect(SILC_SERVER_CONNECT_REC *conn);
@@ -53,5 +68,7 @@ void silc_command_exec(SILC_SERVER_REC *server,
                       const char *command, const char *args);
 void silc_server_init(void);
 void silc_server_deinit(void);
+void silc_server_free_ftp(SILC_SERVER_REC *server,
+                         SilcClientEntry client_entry);
 
 #endif