ruvnet / ruvnet/RuVector

WiFi: allow connecting to open networks (no password)

Open
#275 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
4.5k
Forks
603
Avg merge
23h 32m
Merged PRs (30d)
59

Description

Problem

The appliance rejects WiFi connections to open (password-less) networks. Three layers enforce a password requirement:

  1. API (api.rs:3905) — password.len() < 8 check rejects empty passwords
  2. Shell script (wifi-connect.sh:36) — exits on empty PSK
  3. NM keyfile (wifi-connect.sh:59-62) — always writes key-mgmt=wpa-psk

Fix

  • WifiReq.password is now #[serde(default)] (optional, defaults to "")
  • API allows empty password (skip the 8-char minimum check)
  • Shell script only requires non-empty SSID; PSK can be empty
  • NM keyfile: omits [wifi-security] section entirely for open networks
  • UI placeholder updated to indicate open networks are supported

Files changed

  • src/cognitum-agent/src/api.rs — serde default, relaxed validation, UI placeholder
  • scripts/cognitum/wifi-connect.sh — conditional NM keyfile, safe JSON parsing

Test plan

  • Connect to WPA2 network (existing behavior, should still work)
  • Connect to open network via UI (leave password blank)
  • Connect to open network via API: POST /api/v1/wifi/connect {"ssid":"OpenNet"}
  • Verify NM keyfile has no [wifi-security] section for open networks

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with src/cognitum-agent/src/api.rs around api.rs:3905, then inspect scripts/cognitum/wifi-connect.sh at lines 36 and 59-62. Check the existing WPA2 path before testing the listed UI and API open-network cases; done means WPA2 still works and open-network keyfiles omit [wifi-security].

Written by the indexing model from the issue text.

Assessment

Tech stack
rust, shell
Domain
backend, networking
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.