Deutsch   English   Français   Italiano  
<te5f7o$4bm$1@shakotay.alphanet.ch>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!2.eu.feeder.erje.net!feeder.erje.net!news.uzoreto.com!news.alphanet.ch!alphanet.ch!.POSTED!not-for-mail
From: Marc SCHAEFER <schaefer@alphanet.ch>
Newsgroups: fr.comp.usenet.serveurs
Subject: =?ISO-8859-1?Q?Acc=E8s?= aux headers complets depuis cleanfeed INN2
 (was: Re: refuser les posts d'un utilisateur =?ISO-8859-1?Q?=28=E0?= sa
 demande))
Date: Wed, 24 Aug 2022 15:14:00 -0000 (UTC)
Organization: Posted through news.alphanet.ch
Message-ID: <te5f7o$4bm$1@shakotay.alphanet.ch>
References: <te03sg$l3t$1@ns507557.dodin.fr.nf>   <te05mr$agk$1@shakotay.alphanet.ch> <te08jc$h0e$2@shakotay.alphanet.ch> <te31bp$97a$1@ns507557.dodin.fr.nf> <te4fh0$tbs$2@shakotay.alphanet.ch> <te4jc1$jhs$1@ns507557.dodin.fr.nf> <te4tuc$rpi$1@shakotay.alphanet.ch> <te50qb$n38$1@ns507557.dodin.fr.nf> <te51ms$c2g$2@shakotay.alphanet.ch> <te52f8$nek$1@ns507557.dodin.fr.nf> <te532t$j17$1@shakotay.alphanet.ch> <te53in$kos$1@shakotay.alphanet.ch> <te5bca$phn$1@ns507557.dodin.fr.nf>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 24 Aug 2022 15:14:00 -0000 (UTC)
Injection-Info: shakotay.alphanet.ch; posting-account="schaefer";
	logging-data="4470"; mail-complaints-to="usenet@alphanet.ch"; posting-host="634ce6c9682d817d72f6177875e2bb4f.nnrp.alphanet.ch"
User-Agent: tin/2.4.3-20181224 ("Glen Mhor") (UNIX) (Linux/4.19.0-21-amd64 (x86_64))
Cancel-Lock: sha256:obB3UFgsO20/mN0HY17K0xdT89JUVcL3ZRRA82O0OCo= sha256:48keWtguQ+cobWNgq2Vg8PfaPAf2+srSC+itzxvVJ0k=
Bytes: 2632
Lines: 32

jdd <jdd@dodin.org> wrote:
> INN ferait complètement l'impasse sur les headers définis par 
> l'utilisateur? (juste bons pour filtrer avec le client)?

Il semble que tous les entêtes ne sont pas dans $hdr, un work-around serait:

   my $headers = INN::head($hdr{'Message-ID'};) || return "missing article with Message-ID " . $hdr{'Message-ID'};

   my %headers;
   my $previous;
   foreach my $line (split(/\s*\n/, $headers)) {
      if ($line =~ m/^([[:alnum:]-]+):\s+(.*)/) {
         # assuming low/upcase normalisation by INN
         $headers{$1} = $2;
         $previous = $1;
      }
      elsif ($line =~ m/^\s+(.*)/) {
         if (defined($previous)) {
            $headers{$previous} .= " " . $1;
         }
         else {
            INN::syslog('notice', 'garbled line: ' . $line);
         }
      }
   }

(c'est mon code de vérification de cancel-lock dans cleanfeed)

Ensuite, tu peux utiliser $headers{'X-No-Dodin'}.

Mais c'est assez inefficace!  Peut-être que Julien EliÉ a une autre
suggestion?