Upstream Links 2.27

This commit is contained in:
Juhani Krekelä 2022-06-06 16:14:24 +03:00
parent 062136efb3
commit 991c30eae1
20 changed files with 243 additions and 107 deletions

View File

@ -1,3 +1,22 @@
=== RELEASE 2.27 ===
Fri May 27 20:10:59 CEST 2022 mikulas:
Compile the Windows version with libevent 2.0 (note that libevent 2.1
doesn't work on Windows 7)
This fixes "Fatal error: too big handle" because Cygwin has too low
FD_SETSIZE (64)
Wed Apr 13 19:43:10 CEST 2022 Emir Yasin SARI <bitigchi@me.com>:
Updated the Turkish translation
Mon Apr 11 19:23:19 CEST 2022 mikulas:
Allow the user to specify a numeric IPv6 address in the dns-over-https
box
=== RELEASE 2.26 ===
Wed Apr 6 18:13:16 CEST 2022 mikulas:

View File

@ -1,4 +1,4 @@
Links 2.26 -- How To Install
Links 2.27 -- How To Install
----------------------------
Follow this step-by-step:

View File

@ -104,10 +104,10 @@ mailto.o main.o memory.o menu.o objreq.o os_dep.o pmshell.o png.o \
sched.o select.o session.o smb.o string.o suffix.o svg.o svgalib.o \
terminal.o tiff.o types.o url.o view.o view_gr.o vms.o webp.o x.o xbm.o
@ATHEOS_GR_TRUE@links_DEPENDENCIES = atheos.o
@HAIKU_GR_TRUE@links_DEPENDENCIES = haiku.o
@JAVASCRIPT_TRUE@links_DEPENDENCIES = builtin.o context.o ipret.o \
@JAVASCRIPT_TRUE@javascr.o javascript.o md5.o md5hl.o ns.o pomocny.o \
@JAVASCRIPT_TRUE@regexp.o
@HAIKU_GR_TRUE@links_DEPENDENCIES = haiku.o
links_LDFLAGS =
CFLAGS = @CFLAGS@
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)

View File

@ -934,11 +934,11 @@
#define PACKAGE "links"
/* Version number of package */
#define VERSION "2.26"
#define VERSION "2.27"
/* */
#define VERSION "2.26"
#define VERSION "2.27"
/* */
/* #undef HAVE_OPENMP */

2
configure vendored
View File

@ -771,7 +771,7 @@ fi
PACKAGE=links
VERSION=2.26
VERSION=2.27
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }

View File

@ -5,7 +5,7 @@
AC_INIT(main.c)
AM_INIT_AUTOMAKE(links, 2.26)
AM_INIT_AUTOMAKE(links, 2.27)
ACLOCAL="./missing aclocal"
AUTOCONF="./missing autoconf"

9
doh.c
View File

@ -187,8 +187,17 @@ void do_doh_lookup(struct dnsquery *q)
if (!casecmp(dns_over_https, cast_uchar "http://", 7) || !casecmp(dns_over_https, cast_uchar "https://", 8)) {
add_to_str(&u, &ul, dns_over_https);
} else {
int ipv6 = 0;
add_to_str(&u, &ul, cast_uchar "https://");
#ifdef SUPPORT_IPV6
if (!numeric_ipv6_address(dns_over_https, NULL, NULL))
ipv6 = 1;
#endif
if (ipv6)
add_chr_to_str(&u, &ul, '[');
add_to_str(&u, &ul, dns_over_https);
if (ipv6)
add_chr_to_str(&u, &ul, ']');
add_to_str(&u, &ul, cast_uchar "/dns-query");
}
add_chr_to_str(&u, &ul, POST_CHAR);

3
file.c
View File

@ -205,7 +205,8 @@ again:
add_chr_to_str(p, l, ' ');
}
static unsigned char *get_filename(unsigned char *url)
/* ATTR_NOINLINE is a workaround for a bogus warning on gcc 12 */
ATTR_NOINLINE static unsigned char *get_filename(unsigned char *url)
{
unsigned char *p, *m;
int ml;

View File

@ -1,7 +1,7 @@
T__CHAR_SET, "8859-9",
T__LANGUAGE, "Turkish",
T__ACCEPT_LANGUAGE, "tr",
T__LOCALE_CODE, "tr_TR",
T__LOCALE_CODE, "tr_TR,tr_CY",
T__DEFAULT_CHAR_SET, "ISO-8859-9",
T_OK, "Tamam",
T_CANCEL, "İptal",
@ -54,10 +54,10 @@ T_THREADS5, "i
T_CONFIGURATION_DIRECTORY, "Yapılandırma dizini",
T_NONE, "Yok",
T_KEYS, "Düğmeler",
T_KEYS_DESC, "ESC menüyü göster\n^C, q çık\np, l yukarı kaydır, aşağı kaydır\n[, ] sağa kaydır, sola kaydır\nyukarı, aşağı bağlantıyı seç\n-> bağlantıyı izle\n<- geri git\ng adrese git\nG şimdiki adresten yola çıkarak yeni bir adrese git\n/ ara\n? geriye doğru ara\nn tekrar ara\nN geriye doğru tekrar ara\n= belge bilgisi\n\\ kaynağını göster\nd indir",
T_KEYS_DESC, "ESC menüyü göster\n^C, q çık\np, l yukarı kaydır, aşağı kaydır\n[, ] sağa kaydır, sola kaydır\nyukarı, aşağı bağlantıyı seç\n-> bağlantıyı izle\n<- geri git\ng adrese git\nG şimdiki adresten yola çıkarak yeni bir adrese git\n/ ara\n? geriye doğru ara\nn yeniden ara\nN geriye doğru yeniden ara\n= belge bilgisi\n\\ kaynağını göster\nd indir",
T_KEYS_BRAILLE_DESC, "a, w imleç durum satırına veya başlığına\n{, } imleç satırın başlangıcına/sonuna\n^Y,^T,y,t,^O git: önceki/sonraki bağlantı/sözcük/form girdisi",
T_COPYING, "Telif hakkı",
T_COPYING_DESC, "Bağlantılar " VERSION_STRING "\n\n" LINKS_COPYRIGHT "\n\n Bu özgür bir yazılımdır; GNU Genel Kamu Lisansı altında dağıtılabilir ve/veya geliştirilebilir.",
T_COPYING_DESC, "Bağlantılar " VERSION_STRING "\n\n" LINKS_COPYRIGHT "\n\n Links, özgür bir yazılımdır; GNU Genel Kamu Lisansı altında dağıtılabilir ve/veya geliştirilebilir.",
T_RESOURCES, "Kaynaklar",
T_MEMORY_CACHE, "Önbellek dosyası",
T_DECOMPRESSED_CACHE, "Çıkartılmış önbellek",
@ -140,8 +140,8 @@ T_THE_FILE_DOES_NOT_EXIST, "Dosya mevcut de
T_THE_FILE_HAS_INVALID_FORMAT, "Dosya biçimi geçersiz",
T_ERROR_INITIALIZING_BUILT_IN_CERTIFICATES, "Gömülü sertifikalar kullanılırken hata",
T_FAILED, "başarısız oldu",
T_DNS_OPTIONS, NULL,
T_DNS_OVER_HTTPS_URL, NULL,
T_DNS_OPTIONS, "DNS seçenekleri",
T_DNS_OVER_HTTPS_URL, "HTTPS üzerinden DNS (makine veya url)",
T_CONNECTIONS, "Bağlantılar",
T_MAX_CONNECTIONS, "En çok bağlantı",
T_MAX_CONNECTIONS_TO_ONE_HOST, "Bir makineye en çok bağlantı",
@ -163,7 +163,7 @@ T_AGGRESSIVE_CACHE, "Agresif
T_HTML_OPTIONS, "HTML seçenekleri",
T_DISPLAY_TABLES, "Tabloları göster",
T_DISPLAY_FRAMES, "Çerçeveleri göster",
T_BREAK_LONG_LINES, "Uzun satırları kır",
T_BREAK_LONG_LINES, "Uzun satırları kes",
T_DISPLAY_IMAGES, "Görselleri göster",
T_DISPLAY_IMAGE_FILENAMES, "Görsel dosya adlarını göster",
T_DISPLAY_LINKS_TO_IMAGES, "Görsellere olan bağlantıları göster",
@ -172,8 +172,8 @@ T_NUMBERED_LINKS, "Ba
T_AUTO_REFRESH, "Kendiliğinden yenile",
T_TARGET_IN_NEW_WINDOW, "Bağlantıların yeni pencerede açılmasına izin ver",
T_TEXT_MARGIN, "Metin boşluğu",
T_DEFAULT_CODEPAGE, "Öntanımlı karakter seti",
T_IGNORE_CHARSET_INFO_SENT_BY_SERVER, "Sunucu tarafından belirlenmiş karakter setini önemseme",
T_DEFAULT_CODEPAGE, "Öntanımlı karakter kümesi",
T_IGNORE_CHARSET_INFO_SENT_BY_SERVER, "Sunucu tarafından belirlenmiş karakter kümesini önemseme",
T_TEXT_COLOR, "Metin",
T_LINK_COLOR, "Bağlantı",
T_BACKGROUND_COLOR, "Arka plan",
@ -214,7 +214,7 @@ T_SEARCH, "Ara",
T_SEARCH_BACK, "Geriye doğru ara",
T_FIND_NEXT, "Sonrakini bul",
T_FIND_PREVIOUS, "Öncekini bul",
T_TOGGLE_HTML_PLAIN, "HTML/düz metin aç/kapa",
T_TOGGLE_HTML_PLAIN, "HTML/düz metin aç/kapat",
T_DOCUMENT_INFO, "Belge bilgisi",
T_FRAME_AT_FULL_SCREEN, "Çerçeve tam ekran",
T_SAVE_CLIPBOARD_TO_A_FILE, "Panoyu bir dosyaya kaydet",
@ -268,7 +268,7 @@ T_DATA_MODIFIED, "Veri d
T_BAD_URL_SYNTAX, "Hatalı adres yazımı",
T_BAD_PROXY_SYNTAX, "Hatalı vekil sunucu yazımı",
T_RECEIVE_TIMEOUT, "Zaman aşımı",
T_REQUEST_MUST_BE_RESTARTED, "İstek tekrar yapılmalı",
T_REQUEST_MUST_BE_RESTARTED, "İstek yeniden yapılmalı",
T_CANT_GET_SOCKET_STATE, "Uç durumu alınamıyor",
T_CYCLIC_REDIRECT, "Çevrimli yeniden yönlendirme",
T_TOO_LARGE_FILE, "Dosya çok büyük",
@ -346,12 +346,12 @@ T_OPEN, "A
T_OPEN_WITH, "Birlikte aç",
T_DO_YOU_WANT_TO_FOLLOW_REDIRECT_AND_POST_FORM_DATA_TO_URL, "Yönlendirmeyi izlemek ve form bilgisini adrese göndermek istiyor musunuz",
T_DO_YOU_WANT_TO_POST_FORM_DATA_TO_URL, "Form bilgisini adrese göndermek istiyor musunuz",
T_DO_YOU_WANT_TO_REPOST_FORM_DATA_TO_URL, "Form bilgisini adrese tekrar göndermek istiyor musunuz",
T_DO_YOU_WANT_TO_REPOST_FORM_DATA_TO_URL, "Form bilgisini adrese yeniden göndermek istiyor musunuz",
T_WARNING, "Uyarı",
T_ERROR, "Hata",
T_WELCOME, "Hoş geldiniz",
T_WELCOME_TO_LINKS, "Links'e hoş geldiniz!",
T_BASIC_HELP, "Menü için ESC ye basın. Kullanıcı kılavuzu için Yardım -> Kılavuz'u seçin.",
T_BASIC_HELP, "Menü için ESC'ye basın. Kullanıcı kılavuzu için Yardım -> Kılavuz'u seçin.",
T_LABEL, "Etiketler",
T_CONTENT_TYPES, "Content-Type(s)",
T_PROGRAM__IS_REPLACED_WITH_FILE_NAME, "Program ('%' dosya adı ile değiştirildi)",
@ -372,7 +372,7 @@ T_ERROR_WHILE_POSTING_FORM, "Formu g
T_COULD_NOT_GET_FILE, "Dosya alınamıyor",
T_READING_FILES_IS_NOT_ALLOWED, "Dosya okumaya izin verilmiyor",
T_NO_PREVIOUS_SEARCH, "Geri arama yok",
T_SEARCH_STRING_NOT_FOUND, "Aranan söz dizimi bulunamadı",
T_SEARCH_STRING_NOT_FOUND, "Aranan sözdizim bulunamadı",
T_SAVE_ERROR, "Kaydetme hatası",
T_ERROR_WRITING_TO_FILE, "Dosyaya yazarken hata",
T_ERROR_READING_THE_FILE, "Dosya okunurken hata",
@ -454,25 +454,25 @@ T_BOOKMARKS, "Yer imleri",
T_BOOKMARK, "yer imi",
T_ADD_BOOKMARK, "Yer imi ekle",
T_ADD_ASSOCIATION, "İlişkilendirme ekle",
T_ADD_EXTENSION, "Genişletme ekle",
T_ADD_EXTENSION, "Uzantı ekle",
T_ADD_FOLDER, "Klasör ekle",
T_BOOKMARK_TITLE, "Yer imi başlığı",
T_EDIT_BOOKMARK, "Yer imini düzenle",
T_EDIT_ASSOCIATION, "İlişkilendirmeyi düzenle",
T_EDIT_EXTENSION, "Genişletmeyi düzenle",
T_EDIT_EXTENSION, "Uzantıyı düzenle",
T_DELETE_BOOKMARK, "Yer imini sil",
T_EDIT_FOLDER, "Klasörü düzenle",
T_DELETE_FOLDER, "Klasörü sil",
T_NOT_EMPTY_SURE_DELETE, " boş değil. Silmek istediğinizden emin misiniz?",
T_NOT_EMPTY_SURE_DELETE, " boş değil. Silmek istediğinize emin misiniz?",
T_BOOKMARK_MANAGER, "Yer imi Yöneticisi",
T_ASSOCIATIONS_MANAGER, "İlişkilendirmeler Yöneticisi",
T_EXTENSIONS_MANAGER, "Genişletmeler Yöneticisi",
T_EXTENSIONS_MANAGER, "Uzantılar Yöneticisi",
T_url, "adres",
T_NNAME, "Ad",
T_EXIT_LINKS, "Links'ten çık",
T_DO_YOU_REALLY_WANT_TO_CLOSE_WINDOW, "Pencereyi kapatmak istediğinizden emin misiniz?",
T_DO_YOU_REALLY_WANT_TO_CLOSE_WINDOW, "Pencereyi kapatmak istediğinize emin misiniz?",
T_DO_YOU_REALLY_WANT_TO_EXIT_LINKS, "Links'ten çıkmak istediğinize emin misiniz?",
T_DO_YOU_REALLY_WANT_TO_EXIT_LINKS_AND_TERMINATE_ALL_DOWNLOADS, "Links'ten çıkmak (ve indirmeleri durdurmak) istediğinizden emin misiniz?",
T_DO_YOU_REALLY_WANT_TO_EXIT_LINKS_AND_TERMINATE_ALL_DOWNLOADS, "Links'ten çıkmak (ve indirmeleri durdurmak) istediğinize emin misiniz?",
T_HTTP_OPTIONS, "HTTP seçenekleri",
T_FTP_OPTIONS, "FTP seçenekleri",
T_SMB_OPTIONS, "SMB seçenekleri",
@ -485,13 +485,13 @@ T_RETRY_ON_INTERNAL_ERRORS, "
T_HEADER_OPTIONS, "Başlık seçenekleri",
T_HTTP_HEADER_OPTIONS, "HTTP başlık seçenekleri",
T_FAKE_FIREFOX, "Kendini Firefox olarak göster (gizliliği iyileştirir)",
T_DO_NOT_TRACK, "\"Beni Takip Etme\" isteği gönder",
T_REFERER_NONE, "Referansçı yok",
T_REFERER_SAME_URL, "İstenen URL'yi referansçı olarak gönder",
T_REFERER_FAKE, "Sabit referansçı",
T_REFERER_REAL_SAME_SERVER, "Gerçek referansçıyı yalnızca aynı sunucuya gönder",
T_REFERER_REAL, "Gerçek referansçıyı gönder (güvensiz işlem!)",
T_FAKE_REFERER, "Sabit HTTP referansçısı",
T_DO_NOT_TRACK, "\"Beni İzleme\" isteği gönder",
T_REFERER_NONE, "Başvurucu yok",
T_REFERER_SAME_URL, "İstenen URL'yi başvurucu olarak gönder",
T_REFERER_FAKE, "Sabit başvurucu",
T_REFERER_REAL_SAME_SERVER, "Gerçek başvurucuyu yalnızca aynı sunucuya gönder",
T_REFERER_REAL, "Gerçek başvurucuyu gönder (güvensiz işlem!)",
T_FAKE_REFERER, "Sabit HTTP başvurucusu",
T_FAKE_USERAGENT, "Kullanıcı kimliğini başka göster",
T_EXTRA_HEADER, "Ek başlık dizisi (\\ yeni satır demektir)",
T_PASSWORD_FOR_ANONYMOUS_LOGIN, "Adsız kullanıcı için şifre",
@ -507,7 +507,7 @@ T_TELNET_PROG, "Telnet program
T_TN3270_PROG, "Tn3270 programı (% \"makine\" veya \"makine kapısı\" ile değiştirilir)",
T_MMS_PROG, "MMS programı (% URL ile değiştirilir)",
T_MAGNET_PROG, "Mıknatıs programı (% URL ile değiştirilir)",
T_GOPHER_PROG, NULL,
T_GOPHER_PROG, "Gopher programı (% URL ile değiştirilir)",
T_SHELL_PROG, "Dış komutları çalıştırmak için kabuk (% kabuk ile değiştirilir)",
T_MAIL_AND_TELNET_PROGRAMS, "Posta ve Telnet Programları",
T_MAIL_TELNET_AND_SHELL_PROGRAMS, "Posta, Telnet ve kabuk Programları",
@ -518,14 +518,14 @@ T_TELNET, "telnet",
T_TN3270, "tn3270",
T_MMS, "mms",
T_MAGNET, "mıknatıs",
T_GOPHER, NULL,
T_GOPHER, "gopher",
T_BAD_MAILTO_URL, "Adrese posta gönder",
T_BAD_TELNET_URL, "Hatalı Telnet adresi",
T_BAD_TN3270_URL, "Hatalı tn3270 adresi",
T_MMS_URL_CONTAINS_INACCEPTABLE_CHARACTERS, "MMS URL'si izin verilmeyen karakterler içeriyor",
T_AUTHORIZATION_REQUIRED, "Kimlik doğrulama gerekli",
T_PROXY_AUTHORIZATION_REQUIRED, "Vekil kimlik doğrulaması gerekli",
T_USERID, "Kullanıcı ID'si",
T_USERID, "Kullanıcı kimliği",
T_PASSWORD, "Parola",
T_ENTER_USERNAME, "Kullanıcı adını gir: ",
T_AT, "/",
@ -534,12 +534,12 @@ T_DOESNT_HAVE_A_VALID_CERTIFICATE, " ge
T_USES_DOWNGRADED_METHOD, " eskimiş SSL/TLS yöntemleri kullanıyor. Yine de bağlanmak istiyor musunuz?",
T_USES_INSECURE_CIPHER, " güvensiz şifreleme kullanıyor. Yine de bağlanmak istiyor musunuz?",
T_WAITING_FOR_REDIRECT_CONFIRMATION, "Yönlendirme onayı için bekleniyor",
T_DECOMPRESSION_ERROR, "Sıkıştırma açım hatası",
T_DECOMPRESSION_ERROR, "Sıkıştırma açma hatası",
T_ERROR_DECOMPRESSING_, "Şu sıkıştırma açılırken: ",
T__wITH_, " ile ",
T_COMPRESSED_ERROR, "Sıkıştırılmış veride hata",
T_UNKNOWN_COMPRESSION_METHOD, "Bilinmeyen sıkıştırma yöntemi",
T_SURE_DELETE, "Silmek istediğinizden emin misiniz?",
T_SURE_DELETE, "Silmek istediğinize emin misiniz?",
T_BOOKMARKS_ALREADY_IN_USE, "Yer imleri halihazırda kullanımda!",
T_ASSOCIATIONS_ALREADY_IN_USE, "İlişkilendirmeler halihazırda kullanımda!",
T_EXTENSIONS_ALREADY_IN_USE, "Genişletmeler halihazırda kullanımda!",
@ -625,7 +625,7 @@ T_BLOCK_URL, "G
T_BLOCK_LIST, "Engellenmiş görseller",
T_BLOCKED_IMAGE, "Engellenmiş görseller",
T_BLOCK_LIST_IN_USE, "Engellenmiş görseller halihazırda açık",
T_BLOCK_LIST_MANAGER, "Görsel engelleme yöneticisi",
T_BLOCK_LIST_MANAGER, "Görsel Engelleme Yöneticisi",
T_BLOCK_ADD, "Engellemek için görsel URL'si girin",
T_BLOCK_EDIT, "Görsel URL'sini düzenle",
T_BLOCK_DELETE, "Kaldır",
@ -671,10 +671,10 @@ T_HK_CONNECTIONS, "R",
T_HK_IPV6_OPTIONS, "6",
T_HK_PROXIES, "V",
T_HK_SSL_OPTIONS, "S",
T_HK_DNS_OPTIONS, NULL,
T_HK_DNS_OPTIONS, "D",
T_HK_HTTP_OPTIONS, "H",
T_HK_FTP_OPTIONS, "F",
T_HK_SMB_OPTIONS, "S",
T_HK_SMB_OPTIONS, "M",
T_HK_JAVASCRIPT_OPTIONS, "J",
T_HK_MISCELANEOUS_OPTIONS, "S",
T_HK_COOKIES, "Z",
@ -682,7 +682,7 @@ T_HK_FONTS, "Y",
T_HK_CACHE, "N",
T_HK_MAIL_AND_TELNEL, "P",
T_HK_ASSOCIATIONS, "L",
T_HK_FILE_EXTENSIONS, "Z",
T_HK_FILE_EXTENSIONS, "D",
T_HK_BLOCK_LIST, "G",
T_HK_SAVE_OPTIONS, "T",
T_HK_ABOUT, "H",

View File

@ -21754,7 +21754,7 @@ static_const struct translation translation_turkish [] = {
{ "8859-9" },
{ "Turkish" },
{ "tr" },
{ "tr_TR" },
{ "tr_TR,tr_CY" },
{ "ISO-8859-9" },
{ "Tamam" },
{ "\335ptal" },
@ -21807,10 +21807,10 @@ static_const struct translation translation_turkish [] = {
{ "Yap\375land\375rma dizini" },
{ "Yok" },
{ "D\374\360meler" },
{ "ESC men\374y\374 g\366ster\n^C, q \347\375k\np, l yukar\375 kayd\375r, a\376a\360\375 kayd\375r\n[, ] sa\360a kayd\375r, sola kayd\375r\nyukar\375, a\376a\360\375 ba\360lant\375y\375 se\347\n-> ba\360lant\375y\375 izle\n<- geri git\ng adrese git\nG \376imdiki adresten yola \347\375karak yeni bir adrese git\n/ ara\n? geriye do\360ru ara\nn tekrar ara\nN geriye do\360ru tekrar ara\n= belge bilgisi\n\\ kayna\360\375n\375 g\366ster\nd indir" },
{ "ESC men\374y\374 g\366ster\n^C, q \347\375k\np, l yukar\375 kayd\375r, a\376a\360\375 kayd\375r\n[, ] sa\360a kayd\375r, sola kayd\375r\nyukar\375, a\376a\360\375 ba\360lant\375y\375 se\347\n-> ba\360lant\375y\375 izle\n<- geri git\ng adrese git\nG \376imdiki adresten yola \347\375karak yeni bir adrese git\n/ ara\n? geriye do\360ru ara\nn yeniden ara\nN geriye do\360ru yeniden ara\n= belge bilgisi\n\\ kayna\360\375n\375 g\366ster\nd indir" },
{ "a, w imle\347 durum sat\375r\375na veya ba\376l\375\360\375na\n{, } imle\347 sat\375r\375n ba\376lang\375c\375na/sonuna\n^Y,^T,y,t,^O git: \366nceki/sonraki ba\360lant\375/s\366zc\374k/form girdisi" },
{ "Telif hakk\375" },
{ "Ba\360lant\375lar " VERSION_STRING "\n\n" LINKS_COPYRIGHT "\n\n Bu \366zg\374r bir yaz\375l\375md\375r; GNU Genel Kamu Lisans\375 alt\375nda da\360\375t\375labilir ve/veya geli\376tirilebilir." },
{ "Ba\360lant\375lar " VERSION_STRING "\n\n" LINKS_COPYRIGHT "\n\n Links, \366zg\374r bir yaz\375l\375md\375r; GNU Genel Kamu Lisans\375 alt\375nda da\360\375t\375labilir ve/veya geli\376tirilebilir." },
{ "Kaynaklar" },
{ "\326nbellek dosyas\375" },
{ "\307\375kart\375lm\375\376 \366nbellek" },
@ -21893,8 +21893,8 @@ static_const struct translation translation_turkish [] = {
{ "Dosya bi\347imi ge\347ersiz" },
{ "G\366m\374l\374 sertifikalar kullan\375l\375rken hata" },
{ "ba\376ar\375s\375z oldu" },
{ NULL },
{ NULL },
{ "DNS se\347enekleri" },
{ "HTTPS \374zerinden DNS (makine veya url)" },
{ "Ba\360lant\375lar" },
{ "En \347ok ba\360lant\375" },
{ "Bir makineye en \347ok ba\360lant\375" },
@ -21916,7 +21916,7 @@ static_const struct translation translation_turkish [] = {
{ "HTML se\347enekleri" },
{ "Tablolar\375 g\366ster" },
{ "\307er\347eveleri g\366ster" },
{ "Uzun sat\375rlar\375 k\375r" },
{ "Uzun sat\375rlar\375 kes" },
{ "G\366rselleri g\366ster" },
{ "G\366rsel dosya adlar\375n\375 g\366ster" },
{ "G\366rsellere olan ba\360lant\375lar\375 g\366ster" },
@ -21925,8 +21925,8 @@ static_const struct translation translation_turkish [] = {
{ "Kendili\360inden yenile" },
{ "Ba\360lant\375lar\375n yeni pencerede a\347\375lmas\375na izin ver" },
{ "Metin bo\376lu\360u" },
{ "\326ntan\375ml\375 karakter seti" },
{ "Sunucu taraf\375ndan belirlenmi\376 karakter setini \366nemseme" },
{ "\326ntan\375ml\375 karakter k\374mesi" },
{ "Sunucu taraf\375ndan belirlenmi\376 karakter k\374mesini \366nemseme" },
{ "Metin" },
{ "Ba\360lant\375" },
{ "Arka plan" },
@ -21967,7 +21967,7 @@ static_const struct translation translation_turkish [] = {
{ "Geriye do\360ru ara" },
{ "Sonrakini bul" },
{ "\326ncekini bul" },
{ "HTML/d\374z metin a\347/kapa" },
{ "HTML/d\374z metin a\347/kapat" },
{ "Belge bilgisi" },
{ "\307er\347eve tam ekran" },
{ "Panoyu bir dosyaya kaydet" },
@ -22021,7 +22021,7 @@ static_const struct translation translation_turkish [] = {
{ "Hatal\375 adres yaz\375m\375" },
{ "Hatal\375 vekil sunucu yaz\375m\375" },
{ "Zaman a\376\375m\375" },
{ "\335stek tekrar yap\375lmal\375" },
{ "\335stek yeniden yap\375lmal\375" },
{ "U\347 durumu al\375nam\375yor" },
{ "\307evrimli yeniden y\366nlendirme" },
{ "Dosya \347ok b\374y\374k" },
@ -22099,12 +22099,12 @@ static_const struct translation translation_turkish [] = {
{ "Birlikte a\347" },
{ "Y\366nlendirmeyi izlemek ve form bilgisini adrese g\366ndermek istiyor musunuz" },
{ "Form bilgisini adrese g\366ndermek istiyor musunuz" },
{ "Form bilgisini adrese tekrar g\366ndermek istiyor musunuz" },
{ "Form bilgisini adrese yeniden g\366ndermek istiyor musunuz" },
{ "Uyar\375" },
{ "Hata" },
{ "Ho\376 geldiniz" },
{ "Links'e ho\376 geldiniz!" },
{ "Men\374 i\347in ESC ye bas\375n. Kullan\375c\375 k\375lavuzu i\347in Yard\375m -> K\375lavuz'u se\347in." },
{ "Men\374 i\347in ESC'ye bas\375n. Kullan\375c\375 k\375lavuzu i\347in Yard\375m -> K\375lavuz'u se\347in." },
{ "Etiketler" },
{ "Content-Type(s)" },
{ "Program ('%' dosya ad\375 ile de\360i\376tirildi)" },
@ -22125,7 +22125,7 @@ static_const struct translation translation_turkish [] = {
{ "Dosya al\375nam\375yor" },
{ "Dosya okumaya izin verilmiyor" },
{ "Geri arama yok" },
{ "Aranan s\366z dizimi bulunamad\375" },
{ "Aranan s\366zdizim bulunamad\375" },
{ "Kaydetme hatas\375" },
{ "Dosyaya yazarken hata" },
{ "Dosya okunurken hata" },
@ -22207,25 +22207,25 @@ static_const struct translation translation_turkish [] = {
{ "yer imi" },
{ "Yer imi ekle" },
{ "\335li\376kilendirme ekle" },
{ "Geni\376letme ekle" },
{ "Uzant\375 ekle" },
{ "Klas\366r ekle" },
{ "Yer imi ba\376l\375\360\375" },
{ "Yer imini d\374zenle" },
{ "\335li\376kilendirmeyi d\374zenle" },
{ "Geni\376letmeyi d\374zenle" },
{ "Uzant\375y\375 d\374zenle" },
{ "Yer imini sil" },
{ "Klas\366r\374 d\374zenle" },
{ "Klas\366r\374 sil" },
{ " bo\376 de\360il. Silmek istedi\360inizden emin misiniz?" },
{ " bo\376 de\360il. Silmek istedi\360inize emin misiniz?" },
{ "Yer imi Y\366neticisi" },
{ "\335li\376kilendirmeler Y\366neticisi" },
{ "Geni\376letmeler Y\366neticisi" },
{ "Uzant\375lar Y\366neticisi" },
{ "adres" },
{ "Ad" },
{ "Links'ten \347\375k" },
{ "Pencereyi kapatmak istedi\360inizden emin misiniz?" },
{ "Pencereyi kapatmak istedi\360inize emin misiniz?" },
{ "Links'ten \347\375kmak istedi\360inize emin misiniz?" },
{ "Links'ten \347\375kmak (ve indirmeleri durdurmak) istedi\360inizden emin misiniz?" },
{ "Links'ten \347\375kmak (ve indirmeleri durdurmak) istedi\360inize emin misiniz?" },
{ "HTTP se\347enekleri" },
{ "FTP se\347enekleri" },
{ "SMB se\347enekleri" },
@ -22238,13 +22238,13 @@ static_const struct translation translation_turkish [] = {
{ "Ba\376l\375k se\347enekleri" },
{ "HTTP ba\376l\375k se\347enekleri" },
{ "Kendini Firefox olarak g\366ster (gizlili\360i iyile\376tirir)" },
{ "\"Beni Takip Etme\" iste\360i g\366nder" },
{ "Referans\347\375 yok" },
{ "\335stenen URL'yi referans\347\375 olarak g\366nder" },
{ "Sabit referans\347\375" },
{ "Ger\347ek referans\347\375y\375 yaln\375zca ayn\375 sunucuya g\366nder" },
{ "Ger\347ek referans\347\375y\375 g\366nder (g\374vensiz i\376lem!)" },
{ "Sabit HTTP referans\347\375s\375" },
{ "\"Beni \335zleme\" iste\360i g\366nder" },
{ "Ba\376vurucu yok" },
{ "\335stenen URL'yi ba\376vurucu olarak g\366nder" },
{ "Sabit ba\376vurucu" },
{ "Ger\347ek ba\376vurucuyu yaln\375zca ayn\375 sunucuya g\366nder" },
{ "Ger\347ek ba\376vurucuyu g\366nder (g\374vensiz i\376lem!)" },
{ "Sabit HTTP ba\376vurucusu" },
{ "Kullan\375c\375 kimli\360ini ba\376ka g\366ster" },
{ "Ek ba\376l\375k dizisi (\\ yeni sat\375r demektir)" },
{ "Ads\375z kullan\375c\375 i\347in \376ifre" },
@ -22260,7 +22260,7 @@ static_const struct translation translation_turkish [] = {
{ "Tn3270 program\375 (% \"makine\" veya \"makine kap\375s\375\" ile de\360i\376tirilir)" },
{ "MMS program\375 (% URL ile de\360i\376tirilir)" },
{ "M\375knat\375s program\375 (% URL ile de\360i\376tirilir)" },
{ NULL },
{ "Gopher program\375 (% URL ile de\360i\376tirilir)" },
{ "D\375\376 komutlar\375 \347al\375\376t\375rmak i\347in kabuk (% kabuk ile de\360i\376tirilir)" },
{ "Posta ve Telnet Programlar\375" },
{ "Posta, Telnet ve kabuk Programlar\375" },
@ -22271,14 +22271,14 @@ static_const struct translation translation_turkish [] = {
{ "tn3270" },
{ "mms" },
{ "m\375knat\375s" },
{ NULL },
{ "gopher" },
{ "Adrese posta g\366nder" },
{ "Hatal\375 Telnet adresi" },
{ "Hatal\375 tn3270 adresi" },
{ "MMS URL'si izin verilmeyen karakterler i\347eriyor" },
{ "Kimlik do\360rulama gerekli" },
{ "Vekil kimlik do\360rulamas\375 gerekli" },
{ "Kullan\375c\375 ID'si" },
{ "Kullan\375c\375 kimli\360i" },
{ "Parola" },
{ "Kullan\375c\375 ad\375n\375 gir: " },
{ "/" },
@ -22287,12 +22287,12 @@ static_const struct translation translation_turkish [] = {
{ " eskimi\376 SSL/TLS y\366ntemleri kullan\375yor. Yine de ba\360lanmak istiyor musunuz?" },
{ " g\374vensiz \376ifreleme kullan\375yor. Yine de ba\360lanmak istiyor musunuz?" },
{ "Y\366nlendirme onay\375 i\347in bekleniyor" },
{ "S\375k\375\376t\375rma a\347\375m hatas\375" },
{ "S\375k\375\376t\375rma a\347ma hatas\375" },
{ "\336u s\375k\375\376t\375rma a\347\375l\375rken: " },
{ " ile " },
{ "S\375k\375\376t\375r\375lm\375\376 veride hata" },
{ "Bilinmeyen s\375k\375\376t\375rma y\366ntemi" },
{ "Silmek istedi\360inizden emin misiniz?" },
{ "Silmek istedi\360inize emin misiniz?" },
{ "Yer imleri halihaz\375rda kullan\375mda!" },
{ "\335li\376kilendirmeler halihaz\375rda kullan\375mda!" },
{ "Geni\376letmeler halihaz\375rda kullan\375mda!" },
@ -22378,7 +22378,7 @@ static_const struct translation translation_turkish [] = {
{ "Engellenmi\376 g\366rseller" },
{ "Engellenmi\376 g\366rseller" },
{ "Engellenmi\376 g\366rseller halihaz\375rda a\347\375k" },
{ "G\366rsel engelleme y\366neticisi" },
{ "G\366rsel Engelleme Y\366neticisi" },
{ "Engellemek i\347in g\366rsel URL'si girin" },
{ "G\366rsel URL'sini d\374zenle" },
{ "Kald\375r" },
@ -22424,10 +22424,10 @@ static_const struct translation translation_turkish [] = {
{ "6" },
{ "V" },
{ "S" },
{ NULL },
{ "D" },
{ "H" },
{ "F" },
{ "S" },
{ "M" },
{ "J" },
{ "S" },
{ "Z" },
@ -22435,7 +22435,7 @@ static_const struct translation translation_turkish [] = {
{ "N" },
{ "P" },
{ "L" },
{ "Z" },
{ "D" },
{ "G" },
{ "T" },
{ "H" },

View File

@ -1134,9 +1134,9 @@ void debug_test_free(unsigned char *file, int line);
#define FD_ZERO(p) memset((void *)(p), 0, sizeof(*(p)))
#endif
extern int terminate_loop;
void portable_sleep(unsigned msec);
int can_write(int fd);
int can_read(int fd);
int can_read_timeout(int fd, int sec);
@ -1153,11 +1153,9 @@ void add_event_string(unsigned char **, int *, struct terminal *);
struct timer;
struct timer *install_timer(uttime, void (*)(void *), void *);
void kill_timer(struct timer *);
void portable_sleep(unsigned msec);
int verify_handle(int);
#define H_READ 0
#define H_WRITE 1
void (*get_handler(int, int))(void *);
void *get_handler_data(int);
extern unsigned char *sh_file;

View File

@ -88,6 +88,7 @@ File c:\cygwin\bin\cygcroco-0.6-3.dll
File c:\cygwin\bin\cygcrypto-1.1.dll
File c:\cygwin\bin\cygdatrie-1.dll
File c:\cygwin\bin\cygdeflate-0.dll
File c:\cygwin\bin\cygevent-2-0-5.dll
File c:\cygwin\bin\cygexpat-1.dll
File c:\cygwin\bin\cygffi-6.dll
File c:\cygwin\bin\cygfontconfig-1.dll
@ -181,6 +182,7 @@ Delete "$INSTDIR\cygcroco-0.6-3.dll"
Delete "$INSTDIR\cygcrypto-1.1.dll"
Delete "$INSTDIR\cygdatrie-1.dll"
Delete "$INSTDIR\cygdeflate-0.dll"
Delete "$INSTDIR\cygevent-2-0-5.dll"
Delete "$INSTDIR\cygexpat-1.dll"
Delete "$INSTDIR\cygffi-6.dll"
Delete "$INSTDIR\cygfontconfig-1.dll"

View File

@ -1,7 +1,7 @@
<WARPIN>
<HEAD>
<PCK INDEX="1"
PACKAGEID="Mikulas Patocka\Links\Base package\2\26"
PACKAGEID="Mikulas Patocka\Links\Base package\2\27"
TARGET="?:\Links"
SELECT
TITLE="Links"

View File

@ -89,6 +89,7 @@ File c:\cygwin64\bin\cygcrypto-1.1.dll
File c:\cygwin64\bin\cygdatrie-1.dll
File c:\cygwin64\bin\cygdeflate-0.dll
File c:\cygwin64\bin\cygexpat-1.dll
File c:\cygwin64\bin\cygevent-2-0-5.dll
File c:\cygwin64\bin\cygffi-6.dll
File c:\cygwin64\bin\cygfontconfig-1.dll
File c:\cygwin64\bin\cygfreetype-6.dll
@ -181,6 +182,7 @@ Delete "$INSTDIR\cygcroco-0.6-3.dll"
Delete "$INSTDIR\cygcrypto-1.1.dll"
Delete "$INSTDIR\cygdatrie-1.dll"
Delete "$INSTDIR\cygdeflate-0.dll"
Delete "$INSTDIR\cygevent-2-0-5.dll"
Delete "$INSTDIR\cygexpat-1.dll"
Delete "$INSTDIR\cygffi-6.dll"
Delete "$INSTDIR\cygfontconfig-1.dll"

View File

@ -30,7 +30,7 @@ export LDFLAGS
mkdir -p links-text
cd links-text
if [ ! -f config.h -o ! -f Makefile ]; then
../../links-current/configure --enable-utf8 --disable-graphics --without-x --without-libevent --enable-debuglevel=0
../../links-current/configure --enable-utf8 --disable-graphics --without-x --enable-debuglevel=0
fi
make -j12
cp links.exe ..
@ -43,7 +43,7 @@ cd links-graphics
if [ ! -f config.h -o ! -f Makefile ]; then
CPPFLAGS="-DUSE_WIN32_HEAP"
export CPPFLAGS
../../links-current/configure --disable-utf8 --enable-graphics --without-x --without-libevent --enable-debuglevel=0
../../links-current/configure --disable-utf8 --enable-graphics --without-x --enable-debuglevel=0
fi
make -j12 LDFLAGS="-mwindows"
cp links.exe ../links-g.exe

View File

@ -763,6 +763,9 @@ static int cleanup_fds(void)
#endif
#ifdef EMFILE
if (errno == EMFILE) return abort_background_connections();
#endif
#ifndef EMFILE
if (errno == EIO) return abort_background_connections();
#endif
return 0;
}
@ -777,6 +780,16 @@ int c_pipe(int fd[2])
EINTRLOOP(r, pipe(fd));
if (!r) new_fd_bin(fd[0]), new_fd_bin(fd[1]);
fd_unlock();
if (verify_handle(fd[0]) || verify_handle(fd[1])) {
EINTRLOOP(r, close(fd[0]));
EINTRLOOP(r, close(fd[1]));
r = -1;
#ifdef EMFILE
errno = EMFILE;
#else
errno = EIO;
#endif
}
} while (r == -1 && cleanup_fds());
return r;
}
@ -789,6 +802,16 @@ int c_dup(int oh)
EINTRLOOP(h, dup(oh));
if (h != -1) new_fd_cloexec(h);
fd_unlock();
if (verify_handle(h)) {
int r;
EINTRLOOP(r, close(h));
h = -1;
#ifdef EMFILE
errno = EMFILE;
#else
errno = EIO;
#endif
}
} while (h == -1 && cleanup_fds());
return h;
}
@ -801,6 +824,16 @@ int c_socket(int d, int t, int p)
EINTRLOOP(h, socket(d, t, p));
if (h != -1) new_fd_cloexec(h);
fd_unlock();
if (verify_handle(h)) {
int r;
EINTRLOOP(r, close(h));
h = -1;
#ifdef EMFILE
errno = EMFILE;
#else
errno = EIO;
#endif
}
} while (h == -1 && cleanup_fds());
return h;
}
@ -813,6 +846,16 @@ int c_accept(int sh, struct sockaddr *addr, socklen_t *addrlen)
EINTRLOOP(h, accept(sh, addr, addrlen));
if (h != -1) new_fd_cloexec(h);
fd_unlock();
if (verify_handle(h)) {
int r;
EINTRLOOP(r, close(h));
h = -1;
#ifdef EMFILE
errno = EMFILE;
#else
errno = EIO;
#endif
}
} while (h == -1 && cleanup_fds());
return h;
}
@ -825,6 +868,16 @@ int c_open(unsigned char *path, int flags)
EINTRLOOP(h, open(cast_const_char path, flags));
if (h != -1) new_fd_bin(h);
fd_unlock();
if (verify_handle(h)) {
int r;
EINTRLOOP(r, close(h));
h = -1;
#ifdef EMFILE
errno = EMFILE;
#else
errno = EIO;
#endif
}
} while (h == -1 && cleanup_fds());
return h;
}
@ -837,6 +890,16 @@ int c_open3(unsigned char *path, int flags, int mode)
EINTRLOOP(h, open(cast_const_char path, flags, mode));
if (h != -1) new_fd_bin(h);
fd_unlock();
if (verify_handle(h)) {
int r;
EINTRLOOP(r, close(h));
h = -1;
#ifdef EMFILE
errno = EMFILE;
#else
errno = EIO;
#endif
}
} while (h == -1 && cleanup_fds());
return h;
}
@ -2923,7 +2986,7 @@ void unhandle_mouse(void *data) { }
#endif /* #ifdef USE_GPM */
#if defined(WIN) || defined(INTERIX)
#if defined(OS2) || defined(WIN) || defined(INTERIX)
static int is_remote_connection(void)
{
@ -3628,16 +3691,20 @@ void restore_terminal(void)
void os_report_error_va(const char *caption, const char *msg, va_list l)
{
#ifdef OS2
char msg_buffer[OS_REPORT_ERROR_BUFFER];
vsnprintf(msg_buffer, sizeof msg_buffer, msg, l);
if (os2_init_pm()) return;
WinMessageBox(HWND_DESKTOP, NULLHANDLE, msg_buffer, caption, 0, MB_CANCEL | MB_ERROR | MB_APPLMODAL | MB_MOVEABLE);
os2_exit_pm();
if (!is_remote_connection()) {
char msg_buffer[OS_REPORT_ERROR_BUFFER];
vsnprintf(msg_buffer, sizeof msg_buffer, msg, l);
if (os2_init_pm()) return;
WinMessageBox(HWND_DESKTOP, NULLHANDLE, msg_buffer, caption, 0, MB_CANCEL | MB_ERROR | MB_APPLMODAL | MB_MOVEABLE);
os2_exit_pm();
}
#endif
#if defined(WIN) && !(defined(_UWIN) && !defined(GRDRV_PMSHELL))
char msg_buffer[OS_REPORT_ERROR_BUFFER];
vsnprintf(msg_buffer, sizeof msg_buffer, msg, l);
MessageBoxA(NULL, msg_buffer, caption, MB_OK | MB_ICONEXCLAMATION);
if (!is_remote_connection()) {
char msg_buffer[OS_REPORT_ERROR_BUFFER];
vsnprintf(msg_buffer, sizeof msg_buffer, msg, l);
MessageBoxA(NULL, msg_buffer, caption, MB_OK | MB_ICONEXCLAMATION);
}
#endif
}

View File

@ -523,8 +523,8 @@ static int win_x(struct pm_window *win)
#ifdef WIN
int x = GET_X_LPARAM(win->lastpos);
#endif
if (x < 0) x = -1;
if (x > win->x) x = win->x;
if (x >= win->x) x = win->x - 1;
if (x < 0) x = 0;
return x;
}
@ -536,8 +536,8 @@ static int win_y(struct pm_window *win)
#ifdef WIN
int y = GET_Y_LPARAM(win->lastpos);
#endif
if (y < 0) y = -1;
if (y > win->y) y = win->y;
if (y >= win->y) y = win->y - 1;
if (y < 0) y = 0;
return y;
}

View File

@ -585,6 +585,16 @@ void kill_timer(struct timer *tm)
#endif
}
int verify_handle(int fd)
{
#if defined(USE_POLL) && defined(USE_LIBEVENT)
if (!event_enabled)
#endif
if (fd >= (int)FD_SETSIZE)
return -1;
return 0;
}
void (*get_handler(int fd, int tp))(void *)
{
if (fd < 0)
@ -602,7 +612,7 @@ void (*get_handler(int fd, int tp))(void *)
void *get_handler_data(int fd)
{
if (fd < 0)
internal_error("get_handler: handle %d", fd);
internal_error("get_handler_data: handle %d", fd);
if (fd >= w_max)
return NULL;
return threads[fd].data;

View File

@ -106,6 +106,7 @@ static_const const_char_ptr domain_suffix[] = {
"0.bg",
"001www.com",
"0e.vc",
"1.azurestaticapps.net",
"1.bg",
"12hp.at",
"12hp.ch",
@ -869,6 +870,7 @@ static_const const_char_ptr domain_suffix[] = {
"biz.tt",
"biz.ua",
"biz.vn",
"biz.wf",
"biz.zm",
"bizen.okayama.jp",
"bj",
@ -1073,6 +1075,7 @@ static_const const_char_ptr domain_suffix[] = {
"budejju.no",
"bugatti",
"build",
"builder.code.com",
"builders",
"building.museum",
"builtwithdark.com",
@ -1924,6 +1927,7 @@ static_const const_char_ptr domain_suffix[] = {
"deta.dev",
"detroit.museum",
"dev",
"dev-builder.code.com",
"dev-myqnapcloud.com",
"dev.br",
"dev.static.land",
@ -3066,6 +3070,7 @@ static_const const_char_ptr domain_suffix[] = {
"gov.mz",
"gov.nc.tr",
"gov.ng",
"gov.nl",
"gov.nr",
"gov.om",
"gov.ph",
@ -5496,6 +5501,7 @@ static_const const_char_ptr domain_suffix[] = {
"name.my",
"name.na",
"name.ng",
"name.pm",
"name.pr",
"name.qa",
"name.tj",
@ -7164,6 +7170,8 @@ static_const const_char_ptr domain_suffix[] = {
"sch.sa",
"sch.so",
"sch.ss",
"sch.tf",
"sch.wf",
"sch.zm",
"schaeffler",
"schlesisches.museum",
@ -7628,6 +7636,7 @@ static_const const_char_ptr domain_suffix[] = {
"steiermark.museum",
"steigen.no",
"steinkjer.no",
"stg-builder.code.com",
"sth.ac.at",
"stjohn.museum",
"stjordal.no",

View File

@ -7130,7 +7130,7 @@ org.zw
// newGTLDs
// List of new gTLDs imported from https://www.icann.org/resources/registries/gtlds/v2/gtlds.json on 2022-03-27T15:13:38Z
// List of new gTLDs imported from https://www.icann.org/resources/registries/gtlds/v2/gtlds.json on 2022-05-18T15:16:02Z
// This list is auto-generated, don't edit it manually.
// aaa : 2015-02-26 American Automobile Association, Inc.
aaa
@ -7471,7 +7471,7 @@ bio
// black : 2014-01-16 Afilias Limited
black
// blackfriday : 2014-01-16 UNR Corp.
// blackfriday : 2014-01-16 Registry Services, LLC
blackfriday
// blockbuster : 2015-07-30 Dish DBS Corporation
@ -8308,7 +8308,7 @@ gdn
// gea : 2014-12-04 GEA Group Aktiengesellschaft
gea
// gent : 2014-01-23 COMBELL NV
// gent : 2014-01-23 Easyhost BV
gent
// genting : 2015-03-12 Resorts World Inc Pte. Ltd.
@ -8851,7 +8851,7 @@ lincoln
// linde : 2014-12-04 Linde Aktiengesellschaft
linde
// link : 2013-11-14 UNR Corp.
// link : 2013-11-14 Nova Registry Ltd
link
// lipsy : 2015-06-25 Lipsy Ltd
@ -9307,7 +9307,7 @@ philips
// phone : 2016-06-02 Dish DBS Corporation
phone
// photo : 2013-11-14 UNR Corp.
// photo : 2013-11-14 Registry Services, LLC
photo
// photography : 2013-09-20 Binky Moon, LLC
@ -9550,7 +9550,7 @@ rsvp
// rugby : 2016-12-15 World Rugby Strategic Developments Limited
rugby
// ruhr : 2013-10-02 regiodot GmbH & Co. KG
// ruhr : 2013-10-02 dotSaarland GmbH
ruhr
// run : 2015-03-19 Binky Moon, LLC
@ -9901,7 +9901,7 @@ tatamotors
// tatar : 2014-04-24 Limited Liability Company "Coordination Center of Regional Domain of Tatarstan Republic"
tatar
// tattoo : 2013-08-30 UNR Corp.
// tattoo : 2013-08-30 Top Level Design, LLC
tattoo
// tax : 2014-03-20 Binky Moon, LLC
@ -12281,6 +12281,10 @@ blogspot.vn
// Submitted by Niels Martignene <hello@goupile.fr>
goupile.fr
// Government of the Netherlands: https://www.government.nl
// Submitted by <domeinnaam@minaz.nl>
gov.nl
// Group 53, LLC : https://www.group53.com
// Submitted by Tyler Todd <noc@nova53.net>
awsmppl.com
@ -12357,7 +12361,6 @@ ltd.ng
ngo.ng
edu.scot
sch.so
org.yt
// HostyHosting (hostyhosting.com)
hostyhosting.io
@ -12798,12 +12801,13 @@ eu.meteorapp.com
co.pl
// Microsoft Corporation : http://microsoft.com
// Submitted by Mitch Webster <miwebst@microsoft.com>
// Submitted by Public Suffix List Admin <msftpsladmin@microsoft.com>
*.azurecontainer.io
azurewebsites.net
azure-mobile.net
cloudapp.net
azurestaticapps.net
1.azurestaticapps.net
centralus.azurestaticapps.net
eastasia.azurestaticapps.net
eastus2.azurestaticapps.net
@ -13388,6 +13392,12 @@ rocky.page
спб.рус
я.рус
// Salesforce.com, Inc. https://salesforce.com/
// Submitted by Michael Biven <mbiven@salesforce.com>
builder.code.com
dev-builder.code.com
stg-builder.code.com
// Sandstorm Development Group, Inc. : https://sandcats.io/
// Submitted by Asheesh Laroia <asheesh@sandstorm.io>
sandcats.io
@ -13811,6 +13821,15 @@ hk.org
ltd.hk
inc.hk
// UNIVERSAL DOMAIN REGISTRY : https://www.udr.org.yt/
// see also: whois -h whois.udr.org.yt help
// Submitted by Atanunu Igbunuroghene <publicsuffixlist@udr.org.yt>
name.pm
sch.tf
biz.wf
sch.wf
org.yt
// United Gameserver GmbH : https://united-gameserver.de
// Submitted by Stefan Schwarz <sysadm@united-gameserver.de>
virtualuser.de