Commit graph

366 commits

Author SHA1 Message Date
Dan Williams
519b1ea61d keyfile: namespace commonly-named functions (bgo #639537)
Now that keyfile is built in, we may have symbol naming conflicts
with the other plugins where code was copied & pasted around.  Fix
that by namespacing common function names in the keyfile plugin.

Thanks to Giovanni Campagna for pinpointing the issue.
2011-01-18 13:22:00 -06:00
Dan Williams
e041fabcfd ifcfg-rh: don't try to parse non-ifcfg files at startup 2011-01-17 23:12:24 -06:00
Dan Williams
3e8547ff1b ifcfg-rh: fix crash on ignored file change
Don't crash when a file we don't care about changes.
2011-01-17 23:11:51 -06:00
Dan Williams
b38f39cfc6 core: build keyfile plugin into NetworkManager
Since settings storage is now handled by NetworkManager, we must
have the ability to read/write all connection types at all times.
Since the 'keyfile' plugin is the only plugin that can handle all
connection types, build it into NetworkManager.
2011-01-12 18:12:23 -06:00
Dan Williams
f9ceafd4a1 Merge remote branch 'origin/master' into rm-userset 2011-01-12 15:46:37 -06:00
Mu Qiao
aaa54c65a8 ifnet: fix memory leak; handle file format changes 2011-01-11 12:33:37 -06:00
Radek Vykydal
b46cf443c0 ifcfg-rh: respect GATEWAYDEV for ibft/iSCSI configs too (rh #665027) 2011-01-11 09:54:29 -06:00
Dan Williams
16a8a951e9 ifcfg-rh: PSK isn't necessary for valid WPA connection
We'll ask secret agents for it if it's not stored in the connection.
2010-12-14 15:26:40 -06:00
Dan Williams
ff101f4946 settings: remove callback from nm_sysconfig_connection_get_secrets()
No reason it needs to use the callback pattern anymore.
2010-12-12 21:17:34 -06:00
Michael Biebl
898e08eef1 ifupdown: Allow to mark bridge ports as unmanaged (debian #530335)
Parse bridge configurations in /etc/network/interfaces and add
interfaces defined via bridge_ports to well_known_interfaces. This
allows to mark those interfaces as unmanaged if managed=false.
The "all" keyword and regexes are not supported and simply skipped.

Example:
iface br0 inet manual
	bridge_ports eth0 eth1 (→ eth0/1 will be marked as unmanaged)

See also:
http://manpages.ubuntu.com/manpages/maverick/man5/bridge-utils-interfaces.5.html

Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=530335
2010-12-09 00:15:17 -06:00
Michael Biebl
1939209759 ifupdown: Correctly mark unmanaged devices (debian #569215)
If we find a "iface ..." line, add the interface to
well_known_interfaces no matter if there is a connection for it or not.

Otherwise we fail to mark devices as unmageded in cases like

iface wlan0 inet manual
	wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

as NM does not know how to parse such a interface configuration.

Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=569215
2010-12-09 00:13:37 -06:00
Andrey Borzenkov
bfbf5ef374 ifcfg-rh: fix missing connections when an unmanaged interface was present
Don't emit "unmanaged-specs-changed" signal in read_one_connection(),
because it causes that next connections are not listed (get_connections() is
called prematurely and only connections read so far are available).
Steps to reproduce the bug:
1) create ifcfg-fake
DEVICE=loremipsum
HWADDR=01:02:03:04:05:06
NM_CONTROLLED=no
2) restart NetworkManager
3) only connections read *before* ifcfg-fake are available

Thanks to Robert Vogelgesang <vogel@users.sourceforge.net> for updating
the patch and analysis!
2010-12-06 15:55:48 +01:00
Jiří Klimeš
6903571160 ifcfg-rh: allow missing and 0.0.0.0 GATEWAYn lines in ifcfg-routes (rh #647992)
GATEWAY0=0.0.0.0 was erroneously denied. Also, missing GATEWAY0 entry caused
ifcfg-rh plugin to regard the connection as invalid. The commit fixes that and
makes it behave in accordance with initscripts.
2010-11-24 17:24:28 +01:00
Jiří Klimeš
8c9a124e72 keyfile: allow uppercase MAC addresses in unmanaged-devices in config file (rh #654714) 2010-11-23 16:33:11 +01:00
Dan Williams
3391a00354 core: fix up merge damage 2010-11-16 18:23:27 -06:00
Dan Williams
cfaa80b261 Merge remote branch 'origin/master' into rm-userset 2010-11-16 18:08:48 -06:00
Jiří Klimeš
d32a29ec52 ifcfg-rh: quiet ifcfg-rh plugin when re-read connection is the same as in-memory one
It occurs, for example, when NM updates connection's timestamp.
2010-11-10 17:28:36 +01:00
Jiří Klimeš
0376f6b1ce keyfile: ignore temporary files (bgo #602868)
Ignore temporary files created by vim editor and temporary files created
internally by g_file_set_contents() (mkstemp()) when writing connections.
2010-11-10 16:21:25 +01:00
Dan Williams
c580444fd7 keyfile: quiet keyfile plugin when re-read connection is the same as in-memory one
It occurs, for example, when NM updates connection's timestamp.
2010-11-10 16:14:51 +01:00
Dan Williams
e8da63889b keyfile: create keyfile data directory during install
So distributions don't have to do it.
2010-11-08 09:07:08 -06:00
Jiří Klimeš
579ec4e026 ifcfg-rh: remove unused D-Bus calls from ifcfg-rh tests 2010-11-08 11:34:26 +01:00
Ozan Çağlayan
6fd3c0d576 keyfile: remove unused D-Bus calls from test-keyfile.c 2010-11-08 11:26:51 +01:00
Jiří Klimeš
6e067a9d2b ifcfg-rh: ignore temporary files with ';[a-fA-F0-9]{8}' suffix created by rpm (rh #598203) 2010-11-02 12:15:54 +01:00
Dan Williams
b93cad0149 keyfile: propagate errors from updating new connection settings 2010-10-29 23:16:04 -05:00
Dan Williams
d3e640eacf ifcfg-rh: propagate errors from updating new connection settings 2010-10-29 23:15:38 -05:00
Dan Williams
034aee641a ifcfg-rh: fix possible warning
'added' won't always be valid, and thus the GObject typecast could fail.
Use a C typecast instead.
2010-10-29 23:14:42 -05:00
Dan Williams
c2ca4298fa ifcfg-rh: ensure connection is still alive for the removal signal 2010-10-29 16:58:07 -05:00
Dan Williams
37845af954 settings: return new connection object path from AddConnection
Finally.
2010-10-29 14:34:33 -05:00
Dan Williams
856a1c6b2c ifnet: fix memory leak 2010-10-29 14:01:22 -05:00
Dan Williams
28b17c8b4f ifnet: trivial cleanups 2010-10-29 13:58:23 -05:00
Dan Williams
8a6e2b6560 ifnet: constify tons of stuff
Use 'const char *' where appropriate.
2010-10-29 13:56:23 -05:00
Dan Williams
090329d0be ifnet: fix include name broken by 3f64bf5e36 2010-10-29 11:02:56 -05:00
Dan Williams
d1faa496d0 ifcfg-rh: remove unused UDI stuff 2010-10-28 09:29:16 -05:00
Dan Williams
3f64bf5e36 settings: rename NM_SYSCONFIG_SETTINGS_ERROR -> NM_SETTINGS_ERROR 2010-10-27 20:38:26 -05:00
Dan Williams
83ab4ec2ee settings: system-settings -> settings 2010-10-27 20:22:14 -05:00
Dan Williams
8f7aedc7e0 Merge remote branch 'origin/master' into rm-userset 2010-10-18 19:02:27 -05:00
Dan Williams
be97e7f104 build: include <config.h> for kill(2), isblank(3), and isascii(3)
config.h defines _GNU_SOURCE, which in turn defines the bits necessary
for kill, isblank, and isascii.  So wherever we use those, we need
to make sure config.h is included.
2010-10-08 22:46:55 -05:00
Jiří Klimeš
088454fcab ifcfg-rh: fix assertion failure when IP4 setting is missing while writing connection 2010-09-30 15:13:39 +02:00
Dan Williams
8b41f70dd5 Merge remote branch 'origin/master' into rm-userset 2010-09-27 10:30:46 -05:00
Dan Williams
b80f31e191 trivial: typo fixes
Sent by a Debian user to Michael Biebl.  No other attribution
information available.  Thanks Debian user!
2010-09-25 00:34:10 -05:00
Dan Williams
6f2aa8a817 ifupdown: return NULL hostname, not a zero-length string 2010-09-24 18:54:37 -05:00
Dan Williams
da3d920d97 keyfile: read and write SSIDs as strings by default
Keep compat with old format if the SSID includes unprintable
characters.  But having to type an int list for an SSID is just silly
and it's about damn time we fix that.
2010-09-16 18:27:19 -05:00
Dan Williams
7f4a7a62c4 keyfile: clean up directory structure
The IO library was in io/ because I was too lazy to find autotools'
SUBDIRS rules at the time and that you could use '.' for the current
directory.  Fix that and use its own error defines instead of
the system settings service.  Clean up a for more things for good
measure too (like KEYFILE_DIR, etc).
2010-09-16 17:39:06 -05:00
Dan Williams
6e287e4179 Merge remote branch 'origin/master' into rm-userset 2010-09-16 17:10:49 -05:00
Dan Williams
c40d79ae97 keyfile: be chattier, especially about parsing errors
This should help people debug issues with keyfile not recognizing
files since it'll actually print out something when it fails to
parse stuff.  Also logs changes, new connections, and deletions.
2010-09-16 15:44:06 -05:00
Dan Williams
f58f2d7f39 ifnet: update for settings rework 2010-08-26 15:10:29 -05:00
Dan Williams
022d8e665c Merge remote branch 'origin/master' into gsoc 2010-08-26 09:18:37 -05:00
Mu Qiao
38f3e5ca61 ifnet: add Gentoo system settings plugin 2010-08-24 12:09:30 -05:00
Dan Williams
ba355b6a7e ifupdown: make testcase parsing quiet
Removes messages about invalid ENI formatting when running the
testcases.
2010-08-12 22:44:07 -05:00
Peter Marschall
a5b77939fb ifupdown: make parser for /etc/network/interfaces more robust
The previous implementation of the parser for /etc/network/interfaces had
quite a few drawbacks:
- it expected the lines to be terminated with "\n", even the last line
- it ignored line wraps with "\\" followed by "\n"
- it expected over-long lines to be shorter than 510 characters
- it ignored line wraps on over-long lines
- it treated spaces and tabs differently
- it did not make sure to really tokenize on word boundaries
- it treated the equivalent stanzas "auto" and "allow-auto" differently
- it ignored the fact that the "allow-*" stanzas can take multiple arguments
  that need to be separated to be recognized NetworkManager's processing later
- it allowed "non-block" stanzas to appear before a block

This patch is a rewrite of the parser to fix the issues mentioned:
- it accepts the last line even if it is not terminated by "\n"
- it skips over-long lines, emits a warning and even takes into account
  that over-long lines may be wrapped to next lines
- it un-wraps wrapped lines
- it uses spaces and tabs equivalently to tokenize the input
- it treats "allow-auto" as a synonym to "auto"
- it splits multi-argument "auto"/"allow-*" into multiple
  single-argument stanzas of the same type
- it warns on data stanzas before the first block stanza
2010-08-12 22:41:05 -05:00