Jiří Klimeš
113d358ce5
cli: make 'value' in NmcOutputField non const
2013-03-26 12:15:49 -04:00
Jiří Klimeš
82fb1978a4
all: use G_VALUE_INIT to initialize GValue variables
...
It makes the initializations more explicit.
G_VALUE_INIT is available since glib 2.30, and NM now require glib >= 2.32
2013-03-25 08:41:18 +01:00
Jiří Klimeš
17aff29082
cli: add NM_ACTIVE_CONNECTION_STATE_DEACTIVATED state-to-string translation
2013-02-11 13:00:02 +01:00
Jiří Klimeš
b3edc86e78
cli: prevent possible crash if removing devices while nmcli running (bgo #693158 )
2013-02-05 10:00:58 +01:00
Jiří Klimeš
0215ad40f0
cli: use setting_details() to simplify printing connection details
2013-01-30 12:27:13 +01:00
Thomas Graf
789f8c730d
cli: add bridge support
2012-11-30 13:21:51 -06:00
Jiří Klimeš
35689c7bd0
cli: allow next_arg() to move arguments past the last one
2012-11-20 15:20:38 +01:00
Jiří Klimeš
e9e2c5645f
cli: replace 'dev' and 'con' OBJECTs by 'device', resp. 'connection'
...
Shorter forms work as previously. Thus, all of these commands are valid:
nmcli device, nmcli devic, nmcli devi, nmcli dev, nmcli de, nmcli d
nmcli connection, nmcli connectio, ..., nmcli conn, nmcli con, ..., nmcli c
2012-11-13 15:41:20 +01:00
Jiří Klimeš
c8974bc32d
cli: allow more forms of "help" command showing OBJECTs' description
...
allow "-[h]elp" and "--[h]elp" in addition to "help"
2012-11-13 15:41:20 +01:00
Jiří Klimeš
853803c2f0
cli: use an error quark for domain in g_set_error() instead of 0 (rh #842975 )
...
glib 2.32 makes a runtime check that domain is not NULL:
GLib-WARNING **: (gerror.c:390):g_error_new_valist: runtime check failed: (domain != 0)
2012-07-25 13:57:45 +02:00
Jiří Klimeš
a8076f0d9d
cli: fill active connections' data even if we can't get NMConnection
...
This can happen e.g. when D-Bus limits number of replies and there's
a lot of connections. Then nm_remote_settings_list_connections() won't
return all connections and the connection that was activated can be among
the missing connections.
2012-05-22 17:05:34 +02:00
Pantelis Koukousoulas
8039dd30d8
adsl: add libnm-glib and nmcli code
...
For the finale, this is the libnm-glib and nmcli part of the support,
with this you can now make a full pppoatm connection from NetworkManager
by configuring it in system scope in a keyfile.
As an example, here is mine:
(password and username snipped for obvious reasons)
[connection]
id=MYISP
uuid=34d04e69-fdd9-4231-af2c-25ed1f34dc1e
type=adsl
timestamp=1304621332
[adsl]
username=user@myisp.com
password=mypassword
vpi=8
vci=35
encapsulation=vcmux
protocol=pppoa
[ipv6]
method=ignore
[ipv4]
method=auto
Extract from logs:
NetworkManager[29155]: <info> Activation (ueagle-atm0) starting connection 'MYISP'
NetworkManager[29155]: <info> (ueagle-atm0): device state change: disconnected -> prepare (reason 'none') [30 40 0]
NetworkManager[29155]: <info> Activation (ueagle-atm0) Stage 1 of 5 (Device Prepare) scheduled...
NetworkManager[29155]: <info> Activation (ueagle-atm0) Stage 1 of 5 (Device Prepare) started...
NetworkManager[29155]: <info> Activation (ueagle-atm0) Stage 2 of 5 (Device Configure) scheduled...
NetworkManager[29155]: <info> Activation (ueagle-atm0) Stage 1 of 5 (Device Prepare) complete.
NetworkManager[29155]: <info> Activation (ueagle-atm0) Stage 2 of 5 (Device Configure) starting...
NetworkManager[29155]: <info> (ueagle-atm0): device state change: prepare -> config (reason 'none') [40 50 0]
NetworkManager[29155]: <info> Activation (ueagle-atm0) Stage 2 of 5 (Device Configure) successful.
NetworkManager[29155]: <info> Activation (ueagle-atm0) Stage 3 of 5 (IP Configure Start) scheduled.
NetworkManager[29155]: <info> Activation (ueagle-atm0) Stage 2 of 5 (Device Configure) complete.
NetworkManager[29155]: <info> Activation (ueagle-atm0) Stage 3 of 5 (IP Configure Start) started...
NetworkManager[29155]: <info> (ueagle-atm0): device state change: config -> ip-config (reason 'none') [50 70 0]
NetworkManager[29155]: <info> starting PPP connection
NetworkManager[29155]: <debug> [1304671146.590156] [nm-ppp-manager.c:1047] nm_ppp_manager_start(): command line: /usr/sbin/pppd nodetach lock nodefaultroute user user@myisp.com plugin pppoatm.so 8.35 noipdefault noauth usepeerdns lcp-echo-failure 0 lcp-echo-interval 0 ipparam /org/freedesktop/NetworkManager/PPP/0 plugin /opt/nmadsl/lib/pppd/2.4.5/nm-pppd-plugin.so
NetworkManager[29155]: <info> pppd started with pid 29175
NetworkManager[29155]: <debug> [1304671146.591235] [NetworkManagerUtils.c:816] nm_utils_get_proc_sys_net_value(): (ueagle-atm0): error reading /proc/sys/net/ipv6/conf/ueagle-atm0/accept_ra: (4) Failed to open file '/proc/sys/net/ipv6/conf/ueagle-atm0/accept_ra': No such file or directory
NetworkManager[29155]: <info> Activation (ueagle-atm0) Stage 3 of 5 (IP Configure Start) complete.
Plugin pppoatm.so loaded.
Plugin /opt/nmadsl/lib/pppd/2.4.5/nm-pppd-plugin.so loaded.
** Message: nm-ppp-plugin: (plugin_init): initializing
** Message: nm-ppp-plugin: (nm_phasechange): status 3 / phase 'serial connection'
NetworkManager[29155]: <debug> [1304671146.612937] [nm-udev-manager.c:621] handle_uevent(): UDEV event: action 'add' subsys 'net' device 'ppp0'
NetworkManager[29155]: <debug> [1304671146.613134] [nm-udev-manager.c:525] net_add(): ignoring interface with type 512
NetworkManager[29155]: <debug> [1304671146.617308] [nm-netlink-monitor.c:117] link_msg_handler(): netlink link message: iface idx 35 flags 0x1090
Using interface ppp0
Connect: ppp0 <--> 8.35
** Message: nm-ppp-plugin: (nm_phasechange): status 5 / phase 'establish'
** Message: nm-ppp-plugin: (nm_phasechange): status 6 / phase 'authenticate'
** Message: nm-ppp-plugin: (get_credentials): passwd-hook, requesting credentials...
NetworkManager[29155]: <debug> [1304671149.639511] [nm-agent-manager.c:1044] nm_agent_manager_get_secrets(): Secrets requested for connection /org/freedesktop/NetworkManager/Settings/0 (adsl)
NetworkManager[29155]: <debug> [1304671149.639684] [nm-settings-connection.c:717] nm_settings_connection_get_secrets(): (34d04e69-fdd9-4231-af2c-25ed1f34dc1e/adsl:1) secrets requested flags 0x1 hint 'password'
NetworkManager[29155]: <debug> [1304671149.640950] [nm-agent-manager.c:959] get_start(): (0x9b4ad10/adsl) system settings secrets sufficient
NetworkManager[29155]: <debug> [1304671149.641332] [nm-settings-connection.c:573] agent_secrets_done_cb(): (34d04e69-fdd9-4231-af2c-25ed1f34dc1e/adsl:1) existing secrets returned
NetworkManager[29155]: <debug> [1304671149.641541] [nm-settings-connection.c:579] agent_secrets_done_cb(): (34d04e69-fdd9-4231-af2c-25ed1f34dc1e/adsl:1) secrets request completed
NetworkManager[29155]: <debug> [1304671149.643074] [nm-settings-connection.c:618] agent_secrets_done_cb(): (34d04e69-fdd9-4231-af2c-25ed1f34dc1e/adsl:1) new agent secrets processed
** Message: nm-ppp-plugin: (get_credentials): got credentials from NetworkManager
PAP authentication succeeded
** Message: nm-ppp-plugin: (nm_phasechange): status 8 / phase 'network'
local IP address 94.70.90.201
remote IP address 80.106.108.12
primary DNS address 195.170.0.1
secondary DNS address 195.170.2.2
** Message: nm-ppp-plugin: (nm_phasechange): status 9 / phase 'running'
** Message: nm-ppp-plugin: (nm_ip_up): ip-up event
** Message: nm-ppp-plugin: (nm_ip_up): sending Ip4Config to NetworkManager...
NetworkManager[29155]: <debug> [1304671150.607440] [nm-netlink-monitor.c:117] link_msg_handler(): netlink link message: iface idx 35 flags 0x110D1
NetworkManager[29155]: <info> PPP manager(IP Config Get) reply received.
NetworkManager[29155]: <info> Activation (ueagle-atm0) Stage 4 of 5 (IP4 Configure Get) scheduled...
NetworkManager[29155]: <info> Activation (ueagle-atm0) Stage 4 of 5 (IP4 Configure Get) started...
NetworkManager[29155]: <info> Activation (ueagle-atm0) Stage 5 of 5 (IP Configure Commit) scheduled...
NetworkManager[29155]: <info> Activation (ueagle-atm0) Stage 4 of 5 (IP4 Configure Get) complete.
NetworkManager[29155]: <info> Activation (ueagle-atm0) Stage 5 of 5 (IP Configure Commit) started...
NetworkManager[29155]: <debug> [1304671150.608918] [nm-system.c:222] sync_addresses(): (ppp0): syncing addresses (family 2)
NetworkManager[29155]: <info> (ueagle-atm0): device state change: ip-config -> activated (reason 'none') [70 100 0]
NetworkManager[29155]: <info> Policy set 'MYISP' (ppp0) as default for IPv4 routing and DNS.
NetworkManager[29155]: <info> Activation (ueagle-atm0) successful, device activated.
NetworkManager[29155]: <info> Activation (ueagle-atm0) Stage 5 of 5 (IP Configure Commit) complete.
Signed-off-by: Pantelis Koukousoulas <pktoss@gmail.com>
2012-05-18 15:42:56 -05:00
Jiří Klimeš
c5d75dcdfa
cli: fix 'nm -nocheck con up'
...
When '-nocheck' option was used, NMClient object was created later in the
operation process.
This caused that the callback in nm_client_activate_connection() was not
called. It's fixed by creating NMClient early.
2012-05-09 14:19:11 +02:00
Jiří Klimeš
191da673a8
cli: show progress in --pretty mode for 'nmcli con up'
...
We need to use a workaround for VPN connection state. There is a bug somewhere
causing that vpn-state-changed signal is not issued on active VPN connection.
Debugging showed that D-Bus PropertiesChanged and VpnStateChanged signals are
not processed properly. That's why libnm-glib's VPN connection object is not
updated. The issue may lie in libnm-glib or even in dbus-glib.
I wasn't able to get VpnStateChanged signal via dbus-glib
(dbus_g_proxy_add_signal() and dbus_g_proxy_connect_signal()), however received
the signal successfully using GDBus.
Until the issue is analyzed and fixed, we need to ask for VPN state of active
VPN connection every second in order to show progress and exit correctly.
2012-05-09 14:19:03 +02:00
Jiří Klimeš
c878ad8214
cli: trivial, fix up spacing
2012-04-28 22:54:02 +02:00
Jiří Klimeš
a11067f584
libnm-glib: add errors to device classes and nm_device_connection_compatible()
...
Add nm_device_connection_compatible() that returns an error when it fails.
nm_device_connection_valid() does the same work except it doesn't set GError.
2012-03-16 09:54:36 +01:00
Jiří Klimeš
366ac3c5a2
cli: use nm_device_connection_valid() function from libnm-glib
...
to verify whether device and connection match and don't duplicate the code
in nmcli.
2012-03-14 14:49:44 +01:00
Dan Williams
bc50a2a75b
cli: add VLAN device support
2012-03-07 11:45:40 -06:00
Dan Winship
49214066a4
Fix capitalization of "InfiniBand"
...
"InfiniBand" has a capital "B". Fix that everywhere it's being used as
a human-readable string.
In particular, the RH initscripts recognize "TYPE=infiniband" and
"TYPE=InfiniBand", but not "TYPE=Infiniband", which is what we were
writing before.
2012-03-06 13:23:29 -05:00
Dan Williams
4fc8b8ccd0
cli: don't require a device for virtual connections
...
They may not have had their devices created yet, and the activation
process creates the device, so allow NULL device paths for
activation.
2012-03-06 12:01:49 -06:00
Jiří Klimeš
78f09078f1
cli: add Bond device support
2012-03-06 11:31:03 +01:00
Jiří Klimeš
5519ff9952
cli: add 'vlan' setting
2012-03-05 09:52:10 +01:00
Jiří Klimeš
71e7434d1a
cli: add 'bond' setting
2012-03-05 09:52:03 +01:00
Jiří Klimeš
501a389a19
cli: enable OLPC device now that we have it in libnm-glib
2012-03-02 09:02:33 +01:00
Thomas Graf
471fef2ad5
cli: print NMActiveConnection master property as MASTER-PATH
...
This is a proposal to include the NMActiveConnection master property in
nmcli con status.
Feel free to suggest a more user friendly method of printing this
information.
Signed-off-by: Thomas Graf <tgraf@redhat.com>
2012-01-25 11:24:50 -06:00
Jiří Klimeš
659c22ccf6
cli: fix 'nmcli con delete' (rh #771258 )
...
The command didn't delete the connection, because nmcli exited before NM could
check permissions (actually ConsoleKit didn't see the process).
Now nmcli waits for "Removed" signal or D-Bus return (error) message on "Delete"
method call.
2012-01-10 16:30:04 +01:00
Jiří Klimeš
b76d7cd240
cli: added 'con status id|uuid|path <con>' for listing active connection details
...
'nmcli con status' still prints brief active connection list.
'nmcli con status id|uuid|path <con>' shows details of the selected active
connection.
2012-01-06 15:20:15 +01:00
Jiří Klimeš
241d5ebd16
cli: add 'status' and 'default6' fields to active connections list
2011-12-19 10:09:05 +01:00
Jiří Klimeš
bed4d15339
cli: use nm_utils_hwaddr_ntoa() from libnm-util
2011-12-09 13:47:06 +01:00
Jiří Klimeš
607cbffed2
cli: add 'infiniband' setting support
2011-12-09 13:20:36 +01:00
Jiří Klimeš
8962c98539
cli: use nm_connection_get_setting_<type>() to clean up code
2011-12-09 12:04:59 +01:00
Dan Winship
f49e88efe0
nmcli: add Infiniband support
2011-12-02 13:09:16 -06:00
Jiri Popelka
9963a41da9
nmcli: add zone field to 'con status'
2011-11-09 21:40:13 -06:00
Larry Reaves
5194a785fc
cli: initialize 'selector' variable to please jhbuild
2011-10-06 12:21:08 +02:00
Jiří Klimeš
46b01cb057
cli: use libnm-util's constants for settings types
2011-09-06 16:04:12 +02:00
Jiří Klimeš
568820a309
cli: remove useless static function prototypes
2011-09-06 15:30:15 +02:00
Jiří Klimeš
c01db4ac51
cli: add 'nmcli con delete' command for removing configured connections
2011-09-06 15:07:58 +02:00
Jiří Klimeš
b7e853c362
cli: use nm_access_point_get_bssid() instead of nm_access_point_get_hw_address()
...
nm_access_point_get_hw_address() is deprecated in 0.9.
Also change 'hwaddr' parameter for 'nmcli dev wifi list' to 'bssid'. 'hwaddr'
still works but is deprecated and not documented any more.
2011-09-06 13:37:23 +02:00
Jiří Klimeš
2d4619421c
cli: simplify find_device_for_connection()
2011-06-15 15:00:55 +02:00
Andreas Schwab
6780818974
cli: fix incorrect cast to time_t pointer
2011-05-30 12:13:34 +02:00
Dan Williams
1701df4b75
core: add active connection state DEACTIVATING
...
Not used yet, but will be when device deactivating state gets
used. Should be 100% backwards compatible with users that don't
know about it for now.
2011-03-17 14:23:21 -05:00
Jiří Klimeš
2a33ba8683
cli: use setting accessor helpers
2011-03-16 14:32:24 +01:00
Jiří Klimeš
653c4bc8a0
cli: update due to changes in libnm-glib's NMClient
...
nm_client_activate_connection() now uses NMConnection instead of
D-Bus connection path. Also, callback uses NMActiveConnection instead
of the path.
We can also remove the workaround waiting for "active-connections" change,
because the activation callback is now called *after* the NMActiveConnection
object is available in the active connections list.
2011-03-16 13:29:41 +01:00
Kjartan Maraas
6d0d302916
build: do the right thing with config.h (bgo #644664 )
...
1) it shouldn't be included in headers
2) it should be the first thing included in source files
3) it's needed for getting translation right
2011-03-14 01:01:22 -05:00
Dan Williams
2140dad5e0
core: consolidate mobile broadband device types
...
These days more and more devices are showing up that support a
number of different access technology families in the same hardware,
like Qualcomm Gobi (CDMA and GSM), Pantech UM190 (CDMA and GSM),
Pantech UML290 (CDMA and LTE), LG VL600 (CDMA and LTE), Sierra
320U (GSM and LTE), etc. The previous scheme of having device
classes based on access technology family simply cannot handle
this hardware and attempting to add LTE to both the CDMA and GSM
device classes would result in a bunch of code duplication that
we don't want. There's a better way...
Instead, combine both CDMA and GSM device classes into a generic
"Modem" device class that provides capabilities indicating what
access technology families a modem supports, and what families
it supports immediately without a firmware reload. (Gobi devices
for example require a firmware reload before they can switch
between GSM and CDMA). This provides the necessary flexibility
to the client and allows us to keep the API stable when the
same consolidation change is made in ModemManager.
The current code doesn't yet allow multi-mode operation internally,
but the API is now what we want it to be and won't need to be
changed.
2011-02-25 10:16:17 -06:00
Jiří Klimeš
a9a30eb08c
cli: compare nmcli and NM versions
...
nmcli gets NM version and compares it with its own and complains
when they differ. This is to indicate that the results are not reliable,
because the API could differ. '--nocheck' switches the checks off.
2011-02-16 17:36:50 +01:00
Jiří Klimeš
c6f479922e
cli: print header while listing connections (nmcli -p con list)
...
It was removed by mistake when user connections were removed.
2011-02-14 17:01:33 +01:00
Jiří Klimeš
a6de5792d1
cli/build: make WiMAX support optional
2011-02-14 16:06:37 +01:00
Dan Williams
6d344a43e9
Merge remote-tracking branch 'origin/rm-userset'
...
There; it's merged. Yay!
2011-02-12 22:51:12 -06:00
Jiří Klimeš
f29b709590
cli: improve/add NM running checks
...
Check whether NetworkManager is running and return new error
NMC_RESULT_ERROR_NM_NOT_RUNNING when appropriate.
2011-02-10 14:39:47 +01:00