diff options
Diffstat (limited to 'src/perl/irc/Dcc.xs')
-rw-r--r-- | src/perl/irc/Dcc.xs | 66 |
1 files changed, 60 insertions, 6 deletions
diff --git a/src/perl/irc/Dcc.xs b/src/perl/irc/Dcc.xs index f65d2c70..8b6d7155 100644 --- a/src/perl/irc/Dcc.xs +++ b/src/perl/irc/Dcc.xs @@ -4,12 +4,29 @@ void dccs() PREINIT: GSList *tmp; - HV *stash; PPCODE: - stash = gv_stashpv("Irssi::Irc::Dcc", 0); - for (tmp = dcc_conns; tmp != NULL; tmp = tmp->next) { - push_bless(tmp->data, stash); - } + for (tmp = dcc_conns; tmp != NULL; tmp = tmp->next) + XPUSHs(sv_2mortal(dcc_bless((DCC_REC *) tmp->data))); + +void +dcc_register_type(type) + char *type + +void +dcc_unregister_type(type) + char *type + +int +dcc_str2type(str) + char *str + +char * +dcc_type2str(type) + int type +CODE: + RETVAL = (char *) module_find_id_str("DCC", type); +OUTPUT: + RETVAL Irssi::Irc::Dcc dcc_find_request_latest(type) @@ -21,6 +38,23 @@ dcc_find_request(type, nick, arg) char *nick char *arg +Irssi::Irc::Dcc::Chat +dcc_chat_find_id(id) + char *id + +void +dcc_chat_send(dcc, data) + Irssi::Irc::Dcc::Chat dcc + char *data + +void +dcc_ctcp_message(server, target, chat, notice, msg) + Irssi::Irc::Server server + char *target + Irssi::Irc::Dcc::Chat chat + int notice + char *msg + char * dcc_get_download_path(fname) char *fname @@ -30,10 +64,30 @@ MODULE = Irssi::Irc PACKAGE = Irssi::Irc::Dcc PREFIX = dcc_ #******************************* void +dcc_init_rec(dcc, server, chat, nick, arg) + Irssi::Irc::Dcc dcc + Irssi::Irc::Server server + Irssi::Irc::Dcc::Chat chat + char *nick + char *arg + +void dcc_destroy(dcc) Irssi::Irc::Dcc dcc -void +void +dcc_close(dcc) + Irssi::Irc::Dcc dcc + +void dcc_reject(dcc, server) Irssi::Irc::Dcc dcc Irssi::Irc::Server server + +#******************************* +MODULE = Irssi::Irc PACKAGE = Irssi::Windowitem PREFIX = item_ +#******************************* + +Irssi::Irc::Dcc::Chat +item_get_dcc(item) + Irssi::Windowitem item |