2020-09-29 16:42:22 +02:00
|
|
|
/* SPDX-License-Identifier: GPL-2.0+ */
|
2019-09-25 13:13:40 +02:00
|
|
|
/*
|
2010-10-27 15:47:10 -05:00
|
|
|
* Copyright (C) 2004 - 2010 Red Hat, Inc.
|
2008-11-03 04:13:42 +00:00
|
|
|
* Copyright (C) 2007 - 2008 Novell, Inc.
|
2004-06-24 14:18:37 +00:00
|
|
|
*/
|
|
|
|
|
|
all: fix up multiple-include-guard defines
Previously, src/nm-ip4-config.h, libnm/nm-ip4-config.h, and
libnm-glib/nm-ip4-config.h all used "NM_IP4_CONFIG_H" as an include
guard, which meant that nm-test-utils.h could not tell which of them
was being included (and so, eg, if you tried to include
nm-ip4-config.h in a libnm test, it would fail to compile because
nm-test-utils.h was referring to symbols in src/nm-ip4-config.h).
Fix this by changing the include guards in the non-API-stable parts of
the tree:
- libnm-glib/nm-ip4-config.h remains NM_IP4_CONFIG_H
- libnm/nm-ip4-config.h now uses __NM_IP4_CONFIG_H__
- src/nm-ip4-config.h now uses __NETWORKMANAGER_IP4_CONFIG_H__
And likewise for all other headers.
The two non-"nm"-prefixed headers, libnm/NetworkManager.h and
src/NetworkManagerUtils.h are now __NETWORKMANAGER_H__ and
__NETWORKMANAGER_UTILS_H__ respectively, which, while not entirely
consistent with the general scheme, do still mostly make sense in
isolation.
2014-08-13 14:10:11 -04:00
|
|
|
#ifndef __NETWORKMANAGER_POLICY_H__
|
|
|
|
|
#define __NETWORKMANAGER_POLICY_H__
|
2004-06-24 14:18:37 +00:00
|
|
|
|
2013-08-22 10:10:17 -04:00
|
|
|
#define NM_TYPE_POLICY (nm_policy_get_type())
|
|
|
|
|
#define NM_POLICY(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), NM_TYPE_POLICY, NMPolicy))
|
|
|
|
|
#define NM_POLICY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), NM_TYPE_POLICY, NMPolicyClass))
|
|
|
|
|
#define NM_IS_POLICY(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), NM_TYPE_POLICY))
|
|
|
|
|
#define NM_IS_POLICY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), NM_TYPE_POLICY))
|
|
|
|
|
#define NM_POLICY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), NM_TYPE_POLICY, NMPolicyClass))
|
2020-09-28 16:03:33 +02:00
|
|
|
|
2016-03-29 10:36:51 +02:00
|
|
|
#define NM_POLICY_MANAGER "manager"
|
|
|
|
|
#define NM_POLICY_SETTINGS "settings"
|
2018-06-28 18:05:05 +02:00
|
|
|
#define NM_POLICY_DEFAULT_IP4_AC "default-ip4-ac"
|
|
|
|
|
#define NM_POLICY_DEFAULT_IP6_AC "default-ip6-ac"
|
|
|
|
|
#define NM_POLICY_ACTIVATING_IP4_AC "activating-ip4-ac"
|
|
|
|
|
#define NM_POLICY_ACTIVATING_IP6_AC "activating-ip6-ac"
|
2013-08-22 13:06:51 -04:00
|
|
|
|
2016-09-29 13:49:01 +02:00
|
|
|
typedef struct _NMPolicyClass NMPolicyClass;
|
2013-08-22 10:10:17 -04:00
|
|
|
|
|
|
|
|
GType nm_policy_get_type(void);
|
2007-02-08 15:34:26 +00:00
|
|
|
|
2012-08-22 18:34:45 -05:00
|
|
|
NMPolicy *nm_policy_new(NMManager *manager, NMSettings *settings);
|
2007-02-08 15:34:26 +00:00
|
|
|
|
2018-06-28 18:05:05 +02:00
|
|
|
NMActiveConnection *nm_policy_get_default_ip4_ac(NMPolicy *policy);
|
|
|
|
|
NMActiveConnection *nm_policy_get_default_ip6_ac(NMPolicy *policy);
|
|
|
|
|
NMActiveConnection *nm_policy_get_activating_ip4_ac(NMPolicy *policy);
|
|
|
|
|
NMActiveConnection *nm_policy_get_activating_ip6_ac(NMPolicy *policy);
|
2013-08-22 13:06:51 -04:00
|
|
|
|
2017-03-02 19:18:49 +01:00
|
|
|
/**
|
|
|
|
|
* NMPolicyHostnameMode
|
|
|
|
|
* @NM_POLICY_HOSTNAME_MODE_NONE: never update the transient hostname.
|
|
|
|
|
* @NM_POLICY_HOSTNAME_MODE_DHCP: only hostname from DHCP hostname
|
|
|
|
|
* options are eligible to be set as transient hostname.
|
|
|
|
|
* @NM_POLICY_HOSTNAME_MODE_FULL: NM will try to update the hostname looking
|
|
|
|
|
* to current static hostname, DHCP options, reverse IP lookup and externally
|
|
|
|
|
* set hostnames.
|
|
|
|
|
*
|
|
|
|
|
* NMPolicy's hostname update policy
|
|
|
|
|
*/
|
|
|
|
|
typedef enum {
|
|
|
|
|
NM_POLICY_HOSTNAME_MODE_NONE,
|
|
|
|
|
NM_POLICY_HOSTNAME_MODE_DHCP,
|
|
|
|
|
NM_POLICY_HOSTNAME_MODE_FULL,
|
|
|
|
|
} NMPolicyHostnameMode;
|
|
|
|
|
|
all: fix up multiple-include-guard defines
Previously, src/nm-ip4-config.h, libnm/nm-ip4-config.h, and
libnm-glib/nm-ip4-config.h all used "NM_IP4_CONFIG_H" as an include
guard, which meant that nm-test-utils.h could not tell which of them
was being included (and so, eg, if you tried to include
nm-ip4-config.h in a libnm test, it would fail to compile because
nm-test-utils.h was referring to symbols in src/nm-ip4-config.h).
Fix this by changing the include guards in the non-API-stable parts of
the tree:
- libnm-glib/nm-ip4-config.h remains NM_IP4_CONFIG_H
- libnm/nm-ip4-config.h now uses __NM_IP4_CONFIG_H__
- src/nm-ip4-config.h now uses __NETWORKMANAGER_IP4_CONFIG_H__
And likewise for all other headers.
The two non-"nm"-prefixed headers, libnm/NetworkManager.h and
src/NetworkManagerUtils.h are now __NETWORKMANAGER_H__ and
__NETWORKMANAGER_UTILS_H__ respectively, which, while not entirely
consistent with the general scheme, do still mostly make sense in
isolation.
2014-08-13 14:10:11 -04:00
|
|
|
#endif /* __NETWORKMANAGER_POLICY_H__ */
|