mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-02-19 06:30:43 +01:00
libnm-util: add *_remove_*_by_value() functions for '802-1x' setting
nm_setting_802_1x_remove_eap_method_by_value() nm_setting_802_1x_remove_altsubject_match_by_value() nm_setting_802_1x_remove_phase2_altsubject_match_by_value()
This commit is contained in:
parent
1303ac3e9c
commit
7c817d4176
3 changed files with 122 additions and 12 deletions
|
|
@ -172,8 +172,11 @@ global:
|
|||
nm_setting_802_1x_get_type;
|
||||
nm_setting_802_1x_new;
|
||||
nm_setting_802_1x_remove_altsubject_match;
|
||||
nm_setting_802_1x_remove_altsubject_match_by_value;
|
||||
nm_setting_802_1x_remove_eap_method;
|
||||
nm_setting_802_1x_remove_eap_method_by_value;
|
||||
nm_setting_802_1x_remove_phase2_altsubject_match;
|
||||
nm_setting_802_1x_remove_phase2_altsubject_match_by_value;
|
||||
nm_setting_802_1x_set_ca_cert;
|
||||
nm_setting_802_1x_set_client_cert;
|
||||
nm_setting_802_1x_set_phase2_ca_cert;
|
||||
|
|
|
|||
|
|
@ -276,6 +276,38 @@ nm_setting_802_1x_remove_eap_method (NMSetting8021x *setting, guint32 i)
|
|||
g_object_notify (G_OBJECT (setting), NM_SETTING_802_1X_EAP);
|
||||
}
|
||||
|
||||
/**
|
||||
* nm_setting_802_1x_remove_eap_method_by_value:
|
||||
* @setting: the #NMSetting8021x
|
||||
* @eap: the name of the EAP method to remove
|
||||
*
|
||||
* Removes the allowed EAP method @method.
|
||||
*
|
||||
* Returns: %TRUE if the EAP method was founs and removed, %FALSE if it was not.
|
||||
*
|
||||
* Since: 0.9.10
|
||||
**/
|
||||
gboolean
|
||||
nm_setting_802_1x_remove_eap_method_by_value (NMSetting8021x *setting,
|
||||
const char *eap)
|
||||
{
|
||||
NMSetting8021xPrivate *priv;
|
||||
GSList *iter;
|
||||
|
||||
g_return_val_if_fail (NM_IS_SETTING_802_1X (setting), FALSE);
|
||||
g_return_val_if_fail (eap != NULL, FALSE);
|
||||
|
||||
priv = NM_SETTING_802_1X_GET_PRIVATE (setting);
|
||||
for (iter = priv->eap; iter; iter = g_slist_next (iter)) {
|
||||
if (!strcmp (eap, (char *) iter->data)) {
|
||||
priv->eap = g_slist_delete_link (priv->eap, iter);
|
||||
g_object_notify (G_OBJECT (setting), NM_SETTING_802_1X_EAP);
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
* nm_setting_802_1x_clear_eap_methods:
|
||||
* @setting: the #NMSetting8021x
|
||||
|
|
@ -682,6 +714,39 @@ nm_setting_802_1x_remove_altsubject_match (NMSetting8021x *setting, guint32 i)
|
|||
g_object_notify (G_OBJECT (setting), NM_SETTING_802_1X_ALTSUBJECT_MATCHES);
|
||||
}
|
||||
|
||||
/**
|
||||
* nm_setting_802_1x_remove_altsubject_match_by_value:
|
||||
* @setting: the #NMSetting8021x
|
||||
* @altsubject_match: the altSubjectName to remove
|
||||
*
|
||||
* Removes the allowed altSubjectName @altsubject_match.
|
||||
*
|
||||
* Returns: %TRUE if the alternative subject name match was found and removed,
|
||||
* %FALSE if it was not.
|
||||
*
|
||||
* Since: 0.9.10
|
||||
**/
|
||||
gboolean
|
||||
nm_setting_802_1x_remove_altsubject_match_by_value (NMSetting8021x *setting,
|
||||
const char *altsubject_match)
|
||||
{
|
||||
NMSetting8021xPrivate *priv;
|
||||
GSList *iter;
|
||||
|
||||
g_return_val_if_fail (NM_IS_SETTING_802_1X (setting), FALSE);
|
||||
g_return_val_if_fail (altsubject_match != NULL, FALSE);
|
||||
|
||||
priv = NM_SETTING_802_1X_GET_PRIVATE (setting);
|
||||
for (iter = priv->altsubject_matches; iter; iter = g_slist_next (iter)) {
|
||||
if (!strcmp (altsubject_match, (char *) iter->data)) {
|
||||
priv->altsubject_matches = g_slist_delete_link (priv->altsubject_matches, iter);
|
||||
g_object_notify (G_OBJECT (setting), NM_SETTING_802_1X_ALTSUBJECT_MATCHES);
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
* nm_setting_802_1x_clear_altsubject_matches:
|
||||
* @setting: the #NMSetting8021x
|
||||
|
|
@ -1229,6 +1294,40 @@ nm_setting_802_1x_remove_phase2_altsubject_match (NMSetting8021x *setting, guint
|
|||
g_object_notify (G_OBJECT (setting), NM_SETTING_802_1X_PHASE2_ALTSUBJECT_MATCHES);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* nm_setting_802_1x_remove_phase2_altsubject_match_by_value:
|
||||
* @setting: the #NMSetting8021x
|
||||
* @phase2_altsubject_match: the "phase 2" altSubjectName to remove
|
||||
*
|
||||
* Removes the allowed "phase 2" altSubjectName @phase2_altsubject_match.
|
||||
*
|
||||
* Returns: %TRUE if the alternative subject name match for "phase 2" was found and removed,
|
||||
* %FALSE if it was not.
|
||||
*
|
||||
* Since: 0.9.10
|
||||
**/
|
||||
gboolean
|
||||
nm_setting_802_1x_remove_phase2_altsubject_match_by_value (NMSetting8021x *setting,
|
||||
const char *phase2_altsubject_match)
|
||||
{
|
||||
NMSetting8021xPrivate *priv;
|
||||
GSList *iter;
|
||||
|
||||
g_return_val_if_fail (NM_IS_SETTING_802_1X (setting), FALSE);
|
||||
g_return_val_if_fail (phase2_altsubject_match != NULL, FALSE);
|
||||
|
||||
priv = NM_SETTING_802_1X_GET_PRIVATE (setting);
|
||||
for (iter = priv->phase2_altsubject_matches; iter; iter = g_slist_next (iter)) {
|
||||
if (!strcmp (phase2_altsubject_match, (char *) iter->data)) {
|
||||
priv->phase2_altsubject_matches = g_slist_delete_link (priv->phase2_altsubject_matches, iter);
|
||||
g_object_notify (G_OBJECT (setting), NM_SETTING_802_1X_PHASE2_ALTSUBJECT_MATCHES);
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
* nm_setting_802_1x_clear_phase2_altsubject_matches:
|
||||
* @setting: the #NMSetting8021x
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
* Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* (C) Copyright 2007 - 2012 Red Hat, Inc.
|
||||
* (C) Copyright 2007 - 2014 Red Hat, Inc.
|
||||
* (C) Copyright 2007 - 2008 Novell, Inc.
|
||||
*/
|
||||
|
||||
|
|
@ -170,6 +170,8 @@ guint32 nm_setting_802_1x_get_num_eap_methods (NMSetting8
|
|||
const char * nm_setting_802_1x_get_eap_method (NMSetting8021x *setting, guint32 i);
|
||||
gboolean nm_setting_802_1x_add_eap_method (NMSetting8021x *setting, const char *eap);
|
||||
void nm_setting_802_1x_remove_eap_method (NMSetting8021x *setting, guint32 i);
|
||||
NM_AVAILABLE_IN_0_9_10
|
||||
gboolean nm_setting_802_1x_remove_eap_method_by_value (NMSetting8021x *setting, const char *eap);
|
||||
void nm_setting_802_1x_clear_eap_methods (NMSetting8021x *setting);
|
||||
|
||||
const char * nm_setting_802_1x_get_identity (NMSetting8021x *setting);
|
||||
|
|
@ -195,11 +197,14 @@ const char * nm_setting_802_1x_get_subject_match (NMSetting8
|
|||
|
||||
guint32 nm_setting_802_1x_get_num_altsubject_matches (NMSetting8021x *setting);
|
||||
const char * nm_setting_802_1x_get_altsubject_match (NMSetting8021x *setting,
|
||||
guint32 i);
|
||||
guint32 i);
|
||||
gboolean nm_setting_802_1x_add_altsubject_match (NMSetting8021x *setting,
|
||||
const char *altsubject_match);
|
||||
const char *altsubject_match);
|
||||
void nm_setting_802_1x_remove_altsubject_match (NMSetting8021x *setting,
|
||||
guint32 i);
|
||||
guint32 i);
|
||||
NM_AVAILABLE_IN_0_9_10
|
||||
gboolean nm_setting_802_1x_remove_altsubject_match_by_value (NMSetting8021x *setting,
|
||||
const char *altsubject_match);
|
||||
void nm_setting_802_1x_clear_altsubject_matches (NMSetting8021x *setting);
|
||||
|
||||
NMSetting8021xCKScheme nm_setting_802_1x_get_client_cert_scheme (NMSetting8021x *setting);
|
||||
|
|
@ -232,14 +237,17 @@ gboolean nm_setting_802_1x_set_phase2_ca_cert (NMSetting8
|
|||
|
||||
const char * nm_setting_802_1x_get_phase2_subject_match (NMSetting8021x *setting);
|
||||
|
||||
guint32 nm_setting_802_1x_get_num_phase2_altsubject_matches (NMSetting8021x *setting);
|
||||
const char * nm_setting_802_1x_get_phase2_altsubject_match (NMSetting8021x *setting,
|
||||
guint32 i);
|
||||
gboolean nm_setting_802_1x_add_phase2_altsubject_match (NMSetting8021x *setting,
|
||||
const char *phase2_altsubject_match);
|
||||
void nm_setting_802_1x_remove_phase2_altsubject_match (NMSetting8021x *setting,
|
||||
guint32 i);
|
||||
void nm_setting_802_1x_clear_phase2_altsubject_matches (NMSetting8021x *setting);
|
||||
guint32 nm_setting_802_1x_get_num_phase2_altsubject_matches (NMSetting8021x *setting);
|
||||
const char * nm_setting_802_1x_get_phase2_altsubject_match (NMSetting8021x *setting,
|
||||
guint32 i);
|
||||
gboolean nm_setting_802_1x_add_phase2_altsubject_match (NMSetting8021x *setting,
|
||||
const char *phase2_altsubject_match);
|
||||
void nm_setting_802_1x_remove_phase2_altsubject_match (NMSetting8021x *setting,
|
||||
guint32 i);
|
||||
NM_AVAILABLE_IN_0_9_10
|
||||
gboolean nm_setting_802_1x_remove_phase2_altsubject_match_by_value (NMSetting8021x *setting,
|
||||
const char *phase2_altsubject_match);
|
||||
void nm_setting_802_1x_clear_phase2_altsubject_matches (NMSetting8021x *setting);
|
||||
|
||||
NMSetting8021xCKScheme nm_setting_802_1x_get_phase2_client_cert_scheme (NMSetting8021x *setting);
|
||||
const GByteArray * nm_setting_802_1x_get_phase2_client_cert_blob (NMSetting8021x *setting);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue