Wie kann ich eine Liste der verfügbaren drahtlosen Netzwerke auf Linux bekommen?

StackOverflow https://stackoverflow.com/questions/400240

  •  03-07-2019
  •  | 
  •  

Frage

Ich möchte eine Liste der drahtlosen Netzwerke erhalten zur Verfügung. Im Idealfall würde dies über einig C-Aufruf sein, aber ich habe nichts dagegen, wenn ich es mit einem Systemaufruf Flickschusterei habe. Noch besser ist, wenn der erforderliche C-Aufruf oder das Programm nicht einig exotisches 3rd-Party-Paket benötigt.

Das Internet scheint ich sudo iwlist <interface> scan vorzuschlagen, die den Trick von der Kommandozeile zu tun scheint, aber ich möchte lieber nicht root-Rechte erfordern. Ich möchte nur die Grundlagen, um zu sehen, nichts ändern.

War es hilfreich?

Lösung

Die Wireless Tools Paket - davon iwlist ist ein Teil - enthält auch eine Wireless-tools Helper-Bibliothek. Sie müssen enthalten iwlib.h und Link mit libiw.a (d hinzufügen -liw). nachschlagen dann die Dokumentation für die iw_set_ext Funktion. Die SIOCSIWSCAN Parameter werden von den meisten Nutzen sein. Ein Beispiel dafür, wie diese Schnittstelle zu verwenden, werfen Sie einen Blick auf der KWiFiManager Quelle in der KDE-Bibliothek (siehe auch: Interface_wireless_wirelessextensions :: get_available_networks Methode). Alternativ können Sie auch die Code Wireless Tools Quelle herunterladen und einen Blick auf, wie die iwlib iw_set_ext Funktion auch für das Scannen in iwlist.c verwendet wird.

Wie für Privilegien, stelle ich mir den Prozess benötigt als root ausführen, um den Scan durchzuführen. Ich würde gerne wissen, ob dies sonst auch getan werden könnte.

Da Sie verwenden Ubuntu 8.04 die libiw-dev Paket sollte Einsatz.

Andere Tipps

Es ist ziemlich einfach, einen Scan in der Befehlszeile zu tun. Der Man-Pages ist dein Freund hier (check out iwconfig und iwlist ). Aber mit Hilfe der C-Schnittstelle ist ein wenig schwieriger, so dass ich darauf konzentrieren werde.

Zu allererst wie andere Leute schon erwähnt haben, auf jeden Fall herunterladen, um die

scroll top