diff options
author | noiseless | 2015-06-09 00:54:43 +0300 |
---|---|---|
committer | noiseless | 2015-06-09 00:54:43 +0300 |
commit | 406bbe8c3ebc78199504fa7465560f4bbe5a96a0 (patch) | |
tree | 099dc1eec559e92ef9dd050b589893005a8e7cec /08-fix-ipv6-connect.patch | |
download | aur-406bbe8c3ebc78199504fa7465560f4bbe5a96a0.tar.gz |
Initial import
Diffstat (limited to '08-fix-ipv6-connect.patch')
-rw-r--r-- | 08-fix-ipv6-connect.patch | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/08-fix-ipv6-connect.patch b/08-fix-ipv6-connect.patch new file mode 100644 index 000000000000..b8815a7de0dd --- /dev/null +++ b/08-fix-ipv6-connect.patch @@ -0,0 +1,28 @@ +Description: fix crash when falling back from IPv6 to IPv4 + Previously, loudmouth would set socket->watch_connect to NULL when + encountering an error. When the connection attempt (to a different IPv6) + succeeded later on, _lm_socket_succeeded would therefore not remove the + socket_connect_cb watcher, leading to socket_connect_cb being called upon + socket activity and segfaulting the program. +Author: Michael Stapelberg <stapelberg@debian.org> +Bug-Debian: http://bugs.debian.org/631729 +Forwarded: no +Last-Update: 2013-02-03 +--- a/loudmouth/lm-socket.c ++++ b/loudmouth/lm-socket.c +@@ -529,7 +529,6 @@ + /* error condition, but might be possible to recover + * from it (by connecting to the next host) */ + if (!_lm_socket_failed_with_error (connect_data, err)) { +- socket->watch_connect = NULL; + goto out; + } + } +@@ -560,7 +559,6 @@ + _lm_sock_close (connect_data->fd); + _lm_socket_failed_with_error (connect_data, err); + +- socket->watch_connect = NULL; + goto out; + } + } |