ailin-nemui
7e6e3cd503
Add escape_string_escape function for expand_escapes
...
To avoid expanding, tab completion escapes the completion list. But the
escape_string function escapes too much for the expand_escapes code. Add
a function that only escapes the backslashes.
2018-12-07 10:00:29 +01:00
ailin-nemui
6c40567dab
Merge pull request #957 from ailin-nemui/rawlog
...
Improve rawlog performance
2018-11-12 13:02:41 +01:00
ailin-nemui
4537d85b0b
reverse queue
2018-11-09 11:32:00 +01:00
Doug Freed
f11b629b2f
Fix issues pointed out by e38774cc
2018-10-19 01:06:43 +02:00
ailin-nemui
ff0daf5870
actually create the queue, too
2018-10-04 09:31:08 +02:00
ailin-nemui
05fd64dd16
improve rawlog perf
2018-10-04 09:24:10 +02:00
ailin-nemui
f231a59e81
properly document the ignore_match_level so I understand it next time
2018-09-20 17:50:35 +02:00
ailin-nemui
011d9437d1
oops
2018-09-17 13:08:43 +02:00
ailin-nemui
7e9f8c694b
simplify ignore hidden/no_act code
2018-09-17 12:48:42 +02:00
ailin-nemui
b9a274a81d
correctly separate ignore flags (no_act, hidden) from level
2018-09-17 12:26:13 +02:00
ailin-nemui
d93cd63243
Merge pull request #917 from dequis/wcwidth-wrapper
...
Add a wrapper of wcwidth() that picks the best implementation
2018-09-04 09:52:21 +02:00
ailin-nemui
329448939b
Fix gnu wcwidth
2018-09-04 09:36:45 +02:00
ailin-nemui
afb3daaf65
Merge pull request #919 from ailin-nemui/uafs
...
Use-after-frees
2018-09-04 09:35:47 +02:00
dequis
e2e27d1809
Improve error message when failing to create the config dir
2018-09-02 01:20:09 -03:00
dequis
7b70d051da
wcwidth-wrapper: avoid cast with a tiny wrapper, julia_wcwidth()
2018-08-27 00:14:01 -03:00
dequis
e450a7f8c1
modules_deinit: Fix -Werror=declaration-after-statement
2018-08-24 02:27:45 -03:00
dequis
9dd836b876
Fix "discards ‘const’ qualifier" warnings
2018-08-24 02:11:22 -03:00
coypu@sdf.org
610ab2dafa
Use-after-frees
...
Hi folks!
I tried clang-static-analyzer on irssi 1.1.1, it seems like it
finds some things. Here's a diff, but there might be more that you would
want to check, or choose to work differently.
(in special-vars.c, ret is commands->data sometime)
I hope it's not too much trouble if reported as a confidential bug.
Thanks.
2018-08-23 14:13:48 +02:00
ailin-nemui
b2a429bfb4
update line cache on switching wcwidth implementation
2018-08-23 14:03:53 +02:00
ailin-nemui
3ef0b9b3d0
move "auto" to default instead
2018-08-23 14:03:16 +02:00
ailin-nemui
b95ce3e812
add julia's utf8proc wcwidth implementation
2018-08-23 13:23:35 +02:00
dequis
0d8632943d
Add a wrapper of wcwidth() that picks the best implementation
...
This adds a i_wcwidth() function that replaces mk_wcwidth(), and a
'wcwidth_implementation' setting to pick which one it wraps.
Values:
- old: uses our local mk_wcwidth() which implements unicode 5.0
- system: uses the libc-provided wcwidth(), which may be better or worse
than ours depending on how up to date the system is.
- auto: tests the system one against two characters that became
fullwidth in unicode 5.2 and 9.0 respectively. If either of them pass,
pick the system implementation, otherwise pick ours.
It defaults to auto.
mk_wcwidth() is still preferable in some cases, since the way it uses
ranges for fullwidth characters means most CJK blocks are covered even
if their characters didn't exist back then.
The "system" implementation is also wrapped to never return -1, but to
assume those unknown characters use one cell. Quoting the code:
/* Treat all unknown characters as taking one cell. This is
* the reason mk_wcwidth and other outdated implementations
* mostly worked with newer unicode, while glibc's wcwidth
* needs updating to recognize new characters.
*
* Instead of relying on that, we keep the behavior of assuming
* one cell even for glibc's implementation, which is still
* highly accurate and less of a headache overall.
*/
2018-08-23 02:30:26 -03:00
Doug Freed
f3909b8bcb
core/ignore: fix #900
2018-08-03 17:07:06 -04:00
ailin-nemui
0c94d44f52
Merge pull request #892 from dwfreed/fix-ignore-flags
...
core/ignore: fix ignore_match_level handling of flag levels
2018-08-02 13:42:24 +02:00
Janik Rabe
4f45828ff3
Keep errstr set to NULL if errno is not set
...
Don't use errno if it is not set and show the default error message
instead. This prevents messages like "SSL handshake failed: Success"
from being shown.
2018-07-18 21:12:38 +03:00
Doug Freed
d84a24444f
core/ignore: fix ignore_match_level handling of flag levels
2018-06-29 09:00:38 -04:00
vague666
ba2554dd14
missing space
2018-06-09 05:55:25 +02:00
vague666
d2e1caf720
simplifying code
2018-06-07 15:17:46 +02:00
vague666
ac3af3fb56
these were bitflags
2018-06-06 10:00:38 +02:00
vague666
db3b671328
Added HIDDEN level to ignores
2018-06-05 15:29:40 +02:00
ailin-nemui
b2b1ac6708
Merge pull request #866 from ailin-nemui/reconnects
...
This is a simple change which might fix #130
The lookup_servers are also disconnected if the lookup/SSL handshake doesn't succeed in time. I'm not perfectly sure if this is the master fix but it does seem to be an issue that servers can be stuck in lookup, especially for SSL. See the issue for a reproducer
2018-04-06 10:50:58 +02:00
ailin-nemui
0c1db8f2ae
Merge pull request #854 from irssi/ahf/otr
...
OTR support, take 2
2018-03-31 13:04:35 +02:00
ailin-nemui
c08685a1a3
also reconnect lookup_servers
2018-03-29 23:24:13 +02:00
Dorian Harmans
25a44dacf4
fix build with LibreSSL 2.7.0
2018-03-23 21:35:35 +01:00
ailin-nemui
7d99ff05cd
Merge pull request #803 from ailin-nemui/bug-796-test
...
Postpone server cleanup until after unref
2018-03-20 10:30:01 +01:00
LemonBoy
76d958a87f
More g_strcmp0 -> g_ascii_strcasecmp
2018-03-09 17:36:28 +01:00
LemonBoy
fb9f5174c2
Compare channels/networks fields case-insensitively
...
Fixes #856
2018-03-08 20:35:00 +01:00
Alexander Færøy
016b42baea
Add OTR support.
...
This patch adds support for the OTR protocol to irssi. This is an import
of the external irssi-otr project that we are now taking over
maintership for.
Major thanks to the original authors of Irssi-OTR: Uli Meis and David
Goulet. Thanks to the OTR community in #OTR on OFTC, thanks to everyone
who have helped testing the patches and submitted UI suggestions.
2018-02-26 23:32:57 +01:00
ailin-nemui
e289d34b9a
limit alignment padding to a screenful
...
Credit to Oss-Fuzz
2018-02-14 15:04:24 +01:00
ailin-nemui
a6fcd5432e
improve padding performance
...
Credit to Oss-Fuzz
2018-02-13 12:31:22 +01:00
ailin-nemui
f8fbc1e1ab
Merge pull request #775 from LemonBoy/caps_kv
...
CAP 3.2 support
2018-02-05 22:29:35 +01:00
Ailin Nemui
af087e1103
fix sequence error
2018-01-25 15:08:26 +01:00
Ailin Nemui
f5aa829bd0
Do not use X509_STORE on OpenSSL < 1.0.2
2018-01-25 15:01:55 +01:00
LemonBoy
b0b40be82e
Deprecate gslist_remove_string
...
It is not used anymore and it leaks memory.
2018-01-24 10:47:40 +01:00
LemonBoy
cfc8c9f8e2
Properly dispose the GSList chains
...
We forgot to free the link and the data, oops.
2018-01-07 12:36:19 +01:00
ailin-nemui
e75ee2f74c
Merge pull request #746 from ailin-nemui/hide-lines
...
Add method to hide lines in a view
2018-01-07 11:23:22 +01:00
ailin-nemui
6e6a96d8c1
fix uaf in signal path
2018-01-06 00:02:48 +01:00
ailin-nemui
eb18904840
fix crash in notifylist
2018-01-05 22:13:23 +01:00
Nei
f5c3995fea
Merge branch 'fix-gl-21' into 'security'
...
check if \\c is complete in eval
See merge request irssi/irssi!26
2018-01-04 22:19:34 +00:00
ailin-nemui
c9b3d87eb7
Postpone server cleanup until after unref
...
Add a new signal, server destroyed, that is supposed to run the clean up
tasks of server disconnected. This is so that some structures will stay
around longer.
2018-01-04 23:04:12 +01:00
ailin-nemui
cc17837a9b
disable variable arguments code
2018-01-03 15:51:51 +01:00
ailin-nemui
7a83c63701
check if \\c is complete in eval
2018-01-03 14:09:48 +01:00
ailin-nemui
2b918fd9b8
move decls before code
2017-11-30 11:17:05 +01:00
ailin-nemui
b332d448f7
fix comments
2017-11-30 11:15:47 +01:00
ailin-nemui
466d074200
Merge branch 'master' into hide-lines
2017-11-26 00:31:01 +01:00
ailin-nemui
02c677f467
use enum
2017-11-10 22:02:36 +01:00
ailin-nemui
b0fa4dd46d
show initial nick and name on first start
2017-11-01 15:51:20 +01:00
ailin-nemui
cfa51c5ae2
Merge pull request #770 from horgh/horgh/rm-unused-function
...
Remove a couple unused functions
2017-10-23 14:29:34 +02:00
Joseph Bisch
0840eaec7b
Make split functions return an array with NULL instead of NULL
...
This avoids undefined behavior in functions that call these split
functions and expect an array back instead of just a NULL pointer.
2017-10-20 15:22:32 +02:00
Joseph Bisch
beb2beba3b
Revert "Don't proceed with cmd_msg if there was an error splitting msg"
...
This reverts commit bd83852d646de28f2e0fe01efe7c9236aa4074d4.
2017-10-20 15:22:32 +02:00
Joseph Bisch
73d7b9d775
Don't proceed with cmd_msg if there was an error splitting msg
...
There may be cases (such as if target or server->nick is very long)
where the split_message function returns NULL, indicating an error. To
avoid a potential segfault, we now check to see if splitmsgs is NULL.
2017-10-20 15:22:32 +02:00
Will Storey
233be9f580
Mark net_ip_compare() deprecated
2017-10-13 18:30:57 -07:00
Will Storey
da59fd7c2d
Revert "Delete unused function net_ip_compare()"
...
This reverts commit cb5f3cba1f
.
2017-10-13 18:28:26 -07:00
ailin-nemui
7b97edf9d1
Merge pull request #769 from horgh/horgh/error-check-server-connect
...
Set host to an empty string on error
2017-10-13 17:14:47 +02:00
Edward Tomasz Napierala
9895e7b28a
Silence down a warning that would appear on "/away" in Capability mode.
2017-10-11 23:52:36 +01:00
Edward Tomasz Napierala
5c0b4aeb05
Sort Capsicum headers.
2017-10-11 23:31:26 +01:00
Edward Tomasz Napierala
1e66cbd62e
Improve Capsicum stdio limits to fix terminal state on exit.
2017-10-11 23:13:06 +01:00
Edward Tomasz Napierala
17b195021d
Bump default capsicum_port_max to 9999.
...
This is needed for servers like ssl.efnet.org, which, per default
config, listen on 9999.
2017-10-11 14:34:38 +01:00
Will Storey
174adee9dd
Always initialize the host string
...
This also removes a wordy comment
2017-10-10 18:21:05 -07:00
Will Storey
b8b90c76d4
Delete unused function net_connect()
2017-10-09 13:20:44 -07:00
Will Storey
3b3939b146
Delete commented out CYGWIN define
2017-10-09 13:14:59 -07:00
Will Storey
cb5f3cba1f
Delete unused function net_ip_compare()
2017-10-09 13:14:34 -07:00
Will Storey
4ccff71f67
Set host to an empty string on error
...
While investigating #317 , I noticed that it was possible we would access
an uninitialized buffer due to failing to check the return value of
net_ip2host(). This is done in several places. To make such uses safe,
set the host buffer to an empty string on error. It is possible callers
could be improved by handling the error in each spot, but this gives us
some safety.
2017-10-09 12:50:04 -07:00
Edward Tomasz Napierala
40ae8f5fa6
Limit capsicum rights to stdio.
...
This requires FreeBSD fix (https://reviews.freebsd.org/D12622 )
to work properly.
2017-10-07 03:28:02 +01:00
ailin-nemui
8dfeca57ed
hidden lines
2017-09-21 14:20:31 +02:00
ailin-nemui
fc8c15fcd7
Merge pull request #755 from trasz/capsicum
...
Get rid of the zombies in Capsicum capability mode.
2017-09-15 13:40:17 +02:00
Edward Tomasz Napierala
624ef4a696
Get rid of the zombies in Capsicum capability mode.
...
Signed-off-by: Edward Tomasz Napierala <trasz@FreeBSD.org>
2017-09-12 14:19:17 +01:00
LemonBoy
36d8b974fc
Restore compatibility with old OpenSSL versions
...
Let's implement X509_STORE_up_ref on our own.
2017-09-11 17:19:20 +02:00
LemonBoy
96d5a4669d
Increment the X509_STORE refcount during the connection
...
OpenSSL doesn't increment the reference count when the store is assigned
to a SSL_CTX.
2017-09-11 16:32:36 +02:00
ailin-nemui
24ad80177b
Merge pull request #735 from trasz/capsicum
...
Add Capsicum support
2017-09-10 19:43:59 +02:00
Edward Tomasz Napierala
edee0ba587
Don't error out on failure to load default certificate store.
...
This restores the previous behaviour.
Signed-off-by: Edward Tomasz Napierala <trasz@FreeBSD.org>
2017-08-10 14:35:34 +01:00
Edward Tomasz Napierala
0c49a84ffb
Add back some ifdefs.
...
Signed-off-by: Edward Tomasz Napierala <trasz@FreeBSD.org>
2017-08-09 11:06:36 +01:00
Paul Townsend
788e47032f
Update /CONNECT and /SERVER syntax tags (-ssl -> -tls).
2017-08-05 21:02:35 +01:00
Edward Tomasz Napierala
5db6caee0d
Attempt to fix build by adding the forgotten header.
...
Signed-off-by: Edward Tomasz Napierala <trasz@FreeBSD.org>
2017-08-01 01:50:16 +01:00
Edward Tomasz Napierala
96f4fe10c6
Change the way we load default CA certificates so it works with Capsicum.
...
Signed-off-by: Edward Tomasz Napierala <trasz@FreeBSD.org>
2017-08-01 01:47:45 +01:00
Edward Tomasz Napierala
aeaa420ad3
Clean up includes a bit.
...
Signed-off-by: Edward Tomasz Napierala <trasz@FreeBSD.org>
2017-08-01 01:15:25 +01:00
Edward Tomasz Napierala
5551b4fe95
Update copyrights.
...
Signed-off-by: Edward Tomasz Napierala <trasz@FreeBSD.org>
2017-07-30 11:47:08 +01:00
Edward Tomasz Napierala
8bb392a3f4
Hook up capsicum.h and fe-capsicum.h to autotools.
...
This hopefully fixes Travis build.
Signed-off-by: Edward Tomasz Napierala <trasz@FreeBSD.org>
2017-07-30 01:27:33 +01:00
Edward Tomasz Napierala
a29eeaa9f2
Fix trailing slash handling for capsicum_irclogs_path.
...
This is mostly an anti-footshooting measure, but still.
Signed-off-by: Edward Tomasz Napierala <trasz@FreeBSD.org>
2017-07-29 23:52:23 +01:00
Edward Tomasz Napierala
7f2697d307
Cosmetics.
...
Signed-off-by: Edward Tomasz Napierala <trasz@FreeBSD.org>
2017-07-29 23:52:23 +01:00
Edward Tomasz Napierala
8c04c2be14
Fix build without Capsicum.
...
Signed-off-by: Edward Tomasz Napierala <trasz@FreeBSD.org>
2017-07-29 23:52:23 +01:00
Edward Tomasz Napierala
12e2c46d6a
Add wrappers to reduce #ifdefs.
...
Signed-off-by: Edward Tomasz Napierala <trasz@FreeBSD.org>
2017-07-29 23:52:23 +01:00
Edward Tomasz Napierala
c00d4753ae
Restrict port range available in capability mode.
...
Signed-off-by: Edward Tomasz Napierala <trasz@FreeBSD.org>
2017-07-29 23:52:23 +01:00
Edward Tomasz Napierala
e777ae986d
Working autolog.
...
Signed-off-by: Edward Tomasz Napierala <trasz@FreeBSD.org>
2017-07-29 23:52:23 +01:00
Edward Tomasz Napierala
241dd66ac1
Working /log and /rawlog.
...
Signed-off-by: Edward Tomasz Napierala <trasz@FreeBSD.org>
2017-07-29 23:52:23 +01:00
Edward Tomasz Napierala
939371aa1d
Fix warnings.
...
Signed-off-by: Edward Tomasz Napierala <trasz@FreeBSD.org>
2017-07-29 23:52:23 +01:00
Edward Tomasz Napierala
1f57ceec4c
Prevent the user from calling "/capsicum enter" twice.
...
Signed-off-by: Edward Tomasz Napierala <trasz@FreeBSD.org>
2017-07-29 23:52:23 +01:00
Edward Tomasz Napierala
509eca76f0
Make DNS work in capability mode.
...
Signed-off-by: Edward Tomasz Napierala <trasz@FreeBSD.org>
2017-07-29 23:52:23 +01:00
Edward Tomasz Napierala
f4546be7ec
Reorder functions.
...
Signed-off-by: Edward Tomasz Napierala <trasz@FreeBSD.org>
2017-07-29 23:52:23 +01:00
Edward Tomasz Napierala
925240155e
Config file support for "capsicum" parameter.
...
Signed-off-by: Edward Tomasz Napierala <trasz@FreeBSD.org>
2017-07-29 23:52:23 +01:00