From 4677966d3f384f4c30e3a59f3798552eb3d32f5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Juhani=20Krekel=C3=A4?= Date: Sun, 3 Oct 2021 23:30:40 +0300 Subject: [PATCH] Upstream Links 2.25 --- ChangeLog | 12 +++++++++ INSTALL | 2 +- Makefile.in | 4 +-- certs.inc | 1 - certs/links.crt | 20 -------------- config-vms.h | 4 +-- configure | 2 +- configure.in | 2 +- dos.c | 4 +++ framebuf.c | 2 +- https.c | 7 +++++ links.h | 2 +- links.wis | 2 +- os_dep.c | 2 +- suffix.inc | 17 ++++++------ suffix/public_suffix_list.dat | 49 +++++++++++++++++++---------------- x.c | 4 +-- 17 files changed, 70 insertions(+), 66 deletions(-) diff --git a/ChangeLog b/ChangeLog index a4dfdd8..c022711 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +=== RELEASE 2.25 === + +Fri Oct 1 18:27:25 CEST 2021 mikulas: + + Delete the expired Let's encrypt certificate from the builtin + certificate store + +Thu Sep 30 21:45:10 CET 2021 mikulas: + + Set the flag X509_V_FLAG_TRUSTED_FIRST, so that Let's encrypt works + with openssl-1.0.2 + === RELEASE 2.24 === Mon Sep 13 18:31:27 CEST 2021 mikulas: diff --git a/INSTALL b/INSTALL index 27de219..b34e72a 100644 --- a/INSTALL +++ b/INSTALL @@ -1,4 +1,4 @@ -Links 2.24 -- How To Install +Links 2.25 -- How To Install ---------------------------- Follow this step-by-step: diff --git a/Makefile.in b/Makefile.in index e45e8f6..a8aff73 100644 --- a/Makefile.in +++ b/Makefile.in @@ -103,11 +103,11 @@ imgcache.o jpeg.o jsint.o kbd.o language.o listedit.o lru.o 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 x.o xbm.o -@HAIKU_GR_TRUE@links_DEPENDENCIES = haiku.o +@ATHEOS_GR_TRUE@links_DEPENDENCIES = atheos.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 -@ATHEOS_GR_TRUE@links_DEPENDENCIES = atheos.o +@HAIKU_GR_TRUE@links_DEPENDENCIES = haiku.o links_LDFLAGS = CFLAGS = @CFLAGS@ COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) diff --git a/certs.inc b/certs.inc index b2e173a..bfdd515 100644 --- a/certs.inc +++ b/certs.inc @@ -10,7 +10,6 @@ static_const struct { { 955, "0\202\003\2670\202\002\237\240\003\002\001\002\002\020\014\347\340\345\027\330F\376\217\345`\374\033\360090\015\006\011*\206H\206\367\015\001\001\005\005\0000e1\0130\011\006\003U\004\006\023\002US1\0250\023\006\003U\004\012\023\014DigiCert Inc1\0310\027\006\003U\004\013\023\020www.digicert.com1$0\"\006\003U\004\003\023\033DigiCert Assured ID Root CA0\036\027\015061110000000Z\027\015311110000000Z0e1\0130\011\006\003U\004\006\023\002US1\0250\023\006\003U\004\012\023\014DigiCert Inc1\0310\027\006\003U\004\013\023\020www.digicert.com1$0\"\006\003U\004\003\023\033DigiCert Assured ID Root CA0\202\001\"0\015\006\011*\206H\206\367\015\001\001\001\005\000\003\202\001\017\0000\202\001\012\002\202\001\001\000\255\016\025\316\344C\200\\\261\207\363\267`\371q\022\245\256\334&\224\210\252\364\316\365 9(X`\014\370\200\332\251\025\2252a<\265\261(\204\212\212\334\237\012\014\203\027z\217\220\254\212\347yS\\1\204*\366\017\23026v\314\336\335<\250\242\357j\373!\362Ra\337\237 \327\037\342\261\331\376\030d\322\022[_\371X\0305\274G\315\2416\371k\177\324\2608>\301\033\303\2143\331\330/\030\376(\017\263\247\203\326\303nD\300a5\226\026\376Y\234\213vm\327\361\242K\015+\377\013r\332\236`\320\216\2205\306xU\207 \241\317\345m\012\310I|1\2303l\"\351\207\3202Z\242\272\023\202\021\3559\027\235\231:r\241\346\372\244\331\325\0271u\256\205}\"\256?\001F\206\366(y\310\261\332\344W\027\304~\034\016\260\264\222\246V\263\275\262\227\355\252\247\360\267\305\250?\225\026\320\377\241\226\353\010_\030wO\002\003\001\000\001\243c0a0\016\006\003U\035\017\001\001\377\004\004\003\002\001\2060\017\006\003U\035\023\001\001\377\004\0050\003\001\001\3770\035\006\003U\035\016\004\026\004\024E\353\242\257\364\222\313\2021-Q\213\247\247!\235\363m\310\0170\037\006\003U\035#\004\0300\026\200\024E\353\242\257\364\222\313\2021-Q\213\247\247!\235\363m\310\0170\015\006\011*\206H\206\367\015\001\001\005\005\000\003\202\001\001\000\242\016\274\337\342\355\360\343rszd\224\277\367rf\3302\344Bub\256\207\353\362\325\331\336V\263\237\314\316\024(\271\015\227`\\\022LX\344\323=\203IEX\2275i\032\250G\352V\306y\253\022\330g\201\204\337\177\011<\224\346\270&, \275=\263(\211\367_\377\"\342\227\204\037\351e\357\207\340\337\301gI\263]\353\262\011*\353&\355x\276}?+\363\267&5m_\211\001\266I[\237\001\005\233\253=%\301\314\266\177\302\361o\206\306\372dh\353\201-\224\353B\267\372\214\036\335b\361\276Pg\267l\275\363\361\037k\0146\007\026\1777|\251[mz\361\022F`\203\327'\004\276K\316\227\276\303g*h\021\337\200\347\0143f\277\023\015\024n\363\177\037c\020\036\372\215\033%ml\217\245\267a\001\261\322\243&\241\020q\235\255\342\303\371\303\231Q\267+\007\010\316.\346P\262\247\372\012E/\242\360\362" }, { 947, "0\202\003\2570\202\002\227\240\003\002\001\002\002\020\010;\340V\220BF\261\241uj\311Y\221\307J0\015\006\011*\206H\206\367\015\001\001\005\005\0000a1\0130\011\006\003U\004\006\023\002US1\0250\023\006\003U\004\012\023\014DigiCert Inc1\0310\027\006\003U\004\013\023\020www.digicert.com1 0\036\006\003U\004\003\023\027DigiCert Global Root CA0\036\027\015061110000000Z\027\015311110000000Z0a1\0130\011\006\003U\004\006\023\002US1\0250\023\006\003U\004\012\023\014DigiCert Inc1\0310\027\006\003U\004\013\023\020www.digicert.com1 0\036\006\003U\004\003\023\027DigiCert Global Root CA0\202\001\"0\015\006\011*\206H\206\367\015\001\001\001\005\000\003\202\001\017\0000\202\001\012\002\202\001\001\000\342;\341\021r\336\250\244\323\243W\252P\242\217\013w\220\311\242\245\356\022\316\226[\001\011 \314\001\223\247N0\267S\367C\304i\000W\235\342\215\"\335\207\006@\000\201\011\316\316\033\203\277\337\315;qF\342\326f\307\005\263v'\026\217{\236\036\225}\356\267H\243\010\332\326\257z\0149\006e\177J]\037\274\027\370\253\276\356(\327t\177zx\231Y\205hn\\#2K\277N\300\350Zm\343p\277w\020\277\374\001\366\205\331\250D\020X2\251u\030\325\321\242\276G\342'j\364\2323\370I\010`\213\324_\264:\204\277\241\252JL}>\317O_lv^\240K7\221\236\334\"\346m\316\024\032\216j\313\376\315\263\024d\027\307[)\2362\277\362\356\372\323\013B\324\253\267A2\332\014\324\357\370\201\325\273\215X?\265\033\350I(\242p\3321\004\335\367\262\026\362L\012N\007\250\355J=^\265\177\243\220\303\257'\002\003\001\000\001\243c0a0\016\006\003U\035\017\001\001\377\004\004\003\002\001\2060\017\006\003U\035\023\001\001\377\004\0050\003\001\001\3770\035\006\003U\035\016\004\026\004\024\003\336P5V\321L\273f\360\243\342\033\033\303\227\262=\321U0\037\006\003U\035#\004\0300\026\200\024\003\336P5V\321L\273f\360\243\342\033\033\303\227\262=\321U0\015\006\011*\206H\206\367\015\001\001\005\005\000\003\202\001\001\000\313\2347\252H\023\022\012\372\335D\234OR\260\364\337\256\004\365yy\010\243$\030\374K+\204\300-\271\325\307\376\364\301\037X\313\270m\234zt\347\230)\253\021\265\343p\240\241\315L\210\231\223\214\221p\342\253\017\034\276\223\251\377c\325\344\007`\323\243\277\235[\011\361\325\216\343S\364\216c\372?\247\333\264f\337bf\326\321nA\215\362-\265\352wJ\237\235X\342+Y\300@#\355-(\202E>yT\222&\230\340\200H\2507\357\360\326y`\026\336\254\350\016\315n\254D\0278/I\332\341E>*\2716S\317:P\006\367.\350\304WIla!\030\325\004\255x<,:\200k\247\353\257\025\024\351\330\211\301\2718l\342\221l\212\377d\271w%W0\300\033$\243\341\334\351\337G|\265\264$\010\0050\354-\275\013\277E\277P\271\251\363\353\230\001\022\255\310\210\306\2304_\215\012<\306\351\325\225\225m\336" }, { 969, "0\202\003\3050\202\002\255\240\003\002\001\002\002\020\002\254\\&j\013@\233\217\013y\362\256F%w0\015\006\011*\206H\206\367\015\001\001\005\005\0000l1\0130\011\006\003U\004\006\023\002US1\0250\023\006\003U\004\012\023\014DigiCert Inc1\0310\027\006\003U\004\013\023\020www.digicert.com1+0)\006\003U\004\003\023\"DigiCert High Assurance EV Root CA0\036\027\015061110000000Z\027\015311110000000Z0l1\0130\011\006\003U\004\006\023\002US1\0250\023\006\003U\004\012\023\014DigiCert Inc1\0310\027\006\003U\004\013\023\020www.digicert.com1+0)\006\003U\004\003\023\"DigiCert High Assurance EV Root CA0\202\001\"0\015\006\011*\206H\206\367\015\001\001\001\005\000\003\202\001\017\0000\202\001\012\002\202\001\001\000\306\314\345s\346\373\324\273\345--2\246\337\345\201?\311\315%I\266q*\303\325\2244g\242\012\034\260_i\246@\261\304\267\262\217\320\230\244\251AY:\323\334\224\326<\333t8\244J\314M%\202\367J\245S\0228\356\363Imq\221~c\266\253\246_\303\244\204\370ObQ\276\370\305\354\3338\222\343\006\345\010\221\014\304(AU\373\313Z\211\025~q\3505\277Mr\011=\276:8P[w1\033\215\263\307$E\232\247\254m\000\024Z\004\267\272\023\353Q\012\230AA\"Nea\207\201AP\246y\\\211\336\031JW\325.\346]\034S,~\230\315\032\006\026\244hs\3204\004\023\\\241q\323Z|U\333^d\3417\2070V\004\345\021\264)\200\022\361y9\210\242\002\021|'f\267\210\267x\362\312\012\2508\253\012d\302\277f]\225\204\301\241%\036\207]\032P\013 \022\314A\273n\013Q8\270K\313\002\003\001\000\001\243c0a0\016\006\003U\035\017\001\001\377\004\004\003\002\001\2060\017\006\003U\035\023\001\001\377\004\0050\003\001\001\3770\035\006\003U\035\016\004\026\004\024\261>\303i\003\370\277G\001\324\230&\032\010\002\357cd+\3030\037\006\003U\035#\004\0300\026\200\024\261>\303i\003\370\277G\001\324\230&\032\010\002\357cd+\3030\015\006\011*\206H\206\367\015\001\001\005\005\000\003\202\001\001\000\034\032\006\227\334\327\234\237<\210f\006\010W!\333!G\370*g\252\277\0302v@\020W\301\212\363z\331\021e\2165\372\236\374E\265\236\331L1K\270\221\350C,\216\263x\316\333\343Syq\326\345!\224\001\332U\207\232$d\366\212f\314\336\2347\315\2504\261i\233#\310\236x\"+pC\343UG1a\031\357X\305\205/N0\366\2401\026#\310\347\342e\0263\313\277\032\033\240=\370\312^\2131\213`\010\211-\014\006\\R\267\304\371\012\230\321\025_\237\022\276|6c8\275D\244\177\344&+\012\304\227i\015\351\214\342\300\020W\270\310v\022\221U\362Hi\330\274*\002[\017D\324 1\333\364\272p&]\220`\236\274K\027\011/\264\313\036Ch\311\007'\301\322\\\367\352!\271h\022\234<\234\277\236\374\200\\\233c\315\354G\252%'g\2407\363\000\202}T\327\251\370\351.\023\243w\350\037J" }, -{ 846, "0\202\003J0\202\0022\240\003\002\001\002\002\020D\257\260\200\326\243'\272\21109\206.\370@k0\015\006\011*\206H\206\367\015\001\001\005\005\0000?1$0\"\006\003U\004\012\023\033Digital Signature Trust Co.1\0270\025\006\003U\004\003\023\016DST Root CA X30\036\027\015000930211219Z\027\015210930140115Z0?1$0\"\006\003U\004\012\023\033Digital Signature Trust Co.1\0270\025\006\003U\004\003\023\016DST Root CA X30\202\001\"0\015\006\011*\206H\206\367\015\001\001\001\005\000\003\202\001\017\0000\202\001\012\002\202\001\001\000\337\257\351\227P\010\203W\264\314be\366\220\202\354\307\323,k0\312[\354\331\303}\307@\301\030\024\213\340\3503vI*\343?!I\223\254N\016\257>H\313e\356\374\323!\017e\322*\3312\217\214\345\367w\260\022{\265\225\300\211\243\251\272\355s.z\014\0062\203\242~\212\0240\315\021\240\341*8\271y\0121\375P\275\200e\337\267Qc\203\310\342\210a\352Ka\201\354Rk\271\242\342K\032(\237H\243\236\014\332\011\216>\027.\036\335 \337[\306*\212\253.\275p\255\305\013\032%\220tr\305{j\2534\3260\211\377\345h\023{T\013\310\326\256\354Z\234\222\036=d\263\214\306\337\277\311Ap\354\026r\325&\3548U9C\320\374\375\030\\@\361\227\353\325\232\233\215\035\272\332%\271\306\330\337\301\025\002:\253\332n\361>.\365\\\010\234<\326\203i\344\020\233\031*\266)W\343\345=\233\237\360\002]\002\003\001\000\001\243B0@0\017\006\003U\035\023\001\001\377\004\0050\003\001\001\3770\016\006\003U\035\017\001\001\377\004\004\003\002\001\0060\035\006\003U\035\016\004\026\004\024\304\247\261\244{,q\372\333\341K\220u\377\304\025`\205\211\0200\015\006\011*\206H\206\367\015\001\001\005\005\000\003\202\001\001\000\243\032,\233\027\000\\\251\036\356(f7:\277\203\307?K\303\011\240\225 ]\343\331YD\322>\015>\275\212K\240t\037\316\020\202\234t\032\035~\230\032\335\313\023K\263 D\344\221\351\314\374}\245\333j\345\376\346\375\340N\335\267\000:\265pI\257\362\345\353\002\361\321\002\213\031\313\224:^H\304\030\036X\031_\036\002Z\360\014\361\261\255\251\334Y\206\213n\351\221\365\206\312\372\271f3\252Y[\316\342\247\026sG\313+\314\231\2607H\317\343VK\365\317\017\014r2\207\306\360D\273SrmC\365&H\232Rg\267X\253\376gvqx\333\015\242V\024\0239$1\205\242\250\002Z0G\341\335P\007\274\002\011\220\000\353dc`\233\026\274\210\311\022\346\322}\221\213\371=2\215e\264\351|\261Wv\352\305\266(9\277\025e\034\310\366w\226j\012\215w\013\330\221\013\004\216\007\333)\266\012\356\235\20255\020" }, { 1070, "0\202\004*0\202\003\022\240\003\002\001\002\002\0048c\336\3700\015\006\011*\206H\206\367\015\001\001\005\005\0000\201\2641\0240\022\006\003U\004\012\023\013Entrust.net1@0>\006\003U\004\013\0247www.entrust.net/CPS_2048 incorp. by ref. (limits liab.)1%0#\006\003U\004\013\023\034(c) 1999 Entrust.net Limited1301\006\003U\004\003\023*Entrust.net Certification Authority (2048)0\036\027\015991224175051Z\027\015290724141512Z0\201\2641\0240\022\006\003U\004\012\023\013Entrust.net1@0>\006\003U\004\013\0247www.entrust.net/CPS_2048 incorp. by ref. (limits liab.)1%0#\006\003U\004\013\023\034(c) 1999 Entrust.net Limited1301\006\003U\004\003\023*Entrust.net Certification Authority (2048)0\202\001\"0\015\006\011*\206H\206\367\015\001\001\001\005\000\003\202\001\017\0000\202\001\012\002\202\001\001\000\255MK\251\022\206\262\352\243 \007\025\026d*+K\321\277\013JM\216\355\200v\245g\267x@\300sB\310h\300\333S+\335^\270v\2305\223\213\032\235|\023:\016\037[\267\036\317\345$\024\036\261\201\251\215}\270\314kK\003\361\002\014\334\253\245@$\000\177t\224\241\235\010)\263\210\013\365\207w\235U\315\344\303~\327jd\253\205\024\206\225[\2272Po=\310\272f\014\343\374\275\270I\301v\211I\031\375\300\250\275\211\243g/\306\237\274q\031`\270-\351,\311\220vf{\224\342\257x\326eS]<\326\234\262\317)\003\371/\244P\262\324H\316\0052U\212\375\262dL\016\344\230\007u\333\177\337\271\010U`\2050)\371{H\244i\206\3435?\036\206]zz\025\275\357\000\216\025\"T\027\000\220&\223\274\016Ih\221\277\370G\323\235\225B\301\016M\337o&\317\303\030!bfCp\326\325\300\007\341\002\003\001\000\001\243B0@0\016\006\003U\035\017\001\001\377\004\004\003\002\001\0060\017\006\003U\035\023\001\001\377\004\0050\003\001\001\3770\035\006\003U\035\016\004\026\004\024U\344\201\321\021\200\276\330\211\271\010\2431\371\241$\011\026\271p0\015\006\011*\206H\206\367\015\001\001\005\005\000\003\202\001\001\000;\233\217V\2330\347S\231|zy\247M\227\327\031\225\220\373\006\037\3123|Fc\217\226f$\372@\033!'\312\346rs\362O\3761\231\375\310\014LhS\306\200\202\023\230\372\266\255\332]=\361\316n\366\025\021\224\202\014\356?\225\257\021\253\017\327/\336\037\003\217W,\036\311\273\232\032D\225\353\030O\246\037\315}W\020/\233\004\011Z\204\265n\330\035:\341\326\236\321ly^y\034\024\305\343\320L\223;e<\355\337=\276\246\345\225\032\303\265\031\303\275^[\273\377#\357h\031\313\022\223'\\\003-o0\320\036\266\032\254\336Z\367\321\252\250'\246\376y\201\304y\2313W\272\022\260\251\340Bl\223\312V\336\376m\204\013\010\213~\215\352\327\230!\306\363\347 \204^\355\262V(\247\370\340\271@q7\305\313G\016\227*h\300\"\225b\025\333G\331\365\320+\377\202K\311\255>\336L\333\220\200P?\011\212\204\000\3540\012=\030\315\373\375*Y\232#\225\027,E\236\037nCym\014\\\230\376H\247\305#G\\^\375n\347\036\264\366hE\321\206\203[\242\212\215\261\343)\200\376%q\210\255\276\274\217\254R\226K\252Q\215\344\0231\031\350NM\237\333\254\263j\325\2749Tq\312zz\177\220\335}\035\200\331\201\273Y&\302\021\376\346\223\342\367\200\344e\37347\016)\200pM\2578\206.\236\177W\257\236\027\256\353\034\313(!_\266\034\330\347\242\004\"\371\323\332\330\313\002\003\001\000\001\243\201\2600\201\2550\016\006\003U\035\017\001\001\377\004\004\003\002\001\0060\017\006\003U\035\023\001\001\377\004\0050\003\001\001\3770+\006\003U\035\020\004$0\"\200\01720061127202342Z\201\01720261127205342Z0\037\006\003U\035#\004\0300\026\200\024h\220\344g\244\246S\200\307\206f\244\361\367KC\373\204\275m0\035\006\003U\035\016\004\026\004\024h\220\344g\244\246S\200\307\206f\244\361\367KC\373\204\275m0\035\006\011*\206H\206\366}\007A\000\004\0200\016\033\010V7.1:4.0\003\002\004\2200\015\006\011*\206H\206\367\015\001\001\005\005\000\003\202\001\001\000\223\3240\260\327\003 *\320\371c\350\221\014\005 \251_\031\312{rN\324\261\333\320\226\373TZ\031,\014\010\367\262\274\205\250\235\177m;R\263*\333\347\324\204\214c\366\017\313&\001\221Pl\364_\024\342\223t\300\023\2360:P\343\264`\305\034\360\"D\215qG\254\310\032\311\351\233\232\000`\023\377p~_\021MI\033\263\025R{\311T\332\277\235\225\257k\232\330\236\351\361\344C\215\342\021D:\277\257\275\203BsR\213\252\273\247)\317\365d\034\012M\321\274\252\254\237*\320\377\177\177\332}\352\261\3550%\301\204\3324\322[x\203V\354\2346\303&\342\021\366gI\035\222\253\214\373\353\377z\356\205J\247P\200\360\247\\J\224._\005\231\303\240\343cU\033\362\272\357\2559\341C\2718\243\346/\212&;\357\240PV\371\306\012\3758\315\304\013pQ\224\227\230\004\337\303_\224\325\025\311\024A\234\304]ud\025\015\377U0\354\206\217\377\015\357,\271cF\366\252\374\337\274i\375.\022Hd\232\340\225\360\246\357)\217\001\261\025\265\014\035\245\376i,i$x\036\263\247\034qb\356\312\310\227\254\027]\212\302\370G\206n*\304V1\225\320g\211\205+\371l\246]F\235\014\252\202\344\231Q\335p\267\333V=a\344j\341\\\326\366\376=\336A\314\007\256cR\277SS\364+\351\307\375\266\367\202_\205\322A\030\333\201\263\004\034\305\037\244\200o\025 \311\336\014\210\012\035\326fU\342\374H\311)&i\340" }, diff --git a/certs/links.crt b/certs/links.crt index 8df73ba..b10731d 100644 --- a/certs/links.crt +++ b/certs/links.crt @@ -137,26 +137,6 @@ vEsXCS+0yx5DaMkHJ8HSXPfqIbloEpw8nL+e/IBcm2PN7EeqJSdnoDfzAIJ9VNep +OkuE6N36B9K -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- -MIIDSjCCAjKgAwIBAgIQRK+wgNajJ7qJMDmGLvhAazANBgkqhkiG9w0BAQUFADA/ -MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT -DkRTVCBSb290IENBIFgzMB4XDTAwMDkzMDIxMTIxOVoXDTIxMDkzMDE0MDExNVow -PzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMRcwFQYDVQQD -Ew5EU1QgUm9vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB -AN+v6ZdQCINXtMxiZfaQguzH0yxrMMpb7NnDfcdAwRgUi+DoM3ZJKuM/IUmTrE4O -rz5Iy2Xu/NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67XMuegwGMoOifooUMM0RoOEq -OLl5CjH9UL2AZd+3UWODyOKIYepLYYHsUmu5ouJLGiifSKOeDNoJjj4XLh7dIN9b -xiqKqy69cK3FCxolkHRyxXtqqzTWMIn/5WgTe1QLyNau7Fqckh49ZLOMxt+/yUFw -7BZy1SbsOFU5Q9D8/RhcQPGX69Wam40dutolucbY38EVAjqr2m7xPi71XAicPNaD -aeQQmxkqtilX4+U9m5/wAl0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNV -HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7LHH62+FLkHX/xBVghYkQMA0GCSqG -SIb3DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9LwwmglSBd49lZRNI+DT69 -ikugdB/OEIKcdBodfpga3csTS7MgROSR6cz8faXbauX+5v3gTt23ADq1cEmv8uXr -AvHRAosZy5Q6XkjEGB5YGV8eAlrwDPGxrancWYaLbumR9YbK+rlmM6pZW87ipxZz -R8srzJmwN0jP41ZL9c8PDHIyh8bwRLtTcm1D9SZImlJnt1ir/md2cXjbDaJWFBM5 -JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubSfZGL+T0yjWW06XyxV3bqxbYo -Ob8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ ------END CERTIFICATE----- ------BEGIN CERTIFICATE----- MIIEKjCCAxKgAwIBAgIEOGPe+DANBgkqhkiG9w0BAQUFADCBtDEUMBIGA1UEChML RW50cnVzdC5uZXQxQDA+BgNVBAsUN3d3dy5lbnRydXN0Lm5ldC9DUFNfMjA0OCBp bmNvcnAuIGJ5IHJlZi4gKGxpbWl0cyBsaWFiLikxJTAjBgNVBAsTHChjKSAxOTk5 diff --git a/config-vms.h b/config-vms.h index 2d7b972..ab78c72 100644 --- a/config-vms.h +++ b/config-vms.h @@ -919,11 +919,11 @@ #define PACKAGE "links" /* Version number of package */ -#define VERSION "2.24" +#define VERSION "2.25" /* */ -#define VERSION "2.24" +#define VERSION "2.25" /* */ /* #undef HAVE_OPENMP */ diff --git a/configure b/configure index 8d36f1d..2ff8ec4 100755 --- a/configure +++ b/configure @@ -767,7 +767,7 @@ fi PACKAGE=links -VERSION=2.24 +VERSION=2.25 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; } diff --git a/configure.in b/configure.in index ffb57df..5832504 100644 --- a/configure.in +++ b/configure.in @@ -5,7 +5,7 @@ AC_INIT(main.c) -AM_INIT_AUTOMAKE(links, 2.24) +AM_INIT_AUTOMAKE(links, 2.25) ACLOCAL="./missing aclocal" AUTOCONF="./missing autoconf" diff --git a/dos.c b/dos.c index d59fcd1..b81275a 100644 --- a/dos.c +++ b/dos.c @@ -289,6 +289,7 @@ static int dos_mouse_event(void) void save_terminal(void) { unsigned char *sc; + want_draw(); screen_backbuffer_x = ScreenCols(); screen_backbuffer_y = ScreenRows(); screen_default_attr = ScreenAttrib; @@ -301,10 +302,12 @@ void save_terminal(void) ScreenRetrieve(sc); ScreenGetCursor(&saved_cursor_y, &saved_cursor_x); screen_backbuffer = sc; + done_draw(); } void restore_terminal(void) { + want_draw(); if (screen_backbuffer) { unsigned char *sc; if (ScreenCols() == screen_backbuffer_x && ScreenRows() == screen_backbuffer_y) { @@ -315,6 +318,7 @@ void restore_terminal(void) screen_backbuffer = NULL; mem_free(sc); } + done_draw(); } static void ansi_initialize(void) diff --git a/framebuf.c b/framebuf.c index 3d25406..a3ab75d 100644 --- a/framebuf.c +++ b/framebuf.c @@ -2146,7 +2146,7 @@ struct graphics_driver fb_driver = { NULL, /* get_real_colors */ (void (*)(struct graphics_device *, unsigned char *))NULL, /* set_title */ (int (*)(unsigned char *, int))NULL, /* exec */ - (void (*)(struct graphics_device *, unsigned char *))NULL, /* set_clipboard_text */ + (void (*)(unsigned char *))NULL, /* set_clipboard_text */ (unsigned char *(*)(void))NULL, /* get_clipboard_text */ 0, /* depth (filled in fb_init_driver function) */ 0, 0, /* size (in X is empty) */ diff --git a/https.c b/https.c index c822f01..658f9f3 100644 --- a/https.c +++ b/https.c @@ -325,6 +325,13 @@ links_ssl *getSSL(void) ssl_load_private_certificates(ctx); #endif } +#ifdef X509_V_FLAG_TRUSTED_FIRST +#if defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER < 0x10003000 + X509_VERIFY_PARAM_set_flags(SSL_CTX_get_cert_store(ctx)->param, X509_V_FLAG_TRUSTED_FIRST); +#else + /*X509_VERIFY_PARAM_set_flags(X509_STORE_get0_param(SSL_CTX_get_cert_store(ctx)), X509_V_FLAG_TRUSTED_FIRST);*/ +#endif +#endif SSL_CTX_set_default_passwd_cb(ctx, ssl_password_callback); } ssl = mem_alloc_mayfail(sizeof(links_ssl)); diff --git a/links.h b/links.h index ff9df2e..885d3a4 100644 --- a/links.h +++ b/links.h @@ -1969,7 +1969,7 @@ struct graphics_driver { else run command directly */ - void (*set_clipboard_text)(struct graphics_device *gd, unsigned char *text); + void (*set_clipboard_text)(unsigned char *text); unsigned char *(*get_clipboard_text)(void); int depth; /* Data layout diff --git a/links.wis b/links.wis index 0d9d798..1ae1229 100644 --- a/links.wis +++ b/links.wis @@ -1,7 +1,7 @@ set_clipboard_text) { - drv->set_clipboard_text(term->dev, data); + drv->set_clipboard_text(data); return; } #endif diff --git a/suffix.inc b/suffix.inc index 3ba4f66..c28aa17 100644 --- a/suffix.inc +++ b/suffix.inc @@ -25,6 +25,7 @@ static_const const_char_ptr domain_suffix[] = { "*.dev.adobeaemcloud.com", "*.devcdnaccesso.com", "*.developer.app", + "*.digitaloceanspaces.com", "*.diher.solutions", "*.dweb.link", "*.elb.amazonaws.com", @@ -91,6 +92,7 @@ static_const const_char_ptr domain_suffix[] = { "*.triton.zone", "*.tst.site", "*.uberspace.de", + "*.usercontent.goog", "*.vps.myjino.ru", "*.webhare.dev", "*.webpaas.ovh.net", @@ -265,7 +267,6 @@ static_const const_char_ptr domain_suffix[] = { "agric.za", "agriculture.museum", "agrigento.it", - "agrinet.tn", "agro.bo", "agro.pl", "aguni.okinawa.jp", @@ -780,6 +781,7 @@ static_const const_char_ptr domain_suffix[] = { "best", "bestbuy", "bet", + "bet.ar", "beta.bounty-full.com", "betainabox.com", "better-than.tv", @@ -1358,7 +1360,6 @@ static_const const_char_ptr domain_suffix[] = { "clerk.app", "clerkstage.app", "cleverapps.io", - "clic2000.net", "click", "clicketcloud.com", "clickrising.net", @@ -1685,6 +1686,7 @@ static_const const_char_ptr domain_suffix[] = { "cookingchannel", "cool", "coop", + "coop.ar", "coop.br", "coop.ht", "coop.km", @@ -1844,7 +1846,6 @@ static_const const_char_ptr domain_suffix[] = { "decorativearts.museum", "dedyn.io", "def.br", - "defense.tn", "definima.io", "definima.net", "degree", @@ -2206,7 +2207,6 @@ static_const const_char_ptr domain_suffix[] = { "educational.museum", "educator.aero", "edugit.org", - "edunet.tn", "ee", "ee.eu.org", "eero-stage.online", @@ -3646,6 +3646,7 @@ static_const const_char_ptr domain_suffix[] = { "ink", "ino.kochi.jp", "instance.datadetect.com", + "instances.spawn.cc", "instantcloud.cn", "institute", "insurance", @@ -5242,6 +5243,7 @@ static_const const_char_ptr domain_suffix[] = { "mutsu.aomori.jp", "mutsuzawa.chiba.jp", "mutual", + "mutual.ar", "mv", "mw", "mw.gov.pl", @@ -6492,6 +6494,7 @@ static_const const_char_ptr domain_suffix[] = { "prd.fr", "prd.km", "prd.mg", + "prequalifyme.today", "preservation.museum", "presidio.museum", "press", @@ -6750,13 +6753,9 @@ static_const const_char_ptr domain_suffix[] = { "rj.leg.br", "rl.no", "rm.it", - "rmit", "rn.gov.br", "rn.it", "rn.leg.br", - "rnrt.tn", - "rns.tn", - "rnu.tn", "ro", "ro.eu.org", "ro.gov.br", @@ -7108,6 +7107,7 @@ static_const const_char_ptr domain_suffix[] = { "sellsyourhome.org", "semboku.akita.jp", "semine.miyagi.jp", + "senasa.ar", "sener", "sennan.osaka.jp", "senseering.net", @@ -8036,7 +8036,6 @@ static_const const_char_ptr domain_suffix[] = { "tur.ar", "tur.br", "turek.pl", - "turen.tn", "turin.it", "turystyka.pl", "tuscany.it", diff --git a/suffix/public_suffix_list.dat b/suffix/public_suffix_list.dat index af18431..396771e 100644 --- a/suffix/public_suffix_list.dat +++ b/suffix/public_suffix_list.dat @@ -175,17 +175,21 @@ it.ao // aq : https://en.wikipedia.org/wiki/.aq aq -// ar : https://nic.ar/nic-argentina/normativa-vigente +// ar : https://nic.ar/es/nic-argentina/normativa ar +bet.ar com.ar +coop.ar edu.ar gob.ar gov.ar int.ar mil.ar musica.ar +mutual.ar net.ar org.ar +senasa.ar tur.ar // arpa : https://en.wikipedia.org/wiki/.arpa @@ -6202,29 +6206,22 @@ gov.tm mil.tm edu.tm -// tn : https://en.wikipedia.org/wiki/.tn -// http://whois.ati.tn/ +// tn : http://www.registre.tn/fr/ +// https://whois.ati.tn/ tn com.tn ens.tn fin.tn gov.tn ind.tn +info.tn intl.tn +mincom.tn nat.tn net.tn org.tn -info.tn perso.tn tourism.tn -edunet.tn -rnrt.tn -rns.tn -rnu.tn -mincom.tn -agrinet.tn -defense.tn -turen.tn // to : https://en.wikipedia.org/wiki/.to // Submitted by registry @@ -7128,7 +7125,7 @@ org.zw // newGTLDs -// List of new gTLDs imported from https://www.icann.org/resources/registries/gtlds/v2/gtlds.json on 2021-08-19T15:13:52Z +// List of new gTLDs imported from https://www.icann.org/resources/registries/gtlds/v2/gtlds.json on 2021-10-01T15:13:10Z // This list is auto-generated, don't edit it manually. // aaa : 2015-02-26 American Automobile Association, Inc. aaa @@ -8018,7 +8015,7 @@ duck // dunlop : 2015-07-02 The Goodyear Tire & Rubber Company dunlop -// dupont : 2015-06-25 E. I. du Pont de Nemours and Company +// dupont : 2015-06-25 DuPont Specialty Products USA, LLC dupont // durban : 2014-03-24 ZA Central Registry NPC trading as ZA Central Registry @@ -9554,9 +9551,6 @@ rio // rip : 2014-07-10 Dog Beach, LLC rip -// rmit : 2015-11-19 Royal Melbourne Institute of Technology -rmit - // rocher : 2014-12-18 Ferrero Trading Lux S.A. rocher @@ -11054,10 +11048,6 @@ clerkstage.app *.stg.dev *.stgstage.dev -// Clic2000 : https://clic2000.fr -// Submitted by Mathilde Blanchemanche -clic2000.net - // ClickRising : https://clickrising.com/ // Submitted by Umut Gumeli clickrising.net @@ -11611,10 +11601,14 @@ ddnss.org definima.net definima.io -// DigitalOcean : https://digitalocean.com/ -// Submitted by Braxton Huggins +// DigitalOcean App Platform : https://www.digitalocean.com/products/app-platform/ +// Submitted by Braxton Huggins ondigitalocean.app +// DigitalOcean Spaces : https://www.digitalocean.com/products/spaces/ +// Submitted by Robin H. Johnson +*.digitaloceanspaces.com + // dnstrace.pro : https://dnstrace.pro/ // Submitted by Chris Partridge bci.dnstrace.pro @@ -12079,6 +12073,7 @@ withyoutube.com *.gateway.dev cloud.goog translate.goog +*.usercontent.goog cloudfunctions.net blogspot.ae blogspot.al @@ -13062,6 +13057,10 @@ pstmn.io mock.pstmn.io httpbin.org +//prequalifyme.today : https://prequalifyme.today +//Submitted by DeepakTiwari deepak@ivylead.io +prequalifyme.today + // prgmr.com : https://prgmr.com/ // Submitted by Sarah Newman xen.prgmr.com @@ -13112,6 +13111,10 @@ qbuser.com // Submitted by Scott Claeys cloudsite.builders +// Redgate Software: https://red-gate.com +// Submitted by Andrew Farries +instances.spawn.cc + // Redstar Consultants : https://www.redstarconsultants.com/ // Submitted by Jons Slemmer instantcloud.cn diff --git a/x.c b/x.c index c5c7fe7..760df68 100644 --- a/x.c +++ b/x.c @@ -2785,13 +2785,13 @@ retry_print_ascii: } /* gets string in UTF8 */ -static void x_set_clipboard_text(struct graphics_device *dev, unsigned char *text) +static void x_set_clipboard_text(unsigned char *text) { x_clear_clipboard(); if (text) { x_my_clipboard = stracpy(text); - XSetSelectionOwner (x_display, XA_PRIMARY, get_window_info(dev)->window, CurrentTime); + XSetSelectionOwner(x_display, XA_PRIMARY, fake_window, CurrentTime); XFlush (x_display); X_SCHEDULE_PROCESS_EVENTS(); }