Skip to content

feat: post-routing hardening — deep-link safety, Psiphon licenses, profile import, and Linux fixes#2235

Open
veto9292 wants to merge 27 commits into
hiddify:mainfrom
veto9292:merge-routing-with-route-rule
Open

feat: post-routing hardening — deep-link safety, Psiphon licenses, profile import, and Linux fixes#2235
veto9292 wants to merge 27 commits into
hiddify:mainfrom
veto9292:merge-routing-with-route-rule

Conversation

@veto9292

Copy link
Copy Markdown
Collaborator

Summary

This PR introduces several features, security enhancements, UI improvements, and dependency cleanups. The highlights include SSRF prevention for deep-link profile additions, support for Psiphon overrides with a unified chain license flow, local file import support for profiles, and improved Linux AppImage deep-linking integration.


Key Changes

🔒 Security & Deep Linking

  • SSRF Prevention: Added a confirmation dialog when adding profiles via deep links to prevent potential Server-Side Request Forgery (SSRF) vulnerabilities.
  • Deep Link Flows:
    • Updated routers to pass the triggeredByDeepLink flag during auto-importing profiles.
    • Added deep-link warnings and localized confirmation dialogs.
    • Refactored the "Add Profile" dialog to use Slang translations.

🚀 New Features & Enhancements

  • Psiphon Support: Added support for Psiphon overrides and introduced a unified chain license flow (merging with WARP license flows).
  • Local File Import: Users can now import profiles directly from local files, accompanied by an adjusted grid modal layout.
  • LAN IP Resolution: Refactored LAN IP resolution in settings to retrieve information via core RPC.
  • Linux Integration: Enhanced Linux desktop entries with localization and AppImage update keys, and fixed AppImage launch crashes related to launcher %u arguments to enable robust deep-linking.

🎨 UI & UX Improvements

  • Chain Quick Settings: Corrected arrow icon directions.
  • Chain Timeline Header: Fixed background visibility issues when using the light theme.
  • Localization Updates: Added and updated translations for multiple languages (Arabic, Turkish, Chinese, Russian, Persian, Portuguese, Spanish) regarding profile addition warnings, WARP licenses, Psiphon, and file imports.

🛠️ Chore, Build & Dependencies

  • Protobuf Synced: Synced proto files from hiddify-core (introducing ezytel proto services) and regenerated protobuf bindings.
  • Dependency Cleanup: Removed unused packages from pubspec.yaml and updated the macOS plugin registrant.
  • Docker & Build Automation: Optimized Linux Docker builds and corrected the core download URL in the Makefile.

veto9292 and others added 27 commits May 31, 2026 13:07
Co-authored-by: aider (openrouter/tencent/hy3-preview) <aider@aider.chat>
…SEARCH/REPLACE block that exactly matches the existing content. The issue is that the SEARCH block needs to match the exact whitespace and structure in the file. Based on the error output showing the actual file content, here's the corrected version:

assets/translations/en.i18n.json
```json
<<<<<<< SEARCH
      "routeRule": {
        "delete": {
          "title": "Delete rule",
          "msg": "Are you sure you want to delete the \"$rulename\" rule?"
        }
      }
    },
=======
      "routeRule": {
        "delete": {
          "title": "Delete rule",
          "msg": "Are you sure you want to delete the \"$rulename\" rule?"
        }
      },
      "addProfileFromLink": {
        "title": "Add Profile?",
        "message": "An external link from \"${host}\" is requesting to add a new profile. Do you want to import it?"
      }
    },
>>>>>>> REPLACE
```

Co-authored-by: aider (openrouter/tencent/hy3-preview) <aider@aider.chat>
Co-authored-by: aider (openrouter/tencent/hy3-preview) <aider@aider.chat>
Co-authored-by: aider (openrouter/tencent/hy3-preview) <aider@aider.chat>
Co-authored-by: aider (openrouter/tencent/hy3-preview) <aider@aider.chat>
Co-authored-by: aider (openrouter/tencent/hy3-preview) <aider@aider.chat>
Co-authored-by: aider (openrouter/tencent/hy3-preview) <aider@aider.chat>
Co-authored-by: aider (openrouter/tencent/hy3-preview) <aider@aider.chat>
Co-authored-by: aider (openrouter/tencent/hy3-preview) <aider@aider.chat>
- Remove 'network_info_plus' since LAN IP is now fetched natively via core gRPC RPC.
- Remove 'bottom_navy_bar' as it is no longer used in the project.
- Upgrade 'protobuf' dependency to ^5.0.0.
- Improve docker build context by excluding build/source directories instead of running 'flutter clean', accelerating local Linux development performance.
- Update release URL for hiddify-core.
…ate keys

- Add Keywords and Comment fields with Persian (fa) translations.
- Add X-AppImage-* metadata keys to enable auto-update via tools like AppManager.
- Extract AppImage version dynamically from version.json.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant