diff --git a/CHANGELOG.md b/CHANGELOG.md index 25949716..764b5750 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -30,6 +30,11 @@ NOTE: Add new changes BELOW THIS COMMENT. set of exclusion prefixes to filter AAAA responses. The Well-Known Prefix (`64:ff9b::/96`) is used if no custom prefixes are specified. +### Fixed + +- Filtering rules with `*` as the hostname not working properly ([#5245]). +- Various dark theme bugs ([#5375]). + ### Removed - The “beta frontend” and the corresponding APIs. They never quite worked @@ -40,6 +45,8 @@ NOTE: Add new changes BELOW THIS COMMENT. as well. [#5117]: https://github.com/AdguardTeam/AdGuardHome/issues/5117 +[#5245]: https://github.com/AdguardTeam/AdGuardHome/issues/5245 +[#5375]: https://github.com/AdguardTeam/AdGuardHome/issues/5375 diff --git a/client/src/__locales/ar.json b/client/src/__locales/ar.json index 4b5c2f4c..b091c4fd 100644 --- a/client/src/__locales/ar.json +++ b/client/src/__locales/ar.json @@ -37,8 +37,6 @@ "dhcp_ipv6_settings": "DHCP IPv6 إعدادات", "form_error_required": "الحقل مطلوب", "form_error_ip4_format": "عنوان IPv4 غير صالح", - "form_error_ip4_range_start_format": "عناوين البداية لـIPv4 غير صالحة للنطاق", - "form_error_ip4_range_end_format": "عناوين IPv4 غير صالحة لنطاق النهاية", "form_error_ip4_gateway_format": "عنوان IPv4 غير صالح للبوابة", "form_error_ip6_format": "عنوان IPv6 غير صالح", "form_error_ip_format": "عنوان IP غير صحيح", @@ -51,7 +49,6 @@ "out_of_range_error": "يجب أن يكون خارج النطاق \"{{start}}\" - \"{{end}}\"", "lower_range_start_error": "يجب أن يكون أقل من نطاق البداية", "greater_range_start_error": "يجب أن يكون أكبر من نطاق البداية", - "greater_range_end_error": "يجب أن يكون أكبر من نطاق النهاية", "subnet_error": "يجب أن تكون العناوين في شبكة فرعية واحدة", "gateway_or_subnet_invalid": "قناع الشبكة الفرعية غير صالح", "dhcp_form_gateway_input": "IP البوابة", diff --git a/client/src/__locales/be.json b/client/src/__locales/be.json index bc3af9d3..a5f5fab8 100644 --- a/client/src/__locales/be.json +++ b/client/src/__locales/be.json @@ -454,6 +454,7 @@ "updates_checked": "Даступная новая версія AdGuard Home", "updates_version_equal": "Версія AdGuard Home актуальная", "check_updates_now": "Праверыць абнаўленні", + "version_request_error": "Памылка пры праверцы наяўнасці абнаўленняў. Праверце ваша інтэрнэт-злучэнне.", "dns_privacy": "Зашыфраваны DNS", "setup_dns_privacy_1": "<0>DNS-over-TLS: Ужывайце радок <1>{{address}}.", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: Ужывайце радок <1>{{address}}.", diff --git a/client/src/__locales/cs.json b/client/src/__locales/cs.json index a33a8fed..0931b6a1 100644 --- a/client/src/__locales/cs.json +++ b/client/src/__locales/cs.json @@ -165,8 +165,8 @@ "enabled_safe_browsing_toast": "Zapnuté bezpečné prohlížení", "disabled_parental_toast": "Vypnutá Rodičovská kontrola", "enabled_parental_toast": "Zapnutá Rodičovská kontrola", - "disabled_safe_search_toast": "Zapnuté bezpečné vyhledávání", - "enabled_save_search_toast": "Vypnuté bezpečné vyhledávání", + "disabled_safe_search_toast": "Vypnuté bezpečné vyhledávání", + "enabled_save_search_toast": "Zapnuté bezpečné vyhledávání", "enabled_table_header": "Zapnuto", "name_table_header": "Název", "list_url_table_header": "Seznam URL", @@ -454,6 +454,7 @@ "updates_checked": "Nová verze AdGuard Home je k dispozici\n", "updates_version_equal": "AdGuard Home je aktuální", "check_updates_now": "Zkontrolovat aktualizace nyní", + "version_request_error": "Kontrola aktualizace se nezdařila. Zkontrolujte prosím připojení k Internetu.", "dns_privacy": "Soukromí DNS", "setup_dns_privacy_1": "<0>DNS skrze TLS: Použít <1>{{address}} řetězec.", "setup_dns_privacy_2": "<0>DNS skrze HTTPS: Použít <1>{{address}} řetězec.", diff --git a/client/src/__locales/da.json b/client/src/__locales/da.json index 964afc05..67288436 100644 --- a/client/src/__locales/da.json +++ b/client/src/__locales/da.json @@ -454,6 +454,7 @@ "updates_checked": "En ny version af AdGuard Home er tilgængelig\n", "updates_version_equal": "AdGuard Home er opdateret", "check_updates_now": "Søg efter opdateringer nu", + "version_request_error": "Opdateringstjek mislykkedes. Tjek internetforbindelsen.", "dns_privacy": "DNS-fortrolighed", "setup_dns_privacy_1": "<0>DNS-over-TLS: Brug <1>{{address}} streng.", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: Brug <1>{{address}} streng.", diff --git a/client/src/__locales/de.json b/client/src/__locales/de.json index ded9abcf..3bbb7aff 100644 --- a/client/src/__locales/de.json +++ b/client/src/__locales/de.json @@ -454,6 +454,7 @@ "updates_checked": "Neue Version von AdGuard Home ist jetzt verfügbar", "updates_version_equal": "AdGuard Home ist aktuell", "check_updates_now": "Jetzt nach Aktualisierungen suchen", + "version_request_error": "Aktualisierungsprüfung fehlgeschlagen. Bitte überprüfen Sie Ihre Internetverbindung.", "dns_privacy": "DNS-Datenschutz", "setup_dns_privacy_1": "<0>DNS-over-TLS: Zeichenkette <1>{{address}} verwenden.", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: Zeichenkette <1>{{address}} verwenden.", diff --git a/client/src/__locales/es.json b/client/src/__locales/es.json index f500cb94..ad45e6c3 100644 --- a/client/src/__locales/es.json +++ b/client/src/__locales/es.json @@ -454,6 +454,7 @@ "updates_checked": "La nueva versión de AdGuard Home está disponible", "updates_version_equal": "AdGuard Home está actualizado", "check_updates_now": "Buscar actualizaciones ahora", + "version_request_error": "La búsqueda de actualizaciones falló. Por favor revisa tu conexión a Internet.", "dns_privacy": "DNS cifrado", "setup_dns_privacy_1": "<0>DNS mediante TLS: Utiliza la cadena <1>{{address}}.", "setup_dns_privacy_2": "<0>DNS mediante HTTPS: Utiliza la cadena <1>{{address}}.", diff --git a/client/src/__locales/fa.json b/client/src/__locales/fa.json index 1a6949ae..0f499866 100644 --- a/client/src/__locales/fa.json +++ b/client/src/__locales/fa.json @@ -32,8 +32,6 @@ "dhcp_config_saved": "پیکربندی سرور DHCP ذخیره شده است", "form_error_required": "فیلد مورد نیاز", "form_error_ip4_format": "فرمت نامعتبر IPv4", - "form_error_ip4_range_start_format": "قالب IPv4 شروع دامنه نامعتبر است", - "form_error_ip4_range_end_format": "قالب IPv4 پایان دامنه نامعتبر است", "form_error_ip4_gateway_format": "قالب IPv4 درگاه نامعتبر است", "form_error_ip6_format": "فرمت نامعتبر IPv6", "form_error_ip_format": "فرمت IPv4 نامعتبر است", @@ -44,7 +42,6 @@ "out_of_range_error": "باید خارج از دامنه باشد\"{{start}}\"-\"{{end}}\"", "lower_range_start_error": "باید کمتر از شروع دامنه باشد", "greater_range_start_error": "باید بیشتر از شروع دامنه باشد", - "greater_range_end_error": "باید بیشتر از پایان دامنه باشد", "subnet_error": "آدرس ها باید در یک زیرشبکه باشند", "gateway_or_subnet_invalid": "پوشش زیرشبکه نامعتبر است", "dhcp_form_gateway_input": "آی پی دروازه", @@ -422,6 +419,7 @@ "updates_checked": "نسخه جدیدی از AdGuard Home در دسترس است", "updates_version_equal": "AdGuard Home بروز است", "check_updates_now": "حالا بررسی برای بروز رسانی", + "version_request_error": "بررسی بروزرسانی موفق نشد.لطفا ارتباط اینترنتی خود را بررسی کنید", "dns_privacy": "حریم خصوصی DNS", "setup_dns_privacy_1": "<0>DNS-over-TLS: استفاده از<1>{{address}} .", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: استفاده از <1>{{address}} .", diff --git a/client/src/__locales/fi.json b/client/src/__locales/fi.json index 708bcafe..f222d365 100644 --- a/client/src/__locales/fi.json +++ b/client/src/__locales/fi.json @@ -272,7 +272,7 @@ "nxdomain": "NXDOMAIN", "refused": "REFUSED", "null_ip": "Tyhjä IP", - "custom_ip": "Oma IP-osoite", + "custom_ip": "Mukautettu IP-osoite", "blocking_ipv4": "IPv4-esto", "blocking_ipv6": "IPv6-esto", "dnscrypt": "DNSCrypt", @@ -297,7 +297,7 @@ "blocking_mode_refused": "REFUSED: Vastaa REFUSED-koodilla", "blocking_mode_nxdomain": "NXDOMAIN: Vastaa NXDOMAIN-koodilla", "blocking_mode_null_ip": "Tyhjä IP: Vastaa IP-nollaosoitteella (0.0.0.0 korvaa A; :: korvaa AAAA)", - "blocking_mode_custom_ip": "Oma IP: Vastaa itse määritetyllä IP-osoitteella", + "blocking_mode_custom_ip": "Mukautettu IP: Vastaa itse määritetyllä IP-osoitteella", "theme_auto": "Automaattinen", "theme_light": "Vaalea", "theme_dark": "Tumma", @@ -454,6 +454,7 @@ "updates_checked": "Uusi versio AdGuard Home -ohjelmasta on saatavana\n", "updates_version_equal": "AdGuard Home on ajan tasalla", "check_updates_now": "Tarkista päivitykset nyt", + "version_request_error": "Päivitystarkistus epäonnistui. Tarkista Internet-yhteytesi.", "dns_privacy": "DNS-tietosuoja", "setup_dns_privacy_1": "<0>DNS-over-TLS: Käytä merkkijonoa <1>{{address}}.", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: Käytä merkkijonoa <1>{{address}}.", @@ -617,7 +618,7 @@ "cache_ttl_max_override_desc": "Määritä DNS-välimuistin kohteiden enimmäiselinaika (sekunteina).", "ttl_cache_validation": "Välimuistin vähimmäiselinajan on oltava pienempi tai sama kuin enimmäiselinajan", "cache_optimistic": "Optimistinen välimuisti", - "cache_optimistic_desc": "Pakota AdGuard Home vastaamaan välimuistista vaikka sen tiedot olisivat vanhentuneet. Pyri samalla myös päivittämään tiedot.", + "cache_optimistic_desc": "Pakota AdGuard Home vastaamaan välimuistista vaikka tiedot olisivat vanhentuneet. Pyri samalla myös päivittämään tiedot.", "filter_category_general": "Yleiset", "filter_category_security": "Turvallisuus", "filter_category_regional": "Alueelliset", diff --git a/client/src/__locales/fr.json b/client/src/__locales/fr.json index 1383bbc6..a99e2baa 100644 --- a/client/src/__locales/fr.json +++ b/client/src/__locales/fr.json @@ -222,7 +222,7 @@ "updated_upstream_dns_toast": "Serveurs en amont enregistrés", "dns_test_ok_toast": "Les serveurs DNS spécifiés fonctionnent correctement", "dns_test_not_ok_toast": "Impossible d'utiliser le serveur « {{key}} »: veuillez vérifier si le nom saisi est bien correct", - "dns_test_warning_toast": "L'amont «{{key}}» ne répond pas aux demandes de test et peut ne pas fonctionner correctement", + "dns_test_warning_toast": "L'amont « {{key}} » ne répond pas aux demandes de test et peut ne pas fonctionner correctement", "unblock": "Débloquer", "block": "Bloquer", "disallow_this_client": "Interdire ce client", @@ -454,6 +454,7 @@ "updates_checked": "Une nouvelle version de AdGuard Home est disponible", "updates_version_equal": "AdGuard Home est à jour", "check_updates_now": "Vérifier les mises à jour", + "version_request_error": "Impossible de vérifier les mises à jour. Veuillez vérifier votre connexion internet.", "dns_privacy": "Confidentialité DNS", "setup_dns_privacy_1": "<0>DNS-over-TLS : Utiliser le string <1>{{address}}.", "setup_dns_privacy_2": "<0>DNS-over-HTTPS : Utiliser le string <1>{{address}}.", diff --git a/client/src/__locales/hr.json b/client/src/__locales/hr.json index 4128815a..0aef21df 100644 --- a/client/src/__locales/hr.json +++ b/client/src/__locales/hr.json @@ -454,6 +454,7 @@ "updates_checked": "Dostupna je nova verzija AdGuard Home-a", "updates_version_equal": "AdGuard Home je ažuriran", "check_updates_now": "Provjeri ažuriranja sada", + "version_request_error": "Ne uspješna provjera ažuriranja. Provjerite vašu Internetsku vezu.", "dns_privacy": "DNS privatnost", "setup_dns_privacy_1": "<0>DNS-over-TLS: Koristite <1>{{address}}.", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: Koristite <1>{{address}}.", diff --git a/client/src/__locales/hu.json b/client/src/__locales/hu.json index cdd17112..aef5766d 100644 --- a/client/src/__locales/hu.json +++ b/client/src/__locales/hu.json @@ -454,6 +454,7 @@ "updates_checked": "Elérhető az AdGuard Home új verziója", "updates_version_equal": "Az AdGuard Home naprakész", "check_updates_now": "Frissítések ellenőrzése most", + "version_request_error": "A frissítések ellenőrzése sikertelen. Ellenőrizze az internetkapcsolatot.", "dns_privacy": "DNS Adatvédelem", "setup_dns_privacy_1": "<0>DNS-over-TLS: Használja a(z) <1>{{address}} szöveget.", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: Használja a(z) <1>{{address}} szöveget.", diff --git a/client/src/__locales/it.json b/client/src/__locales/it.json index 2e50520b..e09fd79c 100644 --- a/client/src/__locales/it.json +++ b/client/src/__locales/it.json @@ -454,6 +454,7 @@ "updates_checked": "Nuova versione di AdGuard Home è disponibile", "updates_version_equal": "AdGuard Home è aggiornato", "check_updates_now": "Ricerca aggiornamenti ora", + "version_request_error": "Ricerca aggiornamenti non riuscita. Per favore controlla la tua connessione internet.", "dns_privacy": "Privacy DNS", "setup_dns_privacy_1": "<0>DNS su TLS: Utilizza la stringa <1>{{address}}.", "setup_dns_privacy_2": "<0>DNS su HTTPS: Utilizza la stringa <1>{{address}}.", diff --git a/client/src/__locales/ja.json b/client/src/__locales/ja.json index 151141d6..1ae0a1f8 100644 --- a/client/src/__locales/ja.json +++ b/client/src/__locales/ja.json @@ -454,6 +454,7 @@ "updates_checked": "AdGuard Homeの新バージョンが利用可能です。", "updates_version_equal": "AdGuard Homeは既に最新です", "check_updates_now": "今すぐアップデートを確認する", + "version_request_error": "アップデート確認に失敗しました。インターネット接続を確認してください。", "dns_privacy": "DNSプライバシー", "setup_dns_privacy_1": "<0>DNS-over-TLS: <1>{{address}}という文字列を使用してください。", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: <1>{{address}}という文字列を使用してください。", diff --git a/client/src/__locales/ko.json b/client/src/__locales/ko.json index 214fde89..9847db95 100644 --- a/client/src/__locales/ko.json +++ b/client/src/__locales/ko.json @@ -454,6 +454,7 @@ "updates_checked": "AdGuard Home의 새 버전을 사용할 수 있습니다", "updates_version_equal": "AdGuard Home 최신 상태입니다.", "check_updates_now": "지금 업데이트 확인", + "version_request_error": "업데이트 체크에 실패했습니다. 인터넷 연결 상태를 확인해주세요.", "dns_privacy": "DNS 프라이버시", "setup_dns_privacy_1": "<0>DNS-over-TLS: <1>{{address}} 사용하세요.", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: <1>{{address}} 사용하세요.", diff --git a/client/src/__locales/nl.json b/client/src/__locales/nl.json index 1579e8d3..9db3884f 100644 --- a/client/src/__locales/nl.json +++ b/client/src/__locales/nl.json @@ -298,7 +298,7 @@ "blocking_mode_nxdomain": "NXDOMAIN: Reageer met NXDOMAIN code", "blocking_mode_null_ip": "Nul IP: Reageer met een nul IP address (0.0.0.0 voor A; :: voor AAAA)", "blocking_mode_custom_ip": "Aangepast IP: Reageer met een handmatige ingesteld IP adres", - "theme_auto": "Auto", + "theme_auto": "Automatisch", "theme_light": "Licht", "theme_dark": "Donker", "upstream_dns_client_desc": "Indien je dit veld leeglaat zal AdGuard Home de servers welke zijn ingesteld in de <0>DNS instellingen gebruiken.", @@ -454,6 +454,7 @@ "updates_checked": "Een nieuwe versie van AdGuard Home is beschikbaar\n", "updates_version_equal": "AdGuard Home is actueel", "check_updates_now": "Controleer op updates", + "version_request_error": "Updatecontrole mislukt. Controleer je internetverbinding.", "dns_privacy": "DNS Privacy", "setup_dns_privacy_1": "<0>DNS-via-TLS: Gebruik <1>{{address}} string.", "setup_dns_privacy_2": "<0>DNS-via-HTTPS: Gebruik <1>{{address}} string.", diff --git a/client/src/__locales/no.json b/client/src/__locales/no.json index 07499b86..9756f88a 100644 --- a/client/src/__locales/no.json +++ b/client/src/__locales/no.json @@ -433,6 +433,7 @@ "updates_checked": "En ny versjon av AdGuard Home er tilgjengelig", "updates_version_equal": "AdGuard Home er fullt oppdatert", "check_updates_now": "Se etter oppdateringer nå", + "version_request_error": "Oppdateringssjekken mislyktes. Vennligst sjekk internettforbindelsen din.", "dns_privacy": "DNS-privatliv", "setup_dns_privacy_1": "<0>DNS-over-TLS: Benytt <1>{{address}}-strengen.", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: Benytt <1>{{address}}-strengen.", diff --git a/client/src/__locales/pl.json b/client/src/__locales/pl.json index c1c7dd96..513dfcf3 100644 --- a/client/src/__locales/pl.json +++ b/client/src/__locales/pl.json @@ -454,6 +454,7 @@ "updates_checked": "Dostępna jest nowa wersja programu AdGuard Home\n", "updates_version_equal": "AdGuard Home jest aktualny", "check_updates_now": "Sprawdź aktualizacje teraz", + "version_request_error": "Sprawdzanie aktualizacji zakończone niepowodzeniem. Sprawdź swoje połączenie z internetem.", "dns_privacy": "Prywatny DNS", "setup_dns_privacy_1": "<0>DNS-over-TLS: Skorzystaj z adresu <1>{{address}}.", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: Skorzystaj z adresu <1>{{address}}.", diff --git a/client/src/__locales/pt-br.json b/client/src/__locales/pt-br.json index ff8697ab..c7af3cc6 100644 --- a/client/src/__locales/pt-br.json +++ b/client/src/__locales/pt-br.json @@ -454,6 +454,7 @@ "updates_checked": "Uma nova versão do AdGuard Home está disponível\n", "updates_version_equal": "O AdGuard Home está atualizado.", "check_updates_now": "Verificar atualizações", + "version_request_error": "A verificação de atualização falhou. Por favor, verifique sua conexão com a internet.", "dns_privacy": "Privacidade de DNS", "setup_dns_privacy_1": "<0>DNS-sobre-TLS: Use <1>{{address}} string.", "setup_dns_privacy_2": "<0>DNS-sobre-HTTPS: Use <1>{{address}} string.", diff --git a/client/src/__locales/pt-pt.json b/client/src/__locales/pt-pt.json index ed1105a5..b710fe3d 100644 --- a/client/src/__locales/pt-pt.json +++ b/client/src/__locales/pt-pt.json @@ -49,7 +49,7 @@ "out_of_range_error": "Deve estar fora do intervalo \"{{start}}\"-\"{{end}}\"", "lower_range_start_error": "Deve ser inferior ao início do intervalo", "greater_range_start_error": "Deve ser maior que o início do intervalo", - "subnet_error": "Os endereços devem estar em uma sub-rede", + "subnet_error": "Os endereços devem estar numa sub-rede", "gateway_or_subnet_invalid": "Máscara de sub-rede inválida", "dhcp_form_gateway_input": "IP do gateway", "dhcp_form_subnet_input": "Máscara de sub-rede", @@ -335,10 +335,10 @@ "install_devices_router": "Router", "install_devices_router_desc": "Esta configuração cobre automaticamente todos os dispositivos conectados ao seu router doméstico, sem a necessidade de configurar cada um deles manualmente.", "install_devices_address": "O servidor de DNS do AdGuard Home está a capturar os seguintes endereços", - "install_devices_router_list_1": "Abra as preferências do seu roteador. Normalmente, tu podes acessá-lo de teu navegador por meio de um URL, como http://192.168.0.1/ ou http://192.168.1.1/. Tu podes ser solicitado a inserir uma palavra-passe. Se tu não se lembrar, muitas vezes tu podes repor a palavra-passe pressionando um botão no próprio roteador, mas esteja ciente de que se esse procedimento for escolhido, tu provavelmente perderás toda a definição do roteador. Se o teu roteador requer uma aplicação para configurá-lo, instale a aplicação no seu telefone ou PC e use-o para acessar as definições do roteador.", + "install_devices_router_list_1": "Abra as preferências do seu router. Normalmente, tu podes acessá-lo de teu navegador por meio de um URL, como http://192.168.0.1/ ou http://192.168.1.1/. Tu podes ser solicitado a inserir uma palavra-passe. Se tu não se lembrar, muitas vezes tu podes repor a palavra-passe pressionando um botão no próprio roteador, mas esteja ciente de que se esse procedimento for escolhido, tu provavelmente perderás toda a definição do router. Se o teu router requer uma aplicação para configurá-lo, instale a aplicação no seu telefone ou PC e use-o para acessar as definições do router.", "install_devices_router_list_2": "Encontre as configurações de DNS. Procure as letras DNS ao lado de um campo que permite dois ou três conjuntos de números, cada um dividido em quatro grupos de um a três números.", "install_devices_router_list_3": "Insira aqui seu servidor do AdGuard Home.", - "install_devices_router_list_4": "Em alguns tipos de roteador, um servidor DNS personalizado não pode ser configurado. Nesse caso, configurar o AdGuard Home como um <0>Servidor DHCP pode ajudar. Caso contrário, tu deve verificar o manual do router sobre como personalizar os servidores DNS em seu modelo de router específico.", + "install_devices_router_list_4": "Em alguns tipos de router, um servidor DNS personalizado não pode ser configurado. Nesse caso, configurar o AdGuard Home como um <0>Servidor DHCP pode ajudar. Caso contrário, tu deves verificar o manual do router sobre como personalizar os servidores DNS no seu modelo de router específico.", "install_devices_windows_list_1": "Abra o Painel de Controlo através do Menu Iniciar ou pela Pesquisa do Windows.", "install_devices_windows_list_2": "Entre na categoria Rede e Internet e depois clique em Central de Rede e Partilha.", "install_devices_windows_list_3": "No painel esquerdo, clique em \"Alterar configurações do adaptador\".", @@ -454,6 +454,7 @@ "updates_checked": "Uma nova versão do AdGuard Home está disponível\n", "updates_version_equal": "O AdGuard Home está atualizado", "check_updates_now": "Verificar atualizações", + "version_request_error": "A verificação de atualização falhou. Verifique a sua ligação à internet.", "dns_privacy": "Privacidade de DNS", "setup_dns_privacy_1": "<0>DNS-sobre-TLS: Use <1>{{address}} string.", "setup_dns_privacy_2": "<0>DNS-sobre-HTTPS: Use <1>{{address}} string.", @@ -582,7 +583,7 @@ "client_blocked": "Cliente \"{{ip}}\" foi bloqueado com sucesso", "client_unblocked": "Cliente \"{{ip}}\" foi desbloqueado com sucesso", "static_ip": "Endereço de IP estático", - "static_ip_desc": "O AdGuard Home é um servidor, portanto, ele precisa de um endereço de IP estático para funcionar corretamente. Caso contrário, em algum momento, seu roteador poderá atribuir um novo endereço de IP neste dispositivo.", + "static_ip_desc": "O AdGuard Home é um servidor, portanto, ele precisa de um endereço de IP estático para funcionar corretamente. Caso contrário, em algum momento, seu router poderá atribuir um novo endereço de IP neste dispositivo.", "set_static_ip": "Definir um endereço de IP estático", "install_static_ok": "Boas notícias! O endereço de IP estático já está configurado", "install_static_error": "O AdGuard Home não pode configurar automaticamente para esta interface de rede. Por favor, procure uma instrução sobre como fazer isso manualmente.", diff --git a/client/src/__locales/ro.json b/client/src/__locales/ro.json index b1093a79..69f7281c 100644 --- a/client/src/__locales/ro.json +++ b/client/src/__locales/ro.json @@ -454,6 +454,7 @@ "updates_checked": "Este disponibilă o nouă versiune de AdGuard Home\n", "updates_version_equal": "AdGuard Home este la zi", "check_updates_now": "Verificați actualizările acum", + "version_request_error": "Verificarea actualizării nu a reușit. Verificați conexiunea internet.", "dns_privacy": "Confidențialitate DNS", "setup_dns_privacy_1": "<0>DNS-over-TLS: Folosiți stringul <1>{{address}}.", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: Folosiți stringul <1>{{address}}.", diff --git a/client/src/__locales/ru.json b/client/src/__locales/ru.json index b09ef6d7..afe8c5cf 100644 --- a/client/src/__locales/ru.json +++ b/client/src/__locales/ru.json @@ -454,6 +454,7 @@ "updates_checked": "Доступна новая версия AdGuard Home", "updates_version_equal": "Версия AdGuard Home актуальна", "check_updates_now": "Проверить обновления", + "version_request_error": "Ошибка при проверке наличия обновлений. Проверьте ваше интернет-соединение.", "dns_privacy": "Зашифрованный DNS", "setup_dns_privacy_1": "<0>DNS-over-TLS: Используйте строку <1>{{address}}.", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: Используйте строку <1>{{address}}.", diff --git a/client/src/__locales/si-lk.json b/client/src/__locales/si-lk.json index a9c8d378..214acf11 100644 --- a/client/src/__locales/si-lk.json +++ b/client/src/__locales/si-lk.json @@ -30,8 +30,6 @@ "dhcp_ipv6_settings": "ග.ධා.වි.කෙ. අ.ජා.කෙ. 6 සැකසුම්", "form_error_required": "ඇවැසි ක්‍ෂේත්‍රයකි", "form_error_ip4_format": "IPv4 ලිපිනය වලංගු නොවේ", - "form_error_ip4_range_start_format": "පරාසය ආරම්භයේ වලංගු නොවන අ.ජා.කෙ.4 ලිපිනයකි", - "form_error_ip4_range_end_format": "පරාසය අවසානයේ වලංගු නොවන අ.ජා.කෙ.4 ලිපිනයකි", "form_error_ip6_format": "වලංගු නොවන අ.ජා.කෙ.6 ලිපිනයකි", "form_error_ip_format": "අ.ජා.කෙ. (IP) ලිපිනය වලංගු නොවේ", "form_error_mac_format": "මා.ප්‍ර.පා. ලිපිනය වලංගු නොවේ", @@ -42,7 +40,6 @@ "out_of_range_error": "\"{{start}}\"-\"{{end}}\" පරාසයෙන් පිට විය යුතුය", "lower_range_start_error": "පරාසය ආරම්භයට වඩා අඩු විය යුතුය", "greater_range_start_error": "පරාසය ආරම්භයට වඩා වැඩි විය යුතුය", - "greater_range_end_error": "පරාසය අවසානයට වඩා වැඩි විය යුතුය", "subnet_error": "ලිපින එක් අනුජාලයක තිබිය යුතුය", "dhcp_form_range_title": "අ.ජා. කෙ. (IP) ලිපින පරාසය", "dhcp_form_range_start": "පරාසය ආරම්භය", diff --git a/client/src/__locales/sk.json b/client/src/__locales/sk.json index 3a37b4ff..de0076a4 100644 --- a/client/src/__locales/sk.json +++ b/client/src/__locales/sk.json @@ -454,6 +454,7 @@ "updates_checked": "K dispozícii je nová verzia aplikácie AdGuard Home\n", "updates_version_equal": "AdGuard Home je aktuálny", "check_updates_now": "Skontrolovať aktualizácie teraz", + "version_request_error": "Kontrola aktualizácie zlyhala. Skontrolujte svoje internetové pripojenie.", "dns_privacy": "DNS súkromie", "setup_dns_privacy_1": "<0>DNS-over-TLS: Použiť <1>{{address}} reťazec.", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: Použiť <1>{{address}} reťazec.", diff --git a/client/src/__locales/sl.json b/client/src/__locales/sl.json index 02f26204..e8f6635c 100644 --- a/client/src/__locales/sl.json +++ b/client/src/__locales/sl.json @@ -454,6 +454,7 @@ "updates_checked": "Na voljo je nova različica programa AdGuard Home\n", "updates_version_equal": "AdGuard Home je posodobljen", "check_updates_now": "Preveri obstoj posodobitev zdaj", + "version_request_error": "Posodobitev ni uspela. Preverite vašo internetno povezavo.", "dns_privacy": "Zasebnost DNS", "setup_dns_privacy_1": "<0>DNS-prek-TLS: Uporabite niz <1>{{address}}.", "setup_dns_privacy_2": "<0>DNS-prek-HTTPS: Uporabite niz <1>{{address}}.", diff --git a/client/src/__locales/sr-cs.json b/client/src/__locales/sr-cs.json index dfb3e7b3..637f64cd 100644 --- a/client/src/__locales/sr-cs.json +++ b/client/src/__locales/sr-cs.json @@ -454,6 +454,7 @@ "updates_checked": "Dostupna je nova verzija AdGuard Home-a", "updates_version_equal": "AdGuard Home je ažuriran na najnoviju verziju", "check_updates_now": "Proveri da li postoje ispravke", + "version_request_error": "Provera ažuriranja nije uspela. Proverite svoju vezu sa internetom.", "dns_privacy": "DNS privatnost", "setup_dns_privacy_1": "<0>DNS-over-TLS: koristi <1>{{address}} string.", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: koristi <1>{{address}} string.", diff --git a/client/src/__locales/sv.json b/client/src/__locales/sv.json index 8453dcb2..94ca4570 100644 --- a/client/src/__locales/sv.json +++ b/client/src/__locales/sv.json @@ -454,6 +454,7 @@ "updates_checked": "En ny version av AdGuard Home är tillgänglig\n", "updates_version_equal": "AdGuard Home är uppdaterat", "check_updates_now": "Sök efter uppdateringar nu", + "version_request_error": "Uppdateringskontroll misslyckades. Kontrollera din internetanslutning.", "dns_privacy": "DNS-Integritet", "setup_dns_privacy_1": "<0>DNS-över-TLS: Använd: <1>{{address}}", "setup_dns_privacy_2": "<0>DNS-över-HTTPS: Använd: <1>{{address}}", diff --git a/client/src/__locales/tr.json b/client/src/__locales/tr.json index 4a5a5e1e..72acb887 100644 --- a/client/src/__locales/tr.json +++ b/client/src/__locales/tr.json @@ -454,6 +454,7 @@ "updates_checked": "AdGuard Home'un yeni bir sürümü mevcut", "updates_version_equal": "AdGuard Home yazılımı güncel durumda", "check_updates_now": "Güncellemeleri şimdi denetle", + "version_request_error": "Güncelleme denetimi başarısız. Lütfen internet bağlantınızı kontrol edin.", "dns_privacy": "DNS Gizliliği", "setup_dns_privacy_1": "<0>DNS-over-TLS: <1>{{address}} dizesini kullan.", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: <1>{{address}} dizesini kullan.", diff --git a/client/src/__locales/uk.json b/client/src/__locales/uk.json index 5fcacf5e..1df2b457 100644 --- a/client/src/__locales/uk.json +++ b/client/src/__locales/uk.json @@ -454,6 +454,7 @@ "updates_checked": "Доступна нова версія AdGuard Home", "updates_version_equal": "AdGuard Home останньої версії", "check_updates_now": "Перевірити наявність оновлень", + "version_request_error": "Не вдалося перевірити оновлення. Будь ласка, перевірте з'єднання з інтернетом.", "dns_privacy": "Конфіденційність DNS", "setup_dns_privacy_1": "<0>DNS-over-TLS: Використайте рядок <1>{{address}}.", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: Використайте рядок <1>{{address}}.", diff --git a/client/src/__locales/vi.json b/client/src/__locales/vi.json index eebc687d..0bba7a84 100644 --- a/client/src/__locales/vi.json +++ b/client/src/__locales/vi.json @@ -454,6 +454,7 @@ "updates_checked": "Phiên bản mới của AdGuard Home có sẵn", "updates_version_equal": "AdGuard Home đã được cập nhật", "check_updates_now": "Kiểm tra cập nhật ngay bây giờ", + "version_request_error": "Cập nhật không thành công. Hãy kiểm tra kết nối internet của bạn.", "dns_privacy": "DNS Riêng Tư", "setup_dns_privacy_1": "<0>DNS-over-TLS: Sử dụng chuỗi <1>{{address}}.", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: Sử dụng chuỗi <1>{{address}}.", diff --git a/client/src/__locales/zh-cn.json b/client/src/__locales/zh-cn.json index 82d7c870..3dc50aed 100644 --- a/client/src/__locales/zh-cn.json +++ b/client/src/__locales/zh-cn.json @@ -454,6 +454,7 @@ "updates_checked": "AdGuard Home 的新版本现在可用", "updates_version_equal": "AdGuard Home已经是最新版本", "check_updates_now": "立即检查更新", + "version_request_error": "检查更新失败。请检查您的因特网连接。", "dns_privacy": "DNS 隐私", "setup_dns_privacy_1": "<0>DNS-over-TLS: 使用 <1>{{address}} 字符串。", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: 使用 <1>{{address}} 字符串。", diff --git a/client/src/__locales/zh-hk.json b/client/src/__locales/zh-hk.json index 82a58118..3826c8e5 100644 --- a/client/src/__locales/zh-hk.json +++ b/client/src/__locales/zh-hk.json @@ -38,8 +38,6 @@ "form_error_required": "必要欄位", "form_error_ip4_format": "無效的 IPv4 格式", "form_error_ip6_format": "無效的 IPv6 格式", - "form_error_ip4_range_start_format": "無效的 IPv4 範圍起始位址", - "form_error_ip4_range_end_format": "無效的 IPv4 範圍結束位址", "form_error_ip4_gateway_format": "閘道的 IPv4 位址無效", "form_error_ip_format": "無效的 IP 位址", "form_error_mac_format": "無效的 「MAC 位址」格式", diff --git a/client/src/__locales/zh-tw.json b/client/src/__locales/zh-tw.json index dd9b49b7..9701c49e 100644 --- a/client/src/__locales/zh-tw.json +++ b/client/src/__locales/zh-tw.json @@ -454,6 +454,7 @@ "updates_checked": "AdGuard Home 的新版本為可用的", "updates_version_equal": "AdGuard Home 為最新的", "check_updates_now": "立即檢查更新", + "version_request_error": "更新檢查已失敗。請檢查您的網際網路連線。", "dns_privacy": "DNS 隱私", "setup_dns_privacy_1": "<0>DNS-over-TLS:使用 <1>{{address}} 字串。", "setup_dns_privacy_2": "<0>DNS-over-HTTPS:使用 <1>{{address}} 字串。", diff --git a/client/src/helpers/trackers/adguard.json b/client/src/helpers/trackers/adguard.json index 1559055c..1e3bda05 100644 --- a/client/src/helpers/trackers/adguard.json +++ b/client/src/helpers/trackers/adguard.json @@ -15,6 +15,8 @@ "11": "unknown", "12": "extensions", "13": "email", + "14": "consent", + "15": "telemetry", "101": "mobile_analytics" }, "trackers": { @@ -149,6 +151,7 @@ "akadns.net": "akamai_technologies", "akamaiedge.net": "akamai_technologies", "apple.com": "apple", + "apple.news": "apple", "apple-dns.net": "apple", "aaplimg.com": "apple", "icloud.com": "apple", diff --git a/go.mod b/go.mod index 6b51c210..cf15d902 100644 --- a/go.mod +++ b/go.mod @@ -3,9 +3,10 @@ module github.com/AdguardTeam/AdGuardHome go 1.18 require ( - github.com/AdguardTeam/dnsproxy v0.46.5 + // TODO(a.garipov): Return to a tagged version once DNS64 is in. + github.com/AdguardTeam/dnsproxy v0.46.6-0.20230125113741-98cb8a899e49 github.com/AdguardTeam/golibs v0.11.4 - github.com/AdguardTeam/urlfilter v0.16.0 + github.com/AdguardTeam/urlfilter v0.16.1 github.com/NYTimes/gziphandler v1.1.1 github.com/ameshkov/dnscrypt/v2 v2.2.5 github.com/digineo/go-ipset/v2 v2.2.1 @@ -16,22 +17,22 @@ require ( github.com/google/gopacket v1.1.19 github.com/google/renameio v1.0.1 github.com/google/uuid v1.3.0 - github.com/insomniacslk/dhcp v0.0.0-20221001123530-5308ebe5334c + github.com/insomniacslk/dhcp v0.0.0-20221215072855-de60144f33f8 github.com/kardianos/service v1.2.2 - github.com/lucas-clemente/quic-go v0.31.0 + github.com/lucas-clemente/quic-go v0.31.1 github.com/mdlayher/ethernet v0.0.0-20220221185849-529eae5b6118 - github.com/mdlayher/netlink v1.6.2 + github.com/mdlayher/netlink v1.7.1 // TODO(a.garipov): This package is deprecated; find a new one or use // our own code for that. Perhaps, use gopacket. github.com/mdlayher/raw v0.1.0 github.com/miekg/dns v1.1.50 - github.com/stretchr/testify v1.8.0 - github.com/ti-mo/netfilter v0.4.0 - go.etcd.io/bbolt v1.3.6 - golang.org/x/crypto v0.1.0 - golang.org/x/exp v0.0.0-20221106115401-f9659909a136 - golang.org/x/net v0.4.0 - golang.org/x/sys v0.3.0 + github.com/stretchr/testify v1.8.1 + github.com/ti-mo/netfilter v0.5.0 + go.etcd.io/bbolt v1.3.7 + golang.org/x/crypto v0.5.0 + golang.org/x/exp v0.0.0-20230131160201-f062dba9d201 + golang.org/x/net v0.5.0 + golang.org/x/sys v0.4.0 gopkg.in/natefinch/lumberjack.v2 v2.0.0 gopkg.in/yaml.v3 v3.0.1 howett.net/plist v1.0.0 @@ -47,20 +48,20 @@ require ( github.com/davecgh/go-spew v1.1.1 // indirect github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0 // indirect github.com/golang/mock v1.6.0 // indirect - github.com/google/pprof v0.0.0-20210407192527-94a9f03dee38 // indirect - github.com/josharian/native v1.0.0 // indirect + github.com/google/pprof v0.0.0-20230131232505-5a9e8f65f08f // indirect + github.com/josharian/native v1.1.0 // indirect github.com/marten-seemann/qpack v0.3.0 // indirect - github.com/marten-seemann/qtls-go1-18 v0.1.3 // indirect - github.com/marten-seemann/qtls-go1-19 v0.1.1 // indirect - github.com/mdlayher/packet v1.0.0 // indirect - github.com/mdlayher/socket v0.2.3 // indirect - github.com/onsi/ginkgo/v2 v2.5.0 // indirect + github.com/marten-seemann/qtls-go1-18 v0.1.4 // indirect + github.com/marten-seemann/qtls-go1-19 v0.1.2 // indirect + github.com/mdlayher/packet v1.1.1 // indirect + github.com/mdlayher/socket v0.4.0 // indirect + github.com/onsi/ginkgo/v2 v2.8.0 // indirect github.com/patrickmn/go-cache v2.1.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect - github.com/u-root/uio v0.0.0-20220204230159-dac05f7d2cb4 // indirect - golang.org/x/mod v0.6.0 // indirect + github.com/u-root/uio v0.0.0-20221213070652-c3537552635f // indirect + golang.org/x/mod v0.7.0 // indirect golang.org/x/sync v0.1.0 // indirect - golang.org/x/text v0.5.0 // indirect - golang.org/x/tools v0.2.0 // indirect + golang.org/x/text v0.6.0 // indirect + golang.org/x/tools v0.5.0 // indirect ) diff --git a/go.sum b/go.sum index 6633cb96..a5b49b33 100644 --- a/go.sum +++ b/go.sum @@ -1,12 +1,12 @@ -github.com/AdguardTeam/dnsproxy v0.46.5 h1:TiJZhwaIDDaKkqEfJ9AD9aroFjcHN8oEbKB8WfTjSIs= -github.com/AdguardTeam/dnsproxy v0.46.5/go.mod h1:yKBVgFlE6CqTQtye++3e7SATaMPc4Ixij+KkHsM6HhM= +github.com/AdguardTeam/dnsproxy v0.46.6-0.20230125113741-98cb8a899e49 h1:TDZsKB8BrKA2na6p5l20BvEu3MmgOWhIfTANz5laFuE= +github.com/AdguardTeam/dnsproxy v0.46.6-0.20230125113741-98cb8a899e49/go.mod h1:ZEkTmTJ2XInT3aVy0mHtEnSWSclpHHj/9hfNXDuAk5k= github.com/AdguardTeam/golibs v0.4.0/go.mod h1:skKsDKIBB7kkFflLJBpfGX+G8QFTx0WKUzB6TIgtUj4= github.com/AdguardTeam/golibs v0.10.4/go.mod h1:rSfQRGHIdgfxriDDNgNJ7HmE5zRoURq8R+VdR81Zuzw= github.com/AdguardTeam/golibs v0.11.4 h1:IltyvxwCTN+xxJF5sh6VadF8Zfbf8elgCm9dgijSVzM= github.com/AdguardTeam/golibs v0.11.4/go.mod h1:87bN2x4VsTritptE3XZg9l8T6gznWsIxHBcQ1DeRIXA= github.com/AdguardTeam/gomitmproxy v0.2.0/go.mod h1:Qdv0Mktnzer5zpdpi5rAwixNJzW2FN91LjKJCkVbYGU= -github.com/AdguardTeam/urlfilter v0.16.0 h1:IO29m+ZyQuuOnPLTzHuXj35V1DZOp1Dcryl576P2syg= -github.com/AdguardTeam/urlfilter v0.16.0/go.mod h1:46YZDOV1+qtdRDuhZKVPSSp7JWWes0KayqHrKAFBdEI= +github.com/AdguardTeam/urlfilter v0.16.1 h1:ZPi0rjqo8cQf2FVdzo6cqumNoHZx2KPXj2yZa1A5BBw= +github.com/AdguardTeam/urlfilter v0.16.1/go.mod h1:46YZDOV1+qtdRDuhZKVPSSp7JWWes0KayqHrKAFBdEI= github.com/BurntSushi/toml v1.1.0 h1:ksErzDEI1khOiGPgpwuI7x2ebx/uXQNw7xJpn9Eq1+I= github.com/BurntSushi/toml v1.1.0/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= github.com/NYTimes/gziphandler v1.1.1 h1:ZUDjpQae29j0ryrS0u/B8HZfJBtBQHjqw2rQ2cqUQ3I= @@ -25,9 +25,6 @@ github.com/beefsack/go-rate v0.0.0-20220214233405-116f4ca011a0 h1:0b2vaepXIfMsG+ github.com/beefsack/go-rate v0.0.0-20220214233405-116f4ca011a0/go.mod h1:6YNgTHLutezwnBvyneBbwvB8C82y3dcoOj5EQJIdGXA= github.com/bluele/gcache v0.0.2 h1:WcbfdXICg7G/DGBh1PFfcirkWOQV+v077yF1pSy3DGw= github.com/bluele/gcache v0.0.2/go.mod h1:m15KV+ECjptwSPxKhOhQoAFQVtUFjTVkc3H8o0t/fp0= -github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWRnGsAI= -github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI= -github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= @@ -60,8 +57,8 @@ github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/gopacket v1.1.19 h1:ves8RnFZPGiFnTS0uPQStjwru6uO6h+nlr9j6fL7kF8= github.com/google/gopacket v1.1.19/go.mod h1:iJ8V8n6KS+z2U1A8pUwu8bW5SyEMkXJB8Yo/Vo+TKTo= -github.com/google/pprof v0.0.0-20210407192527-94a9f03dee38 h1:yAJXTCF9TqKcTiHJAE8dj7HMvPfh66eeA2JYW7eFpSE= -github.com/google/pprof v0.0.0-20210407192527-94a9f03dee38/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20230131232505-5a9e8f65f08f h1:gl1DCiSk+mrXXBGPm6CEeS2MkJuMVzAOrXg34oVj1QI= +github.com/google/pprof v0.0.0-20230131232505-5a9e8f65f08f/go.mod h1:dDKJzRmX4S37WGHujM7tX//fmj1uioxKzKxz3lo4HJo= github.com/google/renameio v1.0.1 h1:Lh/jXZmvZxb0BBeSY5VKEfidcbcbenKjZFzM/q0fSeU= github.com/google/renameio v1.0.1/go.mod h1:t/HQoYBZSsWSNK35C6CO/TpPLDVWvxOHboWUAweKUpk= github.com/google/uuid v1.2.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= @@ -70,12 +67,13 @@ github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+ github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= github.com/hugelgupf/socketpair v0.0.0-20190730060125-05d35a94e714 h1:/jC7qQFrv8CrSJVmaolDVOxTfS9kc36uB6H40kdbQq8= github.com/hugelgupf/socketpair v0.0.0-20190730060125-05d35a94e714/go.mod h1:2Goc3h8EklBH5mspfHFxBnEoURQCGzQQH1ga9Myjvis= -github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= -github.com/insomniacslk/dhcp v0.0.0-20221001123530-5308ebe5334c h1:OCFM4+DXTWfNlyeoddrTwdup/ztkGSyAMR2UGcPckNQ= -github.com/insomniacslk/dhcp v0.0.0-20221001123530-5308ebe5334c/go.mod h1:h+MxyHxRg9NH3terB1nfRIUaQEcI0XOVkdR9LNBlp8E= +github.com/insomniacslk/dhcp v0.0.0-20221215072855-de60144f33f8 h1:Z72DOke2yOK0Ms4Z2LK1E1OrRJXOxSj5DllTz2FYTRg= +github.com/insomniacslk/dhcp v0.0.0-20221215072855-de60144f33f8/go.mod h1:m5WMe03WCvWcXjRnhvaAbAAXdCnu20J5P+mmH44ZzpE= github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= -github.com/josharian/native v1.0.0 h1:Ts/E8zCSEsG17dUqv7joXJFybuMLjQfWE04tsBODTxk= github.com/josharian/native v1.0.0/go.mod h1:7X/raswPFr05uY3HiLlYeyQntB6OO7E/d2Cu7qoaN2w= +github.com/josharian/native v1.0.1-0.20221213033349-c1e37c09b531/go.mod h1:7X/raswPFr05uY3HiLlYeyQntB6OO7E/d2Cu7qoaN2w= +github.com/josharian/native v1.1.0 h1:uuaP0hAbW7Y4l0ZRQ6C9zfb7Mg1mbFKry/xzDAfmtLA= +github.com/josharian/native v1.1.0/go.mod h1:7X/raswPFr05uY3HiLlYeyQntB6OO7E/d2Cu7qoaN2w= github.com/jsimonetti/rtnetlink v0.0.0-20190606172950-9527aa82566a/go.mod h1:Oz+70psSo5OFh8DBl0Zv2ACw7Esh6pPUphlvZG9x7uw= github.com/jsimonetti/rtnetlink v0.0.0-20200117123717-f846d4f6c1f4/go.mod h1:WGuG/smIU4J/54PblvSbh+xvCZmpJnFgr3ds6Z55XMQ= github.com/jsimonetti/rtnetlink v0.0.0-20201009170750-9c6f07d100c1/go.mod h1:hqoO/u39cqLeBLebZ8fWdE96O7FxrAsRYhnVOdgHxok= @@ -87,14 +85,14 @@ github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= -github.com/lucas-clemente/quic-go v0.31.0 h1:MfNp3fk0wjWRajw6quMFA3ap1AVtlU+2mtwmbVogB2M= -github.com/lucas-clemente/quic-go v0.31.0/go.mod h1:0wFbizLgYzqHqtlyxyCaJKlE7bYgE6JQ+54TLd/Dq2g= +github.com/lucas-clemente/quic-go v0.31.1 h1:O8Od7hfioqq0PMYHDyBkxU2aA7iZ2W9pjbrWuja2YR4= +github.com/lucas-clemente/quic-go v0.31.1/go.mod h1:0wFbizLgYzqHqtlyxyCaJKlE7bYgE6JQ+54TLd/Dq2g= github.com/marten-seemann/qpack v0.3.0 h1:UiWstOgT8+znlkDPOg2+3rIuYXJ2CnGDkGUXN6ki6hE= github.com/marten-seemann/qpack v0.3.0/go.mod h1:cGfKPBiP4a9EQdxCwEwI/GEeWAsjSekBvx/X8mh58+g= -github.com/marten-seemann/qtls-go1-18 v0.1.3 h1:R4H2Ks8P6pAtUagjFty2p7BVHn3XiwDAl7TTQf5h7TI= -github.com/marten-seemann/qtls-go1-18 v0.1.3/go.mod h1:mJttiymBAByA49mhlNZZGrH5u1uXYZJ+RW28Py7f4m4= -github.com/marten-seemann/qtls-go1-19 v0.1.1 h1:mnbxeq3oEyQxQXwI4ReCgW9DPoPR94sNlqWoDZnjRIE= -github.com/marten-seemann/qtls-go1-19 v0.1.1/go.mod h1:5HTDWtVudo/WFsHKRNuOhWlbdjrfs5JHrYb0wIJqGpI= +github.com/marten-seemann/qtls-go1-18 v0.1.4 h1:ogomB+lWV3Vmwiu6RTwDVTMGx+9j7SEi98e8QB35Its= +github.com/marten-seemann/qtls-go1-18 v0.1.4/go.mod h1:mJttiymBAByA49mhlNZZGrH5u1uXYZJ+RW28Py7f4m4= +github.com/marten-seemann/qtls-go1-19 v0.1.2 h1:ZevAEqKXH0bZmoOBPiqX2h5rhQ7cbZi+X+rlq2JUbCE= +github.com/marten-seemann/qtls-go1-19 v0.1.2/go.mod h1:5HTDWtVudo/WFsHKRNuOhWlbdjrfs5JHrYb0wIJqGpI= github.com/mdlayher/ethernet v0.0.0-20190606142754-0394541c37b7/go.mod h1:U6ZQobyTjI/tJyq2HG+i/dfSoFUt8/aZCM+GKtmFk/Y= github.com/mdlayher/ethernet v0.0.0-20220221185849-529eae5b6118 h1:2oDp6OOhLxQ9JBoUuysVz9UZ9uI6oLUbvAZu0x8o+vE= github.com/mdlayher/ethernet v0.0.0-20220221185849-529eae5b6118/go.mod h1:ZFUnHIVchZ9lJoWoEGUg8Q3M4U8aNNWA3CVSUTkW4og= @@ -103,26 +101,26 @@ github.com/mdlayher/netlink v0.0.0-20190409211403-11939a169225/go.mod h1:eQB3mZE github.com/mdlayher/netlink v1.0.0/go.mod h1:KxeJAFOFLG6AjpyDkQ/iIhxygIUKD+vcwqcnu43w/+M= github.com/mdlayher/netlink v1.1.0/go.mod h1:H4WCitaheIsdF9yOYu8CFmCgQthAPIWZmcKp9uZHgmY= github.com/mdlayher/netlink v1.1.1/go.mod h1:WTYpFb/WTvlRJAyKhZL5/uy69TDDpHHu2VZmb2XgV7o= -github.com/mdlayher/netlink v1.1.2-0.20201013204415-ded538f7f4be/go.mod h1:WTYpFb/WTvlRJAyKhZL5/uy69TDDpHHu2VZmb2XgV7o= -github.com/mdlayher/netlink v1.6.2 h1:D2zGSkvYsJ6NreeED3JiVTu1lj2sIYATqSaZlhPzUgQ= -github.com/mdlayher/netlink v1.6.2/go.mod h1:O1HXX2sIWSMJ3Qn1BYZk1yZM+7iMki/uYGGiwGyq/iU= -github.com/mdlayher/packet v1.0.0 h1:InhZJbdShQYt6XV2GPj5XHxChzOfhJJOMbvnGAmOfQ8= +github.com/mdlayher/netlink v1.7.1 h1:FdUaT/e33HjEXagwELR8R3/KL1Fq5x3G5jgHLp/BTmg= +github.com/mdlayher/netlink v1.7.1/go.mod h1:nKO5CSjE/DJjVhk/TNp6vCE1ktVxEA8VEh8drhZzxsQ= github.com/mdlayher/packet v1.0.0/go.mod h1:eE7/ctqDhoiRhQ44ko5JZU2zxB88g+JH/6jmnjzPjOU= +github.com/mdlayher/packet v1.1.1 h1:7Fv4OEMYqPl7//uBm04VgPpnSNi8fbBZznppgh6WMr8= +github.com/mdlayher/packet v1.1.1/go.mod h1:DRvYY5mH4M4lUqAnMg04E60U4fjUKMZ/4g2cHElZkKo= github.com/mdlayher/raw v0.0.0-20190606142536-fef19f00fc18/go.mod h1:7EpbotpCmVZcu+KCX4g9WaRNuu11uyhiW7+Le1dKawg= github.com/mdlayher/raw v0.0.0-20191009151244-50f2db8cc065/go.mod h1:7EpbotpCmVZcu+KCX4g9WaRNuu11uyhiW7+Le1dKawg= github.com/mdlayher/raw v0.1.0 h1:K4PFMVy+AFsp0Zdlrts7yNhxc/uXoPVHi9RzRvtZF2Y= github.com/mdlayher/raw v0.1.0/go.mod h1:yXnxvs6c0XoF/aK52/H5PjsVHmWBCFfZUfoh/Y5s9Sg= github.com/mdlayher/socket v0.2.1/go.mod h1:QLlNPkFR88mRUNQIzRBMfXxwKal8H7u1h3bL1CV+f0E= -github.com/mdlayher/socket v0.2.3 h1:XZA2X2TjdOwNoNPVPclRCURoX/hokBY8nkTmRZFEheM= -github.com/mdlayher/socket v0.2.3/go.mod h1:bz12/FozYNH/VbvC3q7TRIK/Y6dH1kCKsXaUeXi/FmY= +github.com/mdlayher/socket v0.4.0 h1:280wsy40IC9M9q1uPGcLBwXpcTQDtoGwVt+BNoITxIw= +github.com/mdlayher/socket v0.4.0/go.mod h1:xxFqz5GRCUN3UEOm9CZqEJsAbe1C8OwSK46NlmWuVoc= github.com/miekg/dns v1.1.43/go.mod h1:+evo5L0630/F6ca/Z9+GAqzhjGyn8/c+TBaOyfEl0V4= github.com/miekg/dns v1.1.50 h1:DQUfb9uc6smULcREF09Uc+/Gd46YWqJd5DbpPE9xkcA= github.com/miekg/dns v1.1.50/go.mod h1:e3IlAVfNqAllflbibAZEWOXOQ+Ynzk/dDozDxY7XnME= github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs= github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= -github.com/onsi/ginkgo/v2 v2.5.0 h1:TRtrvv2vdQqzkwrQ1ke6vtXf7IK34RBUJafIy1wMwls= -github.com/onsi/ginkgo/v2 v2.5.0/go.mod h1:Luc4sArBICYCS8THh8v3i3i5CuSZO+RaQRaJoeNwomw= -github.com/onsi/gomega v1.24.0 h1:+0glovB9Jd6z3VR+ScSwQqXVTIfJcGA9UBM8yzQxhqg= +github.com/onsi/ginkgo/v2 v2.8.0 h1:pAM+oBNPrpXRs+E/8spkeGx9QgekbRVyr74EUvRVOUI= +github.com/onsi/ginkgo/v2 v2.8.0/go.mod h1:6JsQiECmxCa3V5st74AL/AmsV482EDdVrGaVW6z3oYU= +github.com/onsi/gomega v1.25.0 h1:Vw7br2PCDYijJHSfBOWhov+8cAnUf8MfMaIOV323l6Y= github.com/patrickmn/go-cache v2.1.0+incompatible h1:HRMgzkcYKYpi3C8ajMPV8OFXaaRUnok+kx1WdO15EQc= github.com/patrickmn/go-cache v2.1.0+incompatible/go.mod h1:3Qf8kWWT7OJRJbdiICTKqZju1ZixQ/KpMGzzAfe6+WQ= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= @@ -135,40 +133,41 @@ github.com/shirou/gopsutil/v3 v3.21.8/go.mod h1:YWp/H8Qs5fVmf17v7JNZzA0mPJ+mS2e9 github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.4.0 h1:M2gUjqZET1qApGOWNSnZ49BAIMX4F/1plDv3+l31EJ4= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= +github.com/stretchr/objx v0.5.0 h1:1zr/of2m5FGMsad5YfcqgdqdWrIhu+EBEJRhR1U7z/c= +github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= +github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk= +github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= github.com/ti-mo/netfilter v0.2.0/go.mod h1:8GbBGsY/8fxtyIdfwy29JiluNcPK4K7wIT+x42ipqUU= -github.com/ti-mo/netfilter v0.4.0 h1:rTN1nBYULDmMfDeBHZpKuNKX/bWEXQUhe02a/10orzg= -github.com/ti-mo/netfilter v0.4.0/go.mod h1:V54q75mUx8CNA2JnFl+wv9iZ5+JP9nCcRlaFS5OZSRM= +github.com/ti-mo/netfilter v0.5.0 h1:MZmsUw5bFRecOb0AeyjOPxTHg4UxYzyEs0Ek/6Lxoy8= +github.com/ti-mo/netfilter v0.5.0/go.mod h1:nt+8B9hx/QpqHr7Hazq+2qMCCA8u2OTkyc/7+U9ARz8= github.com/tklauser/go-sysconf v0.3.9 h1:JeUVdAOWhhxVcU6Eqr/ATFHgXk/mmiItdKeJPev3vTo= github.com/tklauser/go-sysconf v0.3.9/go.mod h1:11DU/5sG7UexIrp/O6g35hrWzu0JxlwQ3LSFUzyeuhs= github.com/tklauser/numcpus v0.3.0 h1:ILuRUQBtssgnxw0XXIjKUC56fgnOrFoQQ/4+DeU2biQ= github.com/tklauser/numcpus v0.3.0/go.mod h1:yFGUr7TUHQRAhyqBcEg0Ge34zDBAsIvJJcyE6boqnA8= -github.com/u-root/uio v0.0.0-20210528114334-82958018845c/go.mod h1:LpEX5FO/cB+WF4TYGY1V5qktpaZLkKkSegbr0V4eYXA= -github.com/u-root/uio v0.0.0-20220204230159-dac05f7d2cb4 h1:hl6sK6aFgTLISijk6xIzeqnPzQcsLqqvL6vEfTPinME= -github.com/u-root/uio v0.0.0-20220204230159-dac05f7d2cb4/go.mod h1:LpEX5FO/cB+WF4TYGY1V5qktpaZLkKkSegbr0V4eYXA= +github.com/u-root/uio v0.0.0-20221213070652-c3537552635f h1:dpx1PHxYqAnXzbryJrWP1NQLzEjwcVgFLhkknuFQ7ww= +github.com/u-root/uio v0.0.0-20221213070652-c3537552635f/go.mod h1:IogEAUBXDEwX7oR/BMmCctShYs80ql4hF0ySdzGxf7E= github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= -go.etcd.io/bbolt v1.3.6 h1:/ecaJf0sk1l4l6V4awd65v2C3ILy7MSj+s/x1ADCIMU= -go.etcd.io/bbolt v1.3.6/go.mod h1:qXsaaIqmgQH0T+OPdb99Bf+PKfBBQVAdyD6TY9G8XM4= +go.etcd.io/bbolt v1.3.7 h1:j+zJOnnEjF/kyHlDDgGnVL/AIqIJPq8UoB2GSNfkUfQ= +go.etcd.io/bbolt v1.3.7/go.mod h1:N9Mkw9X8x5fupy0IKsmuqVtoGDyxsaDlbk4Rd05IAQw= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.1.0 h1:MDRAIl0xIo9Io2xV565hzXHw3zVseKrJKodhohM5CjU= -golang.org/x/crypto v0.1.0/go.mod h1:RecgLatLF4+eUMCP1PoPZQb+cVrJcOPbHkTkbkB9sbw= -golang.org/x/exp v0.0.0-20221106115401-f9659909a136 h1:Fq7F/w7MAa1KJ5bt2aJ62ihqp9HDcRuyILskkpIAurw= -golang.org/x/exp v0.0.0-20221106115401-f9659909a136/go.mod h1:CxIveKay+FTh1D0yPZemJVgC/95VzuuOLq5Qi4xnoYc= +golang.org/x/crypto v0.5.0 h1:U/0M97KRkSFvyD/3FSmdP5W5swImpNgle/EHFhOsQPE= +golang.org/x/crypto v0.5.0/go.mod h1:NK/OQwhpMQP3MwtdjgLlYHnH9ebylxKWv3e0fK+mkQU= +golang.org/x/exp v0.0.0-20230131160201-f062dba9d201 h1:BEABXpNXLEz0WxtA+6CQIz2xkg80e+1zrhWyMcq8VzE= +golang.org/x/exp v0.0.0-20230131160201-f062dba9d201/go.mod h1:CxIveKay+FTh1D0yPZemJVgC/95VzuuOLq5Qi4xnoYc= golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.6.0 h1:b9gGHsz9/HhJ3HF5DHQytPpuwocVTChQJK3AvoLRD5I= -golang.org/x/mod v0.6.0/go.mod h1:4mET923SAdbXp2ki8ey+zGs1SLqsuM2Y0uvdZR/fUNI= +golang.org/x/mod v0.7.0 h1:LapD9S96VoQRhi/GrNTqeBJFrUjs5UHCAtTlgwA5oZA= +golang.org/x/mod v0.7.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190419010253-1f3472d942ba/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= @@ -179,19 +178,16 @@ golang.org/x/net v0.0.0-20190827160401-ba9fcec4b297/go.mod h1:z5CRVTTTmAJ677TzLL golang.org/x/net v0.0.0-20191007182048-72f939374954/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20201010224723-4f7140c49acb/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.0.0-20201016165138-7b1cca2348c0/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLdyRGr576XBO4/greRjx4P4O3yc= golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= golang.org/x/net v0.0.0-20210726213435-c6fcb2dbf985/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20210929193557-e81a3d93ecf6/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20220923203811-8be639271d50/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk= -golang.org/x/net v0.4.0 h1:Q5QPcMlvfxFTAPV0+07Xz/MpK9NTXu2VDUuy0FeMfaU= -golang.org/x/net v0.4.0/go.mod h1:MBQ8lrhLObU/6UmLb4fmbmk5OcyYmqtbGd/9yIeKjEE= +golang.org/x/net v0.5.0 h1:GyT4nK/YDHSqa1c4753ouYCDajOYKTja9Xb/OHtgvSw= +golang.org/x/net v0.5.0/go.mod h1:DivGGAXEgPSlEBzxGzZI+ZLohi+xUj054jfeKui00ws= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20220923202941-7f9b1623fab7/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o= golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -204,13 +200,10 @@ golang.org/x/sys v0.0.0-20190606122018-79a91cf218c4/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20190826190057-c7b8b68b1456/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191008105621-543471e840be/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200923182605-d9f96fdee20d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201009025420-dfb3f7c4e634/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201015000850-e3ed0017c211/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20201017003518-b09fb700fbb7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201101102859-da207088b7d1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210303074136-134d130e1a04/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -218,35 +211,31 @@ golang.org/x/sys v0.0.0-20210315160823-c6e025ad8005/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210525143221-35b2ab0089ea/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210816074244-15123e1e1f71/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210909193231-528a39cd75f3/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220209214540-3681064d5158/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220319134239-a9b59b0215f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220728004956-3c1f35247d10/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220622161953-175b2fd9d664/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.3.0 h1:w8ZOecv6NaNa/zC8944JTU3vz4u6Lagfk4RPQxv92NQ= -golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.4.0 h1:Zr2JFtRQNX3BCZ8YtxRE9hNJYC8J6I1MVbMg6owUp18= +golang.org/x/sys v0.4.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.5.0 h1:OLmvp0KP+FVG99Ct/qFiL/Fhk4zp4QQnZ7b2U+5piUM= -golang.org/x/text v0.5.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.6.0 h1:3XmdazWV+ubf7QgHSTWeykHOci5oeekaGJBLkrkaw4k= +golang.org/x/text v0.6.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.6-0.20210726203631-07bc1bf47fb2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/tools v0.2.0 h1:G6AHpWxTMGY1KyEYoAQ5WTtIekUUvDNjan3ugu60JvE= -golang.org/x/tools v0.2.0/go.mod h1:y4OqIKeOV/fWJetJ8bXPU1sEVniLMIyDAZWeHdV+NTA= +golang.org/x/tools v0.5.0 h1:+bSpV5HIeWkuvgaMfI3UmKRThoTA5ODJTUd8T17NO+4= +golang.org/x/tools v0.5.0/go.mod h1:N+Kgy78s5I24c24dU8OfWNEotWjutIs8SnJvn5IDq+k= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= diff --git a/internal/filtering/safebrowsing.go b/internal/filtering/safebrowsing.go index 672ca8a3..2e648346 100644 --- a/internal/filtering/safebrowsing.go +++ b/internal/filtering/safebrowsing.go @@ -110,8 +110,8 @@ func (c *sbCtx) getCached() int { now := time.Now().Unix() hashesToRequest := map[[32]byte]string{} for k, v := range c.hashToHost { - key := k[0:2] - val := c.cache.Get(key) + // nolint:looppointer // The subsilce is used for a safe cache lookup. + val := c.cache.Get(k[0:2]) if val == nil || now >= int64(binary.BigEndian.Uint32(val)) { hashesToRequest[k] = v continue @@ -186,8 +186,7 @@ func (c *sbCtx) getQuestion() string { b := &strings.Builder{} for hash := range c.hashToHost { - // TODO(e.burkov, a.garipov): Find out and document why exactly - // this slice. + // nolint:looppointer // The subsilce is used for safe hex encoding. stringutil.WriteToBuilder(b, hex.EncodeToString(hash[0:2]), ".") } @@ -249,8 +248,8 @@ func (c *sbCtx) storeCache(hashes [][]byte) { var curData []byte var prevPrefix []byte for i, hash := range hashes { - prefix := hash[0:2] - if !bytes.Equal(prefix, prevPrefix) { + // nolint:looppointer // The subsilce is used for a safe comparison. + if !bytes.Equal(hash[0:2], prevPrefix) { if i != 0 { c.setCache(prevPrefix, curData) curData = nil @@ -265,6 +264,7 @@ func (c *sbCtx) storeCache(hashes [][]byte) { } for hash := range c.hashToHost { + // nolint:looppointer // The subsilce is used for a safe cache lookup. prefix := hash[0:2] val := c.cache.Get(prefix) if val == nil { diff --git a/internal/filtering/servicelist.go b/internal/filtering/servicelist.go index 53c31603..e5b36d97 100644 --- a/internal/filtering/servicelist.go +++ b/internal/filtering/servicelist.go @@ -1183,6 +1183,7 @@ var blockedServices = []blockedService{{ Name: "iCloud Private Relay", IconSVG: []byte(""), Rules: []string{ + "||mask-canary.icloud.com^$dnsrewrite=NXDOMAIN;;", "||mask-h2.icloud.com^$dnsrewrite=NXDOMAIN;;", "||mask.icloud.com^$dnsrewrite=NXDOMAIN;;", }, @@ -1279,6 +1280,17 @@ var blockedServices = []blockedService{{ "||iq.com^", "||iqiyi.com^", }, +}, { + ID: "leagueoflegends", + Name: "League of Legends", + IconSVG: []byte(""), + Rules: []string{ + "||leagueoflegends.co.kr^", + "||leagueoflegends.com^", + "||lol.riotgames.com^", + "||lolstatic.com^", + "||lolusercontent.com^", + }, }, { ID: "mail_ru", Name: "Mail.ru", @@ -1295,10 +1307,10 @@ var blockedServices = []blockedService{{ Rules: []string{ "||aus.social^", "||awscommunity.social^", + "||cupoftea.social^", "||cyberplace.social^", "||defcon.social^", "||det.social^", - "||fedibird.com^", "||fosstodon.org^", "||glasgow.social^", "||h4.io^", @@ -1337,6 +1349,7 @@ var blockedServices = []blockedService{{ "||mastodon.top^", "||mastodon.uno^", "||mastodon.world^", + "||mastodon.zaclys.com^", "||mastodonapp.uk^", "||mastodonners.nl^", "||mastodont.cat^", @@ -1348,8 +1361,6 @@ var blockedServices = []blockedService{{ "||mindly.social^", "||mstdn.ca^", "||mstdn.jp^", - "||mstdn.party^", - "||mstdn.plus^", "||mstdn.social^", "||muenchen.social^", "||muenster.im^", @@ -1391,6 +1402,7 @@ var blockedServices = []blockedService{{ "||union.place^", "||universeodon.com^", "||urbanists.social^", + "||vocalodon.net^", "||wxw.moe^", }, }, { @@ -1443,7 +1455,7 @@ var blockedServices = []blockedService{{ }, { ID: "onlyfans", Name: "OnlyFans", - IconSVG: []byte(""), + IconSVG: []byte(""), Rules: []string{ "||onlyfans.com^", }, @@ -1531,7 +1543,7 @@ var blockedServices = []blockedService{{ }, { ID: "rakuten_viki", Name: "Rakuten Viki", - IconSVG: []byte(""), + IconSVG: []byte(""), Rules: []string{ "||m-content-viki.s.llnwi.net^", "||viki.com^", @@ -1853,6 +1865,20 @@ var blockedServices = []blockedService{{ "||whatsapp.tv^", "||whatsappbrand.com^", }, +}, { + ID: "xboxlive", + Name: "Xbox Live", + IconSVG: []byte(""), + Rules: []string{ + "||gamepass.com^", + "||xbox-global.ifs.windows.com^", + "||xbox-guide-public.rec.mp.microsoft.com^", + "||xbox.ipv6.microsoft.com^", + "||xboxab.com^", + "||xboxab.net^", + "||xboxlive.com^", + "||xboxservices.com^", + }, }, { ID: "youtube", Name: "YouTube", diff --git a/internal/tools/go.mod b/internal/tools/go.mod index e37598fc..bf45d275 100644 --- a/internal/tools/go.mod +++ b/internal/tools/go.mod @@ -5,15 +5,15 @@ go 1.18 require ( github.com/fzipp/gocyclo v0.6.0 github.com/golangci/misspell v0.4.0 - github.com/gordonklaus/ineffassign v0.0.0-20220928193011-d2c82e48359b - github.com/kisielk/errcheck v1.6.2 - github.com/kyoh86/looppointer v0.1.9 + github.com/gordonklaus/ineffassign v0.0.0-20230107090616-13ace0543b28 + github.com/kisielk/errcheck v1.6.3 + github.com/kyoh86/looppointer v0.2.1 github.com/securego/gosec/v2 v2.14.0 - golang.org/x/tools v0.2.0 - golang.org/x/vuln v0.0.0-20221103225512-4f561ca73b59 + golang.org/x/tools v0.5.1-0.20230117180257-8aba49bb5ea2 + golang.org/x/vuln v0.0.0-20230130175424-dd534eeddf33 honnef.co/go/tools v0.3.3 mvdan.cc/gofumpt v0.4.0 - mvdan.cc/unparam v0.0.0-20220926085101-66de63301820 + mvdan.cc/unparam v0.0.0-20230125043941-70a0ce6e7b95 ) require ( @@ -24,10 +24,10 @@ require ( github.com/kyoh86/nolint v0.0.1 // indirect github.com/nbutton23/zxcvbn-go v0.0.0-20210217022336-fa2cb2858354 // indirect github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect - golang.org/x/exp v0.0.0-20221106115401-f9659909a136 // indirect - golang.org/x/exp/typeparams v0.0.0-20221106115401-f9659909a136 // indirect - golang.org/x/mod v0.6.0 // indirect + golang.org/x/exp v0.0.0-20230131160201-f062dba9d201 // indirect + golang.org/x/exp/typeparams v0.0.0-20230131160201-f062dba9d201 // indirect + golang.org/x/mod v0.7.0 // indirect golang.org/x/sync v0.1.0 // indirect - golang.org/x/sys v0.2.0 // indirect + golang.org/x/sys v0.4.0 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect ) diff --git a/internal/tools/go.sum b/internal/tools/go.sum index 5fa4c6bf..4006de44 100644 --- a/internal/tools/go.sum +++ b/internal/tools/go.sum @@ -17,14 +17,14 @@ github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/gookit/color v1.5.2 h1:uLnfXcaFjlrDnQDT+NCBcfhrXqYTx/rcCa6xn01Y8yI= github.com/gookit/color v1.5.2/go.mod h1:w8h4bGiHeeBpvQVePTutdbERIUf3oJE5lZ8HM0UgXyg= -github.com/gordonklaus/ineffassign v0.0.0-20220928193011-d2c82e48359b h1:TYNAU9lu7ggdAereRq0dzCIDzHu9mNyGLj/hd5PXq8I= -github.com/gordonklaus/ineffassign v0.0.0-20220928193011-d2c82e48359b/go.mod h1:Qcp2HIAYhR7mNUVSIxZww3Guk4it82ghYcEXIAk+QT0= -github.com/kisielk/errcheck v1.6.2 h1:uGQ9xI8/pgc9iOoCe7kWQgRE6SBTrCGmTSf0LrEtY7c= -github.com/kisielk/errcheck v1.6.2/go.mod h1:nXw/i/MfnvRHqXa7XXmQMUB0oNFGuBrNI8d8NLy0LPw= +github.com/gordonklaus/ineffassign v0.0.0-20230107090616-13ace0543b28 h1:9alfqbrhuD+9fLZ4iaAVwhlp5PEhmnBt7yvK2Oy5C1U= +github.com/gordonklaus/ineffassign v0.0.0-20230107090616-13ace0543b28/go.mod h1:Qcp2HIAYhR7mNUVSIxZww3Guk4it82ghYcEXIAk+QT0= +github.com/kisielk/errcheck v1.6.3 h1:dEKh+GLHcWm2oN34nMvDzn1sqI0i0WxPvrgiJA5JuM8= +github.com/kisielk/errcheck v1.6.3/go.mod h1:nXw/i/MfnvRHqXa7XXmQMUB0oNFGuBrNI8d8NLy0LPw= github.com/kr/pretty v0.3.0 h1:WgNl7dwNpEZ6jJ9k1snq4pZsg7DOEN8hP9Xw0Tsjwk0= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= -github.com/kyoh86/looppointer v0.1.9 h1:siTt2dqv+pW3y5gvykZXhlVcTnUVMDf11bGlB9GL5PI= -github.com/kyoh86/looppointer v0.1.9/go.mod h1:q358WcM8cMWU+5vzqukvaZtnJi1kw/MpRHQm3xvTrjw= +github.com/kyoh86/looppointer v0.2.1 h1:Jx9fnkBj/JrIryBLMTYNTj9rvc2SrPS98Dg0w7fxdJg= +github.com/kyoh86/looppointer v0.2.1/go.mod h1:q358WcM8cMWU+5vzqukvaZtnJi1kw/MpRHQm3xvTrjw= github.com/kyoh86/nolint v0.0.1 h1:GjNxDEkVn2wAxKHtP7iNTrRxytRZ1wXxLV5j4XzGfRU= github.com/kyoh86/nolint v0.0.1/go.mod h1:1ZiZZ7qqrZ9dZegU96phwVcdQOMKIqRzFJL3ewq9gtI= github.com/nbutton23/zxcvbn-go v0.0.0-20210217022336-fa2cb2858354 h1:4kuARK6Y6FxaNu/BnU2OAaLF86eTVhP2hjTB6iMvItA= @@ -53,22 +53,22 @@ golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACk golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/exp v0.0.0-20221106115401-f9659909a136 h1:Fq7F/w7MAa1KJ5bt2aJ62ihqp9HDcRuyILskkpIAurw= -golang.org/x/exp v0.0.0-20221106115401-f9659909a136/go.mod h1:CxIveKay+FTh1D0yPZemJVgC/95VzuuOLq5Qi4xnoYc= -golang.org/x/exp/typeparams v0.0.0-20221106115401-f9659909a136 h1:962j4VxUJV3GKI6NxKDI9NjATh+tAixlH+9k9MvHSlU= -golang.org/x/exp/typeparams v0.0.0-20221106115401-f9659909a136/go.mod h1:AbB0pIl9nAr9wVwH+Z2ZpaocVmF5I4GyWCDIsVjR0bk= +golang.org/x/exp v0.0.0-20230131160201-f062dba9d201 h1:BEABXpNXLEz0WxtA+6CQIz2xkg80e+1zrhWyMcq8VzE= +golang.org/x/exp v0.0.0-20230131160201-f062dba9d201/go.mod h1:CxIveKay+FTh1D0yPZemJVgC/95VzuuOLq5Qi4xnoYc= +golang.org/x/exp/typeparams v0.0.0-20230131160201-f062dba9d201 h1:O1QcdQUR9htWjzzsXVFPX+RJ3n1P/u/5bsQR8dbs5BY= +golang.org/x/exp/typeparams v0.0.0-20230131160201-f062dba9d201/go.mod h1:AbB0pIl9nAr9wVwH+Z2ZpaocVmF5I4GyWCDIsVjR0bk= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.6.0-dev.0.20220106191415-9b9b3d81d5e3/go.mod h1:3p9vT2HGsQu2K1YbXdKPJLVgG5VJdoTa1poYQBtP1AY= -golang.org/x/mod v0.6.0 h1:b9gGHsz9/HhJ3HF5DHQytPpuwocVTChQJK3AvoLRD5I= -golang.org/x/mod v0.6.0/go.mod h1:4mET923SAdbXp2ki8ey+zGs1SLqsuM2Y0uvdZR/fUNI= +golang.org/x/mod v0.7.0 h1:LapD9S96VoQRhi/GrNTqeBJFrUjs5UHCAtTlgwA5oZA= +golang.org/x/mod v0.7.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= golang.org/x/net v0.0.0-20211015210444-4f30a5c0130f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.1.0 h1:hZ/3BUoy5aId7sCpA/Tc5lt8DkFgdVS2onTpJsZ/fl0= +golang.org/x/net v0.5.0 h1:GyT4nK/YDHSqa1c4753ouYCDajOYKTja9Xb/OHtgvSw= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -83,8 +83,8 @@ golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211019181941-9d821ace8654/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.2.0 h1:ljd4t30dBnAvMZaQCevtY0xLLD0A+bRZXbgLMLU1F/A= -golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.4.0 h1:Zr2JFtRQNX3BCZ8YtxRE9hNJYC8J6I1MVbMg6owUp18= +golang.org/x/sys v0.4.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= @@ -96,10 +96,10 @@ golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtn golang.org/x/tools v0.0.0-20201007032633-0806396f153e/go.mod h1:z6u4i615ZeAfBE4XtMziQW1fSVJXACjjbWkB/mvPzlU= golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.10/go.mod h1:Uh6Zz+xoGYZom868N8YTex3t7RhtHDBrE8Gzo9bV56E= -golang.org/x/tools v0.2.0 h1:G6AHpWxTMGY1KyEYoAQ5WTtIekUUvDNjan3ugu60JvE= -golang.org/x/tools v0.2.0/go.mod h1:y4OqIKeOV/fWJetJ8bXPU1sEVniLMIyDAZWeHdV+NTA= -golang.org/x/vuln v0.0.0-20221103225512-4f561ca73b59 h1:eOOJSuIRc2QwKAgX5qOIhUZJAd2LLKSBfk839dv+Clo= -golang.org/x/vuln v0.0.0-20221103225512-4f561ca73b59/go.mod h1:F12iebNzxRMpJsm4W7ape+r/KdnXiSy3VC94WsyCG68= +golang.org/x/tools v0.5.1-0.20230117180257-8aba49bb5ea2 h1:v0FhRDmSCNH/0EurAT6T8KRY4aNuUhz6/WwBMxG+gvQ= +golang.org/x/tools v0.5.1-0.20230117180257-8aba49bb5ea2/go.mod h1:N+Kgy78s5I24c24dU8OfWNEotWjutIs8SnJvn5IDq+k= +golang.org/x/vuln v0.0.0-20230130175424-dd534eeddf33 h1:je2aB5nnlseeGvJy5clg6EyC3jjbbCNsRDroC3qQJsA= +golang.org/x/vuln v0.0.0-20230130175424-dd534eeddf33/go.mod h1:cBP4HMKv0X+x96j8IJWCKk0eqpakBmmHjKGSSC0NaYE= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -114,5 +114,5 @@ honnef.co/go/tools v0.3.3 h1:oDx7VAwstgpYpb3wv0oxiZlxY+foCpRAwY7Vk6XpAgA= honnef.co/go/tools v0.3.3/go.mod h1:jzwdWgg7Jdq75wlfblQxO4neNaFFSvgc1tD5Wv8U0Yw= mvdan.cc/gofumpt v0.4.0 h1:JVf4NN1mIpHogBj7ABpgOyZc65/UUOkKQFkoURsz4MM= mvdan.cc/gofumpt v0.4.0/go.mod h1:PljLOHDeZqgS8opHRKLzp2It2VBuSdteAgqUfzMTxlQ= -mvdan.cc/unparam v0.0.0-20220926085101-66de63301820 h1:fggBTMFbBz7CMny3mWZphe0B/6D8ILBunvvB1cNNHi8= -mvdan.cc/unparam v0.0.0-20220926085101-66de63301820/go.mod h1:7fKhD/gH+APJ9Y27S2PYO7+oVWtb3XPrw9W5ayxVq2A= +mvdan.cc/unparam v0.0.0-20230125043941-70a0ce6e7b95 h1:n/xhncJPSt0YzfOhnyn41XxUdrWQNgmLBG72FE27Fqw= +mvdan.cc/unparam v0.0.0-20230125043941-70a0ce6e7b95/go.mod h1:2vU506e8nGWodqcci641NLi4im2twWSq4Lod756epHQ=