aboutsummaryrefslogtreecommitdiffstats
path: root/community/nbd/fix-segfault-freeaddrinfo.patch
diff options
context:
space:
mode:
Diffstat (limited to 'community/nbd/fix-segfault-freeaddrinfo.patch')
-rw-r--r--community/nbd/fix-segfault-freeaddrinfo.patch15
1 files changed, 15 insertions, 0 deletions
diff --git a/community/nbd/fix-segfault-freeaddrinfo.patch b/community/nbd/fix-segfault-freeaddrinfo.patch
new file mode 100644
index 0000000000..d628c144b3
--- /dev/null
+++ b/community/nbd/fix-segfault-freeaddrinfo.patch
@@ -0,0 +1,15 @@
+diff --git a/nbd-server.c b/nbd-server.c
+index b0720ea140..cf3df0462a 100644
+--- a/nbd-server.c
++++ b/nbd-server.c
+@@ -1700,7 +1700,9 @@ int set_peername(int net, CLIENT *client) {
+ break;
+ }
+
+- freeaddrinfo(ai);
++ if(ai) {
++ freeaddrinfo(ai);
++ }
+ msg(LOG_INFO, "connect from %s, assigned file is %s",
+ peername, client->exportname);
+ client->clientname=g_strdup(peername);