mirror of
https://github.com/irssi/irssi.git
synced 2026-08-16 15:12:11 +02:00
DCC cleanups - split DCC_REC to CHAT|GET|SEND_DCC_RECs. Plugins should
now be able to add whatever new DCC types. Nick changes affect DCC chats. /WHOIS without parameters works properly in DCC CHAT queries. git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1194 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
parent
118f9a11eb
commit
e4f7d55ce9
20 changed files with 1398 additions and 912 deletions
|
|
@ -3,6 +3,12 @@
|
|||
|
||||
#include "dcc.h"
|
||||
|
||||
#define DCC_GET(dcc) \
|
||||
MODULE_CHECK_CAST_MODULE(dcc, GET_DCC_REC, type, "DCC", "GET")
|
||||
|
||||
#define IS_DCC_GET(dcc) \
|
||||
(DCC_GET(dcc) ? TRUE : FALSE)
|
||||
|
||||
enum {
|
||||
DCC_GET_DEFAULT,
|
||||
|
||||
|
|
@ -11,17 +17,25 @@ enum {
|
|||
DCC_GET_RESUME
|
||||
};
|
||||
|
||||
typedef void (*DCC_GET_FUNC) (DCC_REC *);
|
||||
typedef struct {
|
||||
#include "dcc-file-rec.h"
|
||||
|
||||
int get_type; /* what to do if file exists? */
|
||||
char *file; /* file name we're really moving, arg is just the reference */
|
||||
|
||||
unsigned int file_quoted:1; /* file name was received quoted ("file name") */
|
||||
} GET_DCC_REC;
|
||||
|
||||
#define DCC_GET_TYPE module_get_uniq_id_str("DCC", "GET")
|
||||
|
||||
typedef void (*DCC_GET_FUNC) (GET_DCC_REC *);
|
||||
|
||||
/* handle receiving DCC - GET/RESUME. */
|
||||
void cmd_dcc_receive(const char *data, DCC_GET_FUNC accept);
|
||||
void cmd_dcc_receive(const char *data, DCC_GET_FUNC accept_func);
|
||||
|
||||
void dcc_get_connect(DCC_REC *dcc);
|
||||
void dcc_get_connect(GET_DCC_REC *dcc);
|
||||
char *dcc_get_download_path(const char *fname);
|
||||
|
||||
#define dcc_is_waiting_get(dcc) \
|
||||
((dcc)->type == DCC_TYPE_GET && dcc_is_waiting_user(dcc))
|
||||
|
||||
void dcc_get_init(void);
|
||||
void dcc_get_deinit(void);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue