mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-01-10 08:10:22 +01:00
vapi: merge branch 'tintou/gir-fixes'
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1545
This commit is contained in:
commit
4e1320eda1
6 changed files with 143 additions and 25 deletions
|
|
@ -2019,7 +2019,7 @@ src_libnm_client_impl_NM_1_0_gir_FILES = \
|
|||
$(libnm_lib_h_pub_real) \
|
||||
$(src_libnm_client_public_mkenums_c) \
|
||||
$(libnm_lib_c_real)
|
||||
src_libnm_client_impl_NM_1_0_gir_SCANNERFLAGS = --warn-all --identifier-prefix=NM --symbol-prefix=nm
|
||||
src_libnm_client_impl_NM_1_0_gir_SCANNERFLAGS = --warn-all --identifier-prefix=NM --symbol-prefix=nm --c-include="NetworkManager.h"
|
||||
|
||||
src/libnm-client-impl/libnm.typelib: src/libnm-client-impl/libnm.gir
|
||||
$(INTROSPECTION_COMPILER) --includedir=$(srcdir)/src/libnm-core-public --includedir=$(builddir)/src/libnm-core-public --includedir=$(srcdir)/libnm-client-public --includedir=$(builddir)/libnm-client-public $< -o $@
|
||||
|
|
@ -5726,6 +5726,11 @@ EXTRA_DIST += \
|
|||
vapi/libnm.deps \
|
||||
vapi/meson.build
|
||||
|
||||
check-local-vapi:
|
||||
$(srcdir)/tools/check-vapi.sh
|
||||
|
||||
check_local += check-local-vapi
|
||||
|
||||
###############################################################################
|
||||
|
||||
girdir = $(datadir)/gir-1.0
|
||||
|
|
@ -5793,6 +5798,7 @@ EXTRA_DIST += \
|
|||
tools/check-compare-generated.sh \
|
||||
tools/check-gitlab-ci.sh \
|
||||
tools/check-tree.sh \
|
||||
tools/check-vapi.sh \
|
||||
tools/create-exports-NetworkManager.sh \
|
||||
tools/debug-helper.py \
|
||||
tools/meson-post-install.sh \
|
||||
|
|
|
|||
|
|
@ -941,6 +941,11 @@ if enable_vapi
|
|||
subdir('vapi')
|
||||
endif
|
||||
|
||||
test(
|
||||
'check-vapi',
|
||||
find_program(join_paths(source_root, 'tools', 'check-vapi.sh')),
|
||||
)
|
||||
|
||||
subdir('examples/C/glib')
|
||||
|
||||
enable_qt = get_option('qt')
|
||||
|
|
|
|||
|
|
@ -142,6 +142,7 @@ if enable_introspection
|
|||
src_inc,
|
||||
top_inc,
|
||||
],
|
||||
header: 'NetworkManager.h',
|
||||
dependencies: [
|
||||
declare_dependency(
|
||||
compile_args: [
|
||||
|
|
|
|||
|
|
@ -759,15 +759,18 @@ diff_one_connection(NMConnection *a,
|
|||
return diff_found;
|
||||
}
|
||||
|
||||
/* Required until https://gitlab.gnome.org/GNOME/gtk-doc/-/merge_requests/71 */
|
||||
#ifndef __GTK_DOC_IGNORE__
|
||||
/**
|
||||
* nm_connection_diff:
|
||||
* @a: a #NMConnection
|
||||
* @b: a second #NMConnection to compare with the first
|
||||
* @flags: compare flags, e.g. %NM_SETTING_COMPARE_FLAG_EXACT
|
||||
* @out_settings: (element-type utf8 GLib.HashTable): if the
|
||||
* connections differ, on return a hash table mapping setting names to
|
||||
* second-level GHashTable (utf8 to guint32), which contains the key names that
|
||||
* differ mapped to one or more of %NMSettingDiffResult as a bitfield
|
||||
* @out_settings: (out) (element-type utf8 GLib.HashTable<utf8,uint32>)
|
||||
* (optional) (allow-none): if the connections differ, on return a hash table
|
||||
* mapping setting names to second-level GHashTable (utf8 to guint32), which
|
||||
* contains the key names that differ mapped to one or more of
|
||||
* %NMSettingDiffResult as a bitfield
|
||||
*
|
||||
* Compares two #NMConnection objects for similarity, with comparison behavior
|
||||
* modified by a set of flags. See nm_setting_compare() for a description of
|
||||
|
|
@ -778,6 +781,28 @@ diff_one_connection(NMConnection *a,
|
|||
* Returns: %TRUE if the connections contain the same values, %FALSE if they do
|
||||
* not
|
||||
**/
|
||||
#else
|
||||
/**
|
||||
* nm_connection_diff:
|
||||
* @a: a #NMConnection
|
||||
* @b: a second #NMConnection to compare with the first
|
||||
* @flags: compare flags, e.g. %NM_SETTING_COMPARE_FLAG_EXACT
|
||||
* @out_settings: (out) (element-type utf8 GLib.HashTable<utf8,uint32>)
|
||||
* (optional) (nullable): if the connections differ, on return a hash table
|
||||
* mapping setting names to second-level GHashTable (utf8 to guint32), which
|
||||
* contains the key names that differ mapped to one or more of
|
||||
* %NMSettingDiffResult as a bitfield
|
||||
*
|
||||
* Compares two #NMConnection objects for similarity, with comparison behavior
|
||||
* modified by a set of flags. See nm_setting_compare() for a description of
|
||||
* each flag's behavior. If the connections differ, settings and keys within
|
||||
* each setting that differ are added to the returned @out_settings hash table.
|
||||
* No values are returned, only key names.
|
||||
*
|
||||
* Returns: %TRUE if the connections contain the same values, %FALSE if they do
|
||||
* not
|
||||
**/
|
||||
#endif
|
||||
gboolean
|
||||
nm_connection_diff(NMConnection *a,
|
||||
NMConnection *b,
|
||||
|
|
|
|||
25
tools/check-vapi.sh
Executable file
25
tools/check-vapi.sh
Executable file
|
|
@ -0,0 +1,25 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
die() {
|
||||
printf "%s\n" "$*" >&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
cd "$(dirname "$(readlink -f "$0")")/.." || die "cannot change to srcdir"
|
||||
|
||||
VAPI=./vapi/NM-1.0.metadata
|
||||
|
||||
for s in $(grep -r -h '#define \+\<NM_SETTING_.*SETTING_NAME\>' -- ./src/libnm-core-public/ \
|
||||
| sed -n 's/^#define \+NM_\(SETTING_[A-Z0-9_]\+\)_SETTING_NAME\> \+.*/\1/p') ; do
|
||||
grep -q "^$s" -- "$VAPI" || die "didn't see '$s' in \"$VAPI\""
|
||||
done
|
||||
|
||||
for f in ./src/libnm-client-public/nm-device-*.h ; do
|
||||
D=( $(sed -n 's/^#define \+NM_IS_DEVICE_\([A-Z0-9_]\+\)_CLASS\>(.*/\1/p' "$f") )
|
||||
test ${#D[@]} = 1 || die "did not detect device in \"$f\""
|
||||
s="${D[0]}"
|
||||
c="$(grep -c "^DEVICE_${s}_\* *parent=" -- "$VAPI")"
|
||||
test "$c" = 1 || die "didn't see device '$s' in \"$VAPI\""
|
||||
done
|
||||
|
|
@ -4,82 +4,138 @@
|
|||
* The API is still unstable
|
||||
*/
|
||||
|
||||
* cheader_filename="NetworkManager.h"
|
||||
|
||||
Client.new_async name="new_@async"
|
||||
Device.lldp_neighbors type="GLib.GenericArray<NM.LldpNeighbor>"
|
||||
Device.ports type="GLib.GenericArray<NM.Device>"
|
||||
DeviceWifi.request_scan_options_async finish_name="nm_device_wifi_request_scan_finish"
|
||||
Setting.get_secret_flags#virtual_method skip
|
||||
Setting.set_secret_flags#virtual_method skip
|
||||
Setting.verify#virtual_method skip
|
||||
VpnEditorPlugin.get_vt#virtual_method skip
|
||||
IPConfig.addresses type="GLib.GenericArray<NM.IPAddress>"
|
||||
VpnEditorPlugin.get_vt#virtual_method name="get_vt_impl"
|
||||
.out_vt_size out
|
||||
|
||||
SETTING_NAME parent="NM.Setting"
|
||||
|
||||
SETTING_6LOWPAN_* parent="NM.Setting6Lowpan" name="SETTING_6LOWPAN_(.+)"
|
||||
SETTING_802_1X_* parent="NM.Setting8021x" name="SETTING_802_1X_(.+)"
|
||||
SETTING_ADSL_* parent="NM.SettingAdsl" name="SETTING_ADSL_(.+)"
|
||||
SETTING_BLUETOOTH_* parent="NM.SettingBluetooth" name="SETTING_BLUETOOTH_(.+)"
|
||||
SETTING_BOND_PORT_* parent="NM.SettingBondPort" name="SETTING_BOND_PORT_(.+)"
|
||||
SETTING_BOND_* parent="NM.SettingBond" name="SETTING_BOND_(.+)"
|
||||
SETTING_BRIDGE_PORT_* parent="NM.SettingBridgePort" name="SETTING_BRIDGE_PORT_(.+)"
|
||||
SETTING_BRIDGE_* parent="NM.SettingBridge" name="SETTING_BRIDGE_(.+)"
|
||||
SETTING_CDMA_* parent="NM.SettingCdma" name="SETTING_CDMA_(.+)"
|
||||
SETTING_CONNECTION_* parent="NM.SettingConnection" name="SETTING_CONNECTION_(.+)"
|
||||
SETTING_DCB_* parent="NM.SettingDcb" name="SETTING_DCB_(.+)"
|
||||
SETTING_DNS_OPTION_* parent="NM.SettingDnsOption" name="SETTING_DNS_OPTION_(.+)"
|
||||
SETTING_DUMMY_* parent="NM.SettingDummy" name="SETTING_DUMMY_(.+)"
|
||||
SETTING_ETHTOOL_* parent="NM.SettingEthtool" name="SETTING_ETHTOOL_(.+)"
|
||||
SETTING_GENERIC_* parent="NM.SettingGeneric" name="SETTING_GENERIC_(.+)"
|
||||
SETTING_GSM_* parent="NM.SettingGsm" name="SETTING_GSM_(.+)"
|
||||
SETTING_HOSTNAME_* parent="NM.SettingHostname" name="SETTING_HOSTNAME_(.+)"
|
||||
SETTING_INFINIBAND_* parent="NM.SettingInfiniband" name="SETTING_INFINIBAND_(.+)"
|
||||
SETTING_IP4_CONFIG_* parent="NM.SettingIP4Config" name="SETTING_IP4_CONFIG_(.+)"
|
||||
SETTING_IP6_CONFIG_* parent="NM.SettingIP6Config" name="SETTING_IP6_CONFIG_(.+)"
|
||||
SETTING_IP_CONFIG_* parent="NM.SettingIPConfig" name="SETTING_IP_CONFIG_(.+)"
|
||||
SETTING_IP_TUNNEL_* parent="NM.SettingIPTunnel" name="SETTING_IP_TUNNEL_(.+)"
|
||||
SETTING_LOOPBACK_* parent="NM.SettingLoopback" name="SETTING_LOOPBACK_(.+)"
|
||||
SETTING_MACSEC_* parent="NM.SettingMacsec" name="SETTING_MACSEC_(.+)"
|
||||
SETTING_MACVLAN_* parent="NM.SettingMacvlan" name="SETTING_MACVLAN_(.+)"
|
||||
SETTING_MATCH_* parent="NM.SettingMatch" name="SETTING_MATCH_(.+)"
|
||||
SETTING_OLPC_MESH_* parent="NM.SettingOlpcMesh" name="SETTING_OLPC_MESH_(.+)"
|
||||
SETTING_OVS_BRIDGE_* parent="NM.SettingOvsBridge" name="SETTING_OVS_BRIDGE_(.+)"
|
||||
SETTING_OVS_DPDK_* parent="NM.SettingOvsDpdk" name="SETTING_OVS_DPDK_(.+)"
|
||||
SETTING_OVS_EXTERNAL_IDS_* parent="NM.SettingOvsExternalIDs" name="SETTING_OVS_EXTERNAL_IDS_(.+)"
|
||||
SETTING_OVS_INTERFACE_* parent="NM.SettingOvsInterface" name="SETTING_OVS_INTERFACE_(.+)"
|
||||
SETTING_OVS_OTHER_CONFIG_* parent="NM.SettingOvsOtherConfig" name="SETTING_OVS_OTHER_CONFIG_(.+)"
|
||||
SETTING_OVS_PATCH_* parent="NM.SettingOvsPatch" name="SETTING_OVS_PATCH_(.+)"
|
||||
SETTING_OVS_PORT_* parent="NM.SettingOvsPort" name="SETTING_OVS_PORT_(.+)"
|
||||
SETTING_PARAM_* parent="NM.Setting" name="SETTING_PARAM_(.+)"
|
||||
SETTING_PPPOE_* parent="NM.SettingPppoe" name="SETTING_PPPOE_(.+)"
|
||||
SETTING_PPP_* parent="NM.SettingPpp" name="SETTING_PPP_(.+)"
|
||||
SETTING_PROXY_* parent="NM.SettingProxy" name="SETTING_PROXY_(.+)"
|
||||
SETTING_SERIAL_* parent="NM.SettingSerial" name="SETTING_SERIAL_(.+)"
|
||||
SETTING_SRIOV_* parent="NM.SettingSriov" name="SETTING_SRIOV_(.+)"
|
||||
SETTING_TC_CONFIG_* parent="NM.SettingTCConfig" name="SETTING_TC_CONFIG_(.+)"
|
||||
SETTING_TEAM_PORT_* parent="NM.SettingTeamPort" name="SETTING_TEAM_PORT_(.+)"
|
||||
SETTING_TEAM_* parent="NM.SettingTeam" name="SETTING_TEAM_(.+)"
|
||||
SETTING_TUN_* parent="NM.SettingTun" name="SETTING_TUN_(.+)"
|
||||
SETTING_USER_* parent="NM.SettingUser" name="SETTING_USER_(.+)"
|
||||
SETTING_VETH_* parent="NM.SettingVeth" name="SETTING_VETH_(.+)"
|
||||
SETTING_VLAN_* parent="NM.SettingVlan" name="SETTING_VLAN_(.+)"
|
||||
SETTING_VPN_* parent="NM.SettingVpn" name="SETTING_VPN_(.+)"
|
||||
SETTING_VRF_* parent="NM.SettingVrf" name="SETTING_VRF_(.+)"
|
||||
SETTING_VXLAN_* parent="NM.SettingVxlan" name="SETTING_VXLAN_(.+)"
|
||||
SETTING_WIFI_P2P_* parent="NM.SettingWifiP2P" name="SETTING_WIFI_P2P_(.+)"
|
||||
SETTING_WIMAX_* parent="NM.SettingWimax" name="SETTING_WIMAX_(.+)"
|
||||
SETTING_WIRED_* parent="NM.SettingWired" name="SETTING_WIRED_(.+)"
|
||||
SETTING_WIREGUARD_* parent="NM.SettingWireGuard" name="SETTING_WIREGUARD_(.+)"
|
||||
SETTING_WIRELESS_* parent="NM.SettingWireless" name="SETTING_WIRELESS_(.+)"
|
||||
SETTING_WIRELESS_SECURITY_* parent="NM.SettingWirelessSecurity" name="SETTING_WIRELESS_SECURITY_(.+)"
|
||||
SETTING_WPAN_* parent="NM.SettingWpan" name="SETTING_WPAN_(.+)"
|
||||
|
||||
VPN_* parent="NM.Vpn" name="VPN_(.+)"
|
||||
WIREGUARD_*_KEY_LEN parent="NM.SettingWireGuard" name="WIREGUARD_(.+)"
|
||||
|
||||
connection_error_quark parent="NM.Connection" name="connection_(.+)"
|
||||
|
||||
SETTING_PARAM_* parent="NM.Setting" name="SETTING_PARAM_(.+)"
|
||||
utils_* parent="NM.Utils" name="utils_(.+)"
|
||||
UTILS_* parent="NM.Utils" name="UTILS_(.+)"
|
||||
UtilsSecurityType parent="NM.Utils" name="SecurityType"
|
||||
|
||||
Client.new_finish symbol_type="function"
|
||||
|
||||
ACTIVE_CONNECTION_* parent="NM.ActiveConnection" name="ACTIVE_CONNECTION_(.+)"
|
||||
CLIENT_* parent="NM.Client" name="CLIENT_(.+)"
|
||||
ACCESS_POINT_* parent="NM.AccessPoint" name="ACCESS_POINT_(.+)"
|
||||
ACTIVE_CONNECTION_* parent="NM.ActiveConnection" name="ACTIVE_CONNECTION_(.+)"
|
||||
BRIDGE_VLAN_* parent="NM.BridgeVlan" name="BRIDGE_VLAN_(.+)"
|
||||
CHECKPOINT_* parent="NM.Checkpoint" name="CHECKPOINT_(.+)"
|
||||
CLIENT_* parent="NM.Client" name="CLIENT_(.+)"
|
||||
CONNECTION_* parent="NM.Connection" name="CONNECTION_(.+)"
|
||||
DHCP_CONFIG_* parent="NM.DhcpConfig" name="DHCP_CONFIG_(.+)"
|
||||
IP_ADDRESS_ATTRIBUTE_* parent="NM.IPAddress" name="IP_ADDRESS_(.+)"
|
||||
IP_CONFIG_* parent="NM.IPConfig" name="IP_CONFIG_(.+)"
|
||||
IP_ROUTE_ATTRIBUTE_* parent="NM.IpRouteAttributes" name="IP_ROUTE_ATTRIBUTE_(.+)"
|
||||
LLDP_ATTR_* parent="NM.LldpAttributes" name="LLDP_ATTR_(.+)"
|
||||
OBJECT_* parent="NM.Object" name="OBJECT_(.+)"
|
||||
REMOTE_CONNECTION_* parent="NM.RemoteConnection" name="REMOTE_CONNECTION_(.+)"
|
||||
SECRET_AGENT_OLD_* parent="NM.SecretAgentOld" name="SECRET_AGENT_OLD_(.+)"
|
||||
SRIOV_VF_ATTRIBUTE_* parent="NM.SriovVfAttributes" name="SRIOV_VF_ATTRIBUTE_(.+)"
|
||||
TEAM_LINK_WATCHER_* parent="NM.TeamLinkWatcher" name="TEAM_LINK_WATCHER_(.+)"
|
||||
VPN_* parent="NM.Vpn" name="VPN_(.+)"
|
||||
VPN_CONNECTION_* parent="NM.VpnConnection" name="VPN_CONNECTION_(.+)"
|
||||
WIFI_P2P_PEER_* parent="NM.WifiP2PPeer" name="WIFI_P2P_PEER_(.+)"
|
||||
WIMAX_NSP_* parent="NM.WimaxNsp" name="WIMAX_NSP_(.+)"
|
||||
WIREGUARD_PEER_ATTR_* parent="NM.WireguardPeerAttributes" name="WIREGUARD_PEER_ATTR_(.+)"
|
||||
|
||||
DEVICE_* parent="NM.Device" name="DEVICE_(.+)"
|
||||
DEVICE_6LOWPAN_* parent="NM.Device6Lowpan" name="DEVICE_6LOWPAN_(.+)"
|
||||
DEVICE_ADSL_* parent="NM.DeviceAdsl" name="DEVICE_ADSL_(.+)"
|
||||
DEVICE_BOND_* parent="NM.DeviceBond" name="DEVICE_BOND_(.+)"
|
||||
DEVICE_BRIDGE_* parent="NM.DeviceBridge" name="DEVICE_BRIDGE_(.+)"
|
||||
DEVICE_BT_* parent="NM.DeviceBt" name="DEVICE_BT_(.+)"
|
||||
DEVICE_DUMMY_* parent="NM.DeviceDummy" name="DEVICE_DUMMY_(.+)"
|
||||
DEVICE_ETHERNET_* parent="NM.DeviceEthernet" name="DEVICE_ETHERNET_(.+)"
|
||||
DEVICE_GENERIC_* parent="NM.DeviceGeneric" name="DEVICE_GENERIC_(.+)"
|
||||
DEVICE_TEAM_* parent="NM.DeviceTeam" name="DEVICE_TEAM_(.+)"
|
||||
DEVICE_INFINIBAND_* parent="NM.DeviceInfiniband" name="DEVICE_INFINIBAND_(.+)"
|
||||
DEVICE_IP_TUNNEL_* parent="NM.DeviceIPTunnel" name="DEVICE_IP_TUNNEL_(.+)"
|
||||
DEVICE_LOOPBACK_* parent="NM.DeviceLoopback" name="DEVICE_LOOPBACK_(.+)"
|
||||
DEVICE_MACSEC_* parent="NM.DeviceMacsec" name="DEVICE_MACSEC_(.+)"
|
||||
DEVICE_MACVLAN_* parent="NM.DeviceMacvlan" name="DEVICE_MACVLAN_(.+)"
|
||||
DEVICE_MODEM_* parent="NM.DeviceModem" name="DEVICE_MODEM_(.+)"
|
||||
DEVICE_OLPC_MESH_* parent="NM.DeviceOlpcMesh" name="DEVICE_OLPC_(.+)"
|
||||
DEVICE_OVS_BRIDGE_* parent="NM.DeviceOvsBridge" name="DEVICE_OVS_BRIDGE_(.+)"
|
||||
DEVICE_OVS_INTERFACE_* parent="NM.DeviceOvsInterface" name="DEVICE_OVS_INTERFACE_(.+)"
|
||||
DEVICE_OVS_PORT_* parent="NM.DeviceOvsPort" name="DEVICE_OVS_PORT_(.+)"
|
||||
DEVICE_PPP_* parent="NM.DevicePpp" name="DEVICE_PPP_(.+)"
|
||||
DEVICE_TEAM_* parent="NM.DeviceTeam" name="DEVICE_TEAM_(.+)"
|
||||
DEVICE_TUN_* parent="NM.DeviceTun" name="DEVICE_TUN_(.+)"
|
||||
DEVICE_VETH_* parent="NM.DeviceVeth" name="DEVICE_VETH_(.+)"
|
||||
DEVICE_VLAN_* parent="NM.DeviceVlan" name="DEVICE_VLAN_(.+)"
|
||||
DEVICE_VRF_* parent="NM.DeviceVrf" name="DEVICE_VRF_(.+)"
|
||||
DEVICE_VXLAN_* parent="NM.DeviceVxlan" name="DEVICE_VXLAN_(.+)"
|
||||
DEVICE_WIFI_* parent="NM.DeviceWifi" name="DEVICE_WIFI_(.+)"
|
||||
DEVICE_WIFI_P2P_* parent="NM.DeviceWifiP2P" name="DEVICE_WIFI_P2P_(.+)"
|
||||
DEVICE_WIMAX_* parent="NM.DeviceWimax" name="DEVICE_WIMAX_(.+)"
|
||||
DEVICE_WIREGUARD_* parent="NM.DeviceWireGuard" name="DEVICE_WIREGUARD_(.+)"
|
||||
DEVICE_WPAN_* parent="NM.DeviceWpan" name="DEVICE_WPAN_(.+)"
|
||||
|
||||
DEVICE_* parent="NM.Device" name="DEVICE_(.+)"
|
||||
|
||||
DHCP_CONFIG_OPTIONS parent="NM.DhcpConfig" name="DHCP_CONFIG_(.+)"
|
||||
IP_CONFIG_* parent="NM.IPConfig" name="IP_CONFIG_(.+)"
|
||||
OBJECT_* parent="NM.Object" name="OBJECT_(.+)"
|
||||
REMOTE_CONNECTION_* parent="NM.RemoteConnection" name="REMOTE_CONNECTION_(.+)"
|
||||
VPN_CONNECTION_* parent="NM.VpnConnection" name="VPN_CONNECTION_(.+)"
|
||||
WIMAX_NSP_* parent="NM.WimaxNsp" name="WIMAX_NSP_(.+)"
|
||||
ETHTOOL_OPTNAME_* parent="NM.EthtoolOptname" name="ETHTOOL_OPTNAME_(.+)"
|
||||
ethtool_optname_* parent="NM.EthtoolOptname" name="ethtool_optname_(.+)"
|
||||
|
||||
VLAN_FLAGS_ALL parent="NM.VlanFlags" name="ALL" type="NM.VlanFlags"
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue