cli: merge IPv4 and IPv6 variants of print_dhcp_config()
This commit is contained in:
@@ -293,7 +293,7 @@ static const NmcMetaGenericInfo *const metagen_ip6_config_group[] = {
|
|||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
const NmcMetaGenericInfo *const nmc_fields_dhcp4_config[] = {
|
const NmcMetaGenericInfo *const nmc_fields_dhcp_config[] = {
|
||||||
NMC_META_GENERIC ("GROUP"), /* 0 */
|
NMC_META_GENERIC ("GROUP"), /* 0 */
|
||||||
NMC_META_GENERIC ("OPTION"), /* 1 */
|
NMC_META_GENERIC ("OPTION"), /* 1 */
|
||||||
NULL,
|
NULL,
|
||||||
@@ -309,12 +309,6 @@ const NmcMetaGenericInfo *const nmc_fields_ip6_config[] = {
|
|||||||
NULL,
|
NULL,
|
||||||
};
|
};
|
||||||
|
|
||||||
const NmcMetaGenericInfo *const nmc_fields_dhcp6_config[] = {
|
|
||||||
NMC_META_GENERIC ("GROUP"), /* 0 */
|
|
||||||
NMC_META_GENERIC ("OPTION"), /* 1 */
|
|
||||||
NULL,
|
|
||||||
};
|
|
||||||
|
|
||||||
gboolean
|
gboolean
|
||||||
print_ip4_config (NMIPConfig *cfg4,
|
print_ip4_config (NMIPConfig *cfg4,
|
||||||
const NmcConfig *nmc_config,
|
const NmcConfig *nmc_config,
|
||||||
@@ -367,19 +361,19 @@ print_ip6_config (NMIPConfig *cfg6,
|
|||||||
}
|
}
|
||||||
|
|
||||||
gboolean
|
gboolean
|
||||||
print_dhcp4_config (NMDhcpConfig *dhcp4,
|
print_dhcp_config (NMDhcpConfig *dhcp,
|
||||||
const NmcConfig *nmc_config,
|
const NmcConfig *nmc_config,
|
||||||
const char *group_prefix,
|
const char *group_prefix,
|
||||||
const char *one_field)
|
const char *one_field)
|
||||||
{
|
{
|
||||||
GHashTable *table;
|
GHashTable *table;
|
||||||
const NMMetaAbstractInfo *const*tmpl;
|
const NMMetaAbstractInfo *const*tmpl;
|
||||||
NmcOutputField *arr;
|
NmcOutputField *arr;
|
||||||
|
|
||||||
if (dhcp4 == NULL)
|
if (dhcp == NULL)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
table = nm_dhcp_config_get_options (dhcp4);
|
table = nm_dhcp_config_get_options (dhcp);
|
||||||
if (table) {
|
if (table) {
|
||||||
GHashTableIter table_iter;
|
GHashTableIter table_iter;
|
||||||
gpointer key, value;
|
gpointer key, value;
|
||||||
@@ -387,53 +381,7 @@ print_dhcp4_config (NMDhcpConfig *dhcp4,
|
|||||||
int i = 0;
|
int i = 0;
|
||||||
NMC_OUTPUT_DATA_DEFINE_SCOPED (out);
|
NMC_OUTPUT_DATA_DEFINE_SCOPED (out);
|
||||||
|
|
||||||
tmpl = (const NMMetaAbstractInfo *const*) nmc_fields_dhcp4_config;
|
tmpl = (const NMMetaAbstractInfo *const*) nmc_fields_dhcp_config;
|
||||||
out_indices = parse_output_fields (one_field,
|
|
||||||
tmpl, FALSE, NULL, NULL);
|
|
||||||
arr = nmc_dup_fields_array (tmpl, NMC_OF_FLAG_FIELD_NAMES);
|
|
||||||
g_ptr_array_add (out.output_data, arr);
|
|
||||||
|
|
||||||
options_arr = g_new (char *, g_hash_table_size (table) + 1);
|
|
||||||
g_hash_table_iter_init (&table_iter, table);
|
|
||||||
while (g_hash_table_iter_next (&table_iter, &key, &value))
|
|
||||||
options_arr[i++] = g_strdup_printf ("%s = %s", (char *) key, (char *) value);
|
|
||||||
options_arr[i] = NULL;
|
|
||||||
|
|
||||||
arr = nmc_dup_fields_array (tmpl, NMC_OF_FLAG_SECTION_PREFIX);
|
|
||||||
set_val_strc (arr, 0, group_prefix);
|
|
||||||
set_val_arr (arr, 1, options_arr);
|
|
||||||
g_ptr_array_add (out.output_data, arr);
|
|
||||||
|
|
||||||
print_data_prepare_width (out.output_data);
|
|
||||||
print_data (nmc_config, out_indices, NULL, 0, &out);
|
|
||||||
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
gboolean
|
|
||||||
print_dhcp6_config (NMDhcpConfig *dhcp6,
|
|
||||||
const NmcConfig *nmc_config,
|
|
||||||
const char *group_prefix,
|
|
||||||
const char *one_field)
|
|
||||||
{
|
|
||||||
GHashTable *table;
|
|
||||||
const NMMetaAbstractInfo *const*tmpl;
|
|
||||||
NmcOutputField *arr;
|
|
||||||
|
|
||||||
if (dhcp6 == NULL)
|
|
||||||
return FALSE;
|
|
||||||
|
|
||||||
table = nm_dhcp_config_get_options (dhcp6);
|
|
||||||
if (table) {
|
|
||||||
GHashTableIter table_iter;
|
|
||||||
gpointer key, value;
|
|
||||||
char **options_arr = NULL;
|
|
||||||
int i = 0;
|
|
||||||
NMC_OUTPUT_DATA_DEFINE_SCOPED (out);
|
|
||||||
|
|
||||||
tmpl = (const NMMetaAbstractInfo *const*) nmc_fields_dhcp6_config;
|
|
||||||
out_indices = parse_output_fields (one_field,
|
out_indices = parse_output_fields (one_field,
|
||||||
tmpl, FALSE, NULL, NULL);
|
tmpl, FALSE, NULL, NULL);
|
||||||
arr = nmc_dup_fields_array (tmpl, NMC_OF_FLAG_FIELD_NAMES);
|
arr = nmc_dup_fields_array (tmpl, NMC_OF_FLAG_FIELD_NAMES);
|
||||||
|
@@ -27,8 +27,7 @@
|
|||||||
|
|
||||||
gboolean print_ip4_config (NMIPConfig *cfg4, const NmcConfig *nmc_config, const char *one_field);
|
gboolean print_ip4_config (NMIPConfig *cfg4, const NmcConfig *nmc_config, const char *one_field);
|
||||||
gboolean print_ip6_config (NMIPConfig *cfg6, const NmcConfig *nmc_config, const char *group_prefix, const char *one_field);
|
gboolean print_ip6_config (NMIPConfig *cfg6, const NmcConfig *nmc_config, const char *group_prefix, const char *one_field);
|
||||||
gboolean print_dhcp4_config (NMDhcpConfig *dhcp4, const NmcConfig *nmc_config, const char *group_prefix, const char *one_field);
|
gboolean print_dhcp_config (NMDhcpConfig *dhcp, const NmcConfig *nmc_config, const char *group_prefix, const char *one_field);
|
||||||
gboolean print_dhcp6_config (NMDhcpConfig *dhcp6, const NmcConfig *nmc_config, const char *group_prefix, const char *one_field);
|
|
||||||
|
|
||||||
NMConnection *nmc_find_connection (const GPtrArray *connections,
|
NMConnection *nmc_find_connection (const GPtrArray *connections,
|
||||||
const char *filter_type,
|
const char *filter_type,
|
||||||
@@ -78,8 +77,7 @@ void nmc_complete_bool (const char *prefix);
|
|||||||
const char *nmc_error_get_simple_message (GError *error);
|
const char *nmc_error_get_simple_message (GError *error);
|
||||||
|
|
||||||
extern const NmcMetaGenericInfo *const metagen_ip4_config[];
|
extern const NmcMetaGenericInfo *const metagen_ip4_config[];
|
||||||
extern const NmcMetaGenericInfo *const nmc_fields_dhcp4_config[];
|
|
||||||
extern const NmcMetaGenericInfo *const nmc_fields_ip6_config[];
|
extern const NmcMetaGenericInfo *const nmc_fields_ip6_config[];
|
||||||
extern const NmcMetaGenericInfo *const nmc_fields_dhcp6_config[];
|
extern const NmcMetaGenericInfo *const nmc_fields_dhcp_config[];
|
||||||
|
|
||||||
#endif /* NMC_COMMON_H */
|
#endif /* NMC_COMMON_H */
|
||||||
|
@@ -164,9 +164,9 @@ const NmcMetaGenericInfo *const nmc_fields_con_active_details_vpn[] = {
|
|||||||
const NmcMetaGenericInfo *const nmc_fields_con_active_details_groups[] = {
|
const NmcMetaGenericInfo *const nmc_fields_con_active_details_groups[] = {
|
||||||
NMC_META_GENERIC_WITH_NESTED ("GENERAL", nmc_fields_con_active_details_general + 1), /* 0 */
|
NMC_META_GENERIC_WITH_NESTED ("GENERAL", nmc_fields_con_active_details_general + 1), /* 0 */
|
||||||
NMC_META_GENERIC_WITH_NESTED ("IP4", metagen_ip4_config), /* 1 */
|
NMC_META_GENERIC_WITH_NESTED ("IP4", metagen_ip4_config), /* 1 */
|
||||||
NMC_META_GENERIC_WITH_NESTED ("DHCP4", nmc_fields_dhcp4_config + 1), /* 2 */
|
NMC_META_GENERIC_WITH_NESTED ("DHCP4", nmc_fields_dhcp_config + 1), /* 2 */
|
||||||
NMC_META_GENERIC_WITH_NESTED ("IP6", nmc_fields_ip6_config + 1), /* 3 */
|
NMC_META_GENERIC_WITH_NESTED ("IP6", nmc_fields_ip6_config + 1), /* 3 */
|
||||||
NMC_META_GENERIC_WITH_NESTED ("DHCP6", nmc_fields_dhcp6_config + 1), /* 4 */
|
NMC_META_GENERIC_WITH_NESTED ("DHCP6", nmc_fields_dhcp_config + 1), /* 4 */
|
||||||
NMC_META_GENERIC_WITH_NESTED ("VPN", nmc_fields_con_active_details_vpn + 1), /* 5 */
|
NMC_META_GENERIC_WITH_NESTED ("VPN", nmc_fields_con_active_details_vpn + 1), /* 5 */
|
||||||
NULL,
|
NULL,
|
||||||
};
|
};
|
||||||
@@ -1203,7 +1203,7 @@ nmc_active_connection_details (NMActiveConnection *acon, NmCli *nmc)
|
|||||||
gboolean b1 = FALSE;
|
gboolean b1 = FALSE;
|
||||||
NMDhcpConfig *dhcp4 = nm_active_connection_get_dhcp4_config (acon);
|
NMDhcpConfig *dhcp4 = nm_active_connection_get_dhcp4_config (acon);
|
||||||
|
|
||||||
b1 = print_dhcp4_config (dhcp4, &nmc->nmc_config, "DHCP4", group_fld);
|
b1 = print_dhcp_config (dhcp4, &nmc->nmc_config, "DHCP4", group_fld);
|
||||||
was_output = was_output || b1;
|
was_output = was_output || b1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1221,7 +1221,7 @@ nmc_active_connection_details (NMActiveConnection *acon, NmCli *nmc)
|
|||||||
gboolean b1 = FALSE;
|
gboolean b1 = FALSE;
|
||||||
NMDhcpConfig *dhcp6 = nm_active_connection_get_dhcp6_config (acon);
|
NMDhcpConfig *dhcp6 = nm_active_connection_get_dhcp6_config (acon);
|
||||||
|
|
||||||
b1 = print_dhcp6_config (dhcp6, &nmc->nmc_config, "DHCP6", group_fld);
|
b1 = print_dhcp_config (dhcp6, &nmc->nmc_config, "DHCP6", group_fld);
|
||||||
was_output = was_output || b1;
|
was_output = was_output || b1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -210,9 +210,9 @@ const NmcMetaGenericInfo *const nmc_fields_dev_show_sections[] = {
|
|||||||
NMC_META_GENERIC_WITH_NESTED ("WIMAX-PROPERTIES", nmc_fields_dev_show_wimax_prop + 1), /* 5 */
|
NMC_META_GENERIC_WITH_NESTED ("WIMAX-PROPERTIES", nmc_fields_dev_show_wimax_prop + 1), /* 5 */
|
||||||
NMC_META_GENERIC_WITH_NESTED ("NSP", nmc_fields_dev_wimax_list + 1), /* 6 */
|
NMC_META_GENERIC_WITH_NESTED ("NSP", nmc_fields_dev_wimax_list + 1), /* 6 */
|
||||||
NMC_META_GENERIC_WITH_NESTED ("IP4", metagen_ip4_config), /* 7 */
|
NMC_META_GENERIC_WITH_NESTED ("IP4", metagen_ip4_config), /* 7 */
|
||||||
NMC_META_GENERIC_WITH_NESTED ("DHCP4", nmc_fields_dhcp4_config + 1), /* 8 */
|
NMC_META_GENERIC_WITH_NESTED ("DHCP4", nmc_fields_dhcp_config + 1), /* 8 */
|
||||||
NMC_META_GENERIC_WITH_NESTED ("IP6", nmc_fields_ip6_config + 1), /* 9 */
|
NMC_META_GENERIC_WITH_NESTED ("IP6", nmc_fields_ip6_config + 1), /* 9 */
|
||||||
NMC_META_GENERIC_WITH_NESTED ("DHCP6", nmc_fields_dhcp6_config + 1), /* 10 */
|
NMC_META_GENERIC_WITH_NESTED ("DHCP6", nmc_fields_dhcp_config + 1), /* 10 */
|
||||||
NMC_META_GENERIC_WITH_NESTED ("BOND", nmc_fields_dev_show_master_prop + 1), /* 11 */
|
NMC_META_GENERIC_WITH_NESTED ("BOND", nmc_fields_dev_show_master_prop + 1), /* 11 */
|
||||||
NMC_META_GENERIC_WITH_NESTED ("TEAM", nmc_fields_dev_show_team_prop + 1), /* 12 */
|
NMC_META_GENERIC_WITH_NESTED ("TEAM", nmc_fields_dev_show_team_prop + 1), /* 12 */
|
||||||
NMC_META_GENERIC_WITH_NESTED ("BRIDGE", nmc_fields_dev_show_master_prop + 1), /* 13 */
|
NMC_META_GENERIC_WITH_NESTED ("BRIDGE", nmc_fields_dev_show_master_prop + 1), /* 13 */
|
||||||
@@ -1329,7 +1329,7 @@ show_device_info (NMDevice *device, NmCli *nmc)
|
|||||||
|
|
||||||
/* DHCP4 */
|
/* DHCP4 */
|
||||||
if (dhcp4 && !strcasecmp (nmc_fields_dev_show_sections[section_idx]->name, nmc_fields_dev_show_sections[8]->name))
|
if (dhcp4 && !strcasecmp (nmc_fields_dev_show_sections[section_idx]->name, nmc_fields_dev_show_sections[8]->name))
|
||||||
was_output = print_dhcp4_config (dhcp4, &nmc->nmc_config, nmc_fields_dev_show_sections[8]->name, section_fld);
|
was_output = print_dhcp_config (dhcp4, &nmc->nmc_config, nmc_fields_dev_show_sections[8]->name, section_fld);
|
||||||
|
|
||||||
/* IP6 */
|
/* IP6 */
|
||||||
if (cfg6 && !strcasecmp (nmc_fields_dev_show_sections[section_idx]->name, nmc_fields_dev_show_sections[9]->name))
|
if (cfg6 && !strcasecmp (nmc_fields_dev_show_sections[section_idx]->name, nmc_fields_dev_show_sections[9]->name))
|
||||||
@@ -1337,7 +1337,7 @@ show_device_info (NMDevice *device, NmCli *nmc)
|
|||||||
|
|
||||||
/* DHCP6 */
|
/* DHCP6 */
|
||||||
if (dhcp6 && !strcasecmp (nmc_fields_dev_show_sections[section_idx]->name, nmc_fields_dev_show_sections[10]->name))
|
if (dhcp6 && !strcasecmp (nmc_fields_dev_show_sections[section_idx]->name, nmc_fields_dev_show_sections[10]->name))
|
||||||
was_output = print_dhcp6_config (dhcp6, &nmc->nmc_config, nmc_fields_dev_show_sections[10]->name, section_fld);
|
was_output = print_dhcp_config (dhcp6, &nmc->nmc_config, nmc_fields_dev_show_sections[10]->name, section_fld);
|
||||||
|
|
||||||
/* Bond specific information */
|
/* Bond specific information */
|
||||||
if (NM_IS_DEVICE_BOND (device)) {
|
if (NM_IS_DEVICE_BOND (device)) {
|
||||||
|
@@ -127,9 +127,8 @@ complete_fields (const char *option, const char *prefix)
|
|||||||
h = g_hash_table_new_full (nm_str_hash, g_str_equal, g_free, NULL);
|
h = g_hash_table_new_full (nm_str_hash, g_str_equal, g_free, NULL);
|
||||||
|
|
||||||
complete_field (h, metagen_ip4_config);
|
complete_field (h, metagen_ip4_config);
|
||||||
complete_field (h, nmc_fields_dhcp4_config);
|
complete_field (h, nmc_fields_dhcp_config);
|
||||||
complete_field (h, nmc_fields_ip6_config);
|
complete_field (h, nmc_fields_ip6_config);
|
||||||
complete_field (h, nmc_fields_dhcp6_config);
|
|
||||||
complete_field (h, nmc_fields_con_show);
|
complete_field (h, nmc_fields_con_show);
|
||||||
complete_field (h, nmc_fields_con_active_details_general);
|
complete_field (h, nmc_fields_con_active_details_general);
|
||||||
complete_field (h, nmc_fields_con_active_details_vpn);
|
complete_field (h, nmc_fields_con_active_details_vpn);
|
||||||
|
Reference in New Issue
Block a user