summary refs log tree commit diff
path: root/src/settings/plugins/ibft
diff options
context:
space:
mode:
Diffstat (limited to 'src/settings/plugins/ibft')
-rw-r--r--src/settings/plugins/ibft/meson.build48
-rw-r--r--src/settings/plugins/ibft/nms-ibft-plugin.c35
-rw-r--r--src/settings/plugins/ibft/nms-ibft-reader.c8
-rw-r--r--src/settings/plugins/ibft/tests/meson.build17
-rw-r--r--src/settings/plugins/ibft/tests/test-ibft.c22
5 files changed, 81 insertions, 49 deletions
diff --git a/src/settings/plugins/ibft/meson.build b/src/settings/plugins/ibft/meson.build
new file mode 100644
index 00000000..1b6ff28a
--- /dev/null
+++ b/src/settings/plugins/ibft/meson.build
@@ -0,0 +1,48 @@
+name = 'nm-settings-plugin-ibft'
+
+cflags = [
+  '-DSBINDIR="@0@"'.format(nm_sbindir),
+  '-DSYSCONFDIR="@0@"'.format(nm_sysconfdir)
+]
+
+libnms_ibft_core = static_library(
+  'nms-ibft-core',
+  'nms-ibft-reader.c',
+  dependencies: nm_dep,
+  c_args: cflags
+)
+
+sources = files(
+  'nms-ibft-connection.c',
+  'nms-ibft-plugin.c'
+)
+
+libnm_settings_plugin_ibft = shared_module(
+  name,
+  sources: sources,
+  dependencies: nm_dep,
+  c_args: cflags,
+  link_with: libnms_ibft_core,
+  link_args: ldflags_linker_script_settings,
+  link_depends: linker_script_settings,
+  install: true,
+  install_dir: nm_plugindir
+)
+
+core_plugins += libnm_settings_plugin_ibft
+
+# FIXME: check_so_symbols replacement
+'''
+run_target(
+  'check-local-symbols-settings-ibft',
+  command: [check_so_symbols, libnm_settings_plugin_ibft.full_path()],
+  depends: libnm_settings_plugin_ibft
+)
+
+check-local-symbols-settings-ibft: src/settings/plugins/ibft/libnm-settings-plugin-ibft.la
+  $(call check_so_symbols,$(builddir)/src/settings/plugins/ibft/.libs/libnm-settings-plugin-ibft.so)
+'''
+
+if enable_tests
+  subdir('tests')
+endif
diff --git a/src/settings/plugins/ibft/nms-ibft-plugin.c b/src/settings/plugins/ibft/nms-ibft-plugin.c
index ea4d1524..77ce208f 100644
--- a/src/settings/plugins/ibft/nms-ibft-plugin.c
+++ b/src/settings/plugins/ibft/nms-ibft-plugin.c
@@ -121,28 +121,6 @@ get_connections (NMSettingsPlugin *config)
 /*****************************************************************************/
 
 static void
-get_property (GObject *object, guint prop_id,
-              GValue *value, GParamSpec *pspec)
-{
-	switch (prop_id) {
-	case NM_SETTINGS_PLUGIN_PROP_NAME:
-		g_value_set_string (value, "iBFT");
-		break;
-	case NM_SETTINGS_PLUGIN_PROP_INFO:
-		g_value_set_string (value, "(c) 2014 Red Hat, Inc.  To report bugs please use the NetworkManager mailing list.");
-		break;
-	case NM_SETTINGS_PLUGIN_PROP_CAPABILITIES:
-		g_value_set_uint (value, NM_SETTINGS_PLUGIN_CAP_NONE);
-		break;
-	default:
-		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
-		break;
-	}
-}
-
-/*****************************************************************************/
-
-static void
 init (NMSettingsPlugin *config)
 {
 }
@@ -175,19 +153,6 @@ nms_ibft_plugin_class_init (NMSIbftPluginClass *req_class)
 	GObjectClass *object_class = G_OBJECT_CLASS (req_class);
 
 	object_class->dispose = dispose;
-	object_class->get_property = get_property;
-
-	g_object_class_override_property (object_class,
-	                                  NM_SETTINGS_PLUGIN_PROP_NAME,
-	                                  NM_SETTINGS_PLUGIN_NAME);
-
-	g_object_class_override_property (object_class,
-	                                  NM_SETTINGS_PLUGIN_PROP_INFO,
-	                                  NM_SETTINGS_PLUGIN_INFO);
-
-	g_object_class_override_property (object_class,
-	                                  NM_SETTINGS_PLUGIN_PROP_CAPABILITIES,
-	                                  NM_SETTINGS_PLUGIN_CAPABILITIES);
 }
 
 static void
diff --git a/src/settings/plugins/ibft/nms-ibft-reader.c b/src/settings/plugins/ibft/nms-ibft-reader.c
index d26c8334..cf849e28 100644
--- a/src/settings/plugins/ibft/nms-ibft-reader.c
+++ b/src/settings/plugins/ibft/nms-ibft-reader.c
@@ -128,7 +128,7 @@ nms_ibft_reader_load_blocks (const char *iscsiadm_path,
 		}
 		g_set_error (error, NM_SETTINGS_ERROR, NM_SETTINGS_ERROR_FAILED,
 		             "iBFT: %s exited with error %d.  Message: '%s'",
-		             iscsiadm_path, WEXITSTATUS (status), err ? err : "(none)");
+		             iscsiadm_path, WEXITSTATUS (status), err ?: "(none)");
 		goto done;
 	}
 
@@ -392,15 +392,15 @@ connection_setting_add (const GPtrArray *block,
 
 	id = g_strdup_printf ("iBFT%s%s %s",
 	                      prefix ? " " : "",
-	                      prefix ? prefix : "",
+	                      prefix ?: "",
 	                      iface);
 
 	uuid = _nm_utils_uuid_generate_from_strings ("ibft",
 	                                             s_hwaddr,
 	                                             s_vlanid ? "V" : "v",
-	                                             s_vlanid ? s_vlanid : "",
+	                                             s_vlanid ?: "",
 	                                             s_ip4addr ? "A" : "DHCP",
-	                                             s_ip4addr ? s_ip4addr : "",
+	                                             s_ip4addr ?: "",
 	                                             NULL);
 
 	s_con = nm_setting_connection_new ();
diff --git a/src/settings/plugins/ibft/tests/meson.build b/src/settings/plugins/ibft/tests/meson.build
new file mode 100644
index 00000000..59f49c31
--- /dev/null
+++ b/src/settings/plugins/ibft/tests/meson.build
@@ -0,0 +1,17 @@
+test_unit = 'test-ibft'
+
+test_ibft_dir = meson.current_source_dir()
+
+exe = executable(
+  test_unit,
+  test_unit + '.c',
+  dependencies: test_nm_dep,
+  c_args: nm_build_cflags,
+  link_with: libnms_ibft_core
+)
+
+test(
+  'ibft/' + test_unit,
+  test_script,
+  args: test_args + [exe.full_path()]
+)
diff --git a/src/settings/plugins/ibft/tests/test-ibft.c b/src/settings/plugins/ibft/tests/test-ibft.c
index 72d1a7db..5e46be2e 100644
--- a/src/settings/plugins/ibft/tests/test-ibft.c
+++ b/src/settings/plugins/ibft/tests/test-ibft.c
@@ -36,6 +36,8 @@
 
 #include "nm-test-utils-core.h"
 
+#define TEST_DIR       NM_BUILD_SRCDIR"/src/settings/plugins/ibft/tests"
+
 static GPtrArray *
 read_block (const char *iscsiadm_path, const char *expected_mac)
 {
@@ -78,7 +80,7 @@ test_read_ibft_dhcp (void)
 	const char *expected_mac_address = "00:33:21:98:b9:f1";
 	GPtrArray *block;
 
-	block = read_block (TEST_IBFT_DIR "/iscsiadm-test-dhcp", expected_mac_address);
+	block = read_block (TEST_DIR "/iscsiadm-test-dhcp", expected_mac_address);
 
 	connection = nms_ibft_reader_get_connection_from_block (block, &error);
 	g_assert_no_error (error);
@@ -125,7 +127,7 @@ test_read_ibft_static (void)
 	NMIPAddress *ip4_addr;
 	GPtrArray *block;
 
-	block = read_block (TEST_IBFT_DIR "/iscsiadm-test-static", expected_mac_address);
+	block = read_block (TEST_DIR "/iscsiadm-test-static", expected_mac_address);
 
 	connection = nms_ibft_reader_get_connection_from_block (block, &error);
 	g_assert_no_error (error);
@@ -181,7 +183,7 @@ test_read_ibft_malformed (gconstpointer user_data)
 
 	g_assert (g_file_test (iscsiadm_path, G_FILE_TEST_EXISTS));
 
-	g_test_expect_message ("NetworkManager", G_LOG_LEVEL_MESSAGE, "*malformed iscsiadm record*");
+	NMTST_EXPECT_NM_WARN ("*malformed iscsiadm record*");
 
 	success = nms_ibft_reader_load_blocks (iscsiadm_path, &blocks, &error);
 	g_assert_no_error (error);
@@ -227,7 +229,7 @@ test_read_ibft_vlan (void)
 	GError *error = NULL;
 	GPtrArray *block;
 
-	block = read_block (TEST_IBFT_DIR "/iscsiadm-test-vlan", expected_mac_address);
+	block = read_block (TEST_DIR "/iscsiadm-test-vlan", expected_mac_address);
 
 	connection = nms_ibft_reader_get_connection_from_block (block, &error);
 	g_assert_no_error (error);
@@ -280,12 +282,12 @@ int main (int argc, char **argv)
 	g_test_add_func (TPATH "ibft/dhcp", test_read_ibft_dhcp);
 	g_test_add_func (TPATH "ibft/static", test_read_ibft_static);
 	g_test_add_func (TPATH "ibft/vlan", test_read_ibft_vlan);
-	g_test_add_data_func (TPATH "ibft/bad-record-read", TEST_IBFT_DIR "/iscsiadm-test-bad-record", test_read_ibft_malformed);
-	g_test_add_data_func (TPATH "ibft/bad-entry-read", TEST_IBFT_DIR "/iscsiadm-test-bad-entry", test_read_ibft_malformed);
-	g_test_add_data_func (TPATH "ibft/bad-ipaddr-read", TEST_IBFT_DIR "/iscsiadm-test-bad-ipaddr", test_read_ibft_bad_address);
-	g_test_add_data_func (TPATH "ibft/bad-gateway-read", TEST_IBFT_DIR "/iscsiadm-test-bad-gateway", test_read_ibft_bad_address);
-	g_test_add_data_func (TPATH "ibft/bad-dns1-read", TEST_IBFT_DIR "/iscsiadm-test-bad-dns1", test_read_ibft_bad_address);
-	g_test_add_data_func (TPATH "ibft/bad-dns2-read", TEST_IBFT_DIR "/iscsiadm-test-bad-dns2", test_read_ibft_bad_address);
+	g_test_add_data_func (TPATH "ibft/bad-record-read", TEST_DIR "/iscsiadm-test-bad-record", test_read_ibft_malformed);
+	g_test_add_data_func (TPATH "ibft/bad-entry-read", TEST_DIR "/iscsiadm-test-bad-entry", test_read_ibft_malformed);
+	g_test_add_data_func (TPATH "ibft/bad-ipaddr-read", TEST_DIR "/iscsiadm-test-bad-ipaddr", test_read_ibft_bad_address);
+	g_test_add_data_func (TPATH "ibft/bad-gateway-read", TEST_DIR "/iscsiadm-test-bad-gateway", test_read_ibft_bad_address);
+	g_test_add_data_func (TPATH "ibft/bad-dns1-read", TEST_DIR "/iscsiadm-test-bad-dns1", test_read_ibft_bad_address);
+	g_test_add_data_func (TPATH "ibft/bad-dns2-read", TEST_DIR "/iscsiadm-test-bad-dns2", test_read_ibft_bad_address);
 
 	return g_test_run ();
 }