All Projects → tnkemdilim → wifi-rs

tnkemdilim / wifi-rs

Licence: other
📡 Easily interface and manage wireless networks.

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to wifi-rs

direct-net-share
share internet via Wifi direct on Android
Stars: ✭ 36 (-53.25%)
Mutual labels:  wifi, hotspot
anon-hotspot
On demand Debian Linux (Tor) Hotspot setup tool
Stars: ✭ 34 (-55.84%)
Mutual labels:  wifi, hotspot
PiFi
Easily set a raspberry pi's wifi settings in a headless configuration
Stars: ✭ 29 (-62.34%)
Mutual labels:  wifi, hotspot
Marquee Scroller
Marquee Scroller Clock News Weather and More
Stars: ✭ 211 (+174.03%)
Mutual labels:  wifi
Wifi keylogger
DIY Arduino Wi-Fi Keylogger (Proof of Concept)
Stars: ✭ 218 (+183.12%)
Mutual labels:  wifi
Drcom Gdut Hc5661a Openwrt
在Dr.COM下使用路由器上校园网WIFI(以广东工业大学、极路由1S HC5661A、OpenWrt为例)
Stars: ✭ 245 (+218.18%)
Mutual labels:  wifi
vietnamese-password-dicts
Tổng hợp danh sách mật khẩu wifi tiếng Việt sử dụng cho aircrack-ng
Stars: ✭ 40 (-48.05%)
Mutual labels:  wifi
Esp32 Obd2 Emulator
Open-source OBD-II emulator based on an ESP32 + CAN transceiver IC, controllable via WiFi through a simple web UI (or via API)
Stars: ✭ 207 (+168.83%)
Mutual labels:  wifi
Blynk WM
Blynk and WiFiManager Library for configuring/auto(re)connecting ESP8266/ESP32 modules to the best or available MultiWiFi APs and MultiBlynk servers at runtime, with or without SSL. Configuration data saved in either SPIFFS or EEPROM.
Stars: ✭ 46 (-40.26%)
Mutual labels:  wifi
Spoofmac
💼 Change your MAC address for debugging
Stars: ✭ 2,687 (+3389.61%)
Mutual labels:  wifi
Hack Captive Portals
Hack any Captive portal using MAC-spoofing technique
Stars: ✭ 238 (+209.09%)
Mutual labels:  wifi
Radareeye
A tool made for specially scanning nearby devices[BLE, Bluetooth & Wifi] and execute our given command on our system when the target device comes in-between range.
Stars: ✭ 218 (+183.12%)
Mutual labels:  wifi
Xps15 9560 Bigsur
XPS15-9560-Catalina, Q群:161385229
Stars: ✭ 247 (+220.78%)
Mutual labels:  wifi
Django Netjsonconfig
Configuration manager for embedded devices, implemented as a reusable django-app
Stars: ✭ 213 (+176.62%)
Mutual labels:  wifi
Pedalino
Smart wireless MIDI foot controller for guitarists and more.
Stars: ✭ 105 (+36.36%)
Mutual labels:  wifi
Pi.alert
WIFI / LAN intruder detector. Check the devices connected and alert you with unknown devices. It also warns of the disconnection of "always connected" devices
Stars: ✭ 209 (+171.43%)
Mutual labels:  wifi
Node Wifi
📶 NodeJS tool to manage wifi (connections, scans)
Stars: ✭ 250 (+224.68%)
Mutual labels:  wifi
Esp32marauder
A suite of WiFi/Bluetooth offensive and defensive tools for the ESP32
Stars: ✭ 233 (+202.6%)
Mutual labels:  wifi
Iotwifi
Raspberry Pi (arm) wifi configuration container. Configure and control wifi connectivity with a JSON based REST api.
Stars: ✭ 236 (+206.49%)
Mutual labels:  wifi
Berrylan
Raspberry Pi WiFi setup
Stars: ✭ 243 (+215.58%)
Mutual labels:  wifi

WiFi-rs

A rust crate to interface and manage Wi-Fi networks.

This is a command-line counterpart of managing networks instead of via a GUI.

Features

  • Connect to a WiFi (Windows, Linux, MacOS).
  • Disconnect from a WiFi network (Windows, Linux, MacOS).
  • Create hotspot (Windows, Linux).

Currently supported network types

Note that only open, WEP and WPA-PSK networks are supported at the moment.

It is also supposed that IP configuration is obtained via DHCP.

Supported Operating Systems

  • Windows
  • Linux
  • MacOS

Example

use wifi_rs::{prelude::*, WiFi};

fn main() -> Result<(), WifiConnectionError> {
    let config = Some(Config {
        interface: Some("wlo1"),
    });

    let mut wifi = WiFi::new(config);

    match wifi.connect("AndroidAPSD22", "belm4235") {
        Ok(result) => println!(
            "{}",
            if result == true {
                "Connection Successful."
            } else {
                "Invalid password."
            }
        ),
        Err(err) => println!("The following error occurred: {:?}", err),
    }

    Ok(())
}

Todos

Windows

  • Support for Windows.
  • Bundle windows profile sample as literals.
  • Add hotspot functionality.
  • Use tempfile crate on windows to generate windows profile temporary file.
  • Fix the implementation for is_wifi_enabled for windows.
  • Add implementation for WifiInterface trait.
  • Add get network type feature.

Linux

  • Support for linux.
  • Add disconnect feature.
  • Add hotspot functionality.
  • Add get network type feature.

MacOS

  • Add support for MacOS.
  • Add hotspot functionality.
  • Add get network type feature.

General

  • Return detailed error messages.
  • Write documentation.
  • Update wifi-CLI with recent updates.

Contribution

Any feature you feel is missing, why not send in a Pull Request, and let's help make this project better. Or if there are any bugs, kindly create an issue, so we could work together towards fixing it.

Support

Love this project, please show some love by starring the project 😃.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].