libmsc/gsm_09_11.c: properly handle MS-initiated release

According to GSM TS 02.90, section 4.3, release of the connection
used for SS/USSD is normally the responsibility of the network.
But the user may also initiate connection release, e.g. by
pressing the 'red button'.

TTCN-3 test case: I7936ed5072ed2ae02f039dc90a1fece1e7f70a70
Change-Id: I76fc277bf9db614a97824b1541cd5bb75aa3e29d
diff --git a/src/libmsc/gsm_09_11.c b/src/libmsc/gsm_09_11.c
index 9423ec7..96acd8c 100644
--- a/src/libmsc/gsm_09_11.c
+++ b/src/libmsc/gsm_09_11.c
@@ -179,8 +179,11 @@
 		goto error;
 	}
 
-	/* Don't release connection, wait for response */
-	msc_subscr_conn_communicating(conn);
+	/* Should we release connection? Or wait for response? */
+	if (msg_type == GSM0480_MTYPE_RELEASE_COMPLETE)
+		trans_free(trans);
+	else
+		msc_subscr_conn_communicating(conn);
 
 	return 0;