oap_client: make use of OAP optional: disable for NULL config

When passing a NULL config to osmo_oap_client_init(), set OAP to disabled
state. Along with the previous fix that ensures message rejection in the
disabled state, this makes use of OAP in the GSUP client optional.

oap_client_test: expect null config to set state to disabled.

Related: OS#1592
Change-Id: Ie4d622fcfd24cb7d89d19f93e4b2571d8fadd1a3
diff --git a/openbsc/src/libcommon/gsup_client.c b/openbsc/src/libcommon/gsup_client.c
index 4c1fe61..2e920a6 100644
--- a/openbsc/src/libcommon/gsup_client.c
+++ b/openbsc/src/libcommon/gsup_client.c
@@ -266,7 +266,7 @@
 struct gsup_client *gsup_client_create(const char *ip_addr,
 				       unsigned int tcp_port,
 				       gsup_client_read_cb_t read_cb,
-				       struct oap_client_config *oap_config)
+				       struct oap_client_config *oapc_config)
 {
 	struct gsup_client *gsupc;
 	int rc;
@@ -274,7 +274,8 @@
 	gsupc = talloc_zero(tall_bsc_ctx, struct gsup_client);
 	OSMO_ASSERT(gsupc);
 
-	rc = oap_client_init(oap_config, &gsupc->oap_state);
+	/* a NULL oapc_config will mark oap_state disabled. */
+	rc = oap_client_init(oapc_config, &gsupc->oap_state);
 	if (rc != 0)
 		goto failed;