Index: seeborg-irc.cpp =================================================================== --- seeborg-irc.cpp (revision 21) +++ seeborg-irc.cpp (working copy) @@ -76,6 +76,11 @@ autosaveperiod = 600; tokenizer = tokenizer_init(); + + //Added by SchAmane 08.09.2007 + registernickname = false; + registerpassword = L""; + registerservice = L"NickServ"; } botsettings_s::~botsettings_s() { tokenizer_free(tokenizer); @@ -319,6 +324,16 @@ } +void RegisterNickName(BN_PInfo I,wstring service,wstring password) +{ + char* utf8service = utf8_wstringtombs(service); + char* utf8password = utf8_wstringtombs(password); + + see_printstring(stdout,L"Auth NickName\n"); + BN_SendPrivateMessage(I, utf8service, utf8password); +} + + // BotNet callback functions // --------------------------------------------------------------------------- void ProcOnError(BN_PInfo I, int errnum) { @@ -343,6 +359,10 @@ void ProcOnRegistered(BN_PInfo I) { see_printstring(stdout, L"Registered...\n"); + //Added by SchAmane 08.09.2007 + if(botsettings.registernickname) + RegisterNickName(I, botsettings.registerservice, botsettings.registerpassword); + vector::iterator it = botsettings.channels.begin(); for (; it != botsettings.channels.end(); ++it) { char* utf8channel = utf8_wstringtombs(*it); Index: seeborg-irc.h =================================================================== --- seeborg-irc.h (revision 21) +++ seeborg-irc.h (working copy) @@ -85,6 +85,11 @@ ircbotowners_t owners; wstring quitmessage; wstring ctcpversionstring; + + //Added by SchAmane 8.09.2007 + int registernickname; + wstring registerservice; + wstring registerpassword; // Other settings float replyrate; @@ -135,7 +140,13 @@ {L"ctcpversion", L"Bot's CTCP version string (if stealth is enabled)", &botsettings.ctcpversionstring, NULL, NULL, NULL}, {NULL, NULL, NULL, NULL, NULL}, // Newline in cfg + //Added by SchAmane 08.09.2007 + {L"registernickname", L"If bot have to register own nickname with IRC services (boolean)", NULL, NULL, &botsettings.registernickname, NULL}, + {L"registerservice", L"NickServ or Nickname of Bot with Services (if registernickname is enabled)", &botsettings.registerservice, NULL, NULL, NULL}, + {L"registerpassword", L"Bot nickname password (if registernickname is enabled)", &botsettings.registerpassword, NULL, NULL, NULL}, + {NULL, NULL, NULL, NULL, NULL}, // Newline in cfg + {L"replyrate", L"Reply rate to all messages (in percent)", NULL, &botsettings.replyrate, NULL, NULL}, {L"replynick", L"Reply rate to messages containing bot's nickname (in percent)", NULL, &botsettings.replyrate_mynick, NULL, NULL}, {L"replymagic", L"Reply rate to messages containing magic words (in percent)", NULL, &botsettings.replyrate_magic, NULL, NULL},