summaryrefslogtreecommitdiff
path: root/libnm-util/nm-setting-wired.c
Commit message (Collapse)AuthorAgeFilesLines
* all: goodbye libnm-glibLubomir Rintel2019-04-161-1029/+0
| | | | | | | | | | | | | | | | | | | | | | | This removes libnm-glib, libnm-glib-vpn, and libnm-util for good. The it has been replaced with libnm since NetworkManager 1.0, disabled by default since 1.12 and no up-to-date distributions ship it for years now. Removing the libraries allows us to: * Remove the horrible hacks that were in place to deal with accidental use of both the new and old library in a single process. * Relief the translators of maintenance burden of similar yet different strings. * Get rid of known bad code without chances of ever getting fixed (libnm-glib/nm-object.c and libnm-glib/nm-object-cache.c) * Generally lower the footprint of the releases and our workspace If there are some really really legacy users; they can just build libnm-glib and friends from the NetworkManager-1.16 distribution. The D-Bus API is stable and old libnm-glib will keep working forever. https://github.com/NetworkManager/NetworkManager/pull/308
* Revert "all: goodbye libnm-glib"Lubomir Rintel2019-04-031-0/+1029
| | | | | | We need this for a little little longer :( This reverts commit 1de8383ad9fdfc8f552117e5d109bdfa7005634b.
* all: goodbye libnm-glibLubomir Rintel2019-03-191-1029/+0
| | | | | | | | | | | | | | | | | | | | | | | This removes libnm-glib, libnm-glib-vpn, and libnm-util for good. The it has been replaced with libnm since NetworkManager 1.0, disabled by default since 1.12 and no up-to-date distributions ship it for years now. Removing the libraries allows us to: * Remove the horrible hacks that were in place to deal with accidental use of both the new and old library in a single process. * Relief the translators of maintenance burden of similar yet different strings. * Get rid of known bad code without chances of ever getting fixed (libnm-glib/nm-object.c and libnm-glib/nm-object-cache.c) * Generally lower the footprint of the releases and our workspace If there are some really really legacy users; they can just build libnm-glib and friends from the NetworkManager-1.16 distribution. The D-Bus API is stable and old libnm-glib will keep working forever. https://github.com/NetworkManager/NetworkManager/pull/308
* all: remove consecutive empty linesBeniamino Galvani2018-04-301-1/+0
| | | | | | | Normalize coding style by removing consecutive empty lines from C sources and headers. https://github.com/NetworkManager/NetworkManager/pull/108
* all: replace non-leading tabs with spacesThomas Haller2018-02-071-1/+1
| | | | | | We commonly only allow tabs at the beginning of a line, not afterwards. The reason for this style is so that the code looks formated right with tabstop=4 and tabstop=8.
* all: fix minor typos in settings docsYuri Chornoivan2017-07-031-2/+2
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=784440
* all: replace _nm_utils_string_in_list() with g_strv_contains()Thomas Haller2016-06-171-5/+5
|
* all: cleanup includes and let "nm-default.h" include "config.h"Thomas Haller2016-02-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | - All internal source files (except "examples", which are not internal) should include "config.h" first. As also all internal source files should include "nm-default.h", let "config.h" be included by "nm-default.h" and include "nm-default.h" as first in every source file. We already wanted to include "nm-default.h" before other headers because it might contains some fixes (like "nm-glib.h" compatibility) that is required first. - After including "nm-default.h", we optinally allow for including the corresponding header file for the source file at hand. The idea is to ensure that each header file is self contained. - Don't include "config.h" or "nm-default.h" in any header file (except "nm-sd-adapt.h"). Public headers anyway must not include these headers, and internal headers are never included after "nm-default.h", as of the first previous point. - Include all internal headers with quotes instead of angle brackets. In practice it doesn't matter, because in our public headers we must include other headers with angle brackets. As we use our public headers also to compile our interal source files, effectively the result must be the same. Still do it for consistency. - Except for <config.h> itself. Include it with angle brackets as suggested by https://www.gnu.org/software/autoconf/manual/autoconf.html#Configuration-Headers
* all: drop includes to <glib/gi18n.h> for "nm-default.h"Dan Winship2015-08-051-1/+0
| | | | | | | The localization headers are now included via "nm-default.h". Also fixes several places, where we wrongly included <glib/gi18n-lib.h> instead of <glib/gi18n.h>. For example under "clients/" directory.
* libnm: fix memleak in nm_setting_wired_get_s390_option() and refactorThomas Haller2015-02-091-18/+15
| | | | | @keys was leaked. Also refactor the function to iterate the hash only once.
* libnm, libnm-util: move settings doc generation to libnm-coreDan Winship2014-11-191-105/+0
| | | | | | | | | | | | | | | | | | | | | Move the settings/plugins doc generation from libnm-util to libnm-core, since libnm-util isn't being updated for all new properties. With this commit, the keyfile and ifcfg-rh documentation is basically unchanged, except that deprecated properties are now gone, and new properties have been added, and the sections are in a different order. (generate-plugin-docs.pl just outputs the settings in Makefile order, and they were unsorted in libnm-util, but are sorted in libnm-core). The settings documentation used for nm-settings.5, the D-Bus API docs, and the nmcli help is changed a bit more at this point, and mostly for the worse, since the libnm-core setting properties don't match up with the D-Bus API as well as the libnm-util ones do. To be fixed... (I also removed the "plugins docs" line in each plugin docs comment block while moving them, since those blocks will be used for more than just plugins soon, and it's sort of obvious anyway.)
* libnm*: fix library gettext usageDan Winship2014-11-131-1/+1
| | | | | | | | | | | | | | | | | Libraries need to include <gi18n-lib.h>, not <gi18n.h>, so that _() will get defined to "dgettext (GETTEXT_DOMAIN, string)" rather than "gettext (string)" (which will use the program's default domain, which works fine for programs in the NetworkManager tree, but not for external users). Likewise, we need to call bindtextdomain() so that gettext can find the translations if the library is installed in a different prefix from the program using it (and bind_textdomain_codeset(), so it will know the translations are in UTF-8 even if the locale isn't). (The fact that no one noticed this was broken before is because the libraries didn't really start returning useful translated strings much until 0.9.10, and none of the out-of-tree clients have been updated to actually show those strings to users yet.)
* all: consistently include config.hDan Winship2014-11-131-0/+2
| | | | | | | | | | | config.h should be included from every .c file, and it should be included before any other include. Fix that. (As a side effect of how I did this, this also changes us to consistently use "config.h" rather than <config.h>. To the extent that it matters [which is not much], quotes are more correct anyway, since we're talking about a file in our own build tree, not a system include.)
* libnm-util: add ifcfg-rh specific description for propertiesjk/bgo683111-keyfile-ifcfg-rh-docsJiří Klimeš2014-08-291-0/+79
| | | | | as comments in libnm-util/nm-setting-*.c files The comments are parsed by generate-plugin-docs.pl script.
* libnm-util: add keyfile specific description for propertiesJiří Klimeš2014-08-291-0/+26
| | | | | as comments in libnm-util/nm-setting-*.c files The comments are parsed by generate-plugin-docs.pl script.
* libnm-util, libnm-glib: whitespace fixesDan Winship2014-07-151-10/+19
| | | | Fix indentation, kill trailing whitespace, split some long lines.
* libnm-util, libnm-glib: standardize copyright/license headersDan Winship2014-07-151-5/+2
| | | | | | | | | | | | | | | | | | - Remove list of authors from files that had them; these serve no purpose except to quickly get out of date (and were only used in libnm-util and not libnm-glib anyway). - Just say "Copyright", not "(C) Copyright" or "Copyright (C)" - Put copyright statement after the license, not before - Remove "NetworkManager - Network link manager" from the few files that contained it, and "libnm_glib -- Access network status & information from glib applications" from the many files that contained it. - Remove vim modeline from nm-device-olpc-mesh.[ch], add emacs modeline to files that were missing it.
* libnm-util: remove NMSetting* GParamSpec docsDan Winship2014-06-191-87/+43
| | | | | | | | | | | | Remove all the GParamSpec docs, since everything now uses the gtk-doc docs instead, so there's no point in having two copies of each (which are often out of sync anyway). Since we're touching so many lines anyway, also fix up the indentation of the remaining property-installing lines, and add G_PARAM_STATIC_STRINGS to each paramspec (so the nick strings don't get strduped). Also, be consistent about starting a new line between "g_object_class_install_property" and its opening parenthesis.
* libnm-util: various NMSetting* property doc fixes/improvementsDan Winship2014-06-191-20/+21
| | | | | | | | | | Fix up various issues with the docs for the NMSetting properties, and pull in text from the GParamSpec docs where the GParamSpec docs were better (or contained information that is necessary in the context of nm-settings.5). Also, consistently wrap all of the doc comments to the same width (80 columns).
* libnm-util: fix gtk-doc bugs in NMSetting* propertiesDan Winship2014-06-191-2/+2
| | | | | | | | Fix misused gtk-doc annotations and incorrectly-identified properties. In particular, the upcoming introspection-based generate-settings-spec expands macro and enum values, so if you use '%' where you should have used '#', it will fail to find an expansion, and error out.
* libnm-util, libnm-glib: be consistent about "Wi-Fi", "Ethernet", ↵Dan Winship2014-06-191-5/+5
| | | | | | | | | "InfiniBand" in docs We made the UIs consistent last year, but missed the documentation. Fix the docs to also consistently use "Wi-Fi" rather than "WiFi", "Wifi", "wifi", or "WiFI"; "Ethernet" rather than "ethernet"; and "InfiniBand" rather than "Infiniband".
* libnm-util: add *_remove_*_by_value() functions for '802-3-ethernet' settingJiří Klimeš2014-02-281-1/+57
| | | | | | nm_setting_wired_remove_mac_blacklist_item_by_value() and missing nm_setting_wired_clear_mac_blacklist_items()
* libnm-util: refactor NMSetting name and register_settingsThomas Haller2013-12-121-1/+0
| | | | | | | | | | | | | | | | - refactor register_settings to allow lookup by GType and add the settings name to SettingInfo. - setting NM_SETTING_NAME is deprecated and should not be set anymore. Indeed it has always be a bug, to reset the name to a different value. The only valid place to set the name was in the _init() function of the derived class itself. This is now no longer needed/possible. Instead the name get's detected based on the registered setting types. This makes use of the registered metadata that is available anyway since every usable setting has to register itself. Signed-off-by: Thomas Haller <thaller@redhat.com>
* libnm-util: add INFERRABLE flag and remove CANDIDATEDan Williams2013-12-051-5/+5
| | | | | | INFERRABLE means the opposite of CANDIDATE; a property which NetworkManager can read ("infer") from the system or the kernel when generating connections. CANDIDATE isn't a great name and thus dies.
* libnm-util: remove usage of NM_SETTING_PARAM_SERIALIZEDan Williams2013-12-021-11/+11
| | | | | The only property that is not serializes is each settings' 'name' property, so the flag serves no purpose.
* core: cleanup freeing of glib collections of pointersThomas Haller2013-10-221-2/+2
| | | | | | | | | | | | | | | | When freeing one of the collections such as GArray, GPtrArray, GSList, etc. it is common that the items inside the connections must be freed/unrefed too. The previous code often iterated over the collection first with e.g. g_ptr_array_foreach and passing e.g. g_free as GFunc argument. For one, this has the problem, that g_free has a different signature GDestroyNotify then the expected GFunc. Moreover, this can be simplified either by setting a clear function (g_ptr_array_set_clear_func) or by passing the destroy function to the free function (g_slist_free_full). Signed-off-by: Thomas Haller <thaller@redhat.com>
* libnm-util: prefix errors with 'setting.property' instead of 'property' onlyJiří Klimeš2013-06-131-8/+8
|
* libnm-util: deprecate nm_utils_slist_free(), use g_slist_free_full()Dan Winship2013-05-291-2/+2
|
* libnm-util: implement connection changed signalDan Williams2013-05-281-1/+7
| | | | | Emitted whenever settings are added or removed from the connection, and whenever any property of any setting in the connection is changed.
* libnm-util: add access functions for 'mac-address-blacklist' to wired/wirelessJiří Klimeš2013-05-071-0/+100
| | | | | | | nm_setting_wire(d/less)_get_num_mac_blacklist_items() nm_setting_wire(d/less)_get_mac_blacklist_item() nm_setting_wire(d/less)_add_mac_blacklist_item() nm_setting_wire(d/less)_remove_mac_blacklist_item()
* Use %NULL macro in doc stringsMartin Pitt2013-04-191-2/+2
| | | | | | Mass-converted "NULL" to "%NULL" in docstrings with find -name '*.c'| xargs sed -i '/^ \*.*[^%]NULL/ s/NULL\b/%NULL/g'
* Revert :carrier-detect properties and associated codeDan Winship2013-04-031-59/+0
| | | | | Ignoring carrier is generally something you want at the machine level (eg, for a server), not at the connection level.
* libnm-util: add nm_setting_wired_get_valid_s390_options()Jiří Klimeš2013-03-191-0/+16
|
* libnm-util: fix documentation of add(remove)_s390_option()Jiří Klimeš2013-03-181-5/+6
|
* libnm-util: make property verification errors more descriptiveJiří Klimeš2013-03-131-25/+40
| | | | | | - fix g_set_error()/g_set_error_literal() usage - make the error messages translatable - use g_prefix_error() to prepend property name
* libnm-util: fix leak of s390 subchannelsDan Williams2013-03-081-0/+5
| | | | | | | | | | | | | | | | ==23089== 7,293 (1,248 direct, 6,045 indirect) bytes in 39 blocks are definitely lost in loss record 5,100 of 5,123 ==23089== at 0x4A0881C: malloc (vg_replace_malloc.c:270) ==23089== by 0x39B905488E: g_malloc (gmem.c:159) ==23089== by 0x39B9068CA1: g_slice_alloc (gslice.c:1003) ==23089== by 0x39B9024E90: g_ptr_array_sized_new (garray.c:884) ==23089== by 0x31FB81B3FC: ptrarray_copy (dbus-gvalue-utils.c:1047) ==23089== by 0x31FB81845C: proxy_value_copy (dbus-gtype-specialized.c:446) ==23089== by 0x39B980F51E: g_boxed_copy (gboxed.c:359) ==23089== by 0x31FC03134C: set_property (nm-setting-wired.c:619) ==23089== by 0x39B9819972: g_object_set_property (gobject.c:1352) ==23089== by 0x31FC01A9A7: nm_setting_enumerate_values (nm-setting.c:589) ==23089== by 0x31FC01AA81: nm_setting_duplicate (nm-setting.c:264) ==23089== by 0x31FC01633B: duplicate_cb (nm-connection.c:1182)
* trivial: plug some memory leaksDan Williams2013-02-251-0/+1
| | | | (review+ danw)
* libnm-util: add the detailed description of carrier-detect to blurb as wellJiří Klimeš2013-02-181-1/+7
| | | | | So that we have the description in generated html documentation and nm-settings manual page.
* libnm-utils: add :carrier-detect propertiesDan Winship2013-02-151-0/+50
| | | | | | | | | | | | | | | | | | For settings corresponding to devices that have a :carrier property (ie bond, bridge, infiniband, vlan, and wired), add a :carrier-detect property specifying how that affects the connection: yes: The connection can only be activated when the device has carrier, and will be deactivated if the device loses carrier (for more than 4 seconds). no: The connection ignores carrier on the device; it can be activated when there is no carrier, and stays activated when carrier is lost. on-activate: The connection can only be activated when the device has carrier, but it will not be deactivated if the device loses carrier. https://bugzilla.gnome.org/show_bug.cgi?id=688284
* libnm-util: clean up setting registrationDan Williams2012-10-291-1/+7
| | | | | | | | | | | | Make setting type registration less icky; instead of having the connection register all the settings, have the settings themselves register that information at library load time. Putting this sort of thing in G_DEFINE_TYPE_WITH_CODE is apparently more standard than the home-rolled stuff we had before. Also document the priority stuff so when adding new settings, people know what priority to use. (cleanups by jklimes)
* all: Don't use ctype.h macrosDan Winship2012-09-261-1/+0
| | | | | | | | | The ctype macros (eg, isalnum(), tolower()) are locale-dependent. Use glib's ASCII-only versions instead. Also, replace isascii() with g_ascii_isprint(), since isascii() accepts control characters, which isn't what the code wanted in any of the places where it was using it.
* Use glib-mkenums to generate enum typesDan Winship2012-02-151-23/+0
| | | | | | | | | | | | | | | | | | | Rather than generating enum classes by hand (and complaining in each file that "this should really be standard"), use glib-mkenums. Unfortunately, we need a very new version of glib-mkenums in order to deal with NM's naming conventions and to fix a few other bugs, so just import that into the source tree temporarily. Also, to simplify the use of glib-mkenums, import Makefile.glib from https://bugzilla.gnome.org/654395. To avoid having to run glib-mkenums for every subdirectory of src/, add a new "generated" directory, and put the generated enums files there. Finally, use Makefile.glib for marshallers too, and generate separate ones for libnm-glib and NetworkManager.
* libnm-util: fix up some GObject introspection annotationsDan Williams2011-07-051-1/+1
|
* docs: update Wired setting documentationDan Williams2011-07-051-5/+77
|
* core: add MAC address blacklisting feature for WiFi and ethernet connectionsJiří Klimeš2011-06-301-1/+54
| | | | | | | | "mac-address-blacklist" property is added to the ethernet and WiFi connections. It is the MAC addresses list of devices on which the connection won't be activated. Original patch (NM_0_8 branch) from Thomas Bechtold <thomasbechtold@jpberlin.de>
* libnm-util: fix s390 CTC nettype and whitelist ctcprot option (bgo #647578) ↵Karsten Hopp2011-04-121-3/+3
| | | | (rh #641986)
* doc: trivial fix in documentation of 's390-subchannels' propertyJiří Klimeš2010-08-061-2/+2
|
* core: handle s390 options more cleanlyDan Williams2010-06-291-94/+229
| | | | | | | | There are so many... so handle them as a table of key/value pairs instead of having separate functions for each one. At the moment nothing but subchannels is used internally, but this allows plugins to preserve options that NM doesn't care about when reading/writing system configuration.
* libnm-util: fix default s390 property valuesDan Williams2010-06-251-2/+2
|
* Merge remote branch 'origin/master' into zvmDan Williams2010-06-251-13/+58
|\