diff options
Diffstat (limited to 'libnm-core/nm-setting-serial.c')
| -rw-r--r-- | libnm-core/nm-setting-serial.c | 415 |
1 files changed, 211 insertions, 204 deletions
diff --git a/libnm-core/nm-setting-serial.c b/libnm-core/nm-setting-serial.c index fe7c05ee..6a0c7792 100644 --- a/libnm-core/nm-setting-serial.c +++ b/libnm-core/nm-setting-serial.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: LGPL-2.1+ +/* SPDX-License-Identifier: LGPL-2.1+ */ /* * Copyright (C) 2007 - 2018 Red Hat, Inc. * Copyright (C) 2007 - 2008 Novell, Inc. @@ -22,25 +22,24 @@ /*****************************************************************************/ -NM_GOBJECT_PROPERTIES_DEFINE_BASE ( - PROP_BAUD, - PROP_BITS, - PROP_PARITY, - PROP_STOPBITS, - PROP_SEND_DELAY, -); +NM_GOBJECT_PROPERTIES_DEFINE_BASE(PROP_BAUD, + PROP_BITS, + PROP_PARITY, + PROP_STOPBITS, + PROP_SEND_DELAY, ); typedef struct { - guint64 send_delay; - guint baud; - guint bits; - guint stopbits; - char parity; + guint64 send_delay; + guint baud; + guint bits; + guint stopbits; + char parity; } NMSettingSerialPrivate; -G_DEFINE_TYPE (NMSettingSerial, nm_setting_serial, NM_TYPE_SETTING) +G_DEFINE_TYPE(NMSettingSerial, nm_setting_serial, NM_TYPE_SETTING) -#define NM_SETTING_SERIAL_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NM_TYPE_SETTING_SERIAL, NMSettingSerialPrivate)) +#define NM_SETTING_SERIAL_GET_PRIVATE(o) \ + (G_TYPE_INSTANCE_GET_PRIVATE((o), NM_TYPE_SETTING_SERIAL, NMSettingSerialPrivate)) /*****************************************************************************/ @@ -51,11 +50,11 @@ G_DEFINE_TYPE (NMSettingSerial, nm_setting_serial, NM_TYPE_SETTING) * Returns: the #NMSettingSerial:baud property of the setting **/ guint -nm_setting_serial_get_baud (NMSettingSerial *setting) +nm_setting_serial_get_baud(NMSettingSerial *setting) { - g_return_val_if_fail (NM_IS_SETTING_SERIAL (setting), 0); + g_return_val_if_fail(NM_IS_SETTING_SERIAL(setting), 0); - return NM_SETTING_SERIAL_GET_PRIVATE (setting)->baud; + return NM_SETTING_SERIAL_GET_PRIVATE(setting)->baud; } /** @@ -65,11 +64,11 @@ nm_setting_serial_get_baud (NMSettingSerial *setting) * Returns: the #NMSettingSerial:bits property of the setting **/ guint -nm_setting_serial_get_bits (NMSettingSerial *setting) +nm_setting_serial_get_bits(NMSettingSerial *setting) { - g_return_val_if_fail (NM_IS_SETTING_SERIAL (setting), 0); + g_return_val_if_fail(NM_IS_SETTING_SERIAL(setting), 0); - return NM_SETTING_SERIAL_GET_PRIVATE (setting)->bits; + return NM_SETTING_SERIAL_GET_PRIVATE(setting)->bits; } /** @@ -79,11 +78,11 @@ nm_setting_serial_get_bits (NMSettingSerial *setting) * Returns: the #NMSettingSerial:parity property of the setting **/ NMSettingSerialParity -nm_setting_serial_get_parity (NMSettingSerial *setting) +nm_setting_serial_get_parity(NMSettingSerial *setting) { - g_return_val_if_fail (NM_IS_SETTING_SERIAL (setting), 0); + g_return_val_if_fail(NM_IS_SETTING_SERIAL(setting), 0); - return NM_SETTING_SERIAL_GET_PRIVATE (setting)->parity; + return NM_SETTING_SERIAL_GET_PRIVATE(setting)->parity; } /** @@ -93,11 +92,11 @@ nm_setting_serial_get_parity (NMSettingSerial *setting) * Returns: the #NMSettingSerial:stopbits property of the setting **/ guint -nm_setting_serial_get_stopbits (NMSettingSerial *setting) +nm_setting_serial_get_stopbits(NMSettingSerial *setting) { - g_return_val_if_fail (NM_IS_SETTING_SERIAL (setting), 0); + g_return_val_if_fail(NM_IS_SETTING_SERIAL(setting), 0); - return NM_SETTING_SERIAL_GET_PRIVATE (setting)->stopbits; + return NM_SETTING_SERIAL_GET_PRIVATE(setting)->stopbits; } /** @@ -107,113 +106,111 @@ nm_setting_serial_get_stopbits (NMSettingSerial *setting) * Returns: the #NMSettingSerial:send-delay property of the setting **/ guint64 -nm_setting_serial_get_send_delay (NMSettingSerial *setting) +nm_setting_serial_get_send_delay(NMSettingSerial *setting) { - g_return_val_if_fail (NM_IS_SETTING_SERIAL (setting), 0); + g_return_val_if_fail(NM_IS_SETTING_SERIAL(setting), 0); - return NM_SETTING_SERIAL_GET_PRIVATE (setting)->send_delay; + return NM_SETTING_SERIAL_GET_PRIVATE(setting)->send_delay; } static GVariant * -parity_to_dbus (const GValue *from) +parity_to_dbus(const GValue *from) { - switch (g_value_get_enum (from)) { - case NM_SETTING_SERIAL_PARITY_EVEN: - return g_variant_new_byte ('E'); - case NM_SETTING_SERIAL_PARITY_ODD: - return g_variant_new_byte ('o'); - case NM_SETTING_SERIAL_PARITY_NONE: - default: - return g_variant_new_byte ('n'); - } + switch (g_value_get_enum(from)) { + case NM_SETTING_SERIAL_PARITY_EVEN: + return g_variant_new_byte('E'); + case NM_SETTING_SERIAL_PARITY_ODD: + return g_variant_new_byte('o'); + case NM_SETTING_SERIAL_PARITY_NONE: + default: + return g_variant_new_byte('n'); + } } static void -parity_from_dbus (GVariant *from, GValue *to) +parity_from_dbus(GVariant *from, GValue *to) { - switch (g_variant_get_byte (from)) { - case 'E': - g_value_set_enum (to, NM_SETTING_SERIAL_PARITY_EVEN); - break; - case 'o': - g_value_set_enum (to, NM_SETTING_SERIAL_PARITY_ODD); - break; - case 'n': - default: - g_value_set_enum (to, NM_SETTING_SERIAL_PARITY_NONE); - break; - } + switch (g_variant_get_byte(from)) { + case 'E': + g_value_set_enum(to, NM_SETTING_SERIAL_PARITY_EVEN); + break; + case 'o': + g_value_set_enum(to, NM_SETTING_SERIAL_PARITY_ODD); + break; + case 'n': + default: + g_value_set_enum(to, NM_SETTING_SERIAL_PARITY_NONE); + break; + } } /*****************************************************************************/ static void -get_property (GObject *object, guint prop_id, - GValue *value, GParamSpec *pspec) +get_property(GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) { - NMSettingSerial *setting = NM_SETTING_SERIAL (object); - - switch (prop_id) { - case PROP_BAUD: - g_value_set_uint (value, nm_setting_serial_get_baud (setting)); - break; - case PROP_BITS: - g_value_set_uint (value, nm_setting_serial_get_bits (setting)); - break; - case PROP_PARITY: - g_value_set_enum (value, nm_setting_serial_get_parity (setting)); - break; - case PROP_STOPBITS: - g_value_set_uint (value, nm_setting_serial_get_stopbits (setting)); - break; - case PROP_SEND_DELAY: - g_value_set_uint64 (value, nm_setting_serial_get_send_delay (setting)); - break; - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); - break; - } + NMSettingSerial *setting = NM_SETTING_SERIAL(object); + + switch (prop_id) { + case PROP_BAUD: + g_value_set_uint(value, nm_setting_serial_get_baud(setting)); + break; + case PROP_BITS: + g_value_set_uint(value, nm_setting_serial_get_bits(setting)); + break; + case PROP_PARITY: + g_value_set_enum(value, nm_setting_serial_get_parity(setting)); + break; + case PROP_STOPBITS: + g_value_set_uint(value, nm_setting_serial_get_stopbits(setting)); + break; + case PROP_SEND_DELAY: + g_value_set_uint64(value, nm_setting_serial_get_send_delay(setting)); + break; + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec); + break; + } } static void -set_property (GObject *object, guint prop_id, - const GValue *value, GParamSpec *pspec) +set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) { - NMSettingSerialPrivate *priv = NM_SETTING_SERIAL_GET_PRIVATE (object); - - switch (prop_id) { - case PROP_BAUD: - priv->baud = g_value_get_uint (value); - break; - case PROP_BITS: - priv->bits = g_value_get_uint (value); - break; - case PROP_PARITY: - priv->parity = g_value_get_enum (value); - break; - case PROP_STOPBITS: - priv->stopbits = g_value_get_uint (value); - break; - case PROP_SEND_DELAY: - priv->send_delay = g_value_get_uint64 (value); - break; - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); - break; - } + NMSettingSerialPrivate *priv = NM_SETTING_SERIAL_GET_PRIVATE(object); + + switch (prop_id) { + case PROP_BAUD: + priv->baud = g_value_get_uint(value); + break; + case PROP_BITS: + priv->bits = g_value_get_uint(value); + break; + case PROP_PARITY: + priv->parity = g_value_get_enum(value); + break; + case PROP_STOPBITS: + priv->stopbits = g_value_get_uint(value); + break; + case PROP_SEND_DELAY: + priv->send_delay = g_value_get_uint64(value); + break; + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec); + break; + } } /*****************************************************************************/ static void -nm_setting_serial_init (NMSettingSerial *self) +nm_setting_serial_init(NMSettingSerial *self) { - NMSettingSerialPrivate *priv = NM_SETTING_SERIAL_GET_PRIVATE (self); + NMSettingSerialPrivate *priv = NM_SETTING_SERIAL_GET_PRIVATE(self); - nm_assert (priv->parity == NM_SETTING_SERIAL_PARITY_NONE); - priv->stopbits = 1; - priv->baud = 57600; - priv->bits = 8; + nm_assert(priv->parity == NM_SETTING_SERIAL_PARITY_NONE); + priv->stopbits = 1; + priv->baud = 57600; + priv->bits = 8; } /** @@ -224,106 +221,116 @@ nm_setting_serial_init (NMSettingSerial *self) * Returns: (transfer full): the new empty #NMSettingSerial object **/ NMSetting * -nm_setting_serial_new (void) +nm_setting_serial_new(void) { - return (NMSetting *) g_object_new (NM_TYPE_SETTING_SERIAL, NULL); + return (NMSetting *) g_object_new(NM_TYPE_SETTING_SERIAL, NULL); } static void -nm_setting_serial_class_init (NMSettingSerialClass *klass) +nm_setting_serial_class_init(NMSettingSerialClass *klass) { - GObjectClass *object_class = G_OBJECT_CLASS (klass); - NMSettingClass *setting_class = NM_SETTING_CLASS (klass); - GArray *properties_override = _nm_sett_info_property_override_create_array (); - - g_type_class_add_private (klass, sizeof (NMSettingSerialPrivate)); - - object_class->get_property = get_property; - object_class->set_property = set_property; - - /** - * NMSettingSerial:baud: - * - * Speed to use for communication over the serial port. Note that this - * value usually has no effect for mobile broadband modems as they generally - * ignore speed settings and use the highest available speed. - **/ - obj_properties[PROP_BAUD] = - g_param_spec_uint (NM_SETTING_SERIAL_BAUD, "", "", - 0, G_MAXUINT, 57600, - G_PARAM_READWRITE | - G_PARAM_STATIC_STRINGS); - - /** - * NMSettingSerial:bits: - * - * Byte-width of the serial communication. The 8 in "8n1" for example. - **/ - obj_properties[PROP_BITS] = - g_param_spec_uint (NM_SETTING_SERIAL_BITS, "", "", - 5, 8, 8, - G_PARAM_READWRITE | - G_PARAM_STATIC_STRINGS); - - /** - * NMSettingSerial:parity: - * - * Parity setting of the serial port. - **/ - /* ---keyfile--- - * property: parity - * format: 'e', 'o', or 'n' - * description: The connection parity; even, odd, or none. Note that older - * versions of NetworkManager stored this as an integer: 69 ('E') for even, - * 111 ('o') for odd, or 110 ('n') for none. - * example: parity=n - * ---end--- - * ---dbus--- - * property: parity - * format: byte - * description: The connection parity: 69 (ASCII 'E') for even parity, - * 111 (ASCII 'o') for odd, 110 (ASCII 'n') for none. - * ---end--- - */ - obj_properties[PROP_PARITY] = - g_param_spec_enum (NM_SETTING_SERIAL_PARITY, "", "", - NM_TYPE_SETTING_SERIAL_PARITY, - NM_SETTING_SERIAL_PARITY_NONE, - G_PARAM_READWRITE | - G_PARAM_STATIC_STRINGS); - _nm_properties_override_gobj (properties_override, - obj_properties[PROP_PARITY], - NM_SETT_INFO_PROPERT_TYPE ( - .dbus_type = G_VARIANT_TYPE_BYTE, - .gprop_to_dbus_fcn = parity_to_dbus, - .gprop_from_dbus_fcn = parity_from_dbus, - )); - - /** - * NMSettingSerial:stopbits: - * - * Number of stop bits for communication on the serial port. Either 1 or 2. - * The 1 in "8n1" for example. - **/ - obj_properties[PROP_STOPBITS] = - g_param_spec_uint (NM_SETTING_SERIAL_STOPBITS, "", "", - 1, 2, 1, - G_PARAM_READWRITE | - G_PARAM_STATIC_STRINGS); - - /** - * NMSettingSerial:send-delay: - * - * Time to delay between each byte sent to the modem, in microseconds. - **/ - obj_properties[PROP_SEND_DELAY] = - g_param_spec_uint64 (NM_SETTING_SERIAL_SEND_DELAY, "", "", - 0, G_MAXUINT64, 0, - G_PARAM_READWRITE | - G_PARAM_STATIC_STRINGS); - - g_object_class_install_properties (object_class, _PROPERTY_ENUMS_LAST, obj_properties); - - _nm_setting_class_commit_full (setting_class, NM_META_SETTING_TYPE_SERIAL, - NULL, properties_override); + GObjectClass * object_class = G_OBJECT_CLASS(klass); + NMSettingClass *setting_class = NM_SETTING_CLASS(klass); + GArray * properties_override = _nm_sett_info_property_override_create_array(); + + g_type_class_add_private(klass, sizeof(NMSettingSerialPrivate)); + + object_class->get_property = get_property; + object_class->set_property = set_property; + + /** + * NMSettingSerial:baud: + * + * Speed to use for communication over the serial port. Note that this + * value usually has no effect for mobile broadband modems as they generally + * ignore speed settings and use the highest available speed. + **/ + obj_properties[PROP_BAUD] = g_param_spec_uint(NM_SETTING_SERIAL_BAUD, + "", + "", + 0, + G_MAXUINT, + 57600, + G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); + + /** + * NMSettingSerial:bits: + * + * Byte-width of the serial communication. The 8 in "8n1" for example. + **/ + obj_properties[PROP_BITS] = g_param_spec_uint(NM_SETTING_SERIAL_BITS, + "", + "", + 5, + 8, + 8, + G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); + + /** + * NMSettingSerial:parity: + * + * Parity setting of the serial port. + **/ + /* ---keyfile--- + * property: parity + * format: 'e', 'o', or 'n' + * description: The connection parity; even, odd, or none. Note that older + * versions of NetworkManager stored this as an integer: 69 ('E') for even, + * 111 ('o') for odd, or 110 ('n') for none. + * example: parity=n + * ---end--- + * ---dbus--- + * property: parity + * format: byte + * description: The connection parity: 69 (ASCII 'E') for even parity, + * 111 (ASCII 'o') for odd, 110 (ASCII 'n') for none. + * ---end--- + */ + obj_properties[PROP_PARITY] = g_param_spec_enum(NM_SETTING_SERIAL_PARITY, + "", + "", + NM_TYPE_SETTING_SERIAL_PARITY, + NM_SETTING_SERIAL_PARITY_NONE, + G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); + _nm_properties_override_gobj( + properties_override, + obj_properties[PROP_PARITY], + NM_SETT_INFO_PROPERT_TYPE(.dbus_type = G_VARIANT_TYPE_BYTE, + .gprop_to_dbus_fcn = parity_to_dbus, + .gprop_from_dbus_fcn = parity_from_dbus, )); + + /** + * NMSettingSerial:stopbits: + * + * Number of stop bits for communication on the serial port. Either 1 or 2. + * The 1 in "8n1" for example. + **/ + obj_properties[PROP_STOPBITS] = g_param_spec_uint(NM_SETTING_SERIAL_STOPBITS, + "", + "", + 1, + 2, + 1, + G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); + + /** + * NMSettingSerial:send-delay: + * + * Time to delay between each byte sent to the modem, in microseconds. + **/ + obj_properties[PROP_SEND_DELAY] = + g_param_spec_uint64(NM_SETTING_SERIAL_SEND_DELAY, + "", + "", + 0, + G_MAXUINT64, + 0, + G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); + + g_object_class_install_properties(object_class, _PROPERTY_ENUMS_LAST, obj_properties); + + _nm_setting_class_commit_full(setting_class, + NM_META_SETTING_TYPE_SERIAL, + NULL, + properties_override); } |