mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-01-26 21:20:24 +01:00
* dhcpcd/client.c - Remove some debug messages - Wrap others in #ifdef DEBUG/#endif * src/NetworkManager.c - Remove some debug messages - Clarify some debug messages - Remove code related to old single-thread wireless scanning * src/NetworkManagerAP.[ch] - New AP property "last_seen" to track how recently an AP was found in a scan - Start using 'const' more in function arguments * src/NetworkManagerAPList.[ch] - (nm_ap_list_merge_scanned_ap): new, selectively update attributes of an AP found in an AP list from a source AP, or if not found in the list add the source AP - (nm_ap_list_combine): remove, no longer needed * src/NetworkManagerDevice.c - Each device now has a "worker" thread from start to end of its life. Scanning for wireless devices now happens in that thread, not in a single "wireless scanning thread" for all devices as previously. Activation consists of adding an idle handler to the thread's main loop/context, which gets run at the next available opportunity. - Wireless scanning is also simplified, there is now only one list of access points per wireless device, and APs older than 60s are removed from the list. Previously, we kept results for the last 3 scans and merged whole lists, which was complicated. - Cleaned up activation debug messages. - Wireless activation and access-point search routines now use Open System authentication before trying Shared Key. - Removed some code in nm_device_update_best_ap() that could cause cards to loose their link to the access point. - Scanning now uses a backoff algorithm, where the inverval becomes progressively longer between scans when the list of scanned access points doesn't change. A change will revert to the shortest scan interval (20s). * src/NetworkManagerWireless.[ch] - Remove code related to old single-thread wireless scanning git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@382 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
65 lines
2.6 KiB
C
65 lines
2.6 KiB
C
/* NetworkManager -- Network link manager
|
|
*
|
|
* Dan Williams <dcbw@redhat.com>
|
|
*
|
|
* 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.
|
|
*
|
|
* 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
*
|
|
* (C) Copyright 2004 Red Hat, Inc.
|
|
*/
|
|
|
|
#ifndef NETWORK_MANAGER_AP_LIST_H
|
|
#define NETWORK_MANAGER_AP_LIST_H
|
|
|
|
#include <glib.h>
|
|
#include "NetworkManager.h"
|
|
#include "NetworkManagerDevice.h"
|
|
|
|
|
|
typedef struct NMAccessPointList NMAccessPointList;
|
|
typedef struct NMAPListIter NMAPListIter;
|
|
|
|
NMAccessPointList * nm_ap_list_new (NMNetworkType type);
|
|
void nm_ap_list_ref (NMAccessPointList *list);
|
|
void nm_ap_list_unref (NMAccessPointList *list);
|
|
|
|
gboolean nm_ap_list_is_empty (NMAccessPointList *list);
|
|
|
|
void nm_ap_list_append_ap (NMAccessPointList *list, NMAccessPoint *ap);
|
|
void nm_ap_list_remove_ap (NMAccessPointList *list, NMAccessPoint *ap);
|
|
|
|
NMAccessPoint * nm_ap_list_get_ap_by_essid (NMAccessPointList *list, const char *network);
|
|
NMAccessPoint * nm_ap_list_get_ap_by_address (NMAccessPointList *list, const struct ether_addr *addr);
|
|
|
|
void nm_ap_list_update_network_from_nmi (NMAccessPointList *list, const char *network, NMData *data);
|
|
|
|
void nm_ap_list_populate_from_nmi (NMAccessPointList *list, NMData *data);
|
|
|
|
void nm_ap_list_copy_properties (NMAccessPointList *dest, NMAccessPointList *source);
|
|
void nm_ap_list_copy_essids_by_address (NMAccessPointList *dest, NMAccessPointList *source);
|
|
|
|
void nm_ap_list_diff (NMData *data, NMDevice *dev, NMAccessPointList *old, NMAccessPointList *new);
|
|
gboolean nm_ap_list_merge_scanned_ap (NMAccessPointList *list, NMAccessPoint *merge_ap);
|
|
|
|
gboolean nm_ap_list_lock (NMAccessPointList *list);
|
|
void nm_ap_list_unlock (NMAccessPointList *list);
|
|
|
|
NMAPListIter * nm_ap_list_iter_new (NMAccessPointList *list);
|
|
NMAccessPoint * nm_ap_list_iter_get_ap (NMAPListIter *iter);
|
|
NMAccessPoint * nm_ap_list_iter_next (NMAPListIter *iter);
|
|
void nm_ap_list_iter_free (NMAPListIter *iter);
|
|
|
|
void nm_ap_list_print_members (NMAccessPointList *list, const char *name);
|
|
|
|
#endif
|