Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Primary Upstream DNS Server IPV6 Validation Issue

Aperta Adatta ai principianti
#59 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
82/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
android, kotlin
Ambito
mobile

Direzione di ricerca

Inizia in app/src/main/java/net/pangolin/Pangolin/SettingsActivity.kt, all’importazione di android.util.Patterns e alla validazione intorno alla riga 267. Riproduci il problema nella schermata delle impostazioni Android con entrambi gli esempi IPv6 di Cloudflare, quindi verifica che gli indirizzi IPv6 validi vengano accettati senza l’errore di validazione.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Describe the Bug

When using the Android app, IPV6 addresses fail the validation check in the "Primary Upstream DNS Server" field on the settings page.

The example listed below the field uses an address that is not accepted despite being valid and listed as an example.

Please watch the video linked below for further explanation and information.

https://github.com/fosrl/android/blob/main/app/src/main/java/net/pangolin/Pangolin/SettingsActivity.kt#L13
import android.util.Patterns
https://github.com/fosrl/android/blob/main/app/src/main/java/net/pangolin/Pangolin/SettingsActivity.kt#L267

isDnsField -> {
    if (newValue.isEmpty()) {
        true
    } else {
        Patterns.IP_ADDRESS.matcher(newValue).matches()
    }
}

Patterns.IP_ADDRESS might not support IPV6 addresses.

Environment
  • OS Type & Version: Android 17 (CPA2A.260605.016), Xiaomi HyperOS 3.0.336.0
  • Pangolin Version: 1.23.0
  • Edition (Community or Enterprise): Community
  • Gerbil Version: 1.5.2
  • Traefik Version: 3.7.13
  • Newt Version: 1.18
  • Client Version: 0.8.0
To Reproduce
  1. Access the Android Pangolin app
  2. Open the sidebar navigation menu
  3. Access "Settings" from the navigation menu
  4. Tap "Primary Upstream DNS Server" to edit the setting
  5. Enter Cloudflare's IPV6 DNS address 2606:4700:4700::1111 or 2606:4700:4700:0000:0000:0000:0000:1111 (Expanded - full 128-Bit Form)
  6. Note the momentary flash of validation feedback (red error message) which disappears.

https://github.com/user-attachments/assets/cf6af099-604a-43fb-9e45-c7be1f1a5896

AI Disclosure

N/A

Expected Behavior

Accept IPV6 address formats, fix the validation on the field to support IPV6 addresses.

Lingua principale
Kotlin
Stelle
44
Fork
11
Merge medio
1m
PR unite (30g)
5

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di fosrl/android

Tutte le issue di fosrl/android

Issue simili

Altre issue su Kotlin

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.