NetworkManager/libnm-core
Thomas Haller 6d675a943b ifcfg-rh: refactor parsing of route options to be strict
The previous parsing was done using regex. One could implement a
complex regex to parse the setting. However, as it was implemented,
the regex would just pick out parts of the line that it expects,
and ignore unknown parts.

Let's be strict about what we parse. The only strong requirement
is that NM can parse everything that was written by NM itself.
Eventually, we could extend the parser to accept everything that
initscripts accept.

Initscripts split the line at $IFS and do filename globbing on the
arguments. That is ugly, because globbing is of coures wrong (we don't
do that). But also, the splitting at $IFS cannot be escaped, hence for
initscripts it is impossible to use '<space><tab><newline>'. We do that
too, as it makes it easy to parse. Later we may want to extend this to
allow a form of escaping/quoting.

Yes, we may now ignore routes that are not defined as we expect them.
2017-09-18 20:14:09 +02:00
..
tests shared: add nm_utils_strsplit_set() helper 2017-09-18 20:14:09 +02:00
crypto.c libnm: refactor loop in crypto_md5_hash() 2016-11-09 12:07:33 +01:00
crypto.h all: cleanup includes in header files 2016-08-17 19:09:50 +02:00
crypto_gnutls.c crypto: don't try to decrypt PKCS#8 key if no password is supplied 2016-09-23 18:05:54 +02:00
crypto_nss.c all: use "unsigned" instead of "unsigned int" 2017-03-14 11:26:29 +01:00
nm-connection-private.h core: infer the bluetooth type from the presence of the supplemental settings 2017-08-23 16:18:44 +02:00
nm-connection.c core: infer the bluetooth type from the presence of the supplemental settings 2017-08-23 16:18:44 +02:00
nm-connection.h include: use double-quotes to include our own headers 2017-03-09 14:12:35 +01:00
nm-core-internal.h ifcfg-rh: refactor parsing of route options to be strict 2017-09-18 20:14:09 +02:00
nm-core-types-internal.h libnm: internally expose NMVlanQosMapping struct in "nm-core-internal.h" 2015-11-02 13:57:02 +01:00
nm-core-types.h libnm: add NMSettingUser 2017-03-28 14:58:21 +02:00
nm-dbus-interface.h device: add NMDevicePPP 2017-08-05 08:03:15 +02:00
nm-dbus-utils.c all: cleanup includes and let "nm-default.h" include "config.h" 2016-02-19 17:53:25 +01:00
nm-errors.c all: use NM_CACHED_QUARK_FCN() instead of G_DEFINE_QUARK() 2017-02-10 14:33:52 +01:00
nm-errors.h ppp: split ppp manager into a plugin 2016-12-06 11:08:11 +01:00
nm-keyfile-internal.h cli: split nm-meta-setting-desc out of settings 2017-03-30 13:09:58 +02:00
nm-keyfile-reader.c libnm/keyfile: properly read user data from keyfile 2017-05-06 14:12:19 +02:00
nm-keyfile-utils.c keyfile: fix handling unsupported characters in keys 2017-05-06 14:12:18 +02:00
nm-keyfile-utils.h keyfile: fix handling unsupported characters in keys 2017-05-06 14:12:18 +02:00
nm-keyfile-writer.c all: fix typos in documentation, translated strings and comments 2017-05-28 17:33:37 +02:00
nm-property-compare.c build: don't link against libm.so 2017-03-23 19:06:02 +01:00
nm-property-compare.h all: cleanup includes in header files 2016-08-17 19:09:50 +02:00
nm-setting-8021x.c libnm-core: 8021x: fix check on private key password 2017-06-27 10:11:44 +02:00
nm-setting-8021x.h libnm-core: fix typo in 802.1x doc comment 2017-06-06 09:28:59 +02:00
nm-setting-adsl.c libnm: use enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-setting-adsl.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-bluetooth.c core: infer the bluetooth type from the presence of the supplemental settings 2017-08-23 16:18:44 +02:00
nm-setting-bluetooth.h core/bluetooth: add NAP type 2017-05-31 20:15:52 +02:00
nm-setting-bond.c docs: fix spelling errors in tranlated strings and documentation 2017-08-11 11:05:12 +02:00
nm-setting-bond.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-bridge-port.c all: fix minor typos in settings docs 2017-07-03 21:23:27 +02:00
nm-setting-bridge-port.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-bridge.c bridge: introduce a bridge.group-forward-mask connection property 2017-07-27 09:35:11 +02:00
nm-setting-bridge.h bridge: introduce a bridge.group-forward-mask connection property 2017-07-27 09:35:11 +02:00
nm-setting-cdma.c libnm: use enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-setting-cdma.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-connection.c libnm-core: clarify the meaning of the connection.permissions property 2017-07-25 18:01:51 +02:00
nm-setting-connection.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-dcb.c all: fix minor typos in settings docs 2017-07-03 21:23:27 +02:00
nm-setting-dcb.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-dummy.c libnm: use enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-setting-dummy.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-generic.c libnm: use enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-setting-generic.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-gsm.c all: fix minor typos in settings docs 2017-07-03 21:23:27 +02:00
nm-setting-gsm.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-infiniband.c libnm: use enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-setting-infiniband.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-ip-config.c ifcfg-rh: refactor parsing of route options to be strict 2017-09-18 20:14:09 +02:00
nm-setting-ip-config.h core,libnm-core: use same route attribute names of iproute2 2017-03-22 12:04:25 +01:00
nm-setting-ip-tunnel.c libnm: use enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-setting-ip-tunnel.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-ip4-config.c libnm-core: improve documentation for ipv4.dhcp-client-id property 2017-07-25 17:47:01 +02:00
nm-setting-ip4-config.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-ip6-config.c docs: fix spelling errors in tranlated strings and documentation 2017-08-11 11:05:12 +02:00
nm-setting-ip6-config.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-macsec.c libnm: use enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-setting-macsec.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-macvlan.c libnm: use enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-setting-macvlan.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-olpc-mesh.c libnm: use enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-setting-olpc-mesh.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-ppp.c libnm: use enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-setting-ppp.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-pppoe.c libnm-core: fix memory leak in NMSettingPppoe 2017-08-30 22:03:59 +02:00
nm-setting-pppoe.h libnm,clients: add 'parent' property to PPPoE setting 2017-08-05 08:03:15 +02:00
nm-setting-private.h libnm: add enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-setting-proxy.c libnm: use enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-setting-proxy.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-serial.c libnm: use enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-setting-serial.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-team-port.c libnm: use enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-setting-team-port.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-team.c libnm: use enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-setting-team.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-tun.c libnm: use enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-setting-tun.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-user.c libnm-core: add ifcfg-rh documentation for user setting 2017-09-05 10:33:42 +02:00
nm-setting-user.h libnm: add NMSettingUser 2017-03-28 14:58:21 +02:00
nm-setting-vlan.c libnm: use enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-setting-vlan.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-vpn.c libnm: use enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-setting-vpn.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-vxlan.c libnm: use enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-setting-vxlan.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-wimax.c libnm: use enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-setting-wimax.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-wired.c docs: fix spelling errors in tranlated strings and documentation 2017-08-11 11:05:12 +02:00
nm-setting-wired.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting-wireless-security.c all: fix minor typos in settings docs 2017-07-03 21:23:27 +02:00
nm-setting-wireless-security.h libnm: skip meta enum value NM_WEP_KEY_TYPE_LAST from glib-mkenums 2017-05-23 13:37:10 +02:00
nm-setting-wireless.c docs: fix spelling errors in tranlated strings and documentation 2017-08-11 11:05:12 +02:00
nm-setting-wireless.h libnm-core: sensible docstrings for NMSettings* 2017-03-17 10:15:11 +01:00
nm-setting.c libnm: streamline functions in nm-connection.c 2017-06-07 09:07:18 +02:00
nm-setting.h include: use double-quotes to include our own headers 2017-03-09 14:12:35 +01:00
nm-simple-connection.c libnm-core: add _nm_simple_connection_new_from_dbus() function 2016-03-26 12:10:54 +01:00
nm-simple-connection.h include: use double-quotes to include our own headers 2017-03-09 14:12:35 +01:00
nm-utils-private.h libnm-core: define known route attribute names and validation function 2017-03-06 15:20:25 +01:00
nm-utils.c libnm: fix uninitialized variable in get_system_encodings() 2017-09-13 08:17:30 +02:00
nm-utils.h libnm-core: add attribute parsing/format helpers 2017-03-06 15:20:25 +01:00
nm-version.h release: bump version to 1.9.0 (development) 2017-03-28 16:34:22 +02:00
nm-vpn-dbus-interface.h libnm: revert coercing NMVpnConnectionStateReason to NMActiveConnectionStateReason 2017-03-17 13:00:32 +01:00
nm-vpn-editor-plugin.c all: modify line separator comments to be 80 chars wide 2016-10-03 12:01:15 +02:00
nm-vpn-editor-plugin.h libnm-core/vpn-editor-plugin: add missing documentation 2016-11-21 13:53:03 +01:00
nm-vpn-plugin-info.c all: use nm_utils_strv_find_first() from shared/nm-utils 2017-02-04 17:55:30 +01:00
nm-vpn-plugin-info.h libnm/vpn: pass NMVpnPluginInfo to the NMVpnEditorPlugin instance 2016-06-15 10:32:32 +02:00