summaryrefslogtreecommitdiff
path: root/src/core
AgeCommit message (Collapse)Author
2016-01-11Merge pull request #393 from ailin-nemui/moduleversion-perlailin-nemui
forward ABI to perl modules
2016-01-03Don't break the API.LemonBoy
Have a ignore_find_full method that is the one that all the new code should be using and provide some working stubs for ignore_find and ignore_find_noact.
2016-01-03Clean up the ignore_find API to make it more powerful.LemonBoy
This way we prevent the creation of duplicate ignores since the old code skipped the ignore_find call when a pattern was specified. It should also cover all the cases where the ignores would be wrongly overwritten, such as the case outlined in #78.
2015-12-10module check irssi versionailin-nemui
Add explicit checks into every module to match the ABI version defined in common.h
2015-12-09Merge pull request #371 from LemonBoy/rampageailin-nemui
Rewrite some faulty logic handling the saved channels. Fixes #340
2015-12-09Remove all WIN32 ifdefs (unifdef -UWIN32)dequis
Just use cygwin. This looks like it wasn't enough to do anything useful, and I don't think anyone cares about supporting win32 the hard way.
2015-12-09Minor adjustments.LemonBoy
Use g_strcmp0 instead of strcmp. Explicit checks added for the g_strcmp0 clauses.
2015-12-09Rewrite some faulty logic handling the saved servers.LemonBoy
2015-12-09Better function namingLemonBoy
2015-12-09Rewrite some faulty logic handling the saved channels.LemonBoy
Issue #340 brought to our attention the fact that under certain circumstances irssi would go on a wild rampage and carelessly overwrite some saved channel records in the configuration file. This happened because the code didn't take into account the case where the channel index in setupchannels wouldn't match the one in the configuration; this actually happens when the user removes a chatnet without removing the associated channels.
2015-11-22Let ignore_check do its work when server is NULLLemonBoy
A NULL-check has been added to the ignore_match_server macro, making the function safe from a pointer perspective. Fixes #193 in the meanwhile.
2015-11-09Strip the trailing whitespace from /join commands.LemonBoy
Fixes #99 for great good.
2015-11-09Add an option to strip trailing whitespace when parsing commandsLemonBoy
2015-11-09Merge pull request #313 from isundil/masterailin-nemui
Fix #45 Make it easy to delete default channels, servers and networks
2015-11-09Merge pull request #341 from dequis/strsplit-len-fixailin-nemui
Fix invalid reads in strsplit_len when splitting on spaces
2015-11-09strsplit_len: make it look more like the original versiondequis
2015-11-09strsplit_len: use strlen() directly instead of a remaining_len variabledequis
2015-11-01Merge pull request #320 from irssi/ahf/add-setting-type-anydx
Fix warnings
2015-10-23Fix invalid reads in strsplit_len when splitting on spacesdequis
The symptom for this one is randomly getting lines split before the last word, even if there's no need for splitting. Also, this function is only reached if recode is on, and iconv failed (for example, due to an incorrect source charset). Thanks to vague for finding this and providing valgrind logs. The loop that looks for spaces tried to read backwards from the end of the current line, with the end being determined by len. Assuming strsplit_len() with len=400, this meant accessing str[399] in the first iteration. For strings that don't need splitting, this means an invalid read always. If that invalid read happens to hit garbage that has a space character, (len - offset) points after the end of string, which isn't a problem for g_strndup() since it stops at the first null, and no splitting happens. If the garbage doesn't have any spaces, it splits by the last word. This commit avoids that loop entirely if (remaining_len > len). It also changes the way it iterates over the string to be much less confusing.
2015-10-08Fix /reconnect RECON-1 saying "Reconnection tag 1 not found"dequis
Turns out it was fixing the wrong string, and trying to do atoi("RECON-1") instead of atoi("1"). "/reconnect 1" worked, but "/reconnect RECON-1" gave that confusing error message.
2015-10-03Add SETTING_TYPE_ANY and replace -1 with it.Alexander Færøy
2015-10-03Include write-buffer.h in log-away.cLemonBoy
Silence a warning and make the world a better place.
2015-10-02Add missing null terminator to the g_build_path() varargsdequis
Lemon broke it a few commits ago.
2015-10-02Merge pull request #316 from LemonBoy/fix_mem_leakGeert Hauwaerts
Fix a memory leak.
2015-10-02Flush the dirty buffer to diskLemonBoy
Given a big enough write_buffer_size and a long enough write_buffer_timeout it might be possible to show the user an incomplete or empty awaylog. Patch by: Petteri Aimonen
2015-10-02Fix a memory leak.LemonBoy
g_get_current_dir() returns a heap-allocated string.
2015-10-01Fix return value of server_setup_remove_chatnetisundil
2015-10-01Updated server removalisundil
Removing network will also remove attached channels
2015-10-01Fix #45 Make it easy to delete default channels, servers and networksisundil
Removing network will now also remove all attached servers
2015-09-24Added functionality to create dir if dir specified in rawlog filenameJari Matilainen
2015-09-23Merge pull request #297 from vague666/hilight_nick_matchesailin-nemui
Add new setting to modify behaviour of hilight_nick_matches to match anywhere in message Fixes #56
2015-09-22Fix return value from nick_match_msg_everywhere, remove #include 'settings.h'Jari Matilainen
2015-09-22Fix return value from nick_match_msg_everywhereJari Matilainen
2015-09-22Add new setting to optionally modify behaviour of hilight_nick_matchesJari Matilainen
Fix indentation Remove unused variables that crept into the nick_match_msg_everywhere function
2015-09-22Revert "Network and IPv{4,6} related changes"ailin-nemui
2015-09-21Ding dong the switch is deadLemonBoy
2015-09-21Initial work to make irssi respect the resolved ip orderLemonBoy
Ip's aren't selected using random() anymore, also select the ip version by using getaddrinfo and some proper hints.
2015-09-19Merge remote-tracking branch 'origin' into saslLemonBoy
2015-09-11SASL supportLemonBoy
The only supported methods are PLAIN and EXTERNAL, the latter is untested as of now. The code gets the values from the keys named sasl_{mechanism,username,password} specified for each chatnet.
2015-09-10Merge pull request #248 from LemonBoy/chantypesAlexander Færøy
Implement CHANTYPES support
2015-09-02Fix two minor issues outlined in the PR#222LemonBoy
irc-cap.c has now a licence header. A minor style fix in misc.c
2015-05-15Implement CHANTYPES supportLemonBoy
2015-05-05Implement support for IRCv3.1 CAP negotiationLemonBoy
2015-04-17Merge pull request #199 from ailin-nemui/config-parserAlexander Færøy
Make config parser more robust
2015-04-17Merge pull request #235 from dequis/g_strcmp0Alexander Færøy
Change all strcmp() to g_strcmp0() to handle nulls gracefully
2015-04-15ssl: Fixed call to SSL_CTX_set_cipher_list() only when ssl_ciphers specified ↵Haw Loeung
and warn when no cipher suite could be selected.
2015-04-14ssl: Add option to specify SSL cipher suite preference.Haw Loeung
2015-04-07Change all strcmp() to g_strcmp0() to handle nulls gracefullydequis
Just a string replacement (but i did check every one of them) sed -i 's/strcmp(/g_strcmp0(/g' **/*.c
2015-04-07Add SNI supportAdam
2015-02-17add CONFIG_REC to config_node_section* APIsAilin Nemui
this adds the CONFIG_REC * to the config_node_section and config_node_section_index APIs as they will require access to the config cache later on to make the config parser more robust.