Nova versio de POP3 kaj IMAP4-servilo Dovecot 2.3.21

Nova versio de la plurplatforma alt-efikeca POP3/IMAP4-servilo Dovecot 2.3.21 estis publikigita, apogante la POP3 kaj IMAP4rev1-protokolojn kun popularaj etendaĵoj kiel SORT, THREAD kaj IDLE, kaj aŭtentigaj kaj ĉifradaj mekanismoj (SASL, TLS, SCRAM). Dovecot restas plene kongrua kun klasikaj mbox kaj Maildir, uzante eksterajn indeksojn por plibonigi rendimenton. Kromaĵoj povas esti uzataj por vastigi funkciecon (ekzemple kvotoj kaj ACLoj estas efektivigitaj per kromaĵoj). La projektkodo estas distribuita sub LGPL kaj MIT-licencoj.

Ĉefaj ŝanĝoj:

  • lib-oauth2: Permesu validigon de JWT-ĵetonoj kun mankanta kampo "typ". La kampo "tipo" ne estas uzata de iuj ŝlosilaj eldonantoj por ŝpari spacon, precipe kubernetes. Nun la foresto de "typ" estas akceptebla, sed se ĝi ĉeestas ĝi ankoraŭ devas esti "jwt".
  • auth: La respondo "Auth" de passdb kaj userdb povas enhavi la valoron "event_" =valoro" kiu estos aldonita al la ensaluta evento kaj retpoŝta uzantokazaĵo respektive.
  • lib-master: Agordas la procezan titolon en diversaj stadioj de inicialigo por klarigi kion la procezo atendas.
  • lib-storage: La mail_temp_scan_interval nun estas pliigita je 0...30% surbaze de la uzantnomo hash por redukti la verŝajnecon de ŝarĝpikoj.
  • lib-storage: Movita provizora dosierskanado de la momento kiam la leterkesto estas malfermita ĝis la momento kiam ĝi estas fermita por redukti la prokraston spertan de uzantoj.
  • statistiko: Se kampoj estas specifitaj en la metriko, tiam ĉiuj ĉi tiuj kampoj estas eksportitaj kiel nombriloj al prometheus en ekspozicia formato.
  • "*-login": Procezoj povus kraŝi se la SSL-konekto estus preterintence ĉesigita. - acl: Ŝargante la kromprogramon, la flagoj \\HasChildren kaj \\HasNoChildren estis malĝuste kalkulitaj por leterkestoj enhavantaj '*' kaj '%' en siaj nomoj.
  • aŭth: kraŝo okazis kiam la konekto al la PostgreSQL DBMS dum lanĉo malsukcesis.
  • auth: Kiam ensalutinta kun nevalidaj pasvortoj (ekzemple, kun nekonata skemo), passdb ĵetis la eraron "pasvortmiskoformo" anstataŭ "interna eraro".
  • aŭth: La mekanismoj XOAUTH2 kaj OAUTHBEARER ne eldonis protokolan specifan erarmesaĝon pri iuj eraroj. Tio precipe malhelpis la detekton de OIDC.
  • dbox: Se la last_temp_file_scan-kapo ne estis agordita (precipe post dsync-migrado), tiam la venontan fojon kiam la leterkesto estis malfermita, skanado de provizoraj dosieroj ĉiam estus lanĉita. Ĉi tio povus kaŭzi ŝarĝon post migradoj. Riparita uzante leterkestan dosierujon kiam ne ekzistas kaplinio, kiu kutime puŝas skanan tempon en la estontecon.
  • dict-redis: Transakcia retroigo malsukcesis.
  • dsync: Dum forigo de leterkesto ĉe la malproksima fino, kiam la hierarkiaj limigiloj ne kongruis, senfina buklo okazis, rezultigante senmemora evento.
  • dsync: Pliiga dsync ne estis farita sur dosierujo-nomoj finiĝantaj per '%' krom se BROKENCHAR estis agordita. Ankaŭ, dosierujoj kun '%' en aliaj lokoj kaŭzis la dosierujon esti nenecese renomita al provizora nomo kaj reen kun ĉiu pliiga dsync. Regreso v2.3.19.
  • imap-hibernate: Se IMAP-kliento malŝlosis kun "(versio ricevita)" mesaĝo dum malŝlosado, la malŝloso povus poste finiĝi sukcese kaj daŭrigi normalan operacion. Ĉi tio estis konfuza ĉar imap-hibernate jam detektis ke la kliento malkonektis. Vi povas eviti ĉi tion devigante la konekton finiĝi per vintrodormo.
  • imapc: Kraŝo kiam dosierujo montrita per virtuala kromaĵo malaperas el la stokado.
  • imapc: EXPUNGE, EXISTS, aŭ FETCH respondojn de la servilo por antaŭe elektita leterkesto povus esti traktitaj kvazaŭ ili apartenus al la nova leterkesto nuntempe elektita. Ĉi tio povus rezultigi avertojn.
  • lib-http: La Dovecot HTTP-servilo (doveadm, stats/openmetrics) povus malkonekti HTTP-klientojn antaŭ ol la respondo estis plene sendita. Ĉi tio okazis nur ĉe okupataj serviloj, kie la kernaj ingobufroj estis tre plenaj.
  • lib-http: Riparis eblan kraŝon de la http-servilo se la kliento malkonektas frue. Regreso en 2.3.18.
  • lib-index: Korupto de la indeksa dosiero povus kaŭzi kraŝon. Solvita: Paniko: dosiero mail-transaction-log-view.c: linio 165 (mail_transaction_log_view_set): aserto malsukcesis: (min_file_seq <= max_file_seq).
  • lib-index: Malplenigi ekzistantan kaŝmemordosieron pli grandan ol 1 GB povus kaŭzi kraŝon. Nun, post purigado, kaŝmemordosieroj kiuj estas ankoraŭ pli grandaj ol 1 GB estas forigitaj. Riparita: Paniko: dosiero mail-index-util.c: linio 10 (mail_index_uint32_to_offset): aserto malsukcesis: (offset < 0x40000000).
  • lib-lua: La HTTP-kliento ne povis solvi DNS-nomojn en poŝtaj procezoj ĉar ĝi atendis, ke la "dns-client" ingo estu en la nuna dosierujo.
  • lib-oauth2: Dovecot sendis client_id kaj client_secret kiel POST-parametrojn al la introspekta servilo. Tamen, kun Basic auth ilia uzo estas laŭvola.
  • lib-oauth2: Valumado de JWT "aud" ne estis farita se "aud" ne estis en la ĵetono sed estis agordita en Dovecot.
  • lib-oauth2: JWT-ŝlosiltipkontrolo estas tro strikta.
  • lib-oauth2: La JWT-ĵetono-spektantaro ne estis kontrolita kontraŭ client_id kiel postulas la specifo.
  • lib-ssl-iostream: Uzado de la ssl_require_crl=yes-opcio povus kaŭzi CRL-kontroladon malsukcesi por elirantaj SSL/TLS-konektoj, kvankam ĝi estis intencita nur influi CRL-kontroladon por klientaj SSL-atestiloj. v2.3.17 regreso.
  • lib-sql: MySQL-ŝoforo likis memoron kiam konekto malsukcesis.
  • lib-storage: Diversaj korektoj por malalta diskospaco.
  • majstro: Agordo idle_kill servo ne funkciis ĝuste sur okupataj serviloj. Estis tre neverŝajne ke iu procezo estis neaktiva sufiĉe longe por esti mortigita. Krome, kun granda nombro da procezoj (ekzemple, imap), la idle_kill pretigkodo uzis sufiĉe multe da CPU en la ĉefa procezo. Nun ĉiu idle_kill tempintervalo monitoros la plej malgrandan nombron da neaktivaj procezoj kaj poste mortigos tiun nombron.
  • mdbox: Kontrolado de provizoraj dosieroj estis farita por ĉiam malplenaj dosierujoj.
  • mdbox: Kiam oni skribis retpoŝtojn, la alvoko fdatasync() estis efektivigita en la malĝusta gepatra dosierujo. Ankaŭ, kiam ĝi kraŝis, ĝi kraŝis anstataŭ skribi eraron al la protokolo.
  • notify_status: La kromaĵo kraŝas kiam uzanta inicialigo malsukcesas. - pop3: Sendi komandon kun ':' rezultigis "assert-krash". Regreso en eldono 2.3.18.
  • statistiko: Korektis panikon, kiu okazis alirante neekzistantan evento-eksportilon kiam dinamike aldonis novan metrikon per la komando "doveadm stats add". Nun la ĝusta eraro estas donita.
  • statistiko: Se procezo eksportis multajn eventojn kaj poste eliris, iuj el la plej novaj eventoj eble estis perditaj.
  • statistiko: Malĝustaj Prometheus-etikednomoj estis kreitaj kun certaj histogramaj group_by-agordoj. Prometeo malaprobis ĉi tiujn etikedojn.
  • bonvena: La kromaĵo malsukcesis en iuj situacioj, kie enirkesto estis kreita sed ne malfermita, ekzemple se GETMETADATO estis uzata antaŭ malfermi la ENKESTO.

fonto: opennet.ru

Aldoni komenton