summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* agent: support wireguard preshared-key as agent-owned secretbg/wg-secretsBeniamino Galvani2021-08-031-2/+56
| | | | | The wireguard preshared-key is a key of the dictionary in the list of peers and must be handled specially.
* agent: support multiple keyring secrets per settingBeniamino Galvani2021-08-031-1/+0
| | | | | The code currently parses only the first secret for a given setting in the keyring, while there can be many. Fix that.
* editor: fix vpn tree sort parametersJoe Bauser2021-07-081-2/+2
| | | | | | | | | The call to gtk_tree_sortable_set_sort_column_id expects a column ID followed by a GtkSortType, but at some point the argument enumerations seem to have been mixed up. Corrected through the use of the appropriate constant for sort ordering. Relates to: #132
* Update homepage link of NMWen Liang2021-07-081-1/+1
| | | | Signed-off-by: Wen Liang <liangwen12year@gmail.com>
* c-e: remove leading space in MACsec UI pagescootergrisen2021-07-081-1/+1
| | | | | | [thaller@redhat.com: adjusted original patch and commit message.] https://gitlab.gnome.org/GNOME/network-manager-applet/-/merge_requests/92
* Use "port(s)" for dependent devices/profilesTill Maas2021-07-075-19/+19
| | | | | | Ports is a more descriptive term for dependent devices/profiles, so use it in comments, variable names and messages. Also update the German translation to use more appropriate terms and update PO files.
* set correct icon sizeKonstantin Unruh2021-06-291-2/+12
|
* applet: If permitted, create system Wi-Fi connectionsAndrew Zaborowski2021-06-221-2/+6
| | | | | | | | Wi-Fi connections were being always created with the default of connection.permissions=user:<current_user>. Now create them with empty permissions ("All users may connect to this network") if the user is authorized to create/modify system connections, similar to the logic in other clients.
* editor: show missing toggle in the 8021x-security pageBeniamino Galvani2021-02-251-0/+1
| | | | Fixes: bf6b33bbe20f ("editor: show() the 8021x-security page, not its children")
* editor: fix crash when evaluating secondariesBeniamino Galvani2021-02-151-2/+2
| | | | | | | | | | | | | | | | | | | | | The compound literal goes out of scope when the enclosing block ends. Replace it with an array on the stack. 0 __strlen_avx2 () at ../sysdeps/x86_64/multiarch/strlen-avx2.S:65 1 0x00007ffff73eba44 in g_strdup (str=0x6c15375cc4e4b600 <error: Cannot access memory at address 0x6c15375cc4e4b600>) 2 0x00007ffff73ed42d in g_strdupv (str_array=0x7fffffffc520) at ../../../glib/gstrfuncs.c:2552 3 0x00007ffff74b9b70 in boxed_proxy_collect_value (value=0x7fffffffc350, n_collect_values=<optimized out>, collect_values=<optimized out>, collect_flags=<optimized out>) 4 0x00007ffff74c49fc in g_object_set_valist (object=0x555555a02780 [NMSettingConnection], first_property_name=<optimized out>, var_args=0x7fffffffc400) 5 0x00007ffff74c52fc in g_object_set (_object=0x555555a02780, first_property_name=first_property_name@entry=0x5555555a3471 "secondaries") 6 0x0000555555580ff8 in ui_to_setting (self=<optimized out>) at ../src/connection-editor/page-general.c:421 7 ce_page_validate_v (page=<optimized out>, connection=<optimized out>, error=0x7fffffffc5c0) at ../src/connection-editor/page-general.c:450 8 0x0000555555569313 in ce_page_validate (self=0x555555898f20 [CEPageGeneral], connection=connection@entry=0x5555557fe840, error=error@entry=0x7fffffffc5c0) at ../src/connection-editor/ce-page.c:161 9 0x000055555557343b in connection_editor_validate (editor=0x555555a2a840 [NMConnectionEditor]) at ../src/connection-editor/nm-connection-editor.c:357 [...] Fixes: 768eb7dfa974 ("c-e: fix initializing drop-down list for connection.secondaries") https://gitlab.gnome.org/GNOME/network-manager-applet/-/issues/125
* applet: support activating WireGuard connections as VPNsbg/applet-wireguardBeniamino Galvani2021-02-121-20/+45
| | | | | | | Display WireGuard connections in the VPN submenu and allow [de]activating them. https://gitlab.gnome.org/GNOME/network-manager-applet/-/issues/77
* c-e: expand GtkTreeView "tree_peers" when resizing windowth/c-e-wireguard-expand-widgetThomas Haller2021-02-111-0/+2
| | | | | Otherwise, if you resize the nm-c-e window, the widget stays small.
* editor: only update widget if correct permission changedmatthias-prangl2021-02-111-3/+4
| | | | | | | Make sure widgets created with ce-polkit are only updated if the specified permission changes. https://gitlab.gnome.org/GNOME/network-manager-applet/-/merge_requests/94
* applet: hide unmanaged interfacesLuis Pabon2021-02-026-9/+20
| | | | | | | | | | | | | This patch removes any unmanaged ethernet interfaces from the drop down list. Specifically, virtualbox and docker virtual networks will no longer be shown. Author: Campbell Vertesi <campbell@vertesi.com> Bug-Ubuntu: https://bugs.launchpad.net/bugs/1458322 [thaller@redhat.com: squashed commits] https://gitlab.gnome.org/GNOME/network-manager-applet/-/merge_requests/93
* all: add compat defines for NMU_SEC_SAE,NMU_SEC_OWEThomas Haller2021-02-022-21/+1
| | | | https://gitlab.gnome.org/GNOME/network-manager-applet/-/merge_requests/91
* applet: Work around appindicator "show"/"hide" signals quirkAndrew Zaborowski2020-11-182-0/+44
| | | | | | | | | | | | | | | | The ubuntu version of libappindicator (also available on some other distros like arch) doesn't emit the "show" and "hide" signals as the code expects. This results in issue #4. Use one of the workarounds documented in https://bugs.launchpad.net/ubuntu/+source/libappindicator/+bug/522152 to at least get a signal when the menu pops up and request a single Wi-Fi scan to make up for the missing periodic scans. This commit includes a fix by @thaller ([1]). [1] https://gitlab.gnome.org/GNOME/network-manager-applet/-/merge_requests/89#note_964843 https://gitlab.gnome.org/GNOME/network-manager-applet/-/merge_requests/89
* editor: Print nm_remote_connection_commit_changes errorsAndrew Zaborowski2020-11-181-2/+3
|
* all: Remove most of wireless-securityAndrew Zaborowski2020-11-1847-6987/+8
| | | | | Since only two utilities are now used from wireless-security, go ahead and remove everything else.
* applet: Use NMAWs classes instead of WirelessSecurityAndrew Zaborowski2020-11-181-40/+19
| | | | | | | | Convert the ethernet dialog to use the NMAWs8021x class and remove the dependency on wireless-security to work around issue #92. Take advantage of libnma having a pure 8021x ui (without the WPA-EAP assumptions) meaning that the hack that adds the wireless setting is no longer needed. Unfotunately this change is not tested.
* 8021x-security: Use NMAWs classes instead of WirelessSecurityAndrew Zaborowski2020-11-181-54/+21
| | | | | | | | | | | | | | | | Convert the ethernet 8021x-security page to use the NMAWs8021x class and remove the dependency on wireless-security to work around issue #92. Take advantage of libnma having a pure 8021x ui (without the WPA-EAP assumptions) meaning that the hack that adds the wireless setting is no longer needed. For some reason after fill_connection an empty WIRELESS_SECURITY setting is still being added. This dialog is leaking memory as much as it was before. Also there's a seemingly unwanted "Private Key Passphrase" text field added for methods like MD5, EAP-TTLS+MD5.. sometimes -- looks like it doesn't get added when the MD5 method is selected for the first time and the username/password are still empty.
* wifi-security: Use NMAWs classes instead of WirelessSecurityAndrew Zaborowski2020-11-181-49/+56
| | | | | | | | | This is an almost mechanical conversion to use the NMAWs classes and remove the dependency on wireless-security to work around issue #92. There may be things in the libnma version that are not taken advantage of in this patch, it's just the conversion. This is still leaking memory as much as it was before.
* editor: remove tx-power and rate properties from wifi pagebg/editor-miscBeniamino Galvani2020-11-181-36/+0
| | | | | | | | The widgets for tx-power and rate were already hidden. Remove them for good. Displaying those properties doesn't seem useful for the majority of users and they would complicate the UI.
* editor: show() the 8021x-security page, not its childrenBeniamino Galvani2020-11-181-1/+1
| | | | | | | | | During the construction of the security widget, some child widgets are set as hidden because they should never appear (for example, the private key passphrase entry for EAP-MD5). gtk_widget_show_all() wrongly displays them again. Use gtk_widget_show() instead. Fixes: 9b5c5eed6aa6 ("Revert '8021x-security: don't show_all() the widgets'")
* editor: add 'default' item to the ip6-privacy combo boxbg/ip6-privacy-defaultBeniamino Galvani2020-09-142-4/+15
| | | | | | | | Add missing 'default' item to the ip6-privacy combo box in the IPv6 page. The enum value is called 'unknown' in NetworkManager, but 'default' seems more clear. https://gitlab.gnome.org/GNOME/network-manager-applet/-/issues/111
* applet-agent: another fix for reference count for secret request resultChih-Hsuan Yen2020-08-311-1/+1
| | | | https://gitlab.gnome.org/GNOME/network-manager-applet/-/issues/112
* c-e: fix initializing drop-down list for connection.secondariesThomas Haller2020-06-221-19/+32
| | | | | | | | | | | | | | | It seems that the initialization of the drop-down list did not work properly. I think that is due to the elements being sorted, and using gtk_combo_box_set_active() to set the index. But then the insertion index no longer corresponds to the sorted index that is shown in the list. Avoid that by using gtk_combo_box_set_active_iter(). Also, the connection.secondaries is a list of UUIDs. It doesn't guarantee that the UUID actually exists. If no suitable profile can be found (to populate the drop-down list), add the UUID directly. https://gitlab.gnome.org/GNOME/network-manager-applet/-/issues/103
* ap-menu-item: add OWE as supported security typeDavid Bauer2020-05-271-0/+3
|
* connection-editor: add OWE supportDavid Bauer2020-05-271-0/+19
| | | | | This adds support for Enhanced Open support as a selectable wireless security method.
* editor: add wireguard supportBeniamino Galvani2020-04-227-0/+1384
|
* editor: rework assignment of text values to spin buttonsBeniamino Galvani2020-04-222-57/+43
| | | | | | | Remove duplicate code and use a common function to set the mapping between a numeric value and a text one. I think we should not encourage the use of arbitrary text but instead allow the most common ones. Therefore, add also 'off'.
* applet: fix crash in VPN secret dialog handlingBeniamino Galvani2020-04-061-2/+21
| | | | | | | | | | | If the VPN connection gets deactivated when the dialog is displayed, the SecretsRequest is no longer valid. Accessing it in the dialog callback causes a segmentation fault. To fix this, disconnect the dialog handler when the secret request is cancelled and install a new handler that just destroys the dialog. https://bugzilla.redhat.com/show_bug.cgi?id=1775278
* applet/vpn-request: fix GtkDialog leakBeniamino Galvani2020-04-061-0/+1
|
* applet: merge VPN request free functionsBeniamino Galvani2020-04-061-58/+53
|
* applet/vpn-request: minor cleanupsBeniamino Galvani2020-04-061-5/+1
| | | | | | | | | g_spawn_close_pid() is not necessary on Linux. It is not necessary to check the validity of pid and then send the signal; just send the signal. Remove unnecessary comments.
* build: drop unused libnma version macrosThomas Haller2020-03-061-5/+0
| | | | These macros belong to libnma and no longer to applet.
* mobile: ignore deprecation warning of nm_setting_gsm_get_number()Thomas Haller2020-03-051-0/+4
| | | | | This probably should be fixed by somebody giving love to "page-mobile.c". For now, just ignore the deprecation warning.
* applet: avoid compiler warning about uninitialized variable in ↵Thomas Haller2020-03-051-2/+1
| | | | | | | | | | | | | | info_dialog_add_page() It's a false positive. Avoid it. ../src/applet-dialogs.c: In function applet_info_dialog_show: ../src/applet-dialogs.c:709:21: warning: ip6_config may be used uninitialized in this function [-Wmaybe-uninitialized] 709 | dns6 = def6_addr ? nm_ip_config_get_nameservers (ip6_config) : NULL; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../src/applet-dialogs.c:481:14: note: ip6_config was declared here 481 | NMIPConfig *ip6_config; | ^~~~~~~~~~
* applet: fix reference count for secret request resultBeniamino Galvani2020-03-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Don't pass a floating variant to the callback function but convert it into a full one so that we can guarantee that the callback function will not assume ownership. (nm-applet:691510): GLib-CRITICAL **: 18:02:29.581: g_atomic_ref_count_dec: assertion 'g_atomic_int_get (arc) > 0' failed _g_log_abort () at /lib64/libglib-2.0.so.0 g_logv () at /lib64/libglib-2.0.so.0 g_log () at /lib64/libglib-2.0.so.0 g_atomic_ref_count_dec () at /lib64/libglib-2.0.so.0 g_variant_unref () at /lib64/libglib-2.0.so.0 gs_local_variant_unref (v=<synthetic pointer>) at ./shared/nm-utils/gsystem-local-alloc.h:73 complete_request (info=info@entry=0xaaf340) at src/applet-vpn-request.c:273 external_ui_from_child_response (error=0x7fffffffd380, info=<optimized out>) at src/applet-vpn-request.c:261 process_child_response (info=<optimized out>) at src/applet-vpn-request.c:298 g_child_watch_dispatch () at /lib64/libglib-2.0.so.0 g_main_context_dispatch () at /lib64/libglib-2.0.so.0 ... https://gitlab.gnome.org/GNOME/network-manager-applet/-/merge_requests/77
* all: drop some more libnm-glib vestigesLubomir Rintel2020-02-147-88/+2
| | | | | | | [thaller@redhat.com: cherry-picked this patch from a larger merge request and trivial conflict resolution] https://gitlab.gnome.org/GNOME/network-manager-applet/merge_requests/73
* c-e: fix ce-ppp-auth-methods.ui as wellnightsky302020-02-141-4/+4
| | | | | | | | Fix ce-ppp-auth-methods.ui as well per Mikhail's comment https://gitlab.gnome.org/GNOME/network-manager-applet/merge_requests/75#note_685501 Fixes: 5fbf69f2e21c ('glade: get rid of GtkContainer.border-width')
* c-e: fixes transparent border on ipv4/ipv6 route and new connection dialogsnightsky302020-02-142-16/+8
| | | | | | | | | | | | | | | | | | | This fixes a transparent border issue that appears to have been introduced with commit 5fbf69f2: With commit 5fbf69f2, ipv4/ipv6 route and new connection dialog boxes were modified to use margin properties due to the deprecation of border properties. Margin properties were placed under GtkDialog instead of the immediate child GtkBox. Margin properties were also placed under another GtkBox further below. This seemed to have the effect of margins not being recognized on the top or left of the dialogs, but also creating a transparent margin on the bottom and right. This was visible on the ipv4/ipv6 route dialogs, but somehow also affected the new connection dialog despite that file not having margin properties listed under GtkDialog. Fixing properties in ce-ip4-routes.ui and ce-ip6-routes.ui also fixed the new connection dialog. Fixes: 5fbf69f2e21c ('glade: get rid of GtkContainer.border-width')
* applet/menu-item: replace WITH_APPINDICATOR ifdefs with INDICATOR_ENABLED()Thomas Haller2020-02-142-23/+17
| | | | | | It looks more C-like and does does not compile code conditionally (while the compiler still sees when compiled without appindicator support and can strip the unreachable code).
* applet: move INDICATOR_ENABLED() macro to applet.h headerThomas Haller2020-02-142-6/+6
|
* menu-item: Render network icons as cairo surfacesVictor Kareh2020-02-142-5/+39
| | | | | | | This converts menu items from GdkPixbuf to a correctly scaled cairo_surface_t so that it can render properly on HiDPI displays. This change only applies to the GtkStatusIcon version of nm-applet, since appindicator icon-data is currently set to handle GdkPixbuf.
* applet: fix widget assertion failure when running as indicatorVictor Kareh2020-02-141-1/+1
| | | | | | Fixes: dc9ee4e1129c ('applet: scale icons for HiDPI displays') https://gitlab.gnome.org/GNOME/network-manager-applet/merge_requests/74
* applet: scale icons for HiDPI displaysVictor Kareh2019-11-191-1/+4
| | | | https://gitlab.gnome.org/GNOME/network-manager-applet/merge_requests/71
* libnma: droplr/libnmicideLubomir Rintel2019-11-0451-14028/+3
|
* wireless-security: remove GTK4 API useLubomir Rintel2019-11-0412-96/+71
| | | | This partly reverts commit 94518cf90edd05c550202ed0dc583e0fd211fdea.
* all: lay libnm-gtk to restlr/libnm-gtkicideLubomir Rintel2019-11-0427-8100/+0
| | | | | | It's about time. https://gitlab.gnome.org/GNOME/network-manager-applet/merge_requests/68
* editor: add SAE supportlr/saeLubomir Rintel2019-10-091-0/+19
|