diff options
Diffstat (limited to 'libsylph/session.h')
-rw-r--r-- | libsylph/session.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/libsylph/session.h b/libsylph/session.h index 988349d7..1bd948eb 100644 --- a/libsylph/session.h +++ b/libsylph/session.h @@ -111,10 +111,19 @@ struct _Session gchar *read_buf_p; gint read_buf_len; + /* buffer for short messages */ GString *read_msg_buf; + + /* buffer for relatively short multiple lines data */ GByteArray *read_data_buf; gchar *read_data_terminator; + /* buffer for large data */ + FILE *read_data_fp; + gint read_data_pos; + + gint preread_len; + /* buffer for short messages */ gchar *write_buf; gchar *write_buf_p; @@ -140,6 +149,10 @@ struct _Session guchar *data, guint len); + gint (*recv_data_as_file_finished) (Session *session, + FILE *fp, + guint len); + void (*destroy) (Session *session); /* notification functions */ @@ -202,4 +215,8 @@ gint session_recv_data (Session *session, guint size, const gchar *terminator); +gint session_recv_data_as_file (Session *session, + guint size, + const gchar *terminator); + #endif /* __SESSION_H__ */ |