2008-11-03 04:13:42 +00:00
|
|
|
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
|
2005-12-31 08:21:24 +00:00
|
|
|
/* NetworkManager -- Network link manager
|
|
|
|
|
*
|
|
|
|
|
* This program is free software; you can redistribute it and/or modify
|
|
|
|
|
* it under the terms of the GNU General Public License as published by
|
|
|
|
|
* the Free Software Foundation; either version 2 of the License, or
|
|
|
|
|
* (at your option) any later version.
|
|
|
|
|
*
|
|
|
|
|
* This program is distributed in the hope that it will be useful,
|
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
|
* GNU General Public License for more details.
|
|
|
|
|
*
|
2008-06-26 18:31:52 +00:00
|
|
|
* You should have received a copy of the GNU General Public License along
|
|
|
|
|
* with this program; if not, write to the Free Software Foundation, Inc.,
|
|
|
|
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
2005-12-31 08:21:24 +00:00
|
|
|
*
|
2008-11-03 04:13:42 +00:00
|
|
|
* Copyright (C) 2007 - 2008 Novell, Inc.
|
2011-01-10 23:39:12 -06:00
|
|
|
* Copyright (C) 2007 - 2011 Red Hat, Inc.
|
2005-12-31 08:21:24 +00:00
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
#ifndef NM_DEVICE_PRIVATE_H
|
|
|
|
|
#define NM_DEVICE_PRIVATE_H
|
|
|
|
|
|
|
|
|
|
#include "nm-device.h"
|
2006-10-13 19:41:47 +00:00
|
|
|
|
2011-11-17 22:39:34 -06:00
|
|
|
/* This file should only be used by subclasses of NMDevice */
|
|
|
|
|
|
2013-05-29 12:57:13 -03:00
|
|
|
#define NM_DEVICE_PLATFORM_DEVICE "platform-device"
|
|
|
|
|
|
2011-11-17 22:39:34 -06:00
|
|
|
enum NMActStageReturn {
|
|
|
|
|
NM_ACT_STAGE_RETURN_FAILURE = 0,
|
2012-11-15 14:47:05 -06:00
|
|
|
NM_ACT_STAGE_RETURN_SUCCESS, /* Activation stage done */
|
|
|
|
|
NM_ACT_STAGE_RETURN_POSTPONE, /* Long-running operation in progress */
|
2012-11-15 17:52:24 -06:00
|
|
|
NM_ACT_STAGE_RETURN_WAIT, /* Not ready to start stage; wait */
|
2012-11-15 14:47:05 -06:00
|
|
|
NM_ACT_STAGE_RETURN_STOP /* Activation stage done; nothing to do */
|
2011-11-17 22:39:34 -06:00
|
|
|
};
|
|
|
|
|
|
2013-05-07 10:23:44 -04:00
|
|
|
#define NM_DEVICE_CAP_NONSTANDARD_CARRIER 0x80000000
|
|
|
|
|
|
|
|
|
|
#define NM_DEVICE_CAP_INTERNAL_MASK 0x80000000
|
|
|
|
|
|
2008-05-29 20:35:34 +00:00
|
|
|
void nm_device_set_ip_iface (NMDevice *self, const char *iface);
|
2006-01-03 17:07:07 +00:00
|
|
|
|
2008-05-29 20:35:34 +00:00
|
|
|
void nm_device_activate_schedule_stage3_ip_config_start (NMDevice *device);
|
|
|
|
|
|
2012-11-15 17:52:24 -06:00
|
|
|
gboolean nm_device_activate_stage3_ip4_start (NMDevice *self);
|
|
|
|
|
|
|
|
|
|
gboolean nm_device_activate_stage3_ip6_start (NMDevice *self);
|
|
|
|
|
|
2013-06-13 15:13:58 -05:00
|
|
|
gboolean nm_device_bring_up (NMDevice *self, gboolean wait, gboolean *no_firmware);
|
2008-05-14 01:55:49 +00:00
|
|
|
|
2013-06-13 15:13:58 -05:00
|
|
|
void nm_device_take_down (NMDevice *self, gboolean block);
|
2008-05-14 01:55:49 +00:00
|
|
|
|
2013-05-01 09:28:16 -04:00
|
|
|
gboolean nm_device_update_hw_address (NMDevice *self);
|
2012-06-13 11:32:47 -05:00
|
|
|
|
2010-05-03 01:19:54 -07:00
|
|
|
gboolean nm_device_ip_config_should_fail (NMDevice *self, gboolean ip6);
|
|
|
|
|
|
2010-07-01 10:32:11 -07:00
|
|
|
void nm_device_set_firmware_missing (NMDevice *self, gboolean missing);
|
|
|
|
|
|
2011-11-17 22:39:34 -06:00
|
|
|
void nm_device_activate_schedule_stage1_device_prepare (NMDevice *device);
|
|
|
|
|
void nm_device_activate_schedule_stage2_device_config (NMDevice *device);
|
|
|
|
|
|
|
|
|
|
void nm_device_activate_schedule_ip4_config_result(NMDevice *device, NMIP4Config *config);
|
|
|
|
|
void nm_device_activate_schedule_ip4_config_timeout (NMDevice *device);
|
|
|
|
|
|
2013-06-14 21:42:22 +02:00
|
|
|
void nm_device_activate_schedule_ip6_config_result (NMDevice *device);
|
2011-11-17 22:39:34 -06:00
|
|
|
void nm_device_activate_schedule_ip6_config_timeout (NMDevice *device);
|
|
|
|
|
|
|
|
|
|
gboolean nm_device_activate_ip4_state_in_conf (NMDevice *device);
|
2013-01-28 13:34:44 -06:00
|
|
|
gboolean nm_device_activate_ip4_state_in_wait (NMDevice *device);
|
|
|
|
|
|
2011-11-17 22:39:34 -06:00
|
|
|
gboolean nm_device_activate_ip6_state_in_conf (NMDevice *device);
|
2013-01-28 13:34:44 -06:00
|
|
|
gboolean nm_device_activate_ip6_state_in_wait (NMDevice *device);
|
2011-11-17 22:39:34 -06:00
|
|
|
|
|
|
|
|
void nm_device_set_dhcp_timeout (NMDevice *device, guint32 timeout);
|
|
|
|
|
void nm_device_set_dhcp_anycast_address (NMDevice *device, guint8 *addr);
|
|
|
|
|
|
|
|
|
|
gboolean nm_device_dhcp4_renew (NMDevice *device, gboolean release);
|
|
|
|
|
|
2012-05-02 10:28:16 -05:00
|
|
|
NMConnectionProvider *nm_device_get_connection_provider (NMDevice *device);
|
|
|
|
|
|
2012-08-01 11:16:48 -06:00
|
|
|
void nm_device_recheck_available_connections (NMDevice *device);
|
|
|
|
|
|
2012-08-30 15:59:31 -05:00
|
|
|
void nm_device_queued_state_clear (NMDevice *device);
|
|
|
|
|
|
|
|
|
|
NMDeviceState nm_device_queued_state_peek (NMDevice *device);
|
|
|
|
|
|
2013-01-18 11:03:29 -06:00
|
|
|
gboolean nm_device_get_enslaved (NMDevice *device);
|
|
|
|
|
|
2013-01-28 13:37:04 -06:00
|
|
|
NMDevice *nm_device_master_get_slave_by_ifindex (NMDevice *dev, int ifindex);
|
|
|
|
|
|
2013-05-07 10:23:44 -04:00
|
|
|
void nm_device_set_carrier (NMDevice *device, gboolean carrier);
|
|
|
|
|
|
2005-12-31 08:21:24 +00:00
|
|
|
#endif /* NM_DEVICE_PRIVATE_H */
|