You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- When "Connect directly" fails due to missing/wrong credentials, show `NetworkLoginForm` inline in the pane instead of an opaque error toast
- `upgrade_to_smb_volume` now returns structured `UpgradeResult` (success / credentials needed / network error) instead of a flat error string
- New `upgrade_to_smb_volume_with_credentials` command for the login form to call with explicit credentials + optional Keychain save
- Fix mDNS service name resolution: `statfs` can return names like `Naspolya._smb._tcp.local` which are not DNS-resolvable — new `resolve_server_address` resolves them to IPs via discovered hosts. Fixes all three upgrade paths (startup, mount-time, manual).
- Fix volume display name: show `naspi on Naspolya` instead of `naspi on Naspolya._smb._tcp.local`
- `NetworkLoginForm` gains `defaultConnectionMode` prop so the upgrade flow defaults to credentials (not guest) while still offering "Connect as guest"
|`rename.rs`| Rename / trash |`move_to_trash` (delegates to `write_operations::trash::move_to_trash_sync`), `check_rename_permission`, `check_rename_validity`, `rename_file`. `rename_file` calls `notify_mutation` after success to update the listing cache (both local and volume-aware paths). |
Copy file name to clipboardExpand all lines: apps/desktop/src-tauri/src/network/CLAUDE.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -134,3 +134,4 @@ convention) and passes it as an explicit mount point to `NetFSMountURLSync`. The
134
134
-**Mount URL must include port when non-standard**: `mount_share_sync` builds `smb://server:port/share` for non-445 ports. The port is passed as a separate parameter through `mount_share` → `mount_share_sync`, not embedded in the server string (embedding it would cause `build_smb_addr` to double the port: `localhost:10480:10480`). `SmbMountInfo.port` extracts the port from `statfs` mount source for upgrade paths.
135
135
-**Strip `.local` from addr for smb2**: `smb2::Connection::connect()` extracts `server_name` from the addr string and uses it in UNC paths. Passing `"foo.local:445"` creates `\\foo.local\IPC$` which some servers reject. The `build_addr` helper in `smb_connection.rs` handles this.
136
136
-**Manual hosts always set `hostname`**: The share listing pipeline guards on `host.hostname` being truthy. `create_network_host` always sets `hostname` (to the address, even for IPs) so manual hosts flow through the pipeline correctly.
137
+
-**`statfs` can return mDNS service names instead of IPs**: When macOS auto-reconnects an SMB mount on login, `statfs.f_mntfromname` may contain `//user@Naspolya._smb._tcp.local/share` instead of `//user@192.168.1.111/share`. These service names are not DNS-resolvable. `resolve_server_address()` in `commands/network.rs` detects these (by checking for `._tcp`/`._udp`) and resolves them to IPs via `get_discovered_hosts()`. All upgrade paths (startup, mount-time, manual) go through this resolution. Similarly, `friendly_server_name()` extracts the display name (e.g., `Naspolya`) for UI display.
0 commit comments