summaryrefslogtreecommitdiff
path: root/src/perl/irc/Dcc.xs
diff options
context:
space:
mode:
Diffstat (limited to 'src/perl/irc/Dcc.xs')
-rw-r--r--src/perl/irc/Dcc.xs66
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