Index: trunk/scconfig/Rev.h =================================================================== --- trunk/scconfig/Rev.h (revision 31379) +++ trunk/scconfig/Rev.h (revision 31380) @@ -1 +1 @@ -static const int myrev = 31377; +static const int myrev = 31380; Index: trunk/scconfig/Rev.tab =================================================================== --- trunk/scconfig/Rev.tab (revision 31379) +++ trunk/scconfig/Rev.tab (revision 31380) @@ -1,4 +1,4 @@ -31377 configure online support plugin (irc) and lib for IPv4/tcp +31380 configure online support plugin (irc) and lib for IPv4/tcp 31295 configure tEDAx drc_query block parse 31249 configure enabled io_bxl 31116 configure include libulzw in librnd 3rd Index: trunk/src_plugins/irc/Plug.tmpasm =================================================================== --- trunk/src_plugins/irc/Plug.tmpasm (revision 31379) +++ trunk/src_plugins/irc/Plug.tmpasm (revision 31380) @@ -1,6 +1,7 @@ put /local/pcb/mod {irc} put /local/pcb/mod/OBJS [@ - $(PLUGDIR)/irc/irc.o + $(PLUGDIR)/irc/irc.o + $(SRC_3RD_DIR)/libuirc/libuirc.o @] switch /local/pcb/irc/controls Index: trunk/src_plugins/irc/irc.c =================================================================== --- trunk/src_plugins/irc/irc.c (revision 31379) +++ trunk/src_plugins/irc/irc.c (revision 31380) @@ -43,6 +43,7 @@ typedef struct{ RND_DAD_DECL_NOINIT(dlg) RND_DAD_DECL_NOINIT(dlg_login) + int wnick, wserver; irc_state_t state; uirc_t irc; } irc_ctx_t; @@ -55,6 +56,15 @@ if (ctx->dlg_login_ret_override->valid && (ctx->dlg_login_ret_override->value == IRC_LOGIN)) { /* connect */ + int port = 6667; + const char *server = ctx->dlg_login[ctx->wserver].val.str; + ctx->state = IRC_ONLINE; + ctx->irc.nick = rnd_strdup(ctx->dlg_login[ctx->wnick].val.str); + if (uirc_connect(&ctx->irc, server, port, "pcb-rnd irc action") == 0) { + printf("conn!\n"); + } + else + rnd_message(RND_MSG_ERROR, "IRC: on-line support: failed to connect the server at %s:%p.\n", server, port); } else { ctx->state = IRC_OFF; @@ -84,6 +94,7 @@ RND_DAD_BEGIN_TABLE(irc_ctx.dlg_login, 2); RND_DAD_LABEL(irc_ctx.dlg_login, "nickname:"); RND_DAD_STRING(irc_ctx.dlg_login); + irc_ctx.wnick = RND_DAD_CURRENT(irc_ctx.dlg_login); RND_DAD_DEFAULT_PTR(irc_ctx.dlg_login, nick); RND_DAD_LABEL(irc_ctx.dlg_login, "channel:"); @@ -93,6 +104,7 @@ RND_DAD_LABEL(irc_ctx.dlg_login, "server:"); RND_DAD_STRING(irc_ctx.dlg_login); RND_DAD_DEFAULT_PTR(irc_ctx.dlg_login, "irc.repo.hu"); + irc_ctx.wserver = RND_DAD_CURRENT(irc_ctx.dlg_login); RND_DAD_END(irc_ctx.dlg_login); RND_DAD_BUTTON_CLOSES(irc_ctx.dlg_login, clbtn);