<?xml version="1.0" encoding="utf-8" ?>

<rss version="2.0" 
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:admin="http://webns.net/mvcb/"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
   xmlns:wfw="http://wellformedweb.org/CommentAPI/"
   xmlns:content="http://purl.org/rss/1.0/modules/content/"
   >
<channel>
    
    <title>Netz - Rettung - Recht (Artikel mit Tag Usenet)</title>
    <link>https://netz-rettung-recht.de/</link>
    <description>Aus dem Leben eines Szlauszafs</description>
    <dc:language>de</dc:language>
    <generator>Serendipity 2.5.0 - http://www.s9y.org/</generator>
    <pubDate>Wed, 04 May 2022 09:20:56 GMT</pubDate>

    <image>
    <url>https://netz-rettung-recht.de/templates/2k11/img/s9y_banner_small.png</url>
    <title>RSS: Netz - Rettung - Recht - Aus dem Leben eines Szlauszafs</title>
    <link>https://netz-rettung-recht.de/</link>
    <width>100</width>
    <height>21</height>
</image>

<item>
    <title>Base64 ist schlecht zu lesen</title>
    <link>https://netz-rettung-recht.de/archives/2410-Base64-ist-schlecht-zu-lesen.html</link>
            <category>Bits'n'Bytes</category>
    
    <comments>https://netz-rettung-recht.de/archives/2410-Base64-ist-schlecht-zu-lesen.html#comments</comments>
    <wfw:comment>https://netz-rettung-recht.de/wfwcomment.php?cid=2410</wfw:comment>

    <slash:comments>3</slash:comments>
    <wfw:commentRss>https://netz-rettung-recht.de/rss.php?version=2.0&amp;type=comments&amp;cid=2410</wfw:commentRss>
    

    <author>nospam@example.com (Thomas Hochstein)</author>
    <content:encoded>
    &lt;p&gt;Bereits im vergangenen Juli hatte ich berichtet, dass ich die Moderation der Newsgroup &lt;em&gt;de.alt.netdigest&lt;/em&gt; übernommen hatte, und auch ein wenig den von mir verwendeten &lt;a href=&quot;https://netz-rettung-recht.de/archives/2315-de.alt.netdigest-Hinter-den-Kulissen.html&quot; title=&quot;&quot;&gt;Workflow&lt;/a&gt; vorgestellt.&lt;/p&gt;

&lt;p&gt;Das Konversions-Script, das aus einer Einreichung per E-Mail ein Posting für die Newsgroup macht, konvertiert auch den Inhalt der Mail (des Postings) nach UTF-8 und entfernt eine ggf. vorhandene &lt;code&gt;quoted-printable&lt;/code&gt;-Kodierung. Beim Thema &amp;#8220;Konvertierung&amp;#8221; musste ich schon im November letzten Jahres einmal ansetzen, um im Subject:-Header UTF-8-Zeichen &amp;#8220;oberhalb&amp;#8221; von &lt;code&gt;0xff&lt;/code&gt; korrekt zu kodieren; Anfang diesen Jahres stand ich dann aber zum ersten Mal vor einer E-Mail, deren Body - also der eigentliche Inhalt - als &lt;a href=&quot;https://de.wikipedia.org/wiki/Base64&quot; title=&quot;&quot;&gt;Base64&lt;/a&gt; kodiert war. Eigentlich vorgesehen zur Kodierung binärer Inhalte ist das eine durchaus zulässige Kodierung für reinen Text - nur etwas schwer lesbar. Und da das vom Konversions-Script generierte Posting mit&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;gepostet wird, war das etwas blöd.&lt;/p&gt;

&lt;p&gt;Glücklicherweise war die Lösung hinreichend einfach: so, wie man &lt;code&gt;quoted-printable&lt;/code&gt; nach &lt;code&gt;8bit&lt;/code&gt; umkodiert, kann man das auch mit &lt;code&gt;base64&lt;/code&gt; machen. Es braucht nur &lt;code&gt;MIME::Base64&lt;/code&gt; zusätzlich zu &lt;code&gt;MIME::QuotedPrint&lt;/code&gt;, und zum bedarfsweisen Aufruf von &lt;code&gt;decode_qp()&lt;/code&gt; im Fall der Fälle einen Aufruf von &lt;code&gt;decode_base64()&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Das war einfach, und nunmehr bin ich auch auf solche seltsamen Formate gerichtet.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;[Nachträglich veröffentlicht im April 2022.]&lt;/em&gt;&lt;/p&gt;
 
    </content:encoded>

    <pubDate>Tue, 05 Apr 2022 04:45:00 +0000</pubDate>
    <guid isPermaLink="false">https://netz-rettung-recht.de/archives/2410-guid.html</guid>
    <category>perl</category>
<category>usenet</category>

</item>
<item>
    <title>FLOSS'n'net - Aktivitäten im Jahr 2021 (und 2020)</title>
    <link>https://netz-rettung-recht.de/archives/2374-FLOSSnnet-Aktivitaeten-im-Jahr-2021-und-2020.html</link>
            <category>Bits'n'Bytes</category>
    
    <comments>https://netz-rettung-recht.de/archives/2374-FLOSSnnet-Aktivitaeten-im-Jahr-2021-und-2020.html#comments</comments>
    <wfw:comment>https://netz-rettung-recht.de/wfwcomment.php?cid=2374</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>https://netz-rettung-recht.de/rss.php?version=2.0&amp;type=comments&amp;cid=2374</wfw:commentRss>
    

    <author>nospam@example.com (Thomas Hochstein)</author>
    <content:encoded>
    &lt;p&gt;Meine Reihe &lt;em&gt;FLOSS&amp;#8217;n&amp;#8217;net&lt;/em&gt; ist in den letzten fast zwei Jahren auch mehr oder weniger der Pandemie zum Opfer gefallen; der letzte der üblicherweise jedes Quartal veröffentlichen Beiträge datiert vom April 2020 und gehört mit zu den letzten vor der &amp;#8220;Aufholjagd&amp;#8221; noch veröffentlichten (bzw. verfassten) Beiträgen. Entweder als Schlusspunkt oder als Neubeginn - je nachdem, wie 2022 werden wird &amp;#8230; - möchte ich daher einen kurzen Rückblick über das vergangene Jahr (und auch das Jahr 2020) geben.&lt;/p&gt;

&lt;p&gt;2020 endeten meine Aktivitäten - vor allem rund um &lt;em&gt;Serendipity&lt;/em&gt; - mehr oder weniger im April. 2021 habe ich nichts an &lt;em&gt;Serendipity&lt;/em&gt; getan, aber das eine oder andere sonst rund ums Netz. Im Einzelnen sieht das dann so aus:&lt;/p&gt;

&lt;h3 id=&quot;serendipity-s9y-&quot;&gt;Serendipity (&lt;em&gt;s9y&lt;/em&gt;)&lt;/h3&gt;

&lt;p&gt;Das Blogsystem &lt;a href=&quot;https://docs.s9y.org/&quot; title=&quot;Serendipity -  A reliable, secure and extensible PHP blog | Serendipity Blog System&quot;&gt;&lt;em&gt;Serendipity&lt;/em&gt;&lt;/a&gt; werkelt auch hinter diesem Blog.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Alle Änderungen hier stammen noch aus dem April 2020.&lt;/strong&gt;&lt;/p&gt;

&lt;h4 id=&quot;-s9y-kern&quot;&gt;&lt;em&gt;s9y&lt;/em&gt;-Kern&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;Es ist mir endlich gelungen, einen schwer zu reproduzierenden Fehler zu finden, der mich seit Jahren wahnsinnig gemacht hat. Ich nutze für meine Blogbeiträge recht intensiv &amp;#8220;erweiterte Eigenschaften von Artikeln&amp;#8221;, also &lt;em&gt;entryproperties&lt;/em&gt;, bspw. die HTML-Meta-Description und Social-Media-Bilder - und diese &amp;#8220;verschwanden&amp;#8221; regelmäßig in vorbereiteten Einträgen, was einerseits ärgerlich ist und andererseits oft unbemerkt bleibt. Das ging so weit, dass ich vorbereitete Einträge (Entwürfe) nicht mehr in &lt;em&gt;s9y&lt;/em&gt; selbst gespeichert habe, sondern extern, und sie dann erst zur Veröffentlichung dort hineinkopierte. Das wurde seit 2018 im &lt;a href=&quot;https://github.com/s9y/Serendipity/issues/577&quot; title=&quot;Meta-Description gets &amp;quot;lost&amp;quot; constantly · Issue #577 · s9y/Serendipity · GitHub&quot;&gt;Issue #577&lt;/a&gt; getrackt, aber ohne richtige Lösung (auch weil mir die Zeit zum Debugging fehlte). Am Ende hatten wir 2019 die richtige Ecke gefunden, aber das Problem nicht wirklich behoben. Das gelang aber jetzt (endlich!), und rückblickend war das eine gute Sache, hatte ich doch im Rahmen der &amp;#8220;Aufholjagd&amp;#8221; 2020/2021 oft mehrere Dutzend komplett postingfertige Beiträge &amp;#8220;gebunkert&amp;#8221;.&lt;br /&gt;
&lt;a href=&quot;https://github.com/s9y/Serendipity/issues/688&quot; title=&quot;Scheduled entries lose all entryproperty information on publish date · Issue #688 · s9y/Serendipity · GitHub&quot;&gt;Scheduled entries lose all entryproperty information on publish date.&lt;/a&gt; mit&lt;br /&gt;
&lt;a href=&quot;https://github.com/s9y/Serendipity/pull/695&quot; title=&quot;Fix accidental deletion of extended properties. by th-h · Pull Request #695 · s9y/Serendipity · GitHub&quot;&gt;Fix accidental deletion of extended properties.&lt;/a&gt; und&lt;br /&gt;
&lt;a href=&quot;https://github.com/s9y/Serendipity/issues/696&quot; title=&quot;[event_trackback] Draft entries should not be saved in delayed_trackbacks · Issue #696 · s9y/Serendipity · GitHub&quot;&gt;[event_trackback] Draft entries should not be saved in delayed_trackbacks&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Eine mit &lt;em&gt;s9y&lt;/em&gt; 2.3.3 releaste Änderung hatte ein Designproblem im Code aufgedeckt, das zu Fehlern im Plugin &lt;em&gt;History&lt;/em&gt; führte, einem der wenigen mit &lt;em&gt;s9y&lt;/em&gt; gebundleten Plugins.&lt;br /&gt;
&lt;a href=&quot;https://github.com/s9y/Serendipity/pull/694&quot; title=&quot;Fix SQL error in plugin_history. by th-h · Pull Request #694 · s9y/Serendipity · GitHub&quot;&gt;[plugin_history] Fix SQL error in plugin_history.&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h4 id=&quot;plugins&quot;&gt;Plugins&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Der Bugfix für die &lt;em&gt;entryproperties&lt;/em&gt; erforderte auch Änderungen in den entsprechenden Plugins:&lt;br /&gt;
&lt;a href=&quot;https://github.com/s9y/additional_plugins/pull/113&quot; title=&quot;Fix accidental deletion of extended properties. by th-h · Pull Request #113 · s9y/additional_plugins · GitHub&quot;&gt;[event_metadesc] [event_social] Fix accidental deletion of extended properties.&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://github.com/s9y/additional_plugins/commit/a6d340cdf2ae64da4eaaef364d08104c28aa3467&quot; title=&quot;Fix draft check. · s9y/additional_plugins@a6d340c · GitHub&quot;&gt;[event_trackback] Fix draft check.&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Das Plugin, das &lt;em&gt;Sitemaps&lt;/em&gt; erstellt, sollte in diese Maps keine Übersichtsseiten für getaggte Artikel aufnehmen, die gar nicht existieren (weil das entsprechende Tag zwar vergeben wurde, aber nur für Entwürfe).&lt;br /&gt;
&lt;a href=&quot;https://github.com/s9y/additional_plugins/commit/b946b3daa2ad18bc1ef61149469f1031f4b2fd9b&quot; title=&quot;[sitemap] Don&amp;#39;t add tag pages with draft tags. · s9y/additional_plugins@b946b3d · GitHub&quot;&gt;[event_sitemap] Don&amp;#8217;t add tag pages with draft tags.&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h4 id=&quot;releases&quot;&gt;Releases&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;Ich habe alle geeigneten Änderungen aus der aktuellen Entwicklungsversion in den 2.3er-Zweig übernommen und dann &lt;a href=&quot;https://github.com/s9y/Serendipity/releases/tag/2.3.5&quot; title=&quot;Release Serendipity 2.3.5 · s9y/Serendipity · GitHub&quot;&gt;&lt;em&gt;Serendipity&lt;/em&gt; 2.3.5&lt;/a&gt; releast sowie die Release-Notes, einen Blog- und einen Forenbeitrag verfasst.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&quot;usenet-und-co-&quot;&gt;Usenet und Co.&lt;/h3&gt;

&lt;p&gt;Zum Jahresende 2021 hin habe ich eine notwendige Änderung der &lt;strong&gt;Einrichtungsregeln&lt;/strong&gt; für Newsgroups im deutschsprachigen Usenet vorgeschlagen, die Abstimmung dazu durchgeführt und sie umgesetzt.&lt;/p&gt;

&lt;h4 id=&quot;faqs&quot;&gt;FAQs&lt;/h4&gt;

&lt;p&gt;Ich habe 2020 und 2021 die Pflege weiterer FAQs und vergleichbarer Text übernommen und dann auch regelmäßig eine ganze Reihe Änderungen eingearbeitet:&lt;/p&gt;

&lt;h5 id=&quot;2020&quot;&gt;2020&lt;/h5&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;https://netz-rettung-recht.de/archives/2225-UEbernahme-der-Newsreader-FAQ.html&quot; title=&quot;Übernahme der Newsreader-FAQ | Netz - Rettung - Recht&quot;&gt;Übernahme der Newsreader-FAQ&lt;/a&gt;&lt;br /&gt;
(verfügbar in einem &lt;a href=&quot;https://code.th-h.de/?p=faqs/newsreader-faq.git&quot; title=&quot;301 Moved Permanently&quot;&gt;Git-Repository&lt;/a&gt; auch mit allen alten Fassungen seit 2000)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;https://th-h.de/about/changelog/#changes-2020-09-02&quot; title=&quot;Aktuelle Änderungen | th-h.de&quot;&gt;Übernahme der Newsserverliste&lt;/a&gt;&lt;br /&gt;
(verfügbar in einem &lt;a href=&quot;https://code.th-h.de/?p=faqs/newsserverliste.git&quot; title=&quot;301 Moved Permanently&quot;&gt;Git-Repository&lt;/a&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h5 id=&quot;2021&quot;&gt;2021&lt;/h5&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://netz-rettung-recht.de/archives/2373-UEbernahme-der-Einrichtungsregeln.html&quot; title=&quot;&quot;&gt;Übernahme der Einrichtungsregeln&lt;/a&gt;&lt;br /&gt;
(verfügbar in einem &lt;a href=&quot;https://code.th-h.de/?p=faqs/einrichtung.git&quot; title=&quot;301 Moved Permanently&quot;&gt;Git-Repository&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h4 id=&quot;moderation-von-de-alt-netdigest-&quot;&gt;Moderation von &lt;em&gt;de.alt.netdigest&lt;/em&gt;&lt;/h4&gt;

&lt;p&gt;Zum 01.07.2021 habe ich die Moderation der Newsgroup &lt;em&gt;de.alt.netdigest&lt;/em&gt; übernommen.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;https://netz-rettung-recht.de/archives/2314-Moderation-von-de.alt.netdigest.html&quot; title=&quot;&quot;&gt;Moderation von de.alt.netdigest&lt;/a&gt; und &lt;a href=&quot;https://netz-rettung-recht.de/archives/2315-de.alt.netdigest-Hinter-den-Kulissen.html&quot; title=&quot;&quot;&gt;de.alt.netdigest: Hinter den Kulissen&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;https://netz-rettung-recht.de/archives/2316-Webseiten-fuer-de.alt.netdigest.html&quot; title=&quot;Webseiten für de.alt.netdigest | Netz - Rettung - Recht&quot;&gt;Webseiten für de.alt.netdigest&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h4 id=&quot;sonstiges&quot;&gt;Sonstiges&lt;/h4&gt;

&lt;p&gt;Seit April 2021 bin ich einer der &lt;a href=&quot;https://netz-rettung-recht.de/archives/2308-Machs-Dir-doch-selbst!.html&quot; title=&quot;&quot;&gt;Newsmaster von &lt;em&gt;bawue.net&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;h3 id=&quot;relaunch-von-webseiten&quot;&gt;Relaunch von Webseiten&lt;/h3&gt;

&lt;p&gt;Nicht nur für die Newsgroup &lt;em&gt;de.alt.netdigest&lt;/em&gt; habe ich Webseiten erstellt, sondern auch die Webseiten (und die damit verbundene Hintergrunddtechnik) meines Newsservers und von &lt;em&gt;szaf.org&lt;/em&gt; komplett überarbeitet und erneuert.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;https://netz-rettung-recht.de/archives/2305-Relaunch-der-Webseiten-von-news.szaf.org.html&quot; title=&quot;&quot;&gt;Relaunch der Webseiten von &lt;em&gt;news.szaf.org&lt;/em&gt;&lt;/a&gt; und &lt;a href=&quot;https://netz-rettung-recht.de/archives/2306-news.szaf.org-Relaunch-abgeschlossen.html&quot; title=&quot;&quot;&gt;&lt;em&gt;news.szaf.org&lt;/em&gt;: Relaunch abgeschlossen&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;https://netz-rettung-recht.de/archives/2307-Relaunch-der-Webseiten-von-szaf.org.html&quot; title=&quot;&quot;&gt;Relaunch der Webseiten von &lt;em&gt;szaf.org&lt;/em&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Vorherige Aktivitäten-Übersicht: &lt;a href=&quot;https://netz-rettung-recht.de/archives/2235-FLOSSnnet-Aktivitaeten-im-1.-Quartal-2020.html&quot; title=&quot;&quot;&gt;I/2020&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Wir werden sehen, ob und wie es 2022 weitergeht &amp;#8230;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Titelbild © momius - stock.adobe.com&lt;/em&gt;&lt;/p&gt;
&lt;img src=&quot;https://ssl-vg03.met.vgwort.de/na/b1e76201e1524e5cbe6a718ff9b7afcc&quot; width=&quot;1&quot; height=&quot;1&quot; alt=&quot;&quot;&gt; 
    </content:encoded>

    <pubDate>Thu, 30 Dec 2021 06:20:00 +0000</pubDate>
    <guid isPermaLink="false">https://netz-rettung-recht.de/archives/2374-guid.html</guid>
    <category>flossnet</category>
<category>s9y</category>
<category>usenet</category>
<category>webdesign</category>

</item>
<item>
    <title>Übernahme der &quot;Einrichtungsregeln&quot;</title>
    <link>https://netz-rettung-recht.de/archives/2373-UEbernahme-der-Einrichtungsregeln.html</link>
            <category>Netzleben</category>
            <category>Releases</category>
    
    <comments>https://netz-rettung-recht.de/archives/2373-UEbernahme-der-Einrichtungsregeln.html#comments</comments>
    <wfw:comment>https://netz-rettung-recht.de/wfwcomment.php?cid=2373</wfw:comment>

    <slash:comments>2</slash:comments>
    <wfw:commentRss>https://netz-rettung-recht.de/rss.php?version=2.0&amp;type=comments&amp;cid=2373</wfw:commentRss>
    

    <author>nospam@example.com (Thomas Hochstein)</author>
    <content:encoded>
    &lt;p&gt;Vor &lt;a href=&quot;https://netz-rettung-recht.de/archives/2225-UEbernahme-der-Newsreader-FAQ.html&quot; title=&quot;&quot;&gt;anderthalb Jahren&lt;/a&gt; berichtete ich das letzte Mal hier im Blog darüber, dass ich wieder die Betreuung einer ins Usenet geposteten FAQ übernommen habe; im September war das noch einmal der Fall, wurde aber nur im &lt;em&gt;Changelog&lt;/em&gt; meiner Webseiten &lt;a href=&quot;https://th-h.de/about/changelog/#changes-2020-09-02&quot; title=&quot;Aktuelle Änderungen | th-h.de&quot;&gt;dokumentiert&lt;/a&gt;. Seit mehr als einem Jahrzehnt ist das &lt;a href=&quot;https://netz-rettung-recht.de/archives/2055-FAQ-Updates.html&quot; title=&quot;&quot;&gt;ein&lt;/a&gt; &lt;a href=&quot;https://netz-rettung-recht.de/archives/1771-FAQ-Wichtige-Begriffe-in-de.admin.news..html&quot; title=&quot;&quot;&gt;kontinuierlich&lt;/a&gt; &lt;a href=&quot;https://netz-rettung-recht.de/archives/1711-FAQ-Usenet-aktiv-mitgestalten.html&quot; title=&quot;&quot;&gt;wiederkehrendes&lt;/a&gt; &lt;a href=&quot;https://netz-rettung-recht.de/archives/1687-dana-Manual-2.1.0.html&quot; title=&quot;&quot;&gt;Thema&lt;/a&gt;: immer wieder schlage ich Änderungen oder Ergänzungen für eine FAQ oder einen anderen im Usenet geposteten Text vor, und (fast) jedes Mal führt das zu der Feststellung, dass der Betreuer der FAQ entweder verschwunden (nicht mehr erreichbar) ist oder mitteilt, er sei seit Jahren nicht mehr im Usenet präsent und habe ggf. gar keinen Netzzugang mehr, so dass ich dann stattdessen die Betreuung des Textes übernehme. Dazu kommt noch die eine oder andere Bitte des bisherigen Betreuers, zu übernehmen, oder ein Todesfall &amp;#8230; Jedenfalls zeigt eine kurze Strichliste, dass ich mindestens zwanzig regelmäßig gepostete Texte betreue (naja, manche werden gar nicht mehr gepostet), von denen aber nur zwei aus meiner Feder stammen. Alle anderen habe ich übernommen (und in einigen Fällen über die Jahre so sehr verändert, dass sie sich mittlerweile fast wie meine eigenen Texte anfühlen).&lt;/p&gt;

&lt;p&gt;Begonnen hatte das 2010 mit dem sog. &amp;#8220;&lt;a href=&quot;https://th-h.de/archives/faqs/dana-manual.txt&quot; title=&quot;&quot;&gt;dana-manual&lt;/a&gt;&amp;#8221;, dessen Maintainer entschwunden war und dessen Betreuung ich zusammen mit Michael Ottenbruch übernommen habe. Danach kam der große Text zu den Möglichkeiten der &lt;a href=&quot;https://th-h.de/archives/faqs/mitgestalten.txt&quot; title=&quot;&quot;&gt;Mitgestaltung des Usenets&lt;/a&gt;, und danach ging es immer weiter.&lt;/p&gt;

&lt;p&gt;2010 war wohl auch das Jahr, in dem mir bewusst wurde, dass die (Hoch-)Zeit des Usenets mehr oder weniger vorbei ist. Natürlich waren schon vorher über die Jahre immer mehr Regulars und gewohnte Namen verschwunden, ohne dass neue &amp;#8220;Gesichter&amp;#8221; dazukamen; natürlich wurde es in vielen Gruppen stiller, und es gab die üblichen Diskussionen darüber. 2010 hatte ich dann aber festgestellt, dass &amp;#8220;da draußen&amp;#8221; nicht - wie bisher - immer neue Newsgroups und Welten warten, die man nur entdecken muss, wenn man denn die Zeit dafür findet, sondern dass diese Welten mittlerweile vergangen sind und die Infrastruktur allerorts zu bröckeln beginnt. Diese Erkenntnis begann, als ich zum Jahreswechsel 2009/2010 einmal systematisch die &lt;a href=&quot;https://netz-rettung-recht.de/archives/1483-Deutschsprachige-regionale-Usenet-Hierarchien.html&quot; title=&quot;&quot;&gt;deutschsprachigen Regionalhierarchien&lt;/a&gt; zusammenstellen wollte. Das Projekt &lt;em&gt;DE-Regio&lt;/em&gt;, geplant als spannender Abstecher in neue Welten, führte stattdessen zu der Erkenntnis, dass da draußen &lt;a href=&quot;https://netz-rettung-recht.de/archives/1490-Sic-transit-gloria-mundi.html&quot; title=&quot;&quot;&gt;nichts mehr ist&lt;/a&gt;. Und das setzte sich dann fort: mit der Übernahme von FAQs, mit der Übernahme anderer Tätigkeiten (wie bspw. der Statistiken in - heute wieder - &lt;em&gt;de.admin.news.lists&lt;/em&gt; oder der Übernahme von Moderationstätigkeiten) oder auch einfach der Erkenntnis, der letzte oder einer der letzten Aktiven geblieben zu sein (bei den GVV, bei der Moderation von &lt;em&gt;de.newusers.questions&lt;/em&gt;, in der Moderation von &lt;em&gt;de.admin.news.announce&lt;/em&gt; usw.). Einige Zeit habe ich das noch als Chance gesehen: wenn ich nur mehr Zeit hätte, wenn man nur Ressourcen bündeln würde, wenn man sich nur einigen und mal etwas ganz neues versuchen würde &amp;#8230; Mit dem viel zu frühen Tod von Alexander Bartolich 2012 war mir dann aber klar, dass daraus wohl nichts mehr werden würde, weil damit eine (oder die ) treibende Kraft für Neuerungen im Usenet verschwunden war.&lt;/p&gt;

&lt;p&gt;Nun gut. Genug der Rückschau.&lt;/p&gt;

&lt;p&gt;Dieser Tage habe ich nun jedenfalls auch die Betreuung der &lt;a href=&quot;https://th-h.de/archives/faqs/einrichtung.txt&quot; title=&quot;&quot;&gt;Einrichtungsregeln&lt;/a&gt; (&amp;#8220;Regeln für die Einrichtung, Änderung und Entfernung von Usenet-Gruppen in de.&amp;#42;&amp;#8221;) übernommen; dabei handelt es sich nicht um eine FAQ im eigentlichen Sinne, sondern um einen quasi normativen Text. Außerdem habe ich bei dieser Gelegenheit alle vorherigen Fassungen der Regeln seit 02/1999 in mein &lt;a href=&quot;https://code.th-h.de/?p=faqs/einrichtung.git&quot; title=&quot;301 Moved Permanently&quot;&gt;Git-Repository&lt;/a&gt; aufgenommen, so dass sich zumindest für die vergangenen 23 Jahre alle Änderungen einfach per &lt;code&gt;diff&lt;/code&gt; nachvollziehen lassen.&lt;/p&gt;

&lt;p&gt;Hintergrund der Übernahme war - ähnlich wie 2010 bei der &lt;a href=&quot;https://netz-rettung-recht.de/archives/1687-dana-Manual-2.1.0.html&quot; title=&quot;&quot;&gt;Übernahme des &amp;#8220;dana-Manuals&amp;#8221;&lt;/a&gt;, und damit schließt sich sozusagen der Kreis - eine Änderung des Regeltextes: mit den Posting- und Teilnehmerzahlen ist über die letzten Jahre und Jahrzehnte auch die Anzahl der Interessenten an der Administration des deutschsprachigen Usenets gefallen. Es gab schon viele Jahre lang praktisch keine Änderungsvorschläge mehr, aber wenn es sie einmal gab, wurde die in den Regeln vorgesehene Mindestanzahl an JA-Stimmen (&amp;#8220;Mindestzustimmung&amp;#8221;) problematisch. Dieses Jahr war es dann soweit: zwei (von mir vorgeschlagene) völlig unstrittige Änderungen erreichten nicht nur mühelos die Zwei-Drittel-Mehrheit, sondern wurden mit 45:1 bzw. 43:2 Stimmen angenommen, verfehlten aber die Mindestzustimmung von 50 Stimmen. Dieser Wert lag ganz früher einmal bei 30 Stimmen, dann lange Jahre bei 60, schließlich (seit 2011, nach mehreren Anläufen zur Absenkung) bei 50; all das zu Zeiten, wo (bei der letzten Erhöhung 1998) im Schnitt fast 180 Stimmen abgegeben wurden und später (2011) immerhin noch rund 90. Dieser Schnitt ist dann kontinuierlich gefallen.&lt;/p&gt;

&lt;p&gt;Daher hatte ich vorgeschlagen, die Mindestzustimmung nunmehr deutlich abzusenken, mindestens auf 20 JA-Stimmen; andere Diskutanten schlugen sogar die Abschaffung der Mindestzustimmung vor. Am Ende gab es dann nicht nur überraschend viele Teilnehmer an dieser Abstimmung (nämlich mehr als 100!), sondern auch eine Absenkung der Mindestzustimmung auf 15 JA-Stimmen. Nachdem ich dieses Verfahren als Proponent in die Wege geleitet und als Votetaker die Abstimmung ausgezählt hatte, war es nun meine Aufgabe als Umsetzungsbeauftragter der Moderation von &lt;em&gt;de.admin.news.announce&lt;/em&gt;, das Ergebnis durch Änderung des Regeltextes zum Vollzug zu bringen. Zu diesem Zweck musste ich dann zunächst dessen Betreuung übernehmen &amp;#8230;&lt;/p&gt;

&lt;p&gt;Und das ist dann wieder ein Beispiel dafür, wie dünn die &amp;#8220;Personaldecke&amp;#8221; im Usenet geworden ist, wenn der Proponent nicht nur die Abstimmung selbst leitet (in den Anfangszeiten üblich, später aber lange Jahrzehnte eine Domäne der GVV, die jetzt noch zu zweit sind; einer davon bin ich), sondern auch umsetzt und dann am Ende zudem den geänderten Regeltext betreut &amp;#8230;&lt;/p&gt;
&lt;img src=&quot;https://ssl-vg03.met.vgwort.de/na/639004e112b64803acda06bc2fc5b95b&quot; width=&quot;1&quot; height=&quot;1&quot; alt=&quot;&quot;&gt; 
    </content:encoded>

    <pubDate>Mon, 13 Dec 2021 05:30:00 +0000</pubDate>
    <guid isPermaLink="false">https://netz-rettung-recht.de/archives/2373-guid.html</guid>
    <category>usenet</category>

</item>
<item>
    <title>Webseiten für de.alt.netdigest</title>
    <link>https://netz-rettung-recht.de/archives/2316-Webseiten-fuer-de.alt.netdigest.html</link>
            <category>Releases</category>
    
    <comments>https://netz-rettung-recht.de/archives/2316-Webseiten-fuer-de.alt.netdigest.html#comments</comments>
    <wfw:comment>https://netz-rettung-recht.de/wfwcomment.php?cid=2316</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>https://netz-rettung-recht.de/rss.php?version=2.0&amp;type=comments&amp;cid=2316</wfw:commentRss>
    

    <author>nospam@example.com (Thomas Hochstein)</author>
    <content:encoded>
    &lt;p&gt;Zwar ist das Usenet deutlich älter als das &lt;em&gt;World Wide Web&lt;/em&gt; und braucht es - grundsätzlich - auch nicht; dennoch finde ich es hilfreich, Informationen nicht nur im Usenet, sondern auch im Web bereitzustellen. Das Usenet hat seine Stärken in Austausch und Diskussion; für die Bereithaltung (aktueller) Informationen zum Abruf ist es nicht die erste Wahl. Natürlich gab es immer schon FAQs und Infopostings, die regelmäßig (jede Woche, jeden Monat) veröffentlicht werden, damit sie immer in der Gruppe zur Verfügung stehen; natürlich kann man in regelmäßigen Abständen einen Status oder Updates in einer Newsgroup veröffentlichen. Bequemer - solange eine Internetverbindung besteht - und jedenfalls eine sinnvolle Ergänzung ist es aber auch, diese Informationen zusätzlich (ggf. auch in erweiterter Form) online als Webseiten anzubieten.&lt;/p&gt;

&lt;p&gt;Daher gibt es jetzt auch eine &lt;a href=&quot;https://netdigest.de/&quot; title=&quot;de.alt.netdigest im Web&quot;&gt;Website für de.alt.netdigest&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;!-- s9ymdb:967 --&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;1080&quot; height=&quot;214&quot;  src=&quot;https://netz-rettung-recht.de/uploads/articles/entry-images/netdigest.png&quot; title=&quot;netdigest.png&quot; alt=&quot;&quot;&gt;
Im Gegensatz zu dem Relaunch der Webseiten um Ostern diesen Jahres herum ist das wieder eine mit dem Webseitengenerator &lt;em&gt;Nanoc&lt;/em&gt; erstellte Webpräsenz, diesmal allerdings - im Gegensatz zu meinen anderen &lt;em&gt;Nanoc&lt;/em&gt;-basierten Webseiten - auf Grundlage von &lt;em&gt;Bootstrap 5&lt;/em&gt; und daher mit &lt;em&gt;SASS&lt;/em&gt; statt &lt;em&gt;LESS&lt;/em&gt;. Zudem liegen die Seiten auf einem Server, auf dem bisher Ruby und &lt;em&gt;Nanoc&lt;/em&gt; noch nicht installiert waren; der Aufwand war also doch etwas größer, als ich gedacht hatte, zumal es eine ältere Version von &lt;em&gt;Nanoc&lt;/em&gt; sein musste, weil die Ruby-Version aus Debian &lt;em&gt;Stable&lt;/em&gt; nicht aktuell genug ist. Immerhin aber mal ein schöner Anlass, mich wieder einmal näher mit &lt;em&gt;Nanoc&lt;/em&gt; vertraut zu machen, eine passende &lt;code&gt;Rules&lt;/code&gt;-Datei zu erzeugen und kleine Helper zu schreiben.&lt;/p&gt;

&lt;p&gt;Die Webseiten enthalten (eine weitere) Web-Fassung der auch in der Gruppe geposteten FAQ, einen historischen Überblick über die Geschichte der Gruppe und auf der Startseite eine kurze Einführung einschließlich des Füllzustands der Warteschlange, der bei der täglichen Neuerzeugung der Webseiten ausgelesen wird. Mir gefallen die Inhalte und das - bewusst eher schlicht gehaltene - Design; für Ergänzungen und Kritik habe ich aber natürlich ein offenes Ohr.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;[Nachträglich veröffentlicht im Oktober 2021.]&lt;/em&gt;&lt;/p&gt;
&lt;img src=&quot;https://ssl-vg03.met.vgwort.de/na/e24c0cb24b924ae3926f6853dc191dc9&quot; width=&quot;1&quot; height=&quot;1&quot; alt=&quot;&quot;&gt; 
    </content:encoded>

    <pubDate>Thu, 08 Jul 2021 21:30:00 +0000</pubDate>
    <guid isPermaLink="false">https://netz-rettung-recht.de/archives/2316-guid.html</guid>
    <category>usenet</category>
<category>webdesign</category>

</item>
<item>
    <title>de.alt.netdigest: Hinter den Kulissen</title>
    <link>https://netz-rettung-recht.de/archives/2315-de.alt.netdigest-Hinter-den-Kulissen.html</link>
            <category>Bits'n'Bytes</category>
    
    <comments>https://netz-rettung-recht.de/archives/2315-de.alt.netdigest-Hinter-den-Kulissen.html#comments</comments>
    <wfw:comment>https://netz-rettung-recht.de/wfwcomment.php?cid=2315</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>https://netz-rettung-recht.de/rss.php?version=2.0&amp;type=comments&amp;cid=2315</wfw:commentRss>
    

    <author>nospam@example.com (Thomas Hochstein)</author>
    <content:encoded>
    &lt;p&gt;&lt;em&gt;de.alt.netdigest&lt;/em&gt; ist eine moderierte Newsgroup; das bedeutet, dass Postings nicht direkt in der Gruppe veröffentlicht werden, sondern per E-Mail an einen Moderator versandt werden, der dann - wenn nichts gegen eine Veröffentlichung spricht - aus dieser E-Mail wieder ein Posting macht und es veröffentlicht. Das geht natürlich im Grundsatz mit einem Mail- und Newsreader, wäre aber vergleichsweise aufwendig; meistens werden daher per Mail oder über ein Webinterface betriebene Moderationssysteme (oder &amp;#8220;Bots&amp;#8221;) verwendet.&lt;/p&gt;

&lt;p&gt;Für &lt;em&gt;de.alt.netdigest&lt;/em&gt; gibt es keine so komplexen Lösungen; im Prinzip müssen ja nur die per Mail eingereichten Beiträge ausgewählt, in ein bestimmtes Format gebracht und dann veröffentlicht werden. Dabei hilft eine Reihe von Scripts, die ich von meinem Vorgänger als Moderator übernommen und an meine Bedürfnisse angepasst habe - genau genommen habe ich auf der Basis der Scripts und aus Versatzstücken daraus meine eigene Lösung erstellt.&lt;/p&gt;

&lt;p&gt;Für erste Aufgabe, das Auswählen der per Mail eingereichten Postings für eine Veröffentlichung, lässt sich bequem in einem Mailclient lösen; ich verwende wie Holger, der bisherige Moderator von &lt;em&gt;de.alt.netdigest&lt;/em&gt;, zu diesem Zweck &lt;em&gt;Thunderbird&lt;/em&gt;. Holger hat die ausgewählten Postings dann in einen Unterfolder verschoben, die entsprechende Datei mit einem Script zur Konvertierung bearbeitet, dass die einzelnen Mails/Postings umformatiert und in eine neue Datei schreibt, aus der sie dann mit einem weiteren Script gepostet werden können. Die eindeutigen IDs der geposteten Einreichungen werden zur Vermeidung von Duplikaten gespeichert und die fertigen Mails archiviert und später gelöscht.&lt;/p&gt;

&lt;p&gt;Diesen Workflow habe ich im Prinzip beibehalten, aber mit einigen Abweichungen. Zum einen nutze ich keinen &lt;em&gt;Thunderbird&lt;/em&gt;-Folder, sondern ein Verzeichnis auf dem IMAP-Server; zum anderen (und das ist vermutlich der wesentliche Unterschied) veröffentliche ich die ausgewählten Postings nicht live, sondern schiebe sie in eine Warteschlange, aus der jeden Tag eine bestimmte Anzahl veröffentlicht wird, ganz ohne mein Zutun. Das führt zu einem gleichmäßigeren Nachschub, und vor allem vermeidet es, dass Veröffentlichungen in der Gruppe unmittelbar von meinem Zeitbudget abhängig sind. Ich kann Einreichungen &amp;#8220;schubweise&amp;#8221; bearbeiten, wenn ich einmal am Stück Zeit habe, und mit ihnen die Warteschlange befüllen, die dann auch mal einige Tage (während des Abbaus des von Holger übernommenen Vorrats: einige Wochen) ohne Nachschub auskommt.&lt;/p&gt;

&lt;h3 id=&quot;auswahl&quot;&gt;Auswahl&lt;/h3&gt;

&lt;p&gt;Zum Auswählen verschiebe ich mit &lt;em&gt;Thunderbird&lt;/em&gt; die Beiträge, die veröffentlichungswürdig sind, aus dem Posteingang der Submissionsadresse in einen IMAP-Folder namens &amp;#8220;auswahl&amp;#8221;. Spam und ungeeignete Beiträge oder ersichtliche Duplikate kann ich löschen oder anderweitig archivieren; auch könnte ich E-Mails direkt beantworten oder in einem anderen IMAP-Folder (auch in einem anderen IMAP-Konto) verschieben.&lt;/p&gt;

&lt;h3 id=&quot;konvertierung&quot;&gt;Konvertierung&lt;/h3&gt;

&lt;p&gt;Als Quelle für die Weiterverarbeitung dient mir nicht eine Datei, in der die einzelnen Mails (bspw. im &lt;em&gt;MBOX&lt;/em&gt;-Format) zusammengefasst sind, sondern unmittelbar der IMAP-Folder im &lt;a href=&quot;https://de.wikipedia.org/wiki/Maildir&quot; title=&quot;&quot;&gt;&lt;em&gt;Maildir&lt;/em&gt;&lt;/a&gt;-Format. Das Konvertierungsscript &lt;code&gt;convert.pl&lt;/code&gt; liest die einzelnen Mails ein und schreibt sie nach Konvertierung in ein Datenverzeichnis &lt;code&gt;data/auswahl/&lt;/code&gt;. Zuvor werden die in einzelnen, nach Jahren geordneten Dateien gespeicherten Message-IDs der bereits veröffentlichten Postings eingelesen und die IDs der neuen, zur Veröffentlichung vorgesehenen Postings mit dieser Liste abgeglichen. Wurde das Posting bereits veröffentlicht, oder enthält die Einreichung keine Message-ID, wird die entsprechende Datei nicht kopiert und eine Fehlermeldung ausgegeben; ansonsten wird die Message-ID auf &lt;code&gt;STDOUT&lt;/code&gt; ausgegeben. Die veröffentlichungsfähigen Beiträge im Datenverzeichnis können jetzt mit einem Texteditor eingesehen und ggf. nachbearbeitet werden.&lt;/p&gt;

&lt;p&gt;Die Dateien, die nicht ins Datenverzeichnis kopiert wurden, können im Falle von Duplikaten einfach im IMAP-Folder verbleiben; sie sollen ja nicht noch einmal veröffentlicht werden. Fehlt ihnen eine Message-ID oder bestehen andere Probleme, kann auch die Datei im IMAP-Folder entsprechend bearbeitet und bspw. die Message-ID herausgesucht und ergänzt werden. Ist das zuviel Aufwand, kann die Datei ebenfalls schlicht dort verbleiben; sie wird dann eben später nicht veröffentlicht.&lt;/p&gt;

&lt;p&gt;Wenn nach dem ersten Durchlauf des Konvertierungsscripts Änderungen am Inhalt des IMAP-Folders vorgenommen wurden, kann man es einfach noch einmal starten; es kopiert dann wieder alle veröffentlichungsfähigen Beiträge in das Datenverzeichnis, möglicherweise diesmal auch die nachbearbeiteten.&lt;/p&gt;

&lt;p&gt;Zur Bearbeitung gehört:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Das Verwerfen aller Mail-Header außer dem Absender (&amp;#8220;From:&amp;#8221; und ggf. &amp;#8220;Reply-To:&amp;#8221;), der den Einreicher wiedergibt.&lt;/li&gt;
&lt;li&gt;Das Erstellen eines Betreffs (&amp;#8220;Subject:&amp;#8221;) aus dem Betreff des eingereichten Postings und der in eckigen Klammern vorweggestellten Newsgroup, aus der die Einreichung stammt, samt korrekter Kodierung (&lt;em&gt;MIME encoded words&lt;/em&gt;).&lt;/li&gt;
&lt;li&gt;Das Konvertieren des Inhalts (Body) des eingereichten Postings nach UTF-8 ohne &lt;code&gt;quoted-printable&lt;/code&gt;-Kodierung.&lt;/li&gt;
&lt;li&gt;Das Entfernen von Leerzeilen am Ende des eingereichten Postings.&lt;/li&gt;
&lt;li&gt;Das Herausschreiben eines veröffentlichungsfähigen Postings, das so 1:1 eingespeist werden kann.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Das Konvertierungsscript kann auch statt aller nur eine bestimmte Mail aus dem IMAP-Folder lesen oder - statt die Mails aus dem IMAP-Folder zu lesen - die bereits ins Datenverzeichnis kopierten Beiträge neu einlesen und nochmal konvertieren; das macht zum Beispiel Sinn, wenn nach dem ersten Durchlauf noch Änderungen vorgenommen wurden (oder im Script nachgebessert werden musste &lt;img src=&quot;https://netz-rettung-recht.de/plugins/serendipity_event_emoticate/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; class=&quot;emoticon&quot; /&gt;). Außerdem kann die Prüfung auf Duplikate unterdrückt werden, und es kann auch nur die Message-IDs der veröffentlichungsfähigen Beiträge ausgeben, ohne sie zu (kopieren und zu) konvertieren.&lt;/p&gt;

&lt;p&gt;Sind die Beiträge im Datenverzeichnis veröffentlichungsreif, kann man sie in die Warteschlange - ein anderes Datenverzeichnis - verschieben. Sinnigerweise sollten dann die Message-IDs der nun zur Veröffentlichung bereitstehenden Beiträge in die Liste für den Duplikatcheck aufgenommen werden.&lt;/p&gt;

&lt;h3 id=&quot;ver-ffentlichung&quot;&gt;Veröffentlichung&lt;/h3&gt;

&lt;p&gt;Die Veröffentlichung ist vergleichsweise einfach - vor allem deshalb, weil ich dafür keinen eigenen Code geschrieben habe, sondern schlicht das Allzweckwerkzeug &lt;a href=&quot;ftp://ftp.tin.org/pub/news/clients/tin/tools/tinews.pl&quot; title=&quot;&quot;&gt;&lt;code&gt;tinews.pl&lt;/code&gt;&lt;/a&gt; verwende, das sich auch um das Anhängen der Signatur und die GPG-Headersignatur kümmert.&lt;/p&gt;

&lt;p&gt;Das Postingscript &lt;code&gt;post.pl&lt;/code&gt; kann daher auch nur zwei Dinge:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Eine zufällig ausgewählte Datei aus der Warteschlange (oder eine als Parameter übergebene bestimmte Datei) vermittels &lt;code&gt;tinews.pl&lt;/code&gt; posten.&lt;/li&gt;
&lt;li&gt;Optional vorher Datum und Message-ID neu setzen (denn die wurden ja ursprünglich bei der Konvertierung neu erzeugt, die zu diesem Zeitpunkt Tage, im Extremfall auch Wochen zurückliegen kann).&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&quot;workflow&quot;&gt;Workflow&lt;/h3&gt;

&lt;p&gt;Aus diesen Bausteinen entsteht folgender Workflow:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Auswählen der zur Veröffentlichung vorgesehenen Einreichungen im Posteingang und Verschieben in den Auswahl-IMAP-Ordner.&lt;/li&gt;
&lt;li&gt;Starten von &lt;code&gt;convert.pl&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Ggf. Nachbearbeiten fehlerhafter Einreichungen (im IMAP-Folder) und erneuter Konvertierungslauf, bis alle Beiträge ohne Fehlermeldung kopiert werden bzw. Fehlermeldungen nur noch Duplikate betreffen.&lt;/li&gt;
&lt;li&gt;Durchsicht aller Postings im Datenverzeichnis im Texteditor (&lt;em&gt;vim&lt;/em&gt; auf der Shell, alternativ auch &lt;em&gt;Sublime Edit&lt;/em&gt; oder ein anderes Tool via &lt;em&gt;SCP&lt;/em&gt;): Stimmen Umlaute und Sonderzeichen, passt der Zeilenumbruch, sieht alles richtig aus? Wurde der Betreff richtig erzeugt?&lt;/li&gt;
&lt;li&gt;Verschieben aller Beiträge in die Warteschlange, speichern der Message-IDs für den Duplikatcheck.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Für den letzten Schritt verwende ich ein simples Shellscript:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;#!/bin/bash
~/bin/convert.pl -rm &amp;gt;&amp;gt; ~/data/mid-2021.txt
mv ~/data/auswahl/* ~/data/fertig/
mv ~/mail/.INBOX.auswahl/cur/* ~/mail/.INBOX.fertig/cur/
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Der erste Befehl gibt alle Message-IDs der in den veröffentlichungsfähigen Beiträgen enthaltenen Postings aus, ohne sonst irgendeine Konvertierung vorzunehmen; diese werden an die Datei für das laufende Jahr angehängt. Die zweite Zeile verschiebt die Beiträge aus dem Auswahl-Datenverzeichnis in die Warteschlange. Die dritte Zeile kopiert die Mails aus dem IMAP-Folder &amp;#8220;auswahl&amp;#8221; in einen anderen für die erledigten Beiträge.&lt;/p&gt;

&lt;p&gt;Die eigentliche Veröffentlichung erfolgt dann mehrmals täglich über einen Cronjob, der das Postingscript aufruft; solange die Warteschlamge immer nachgefüllt wird, bedarf die eigentliche Veröffentlichung dann keiner Interaktion mehr. Ist die Warteschlange zu voll, können aber natürlich auch durch einen manuellen Aufruf des Postingscripts zusätzliche Beiträge veröffentlicht werden.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;[Nachträglich veröffentlicht im Oktober 2021.]&lt;/em&gt;&lt;/p&gt;
&lt;img src=&quot;https://ssl-vg03.met.vgwort.de/na/2631e9f9cd0f445f88397a2087e3ed9a&quot; width=&quot;1&quot; height=&quot;1&quot; alt=&quot;&quot;&gt; 
    </content:encoded>

    <pubDate>Tue, 06 Jul 2021 20:15:00 +0000</pubDate>
    <guid isPermaLink="false">https://netz-rettung-recht.de/archives/2315-guid.html</guid>
    <category>perl</category>
<category>usenet</category>

</item>
<item>
    <title>Moderation von de.alt.netdigest</title>
    <link>https://netz-rettung-recht.de/archives/2314-Moderation-von-de.alt.netdigest.html</link>
            <category>Netzleben</category>
    
    <comments>https://netz-rettung-recht.de/archives/2314-Moderation-von-de.alt.netdigest.html#comments</comments>
    <wfw:comment>https://netz-rettung-recht.de/wfwcomment.php?cid=2314</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>https://netz-rettung-recht.de/rss.php?version=2.0&amp;type=comments&amp;cid=2314</wfw:commentRss>
    

    <author>nospam@example.com (Thomas Hochstein)</author>
    <content:encoded>
    &lt;p&gt;&lt;em&gt;de.alt.netdigest&lt;/em&gt; ist eine Usenet-Newsgroup in der Hierarchie &lt;em&gt;de.&amp;#42;&lt;/em&gt;, in der vor allem lustige, manchmal aber auch bemerkenswerte Beiträge aus den deutschsprachigen Netzen (primär den Newsgroups des deutschsprachigen Usenets, grundsätzlich aber auch aus Mailinglisten, Webforen oder dem IRC) gesammelt und veröffentlicht werden, quasi ein &amp;#8220;Best of (Uset)net&amp;#8221; - oder in den Worten der Kurzbeschreibung: &lt;em&gt;Aktueller und klassischer Humor aus allen Netzen und IRC.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Die Newsgroup ist moderiert, d.h. Beiträge können dort nicht unmittelbar veröffentlicht werden, sondern müssen per Mail an die Moderationsadresse versandt werden (oder sie können auch in die Gruppe gepostet werden - daraus wird dann automatisch eine Mail an die Moderationsadresse erzeugt). Die Moderation trifft ggf. eine Auswahl unter den Einsendungen und sorgt ansonsten dafür, dass keine Dubletten vorkommen und die Veröffentlichungen ein einheitliches Format haben - die wesentlichen Kopfzeilen des eingereichten Postings und der (ggf. gekürzte oder kommentierte) Inhalt.
In den mehr als 25 Jahren ihres Bestehens hat die Newsgroup normalerweise wie ein Uhrwerk funktioniert, mal mit regelmäßigeren Einreichungen, mal weniger regelmäßig - aber letztes Jahr war zum ersten Mal eine längere Pause. Die anschließende Diskussion führte zu dem Ergebnis, dass der (verbliebene) Moderator sich nach mehr als einem Jahrzehnt gerne zur Ruhe setzen würde; ein richtiges Ergebnis folgte aber nicht. Im Januar 2021 versiegte die Quelle dann wiederum, und diesmal habe ich mich dann im Juni bereiterklärt, ab heute die Newsgroup zu moderieren.&lt;/p&gt;

&lt;p&gt;In den letzten zwei Wochen sind mehr als 110 Beiträge erschienen, womit ein Teil des &amp;#8220;Rückstaus&amp;#8221; abgebaut wurde; den restlichen Vorrat habe ich übernommen, bin also für die nächsten Tage und Wochen erst einmal mit Beiträgen versorgt.&lt;/p&gt;

&lt;p&gt;Als erste &amp;#8220;Amtshandlung&amp;#8221; habe ich die bis zum Jahre 2015 regelmäßig veröffentlichte FAQ der Gruppe, die ihren Sinn und Zweck und die Vorgehensweise für Einreichungen beschreibt, wieder zum Leben erweckt und auf &lt;a href=&quot;https://th-h.de/net/usenet/faqs/netdigest-faq/&quot; title=&quot;de.alt.netdigest - wie? | th-h.de&quot;&gt;meine Webseiten&lt;/a&gt; gestellt; sie wird ab jetzt auch wieder monatlich in der Newsgroup veröffentlicht.&lt;/p&gt;

&lt;p&gt;Ich hoffe, dass auch zukünftig weiter regelmäßig Einreichungen eintrudeln, damit die Gruppe auch in der kommenden Zeit eine abwechslungsreiche (und vor allem lustige!) Lektüre bleibt.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;[Nachträglich veröffentlicht im Oktober 2021.]&lt;/em&gt;&lt;/p&gt;
&lt;img src=&quot;https://ssl-vg03.met.vgwort.de/na/34e489bb51b346969c450d4e4632bfef&quot; width=&quot;1&quot; height=&quot;1&quot; alt=&quot;&quot;&gt; 
    </content:encoded>

    <pubDate>Thu, 01 Jul 2021 18:50:00 +0000</pubDate>
    <guid isPermaLink="false">https://netz-rettung-recht.de/archives/2314-guid.html</guid>
    <category>usenet</category>

</item>
<item>
    <title>&quot;Mach's Dir doch selbst!&quot;</title>
    <link>https://netz-rettung-recht.de/archives/2308-Machs-Dir-doch-selbst!.html</link>
            <category>Netzleben</category>
    
    <comments>https://netz-rettung-recht.de/archives/2308-Machs-Dir-doch-selbst!.html#comments</comments>
    <wfw:comment>https://netz-rettung-recht.de/wfwcomment.php?cid=2308</wfw:comment>

    <slash:comments>3</slash:comments>
    <wfw:commentRss>https://netz-rettung-recht.de/rss.php?version=2.0&amp;type=comments&amp;cid=2308</wfw:commentRss>
    

    <author>nospam@example.com (Thomas Hochstein)</author>
    <content:encoded>
    &lt;p&gt;Ich bin seit vielen, vielen Jahren Mitglied bei &lt;a href=&quot;https://bawue.net/&quot; title=&quot;BaWue-Net Homepage&quot;&gt;bawue.net&lt;/a&gt;, Baden-Württembergs nichtkommerziellem Internet-Provider, einer ehemaligen Regionaldomain des ehemaligen &lt;a href=&quot;https://de.wikipedia.org/wiki/Individual_Network&quot; title=&quot;&quot;&gt;Individual Network e.V.&lt;/a&gt; - also Nutzer, quasi &amp;#8220;Kunde&amp;#8221;, wie auch Vereinsmitglied, und all das primär, weil ich diese Vereine für gut und förderungswürdig halte. Ich glaube nicht, dass ich in all den Jahren einmal wirklich Dienste genutzt hätte &amp;#8230;&lt;/p&gt;

&lt;p&gt;Seit ebenfalls sehr vielen Jahren bin ich dort auch Mitglied im Admin-Team, allerdings mehr auf dem (elektronischen) Papier als faktisch, weil mir meine vielzähligen Hobbys und Aktivitäten meist keine Zeit lassen, mich dort stärker einzubringen, und wenn man in der Thematik nicht &amp;#8220;drin&amp;#8221; ist, dann sind auch Kleinigkeiten aufwendig.&lt;/p&gt;

&lt;p&gt;So weit, so gut - dies zur Vorgeschichte.
Ende Februar ging es auf Twitter ums Usenet und die immer weniger werdenden Server, und in diesem Zusammenhang auch um Peerings mit &lt;em&gt;news.bawue.net&lt;/em&gt;. Dieser Tage stolperte ich nochmals über den Tweet und nahm das zum Anlass, um ein Peering mit &lt;em&gt;news.szaf.org&lt;/em&gt; zu bitten: &lt;a href=&quot;https://netz-rettung-recht.de/archives/2305-Relaunch-der-Webseiten-von-news.szaf.org.html&quot; title=&quot;&quot;&gt;neue Webseiten&lt;/a&gt; verdienen doch sicherlich auch ein neues Peering. &lt;img src=&quot;https://netz-rettung-recht.de/plugins/serendipity_event_emoticate/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; class=&quot;emoticon&quot; /&gt;&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot;&gt;&lt;p lang=&quot;de&quot; dir=&quot;ltr&quot;&gt;Ich melde mich. &lt;img src=&quot;https://netz-rettung-recht.de/plugins/serendipity_event_emoticate/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; class=&quot;emoticon&quot; /&gt;&lt;/p&gt;&amp;mdash; Szlauszaf ⚫ (@Szlauszaf) &lt;a href=&quot;https://twitter.com/Szlauszaf/status/1377518957574389766&quot; title=&quot;&quot;&gt;April 1, 2021&lt;/a&gt;&lt;/blockquote&gt;

&lt;script async src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;Als Antwort bekam ich nur, ich könne mir den Feed ja selbst anlegen &amp;#8230; Admin-Team, wissen schon. Es stellte sich allerdings heraus, dass mir auf der entsprechenden Maschine die Rechte fehlten. Dennoch nahm die Sache ihren nun schon zu vermutenden Gang &amp;#8230;&lt;/p&gt;

&lt;p&gt;Einen Tag später hatte ich mir nicht nur meinen Feed eingerichtet, sondern auch die Config mal durchgeschaut, einen Stapel tote Peers entsorgt und das Backlog weggeräumt, einige andere Peers angeschrieben &amp;#8230; und, naja, seitdem bin ich einer der Newsmaster von &lt;a href=&quot;https://news.bawue.net/&quot; title=&quot;&quot;&gt;&lt;em&gt;news.bawue.net&lt;/em&gt;&lt;/a&gt;. (So war das eigentlich nicht geplant, aber wenn man es selbst macht, geht es oft tatsächlich am besten.)&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Titelbild © magele-picture - stock.adobe.com&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;[Nachträglich veröffentlicht im September 2021]&lt;/em&gt;&lt;/p&gt;
&lt;img src=&quot;https://ssl-vg03.met.vgwort.de/na/11a2588a186e4f8ab64778bab9823185&quot; width=&quot;1&quot; height=&quot;1&quot; alt=&quot;&quot;&gt; 
    </content:encoded>

    <pubDate>Wed, 14 Apr 2021 18:25:00 +0000</pubDate>
    <guid isPermaLink="false">https://netz-rettung-recht.de/archives/2308-guid.html</guid>
    <category>usenet</category>

</item>
<item>
    <title>Relaunch der Webseiten von news.szaf.org</title>
    <link>https://netz-rettung-recht.de/archives/2305-Relaunch-der-Webseiten-von-news.szaf.org.html</link>
            <category>Releases</category>
    
    <comments>https://netz-rettung-recht.de/archives/2305-Relaunch-der-Webseiten-von-news.szaf.org.html#comments</comments>
    <wfw:comment>https://netz-rettung-recht.de/wfwcomment.php?cid=2305</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>https://netz-rettung-recht.de/rss.php?version=2.0&amp;type=comments&amp;cid=2305</wfw:commentRss>
    

    <author>nospam@example.com (Thomas Hochstein)</author>
    <content:encoded>
    &lt;p&gt;&lt;a href=&quot;https://netz-rettung-recht.de/archives/763-Szafisze-Neuigkeitenverbreitung.html&quot; title=&quot;&quot;&gt;Seit 2005&lt;/a&gt; betreibe ich einen &amp;#8220;richtigen&amp;#8221; Newsserver, also einen solchen, der die großen (und ein paar kleine) Hierarchien mit dem Rest der Welt peered und auch für andere Nutzer aus meinem Umkreis zur Verfügung steht: &lt;strong&gt;news.szaf.org&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Die zugehörigen Webseiten allerdings, die fast so alt waren, hätten schon lange ein Update vertragen können - weniger inhaltlich als vielmehr optisch und funktionell. Lange stand das auf meiner Todo-Liste, erwies sich dann aber doch als eher größeres Projekt; die Hintergründe habe ich in meinem &lt;a href=&quot;https://netz-rettung-recht.de/archives/2304-Naives-MVC.html&quot; title=&quot;&quot;&gt;vorherigen Blogbeitrag&lt;/a&gt; beschrieben. Mittlerweile ist das dort beschriebene Projekt veröffentlichungsreif. Ich präsentiere daher die neuen Webseiten für &lt;em&gt;news.szaf.org&lt;/em&gt;.&lt;/p&gt;

&lt;figure class=&quot;serendipity_imageComment_center&quot; style=&quot;width: 1417px&quot;&gt;&lt;div class=&quot;serendipity_imageComment_img&quot;&gt;&lt;!-- s9ymdb:953 --&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;1417&quot; height=&quot;917&quot;  src=&quot;https://netz-rettung-recht.de/uploads/articles/2021/nso-2021.png&quot; title=&quot;news.szaf.org 2021&quot; alt=&quot;&quot;&gt;&lt;/div&gt;&lt;figcaption class=&quot;serendipity_imageComment_txt&quot;&gt;Die aktuellen Webseiten von &lt;i&gt;news.szaf.org&lt;/i&gt;.&lt;/figcaption&gt;&lt;/figure&gt;

&lt;p&gt;Ich finde, es ist mir dabei gut gelungen, das bisherige Farbschema und generelle &amp;#8220;look and feel&amp;#8221; der Seite beizubehalten, aber in eine ansehnliche(re) Form zu transformieren - zum Vergleich die Fassung von 2006:&lt;/p&gt;

&lt;figure class=&quot;serendipity_imageComment_center&quot; style=&quot;width: 1281px&quot;&gt;&lt;div class=&quot;serendipity_imageComment_img&quot;&gt;&lt;!-- s9ymdb:952 --&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;1281&quot; height=&quot;717&quot;  src=&quot;https://netz-rettung-recht.de/uploads/articles/2021/nso-2006.png&quot; title=&quot;news.szaf.org 2006&quot; alt=&quot;&quot;&gt;&lt;/div&gt;&lt;figcaption class=&quot;serendipity_imageComment_txt&quot;&gt;&lt;i&gt;news.szaf.org&lt;/i&gt; früher (seit 2006).&lt;/figcaption&gt;&lt;/figure&gt;

&lt;p&gt;Und natürlich erkennt man die Design-Elemente von &lt;em&gt;Bootstrap&lt;/em&gt;; aber zumindest für mich sieht es mehr nach einem optischen Update der bisherigen Seiten als &amp;#8220;yet another Bootstrap site&amp;#8221; aus.&lt;/p&gt;

&lt;p&gt;Auch die Login-Seite ist auf der einen Seite absoluter Standard, wirkt aber andererseits (wie ich finde) trotzdem optisch hübsch:&lt;/p&gt;

&lt;figure class=&quot;serendipity_imageComment_center&quot; style=&quot;width: 876px&quot;&gt;&lt;div class=&quot;serendipity_imageComment_img&quot;&gt;&lt;!-- s9ymdb:954 --&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;876&quot; height=&quot;636&quot;  src=&quot;https://netz-rettung-recht.de/uploads/articles/2021/nso-2021-login.png&quot; title=&quot;news.szaf.org: Login&quot; alt=&quot;&quot;&gt;&lt;/div&gt;&lt;figcaption class=&quot;serendipity_imageComment_txt&quot;&gt;Loginseite.&lt;/figcaption&gt;&lt;/figure&gt;

&lt;p&gt;Mir jedenfalls gefällt sie sehr. &lt;img src=&quot;https://netz-rettung-recht.de/plugins/serendipity_event_emoticate/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; class=&quot;emoticon&quot; /&gt;&lt;/p&gt;

&lt;p&gt;So hat sich der investierte Aufwand bisher gelohnt.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;[Nachträglich veröffentlicht im August 2021.]&lt;/em&gt;&lt;/p&gt;
 
    </content:encoded>

    <pubDate>Tue, 30 Mar 2021 19:00:00 +0000</pubDate>
    <guid isPermaLink="false">https://netz-rettung-recht.de/archives/2305-guid.html</guid>
    <category>usenet</category>
<category>webdesign</category>

</item>
<item>
    <title>&quot;Sprechende&quot; Message-IDs erzeugen mit dem INN</title>
    <link>https://netz-rettung-recht.de/archives/2239-Sprechende-Message-IDs-erzeugen-mit-dem-INN.html</link>
            <category>Bits'n'Bytes</category>
    
    <comments>https://netz-rettung-recht.de/archives/2239-Sprechende-Message-IDs-erzeugen-mit-dem-INN.html#comments</comments>
    <wfw:comment>https://netz-rettung-recht.de/wfwcomment.php?cid=2239</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>https://netz-rettung-recht.de/rss.php?version=2.0&amp;type=comments&amp;cid=2239</wfw:commentRss>
    

    <author>nospam@example.com (Thomas Hochstein)</author>
    <content:encoded>
    &lt;p&gt;Ich fürchte, das hier wird ein eher technisch geprägter Special-Interest-Beitrag werden, aber sei es drum: es soll darum gehen, mit Hilfe des Newsservers &lt;a href=&quot;https://th-h.de/net/usenet/servers/inn/&quot; title=&quot;INN - InterNetNews | th-h.de&quot;&gt;&lt;em&gt;INN&lt;/em&gt;&lt;/a&gt; &lt;em&gt;Message-IDs&lt;/em&gt; für Usenet-Postings zu erzeugen, die neben ihrem primären Daseinszweck - ein Posting mit einer dauerhaft und global eindeutigen ID zu versehen - auch einen menschenlesbaren Inhalt haben.&lt;/p&gt;

&lt;h3 id=&quot;-message-ids-ihr-aufbau-und-ihre-funktion&quot;&gt;&lt;em&gt;Message-IDs&lt;/em&gt;, ihr Aufbau und ihre Funktion&lt;/h3&gt;

&lt;p&gt;Der &lt;em&gt;Message-ID&lt;/em&gt;-Header verleiht jedem Beitrag im Usenet (jedem Posting) und jeder E-Mail eine absolut eindeutige, nur einmal vergebene Kennung, mit der das Posting oder die E-Mail referenziert werden können.&lt;/p&gt;

&lt;h4 id=&quot;funktion&quot;&gt;Funktion&lt;/h4&gt;

&lt;p&gt;Die Notwendigkeit dafür ist einmal technischer Art; so können Postings und E-Mails bspw. in Logdateien eindeutig bezeichnet werden. Auch ist die &lt;em&gt;Message-ID&lt;/em&gt; für das Threading - also die Darstellung von Postings oder E-Mails in einem &amp;#8220;Diskussionsfaden&amp;#8221; erforderlich; denn dazu enthält jede E-Mail die &lt;em&gt;Message-ID&lt;/em&gt; ihres Vorgängers, also die Kennung der Nachricht, auf die sie die Antwort enthält. Bei Postings ist das ähnlich; nur werden dort die &lt;em&gt;Message-IDs&lt;/em&gt; aller (oder bei langen Threads zumindest etlicher) Vorgänger übermittelt. So können Newsreader und Mailprogramme Bezugsverkettungen aufbauen und E-Mails (oder Postings) im Zusammenhang darstellen, ohne sich dabei auf Zufälle wie einen identischen Betreff verlassen zu müssen.&lt;/p&gt;

&lt;p&gt;Im Usenet hat die &lt;em&gt;Message-ID&lt;/em&gt; noch eine weitere wichtige Bedeutung: Postings werden im Gegensatz zu E-Mails nicht nur an einen oder mehrere bestimmte Empfänger übermittelt, sondern im &amp;#8220;Floodfill&amp;#8221;-Verfahren an alle miteinander vernetzten Newsserver verteilt. Diese Newsserver sind aber regelmäßig nicht nur einfach, sondern vielfach miteinander vernetzt und erhalten daher jeden Beitrag mehr- oder vielfach auf verschiedenen Wegen. Um Übertragungskapazität zu sparen (und Duplikate zu vermeiden) lehnen sie daher die Annahme von Beiträgen, die sie schon kennen, ab und speichern diese auch nicht, falls sie doch übertragen werden. Daraus folgt, dass ein Posting, dass eine bereits einmal verwendete &lt;em&gt;Message-ID&lt;/em&gt; enthält, nicht verteilt wird; und schlimmer noch, dass eine Änderung der &lt;em&gt;Message-ID&lt;/em&gt; zur mehrfachen Verteilung und Speicherung von Postings, also zu unerwünschten Duplikaten führt. Deshalb sollte man an der &lt;em&gt;Message-ID&lt;/em&gt; von Postings, die nicht lokal erzeugt wurden, auch niemals herumfummeln und generell genau wissen, was man tut, wenn man die &lt;em&gt;Message-ID&lt;/em&gt; manipuliert.&lt;/p&gt;

&lt;p&gt;Unabhängig von diesen technischen Aufgaben ist die &lt;em&gt;Message-ID&lt;/em&gt; auch der geeignetste Weg, im Usenet auf einen bestimmten anderen Beitrag zu verweisen. &amp;#8220;Schau mal in das Posting von Hans Meier von gestern, 17.32 Uhr, da steht die Antwort auf Deine Frage&amp;#8221; ist so aufwendig - für Schreiber und Leser - wie unprofessionell. &amp;#8220;Schau Dir mal &lt;code&gt;&amp;lt;d648ee74-9def-e5ca-8c12-9a347fce0dc5@host.example&amp;gt;&lt;/code&gt; an, da steht alles drin&amp;#8221; ist hingegen schnell geschrieben (es genügt ein Kopieren der &lt;em&gt;Message-ID&lt;/em&gt;) und ebenso schnell aufrufbar, weil Newsreader in der Regel den Aufruf von Postings anhand der &lt;em&gt;Message-ID&lt;/em&gt; ermöglichen.&lt;/p&gt;

&lt;h4 id=&quot;aufbau-einer-messsage-id-&quot;&gt;Aufbau einer &lt;em&gt;Messsage-ID&lt;/em&gt;&lt;/h4&gt;

&lt;p&gt;Vom Aufbau her ähnelt eine &lt;em&gt;Message-ID&lt;/em&gt; sehr einer E-Mail-Adresse: sie hat einen linken und einen rechten Teil, die durch ein &lt;code&gt;@&lt;/code&gt;-Symbol miteinander verknüpft sind und wird von spitzen Klammern (&lt;code&gt;&amp;lt;&amp;gt;&lt;/code&gt;) eingerahmt. Weil das sehr dem Konzept einer lokalen Adresse und einer Domain ähnelt, wird die Anforderung, dass &lt;em&gt;Message-IDs&lt;/em&gt; global eindeutig sein müssen, am besten so umgesetzt, dass das die ID erzeugende System auf der rechten Seite seinen (weltweit eindeutigen) Hostnamen einsetzt und auf der linken Seite eine Zeichenfolge verwendet, die systemweit eindeutig ist, in der Regel also aus einem Timestamp, ggf. einer Prozess-ID oder einem Zähler besteht. Das Format wäre also &lt;code&gt;&amp;lt;unique@hostname&amp;gt;&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Das funktioniert prima, solange das System einen (eindeutigen) Hostnamen &lt;em&gt;hat&lt;/em&gt;; für den typischen (Windows-)Heimrechner ist das allerdings nicht der Fall. Dann kann man die Erzeugung der ID entweder dem Newsserver überlassen, der ja in der Regel im Netz erreichbar sein muss und daher über eine IP-Adresse und einen auch als &lt;em&gt;FQDN&lt;/em&gt; bezeichneten domainisierten Hostnamen (&lt;code&gt;news1.provider.example&lt;/code&gt;) verfügt. Alternativ kann man dem Newsreader einen Hostnamen (FQDN) vorgeben; das muss nicht zwingend der tatsächliche Hostname des Rechners sein, es genügt auch ein Name, der garantiert nicht anderweitig vergeben werden kann, wie ihn bspw. das Projekt &lt;a href=&quot;https://my-fqdn.de/&quot; title=&quot;Willkommen! | my-fqdn.de&quot;&gt;&lt;em&gt;My FQDN&lt;/em&gt;&lt;/a&gt; zur Verfügung stellt. Schließlich kann man, wenn alle Stricke reißen und man die &lt;em&gt;Message-ID&lt;/em&gt; unbedingt selbst generieren will, auf die Mailadresse des Autors abstellen, für die Adresse &lt;code&gt;localpart@domain&lt;/code&gt; dann etwa so: &lt;code&gt;&amp;lt;unique.localpart@domain&amp;gt;&lt;/code&gt;.&lt;/p&gt;

&lt;h5 id=&quot;beispiele-f-r-message-ids-&quot;&gt;Beispiele für &lt;em&gt;Message-IDs&lt;/em&gt;&lt;/h5&gt;

&lt;p&gt;In der Praxis sieht bspw. eine durch den Newsserver &lt;em&gt;INN&lt;/em&gt; erzeugte &lt;em&gt;Message-ID&lt;/em&gt; so aus:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;&amp;lt;r6d9hs$4cu$1@thangorodrim.ancalagon.de&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Auf der rechten Seite steht der Hostname des Newsservers (hier &lt;code&gt;thangorodrim.ancalagon.de&lt;/code&gt;), auf der linken Seite finden sich (nacheinander und getrennt durch &lt;code&gt;$&lt;/code&gt;) ein Timestamp (hier &lt;code&gt;r6d9hs&lt;/code&gt;), die Prozess-ID des Serverprozeses (hier &lt;code&gt;4cu&lt;/code&gt;) und - für den Fall, dass in derselben Sekunde vom selben Prozess mehrere Beiträge entgegengenommen werden - ein Zähler (hier &lt;code&gt;1&lt;/code&gt;). Timestamp und Prozess-ID werden dabei in einem Zahlensystem auf der Basis 32 kodiert; dezimal lautet der Timestamp also &lt;code&gt;912696892&lt;/code&gt; und die Prozess-ID &lt;code&gt;4510&lt;/code&gt;. Und tatsächlich: wie das Logfile des Newsservers zeigt, wurde der Beitrag von dem Prozess Nummer 4510 angenommen:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;thangorodrim nnrpd[4510]: thangorodrim.ancalagon.de (127.0.0.1) connect - port 119
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Beim Timestamp muss man nun noch wissen, dass der &lt;em&gt;INN&lt;/em&gt; vom tatsächlichen Unix-Timestamp (also der Anzahl der Sekunden seit der Epoche, d.h. seit 01.01.1970&amp;#160;00:00:00) wahllos 673416000 abzieht, um eine kürzere &lt;em&gt;Message-ID&lt;/em&gt; zu erhalten. Zählt man also zu dem Timestamp von 912696892 noch 673416000 hinzu, erhält man 1586112892 - und das ist  umgerechnet der 05.04.2020, 18:54:52 Uhr: passt!&lt;/p&gt;

&lt;p&gt;Der Newsreader &lt;em&gt;slrn&lt;/em&gt; arbeitet ähnlich:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;&amp;lt;slrn94p19c.ns.thomas@thangorodrim.ancalagon.de&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Die &lt;em&gt;Message-ID&lt;/em&gt; besteht aus dem Namen des Newsreaders (&lt;code&gt;slrn&lt;/code&gt;), einem verkürzten Zeitstempel im 32er-Zahlensystem (&lt;code&gt;94p19c&lt;/code&gt;), der Prozess-ID (&lt;code&gt;ns&lt;/code&gt;) und der Mailadresse des Nutzers (bzw. seinem Usernamen und dem Hostnamen).&lt;/p&gt;

&lt;h4 id=&quot;vorteile-einer-selbst-erzeugten-message-id-&quot;&gt;Vorteile einer selbst erzeugten &lt;em&gt;Message-ID&lt;/em&gt;&lt;/h4&gt;

&lt;p&gt;Am einfachsten wäre es natürlich, die Erzeugung von &lt;em&gt;Message-IDs&lt;/em&gt; dem Newsserver zu überlassen; andererseits hat die Erzeugung eigener &lt;em&gt;Message-IDs&lt;/em&gt; durchaus Vorteile. Manche Newsreader benötigen das schon deshalb, weil sie eigene Postings auch ablegen und speichern wollen. Ganz allgemein hat eine selbst erzeugte &lt;em&gt;Message-ID&lt;/em&gt; aber den Vorteil, dass man (nur) an ihr sehr einfach eigene Beiträge erkennen kann, auch dann, wenn man vielleicht wechselnde E-Mail-Adressen verwendet, und dass man nur so auch &lt;em&gt;Antworten&lt;/em&gt; auf eigene Beiträge erkennt (weil diese eine &lt;em&gt;Message-ID&lt;/em&gt; mit dem eigenen FQDN im &lt;em&gt;References&lt;/em&gt;-Header tragen). So kann ein geeigneter Newsreader bspw. Antworten auf eigene Postings hervorheben, oder man kann sich mit einem Tool wie &lt;a href=&quot;https://th-h.de/net/software/fupcheck/&quot; title=&quot;fupcheck | th-h.de&quot;&gt;&lt;em&gt;fupcheck&lt;/em&gt;&lt;/a&gt; per Mail über Antworten benachrichtigen lassen.&lt;/p&gt;

&lt;h3 id=&quot;-sprechende-message-ids-&quot;&gt;&amp;#8220;Sprechende&amp;#8221; &lt;em&gt;Message-IDs&lt;/em&gt;&lt;/h3&gt;

&lt;p&gt;Noch schöner finde ich es persönlich, wenn die &lt;em&gt;Message-ID&lt;/em&gt; meiner Postings nicht nur global eindeutig ist, sondern auch für den menschlichen Leser verwertbare Informationen enthält. So ist es ja theoretisch nett, dass ich aus der &lt;em&gt;Message-ID&lt;/em&gt; &lt;code&gt;&amp;lt;r6d9hs$4cu$1@thangorodrim.ancalagon.de&amp;gt;&lt;/code&gt; herauslesen kann, dass es sich um ein Posting vom Abend des 05.04.2020 handelt - aber natürlich wird kaum je ein Mensch &lt;code&gt;r6d9hs&lt;/code&gt; in eine Dezimalzahl umwandeln, 673416000 hinzuzählen und das Ergebnis dann von einem UNIX-Timestamp in ein Datum konvertieren. Viel praktischer wäre es doch, wenn man einer &lt;em&gt;Message-ID&lt;/em&gt; direkt ansehen könnte, von wann sie ist, und am besten vielleicht auch von &lt;em&gt;wo&lt;/em&gt;, d.h. aus welcher Newsgroup. Dann muss man sich nicht wundern, wenn mal wieder jemand erst nach Monaten oder Jahren auf einen alten Beitrag antwortet, und man kann auch an einer zitierten &lt;em&gt;Message-ID&lt;/em&gt; ungefähr ablesen, wo sie herkommt.&lt;/p&gt;

&lt;p&gt;Ich erzeuge daher seit vielen, vielen Jahren unter Hinzunahme meines &lt;a href=&quot;https://hamster-classic.de/&quot; title=&quot;start - Hamster Classic&quot;&gt;&lt;em&gt;Hamsters&lt;/em&gt;&lt;/a&gt; &amp;#8220;sprechende&amp;#8221; &lt;em&gt;Message-IDs&lt;/em&gt;, die aus den Initialen der (ersten) Newsgroup, in der der Beitrag erschienen ist, einem lesbaren Zeitstempel und einem Zähler bestehen. Der Beitrag mit der &lt;em&gt;Message-ID&lt;/em&gt;&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;&amp;lt;dcsn.1908202159.235@meneldor.ancalagon.de&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;ist mithin am 20.08.2019 um 21.59 Uhr von meinem Laptop &lt;code&gt;meneldor&lt;/code&gt; aus in der Newsgroup &lt;code&gt;d.c.s.n&lt;/code&gt; erschienen; letzteres kann man mit etwas Erfahrung als &lt;code&gt;de.comm.software.newsreader&lt;/code&gt; (oder auch &lt;code&gt;de.comm.software.newsserver&lt;/code&gt; - natürlich sind Initialen nicht eindeutig!) übersetzen. Außerdem handelte es sich um den 235. Beitrag im Jahr 2019; das ermöglicht mir zudem durch einen schlichten Blick in die Datei, in der der Zähler gespeichert wird, die Gesamtzahl meiner Beiträge im jeweiligen Jahr zu erfassen.&lt;/p&gt;

&lt;p&gt;Klar, das ist eine Spielerei, aber eine für mich hilfreiche - und liebgewonnene - Spielerei.&lt;/p&gt;

&lt;h4 id=&quot;-sprechende-message-ids-mit-dem-inn-erzeugen&quot;&gt;&amp;#8220;Sprechende&amp;#8221; &lt;em&gt;Message-IDs&lt;/em&gt; mit dem &lt;em&gt;INN&lt;/em&gt; erzeugen&lt;/h4&gt;

&lt;p&gt;Nun habe ich in letzter Zeit öfters mal von verschiedenen Rechnern aus mit verschiedenen Newsreadern (nicht nur zu Testzwecken) auf meinem &amp;#8220;hauseigenen&amp;#8221; &lt;em&gt;INN&lt;/em&gt; gepostet. Und da hätte ich dann gerne - auch ohne &lt;em&gt;Hamster&lt;/em&gt; - meine sprechenden &lt;em&gt;Message-IDs&lt;/em&gt;, die der &lt;em&gt;INN&lt;/em&gt; für mich setzen müsste.&lt;/p&gt;

&lt;p&gt;Der richtige Ansatzpunkt für solche Manipulationen ist der Filter &lt;code&gt;filter_nnrpd.pl&lt;/code&gt; (bei Debian in &lt;code&gt;/etc/news/filter/&lt;/code&gt;), der nur auf dem Server über den NNRP-Daemon (&lt;code&gt;nnrpd&lt;/code&gt;) gepostete Beiträge bearbeitet, nicht aber etwa ein- und durchgeleitete Beiträge wie der &lt;code&gt;filter_innd.pl&lt;/code&gt; - denn an &lt;em&gt;Message-IDs&lt;/em&gt; schon geposteter Beiträge herumzufummeln ist ein absolutes No-Go!&lt;/p&gt;

&lt;p&gt;Insbesondere wenn man den Server nicht alleine nutzt, möchte man die Veränderungen an der &lt;em&gt;Message-ID&lt;/em&gt; auf eigene Postings beschränken; das kann man zum Beispiel durch einen Filter auf den Domain-Part (also die rechte Seite der &lt;em&gt;Message-ID&lt;/em&gt;) lösen oder indem man nur Postings bearbeitet, die einen entsprechenden Zusatzheader (wie bspw. &lt;code&gt;X-Fix-MID: yes&lt;/code&gt;) gesetzt haben.&lt;/p&gt;

&lt;p&gt;Im &lt;code&gt;filter_nnrpd.pl&lt;/code&gt; gibt es die Funktion &lt;code&gt;filter_post&lt;/code&gt;; dort sind wir richtig. Am Anfang sollte man auf jeden Fall den Rückgabewert der Funktion auf einen leeren String setzen, denn ansonsten werden Postings mit einer Fehlermeldung abgewiesen. Außerdem muss man das Verändern von Headern freischalten:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;my $rval = &quot;&quot;; # assume we&#039;ll accept.
$modify_headers = 1;
# [...]
return $rval;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;So weit, so gut. An der mit &amp;#8220;[&amp;#8230;]&amp;#8221; markierten Stelle prüfen wir jetzt, ob das Posting modifiziert werden soll oder nicht; wenn ja, rufen wir eine - noch zu schreibende - Funktion dafür auf:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;# Fix Message-ID
if (exists($hdr{&#039;X-Fix-MID&#039;})) {
    # remove trigger header
    delete $hdr{&#039;X-Fix-MID&#039;};
    # fix MID
    $hdr{&#039;Message-ID&#039;} = fix_mid($hdr{&#039;Newsgroups&#039;}, $hdr{&#039;Message-ID&#039;});
}
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Ist die Headerzeile &lt;code&gt;X-Fix-MID&lt;/code&gt; auf irgendeinen Wert gesetzt, entfernen wir sie und setzen dann die &lt;em&gt;Message-ID&lt;/em&gt; auf den Rückgabewert der Funktion &lt;code&gt;fix_mid&lt;/code&gt;. Und die sieht wie folgt aus:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;#
# Message-ID
#
sub fix_mid($$) {
    my ($newsgroups, $mid) = @_;
    my ($fqdn, $element, $initial)= &#039;&#039;;
    # get FQDN
    if (defined($mid) &amp;amp;&amp;amp; $mid ne &#039;&#039;) {
       ($fqdn) = $mid =~ /&amp;lt;.+\@(.+)&amp;gt;$/;
    } else {
       $fqdn = $inn::fromhost;
    }
    # get timestamp
    my $datetime = strftime(&quot;%Y%m%d%H%M%S&quot;,localtime());
    # get initials of first newsgroup
    my($newsgroup,undef) = split /,/, $newsgroups;
    my @newsgroup = split /\./, $newsgroup;
    foreach $element (@newsgroup) {
       $initial .= substr($element,0,1);
    };
    # get, increment and save counter
    open CTR, &#039;+&amp;lt;/var/lib/news/mid-counter&#039;;
    flock(CTR, 2);
    my $counter = &amp;lt;CTR&amp;gt;;
    $counter++;
    seek(CTR,0,0);
    print CTR $counter;
    close CTR;
    # return Message-ID
    return sprintf(&#039;&amp;lt;%s.%s.%s@%s&amp;gt;&#039;, $initial, $datetime, $counter, $fqdn);
}
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Wir übernehmen also den Domain-Part der bestehenden &lt;em&gt;Message-ID&lt;/em&gt;; nur wenn es bisher keine &lt;em&gt;Message-ID&lt;/em&gt; gibt, nehmen wir den Hostnamen des Newsservers. Dann generieren wir den Zeitstempel, die Initialen der (ersten) Newsgroup und laden und schreiben den Zähler; letzteres ist natürlich mit Plattenzugriffen verbunden. Am Schluss werden die Einzelteile zu einer &lt;em&gt;Message-ID&lt;/em&gt; zusammengesetzt.&lt;/p&gt;

&lt;p&gt;Voila!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Nachtrag&lt;/strong&gt; vom 10.01.2021: Die meisten Newsreader nutzen natürlich mehrere parallele Threads zum Lesen und Posten. Das geht dann schief, wenn deshalb verschiedene &lt;code&gt;nnrpd&lt;/code&gt;-Prozesse gleichzeitig auf die Datei &lt;code&gt;/var/lib/news/mid-counter&lt;/code&gt; zugreifen. Daher bedarf es eines exklusiven Locks auf die Datei, schon beim Lesen, damit nicht mehrere Prozesse denselben Zahlenwert erhalten; und weil beim Schließen eines Dateihandles auch die Locks aufgegeben werden, muss die Datei zum Lesen und Schreiben geöffnet werden. Und wenn man das wiederum tut, muss man nach dem Lesen zurück an den Anfang der Datei springen, um den alten Inhalt mit der neuen Zahl zu überschreiben. Den Beispielcode oben habe ich entsprechend angepasst.&lt;/p&gt;

&lt;p&gt;(Und wenn man das testen will, sollte man bedenken, dass &lt;code&gt;filter_nnrpd.pl&lt;/code&gt; immer dann, aber auch nur dann neu geladen wird, wenn ein neuer &lt;code&gt;nnrpd&lt;/code&gt;-Prozess startet - dementsprechend also nicht, wenn der Newsreader die Verbindung erst einmal offen hält und weitere Testposts dann über die noch bestehende Verbindung abgesetzt werden.)&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Titelbild © Weissblick - stock.adobe.com&lt;/em&gt;&lt;/p&gt;
&lt;img src=&quot;https://ssl-vg03.met.vgwort.de/na/e6775c991a684726be21872afd324b03&quot; width=&quot;1&quot; height=&quot;1&quot; alt=&quot;&quot;&gt; 
    </content:encoded>

    <pubDate>Wed, 15 Apr 2020 06:00:00 +0000</pubDate>
    <guid isPermaLink="false">https://netz-rettung-recht.de/archives/2239-guid.html</guid>
    <category>anleitung</category>
<category>inn</category>
<category>usenet</category>

</item>
<item>
    <title>Übernahme der Newsreader-FAQ</title>
    <link>https://netz-rettung-recht.de/archives/2225-UEbernahme-der-Newsreader-FAQ.html</link>
            <category>Releases</category>
    
    <comments>https://netz-rettung-recht.de/archives/2225-UEbernahme-der-Newsreader-FAQ.html#comments</comments>
    <wfw:comment>https://netz-rettung-recht.de/wfwcomment.php?cid=2225</wfw:comment>

    <slash:comments>3</slash:comments>
    <wfw:commentRss>https://netz-rettung-recht.de/rss.php?version=2.0&amp;type=comments&amp;cid=2225</wfw:commentRss>
    

    <author>nospam@example.com (Thomas Hochstein)</author>
    <content:encoded>
    &lt;p&gt;Ich betreue mittlerweile &lt;a href=&quot;https://th-h.de/archives/faqs/&quot; title=&quot;Index of /archives/faqs&quot;&gt;eine ganze Reihe&lt;/a&gt; an regelmäßig ins Usenet geposteten &lt;a href=&quot;https://th-h.de/net/usenet/faqs/#collection&quot; title=&quot;Usenet-FAQs | th-h.de&quot;&gt;FAQs&lt;/a&gt;, an denen sich allerdings meistens nicht mehr viel ändert; die letzten &lt;a href=&quot;https://netz-rettung-recht.de/archives/2093-FAQ-Updates.html&quot; title=&quot;&quot;&gt;größeren Updates&lt;/a&gt; gab es vor fast zwei Jahren, Mitte 2018. Vor gut zwei Jahren hatte ich auch das letzte Mal &lt;a href=&quot;https://netz-rettung-recht.de/archives/2055-FAQ-Updates.html&quot; title=&quot;&quot;&gt;neue FAQs übernommen&lt;/a&gt;, weil die ursprünglichen Autoren oder Betreuer sie nicht mehr pflegen konnten oder wollten bzw. nicht mehr erreichbar waren oder nicht mehr am Usenet teilnahmen.&lt;/p&gt;

&lt;p&gt;Zum Jahreswechsel wurde ich dann auch gefragt, ob ich nicht die sog. &lt;a href=&quot;https://th-h.de/archives/faqs/newsreader-faq.txt&quot; title=&quot;&quot;&gt;Newsreader-FAQ&lt;/a&gt; übernehmen wolle, die Michael Meier einmal anno 2000 ins Leben gerufen hatte; bis Ende 2003 wurde sie von Christoph Garbers betreut und seitdem bis jetzt von &lt;a href=&quot;https://www.2uo.de/&quot; title=&quot;Thomas Hühn&quot;&gt;Thomas Hühn&lt;/a&gt;, der aber ebenfalls das Usenet (weitgehend?) verlassen hat und daher vorschlug, ich könne ja vielleicht &amp;#8230;
Und freilich, ich kann - wenn es mir auch natürlich lieber wäre, wenn das Usenet mit allem Drumherum weniger zentralisiert wäre. Aber lieber ein SPOF für sehr viele FAQs als dass diese schon jetzt nicht mehr weitergepflegt werden können.&lt;/p&gt;

&lt;p&gt;Ich habe die Betreuung des Textes also übernommen und bin ihn einmal grob durchgegangen, vor allem im Hinblick auf tote Links und eine Anpassung der Formatierung, die mir mehr entsprach. Das hat zunächst einmal wenig an den Inhalten geändert, aber da halte ich es weiterhin mit dem bisherigen Geist der FAQ: zu den jeweiligen Newsreadern soll sich bitte jemand äußern, der sie kennt. Ich betreue die FAQ, ich schreibe sie nicht allein, und ganz sicher teste ich nicht haufenweise Newsreader. &lt;img src=&quot;https://netz-rettung-recht.de/plugins/serendipity_event_emoticate/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; class=&quot;emoticon&quot; /&gt;&lt;/p&gt;
 
    </content:encoded>

    <pubDate>Wed, 11 Mar 2020 06:50:00 +0000</pubDate>
    <guid isPermaLink="false">https://netz-rettung-recht.de/archives/2225-guid.html</guid>
    <category>usenet</category>

</item>
<item>
    <title>FAQ-Updates</title>
    <link>https://netz-rettung-recht.de/archives/2093-FAQ-Updates.html</link>
            <category>Releases</category>
    
    <comments>https://netz-rettung-recht.de/archives/2093-FAQ-Updates.html#comments</comments>
    <wfw:comment>https://netz-rettung-recht.de/wfwcomment.php?cid=2093</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>https://netz-rettung-recht.de/rss.php?version=2.0&amp;type=comments&amp;cid=2093</wfw:commentRss>
    

    <author>nospam@example.com (Thomas Hochstein)</author>
    <content:encoded>
    &lt;p&gt;Heute standen wieder einmal Updates vieler - fast aller - meiner ins Usenet geposteten FAQs an. Die Löschung einer Newsgroup war der konkrete Anlass für einige Änderungen, und es lohnte sich dann, auch bei den anderen FAQs die in den letzten Monaten - teilweise in mehreren Jahren - akkumulierten Änderungen einmal in die gepostete Fassung zu übernehmen. Der &lt;a href=&quot;https://netz-rettung-recht.de/archives/1999-Release-Prozess-fuer-FAQs.html&quot; title=&quot;&quot;&gt;Release-Prozess&lt;/a&gt; für meine FAQs ist dankenswerterweise ja mittlerweile recht einfach.
Folgende FAQs wurden aktualisiert:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;die &lt;em&gt;&lt;a href=&quot;http://th-h.de/archives/faqs/dana-manual.txt&quot; title=&quot;302 Found&quot;&gt;Erläuterungen zur Einrichtung neuer Gruppen in de.*&lt;/a&gt;&lt;/em&gt; (dana-Manual),&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;a href=&quot;http://th-h.de/archives/faqs/dan-glossar.txt&quot; title=&quot;302 Found&quot;&gt;Wichtige Begriffe in de.admin.news.*&lt;/a&gt;&lt;/em&gt; (dan-Glossar),&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;a href=&quot;http://th-h.de/archives/faqs/mitgestalten.txt&quot; title=&quot;302 Found&quot;&gt;Wie kann ich das Usenet aktiv mitgestalten?&lt;/a&gt;&lt;/em&gt;,&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;a href=&quot;https://th-h.de/archives/faqs/de-newsgruppen.txt&quot; title=&quot;&quot;&gt;Die Newsgruppen der de-Hierarchie&lt;/a&gt;&lt;/em&gt; und&lt;/li&gt;
&lt;li&gt;die &lt;em&gt;&lt;a href=&quot;https://th-h.de/net/usenet/faqs/dsr-info/&quot; title=&quot;Einführung in die Rechtsgruppen des deutschsprachigen Usenets | th-h.de&quot;&gt;Einführung in die Rechtsgruppen des deutschsprachigen Usenets&lt;/a&gt;&lt;/em&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Auch die älteren Texte&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;em&gt;&lt;a href=&quot;https://th-h.de/archives/faqs/dni-metafaq.txt&quot; title=&quot;&quot;&gt;Informationstexte-Verzeichnis für Usenet-Einsteiger&lt;/a&gt;&lt;/em&gt;,&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;a href=&quot;https://th-h.de/archives/faqs/dnq-faq.txt&quot; title=&quot;&quot;&gt;Häufig gestellte Fragen in der Gruppe de.newusers.questions&lt;/a&gt;&lt;/em&gt; (dnq-FAQ) und&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;a href=&quot;https://th-h.de/archives/faqs/gruppen-finden.txt&quot; title=&quot;&quot;&gt;Welche Gruppe wofür?&lt;/a&gt;&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;wurden zumindest ein wenig aktualisiert.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;[Dieser Eintrag wurde nachträglich im August 2018 veröffentlicht.]&lt;/em&gt;&lt;/p&gt;
 
    </content:encoded>

    <pubDate>Fri, 27 Jul 2018 21:40:00 +0000</pubDate>
    <guid isPermaLink="false">https://netz-rettung-recht.de/archives/2093-guid.html</guid>
    <category>usenet</category>

</item>
<item>
    <title>FAQ-Updates</title>
    <link>https://netz-rettung-recht.de/archives/2055-FAQ-Updates.html</link>
            <category>Releases</category>
    
    <comments>https://netz-rettung-recht.de/archives/2055-FAQ-Updates.html#comments</comments>
    <wfw:comment>https://netz-rettung-recht.de/wfwcomment.php?cid=2055</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>https://netz-rettung-recht.de/rss.php?version=2.0&amp;type=comments&amp;cid=2055</wfw:commentRss>
    

    <author>nospam@example.com (Thomas Hochstein)</author>
    <content:encoded>
    &lt;p&gt;Im Januar 2018 habe ich die Betreuung dreier weiterer FAQs übernommen und zwei FAQs (davon eine der neu übernommenen) auf meinen Webseiten in HTML-Form online gestellt:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;https://th-h.de/net/usenet/faqs/datm-info/&quot; title=&quot;Informationen über de.alt.test.moderated | th-h.de&quot;&gt;Informationen über &lt;em&gt;de.alt.test.moderated&lt;/em&gt;&lt;/a&gt; ist die Einführung zu der moderierten Testgruppe &lt;em&gt;de.alt.test.moderated&lt;/em&gt;, die ich seit 2010 betreue und nunmehr in &lt;em&gt;Markdown&lt;/em&gt; überführt habe, so dass ergänzend zur reinen Textfassung auch eine HTML-Fassung abfällt.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Von Boris &amp;#8216;pi&amp;#8217; Piwinger habe ich mit seinem Einverständnis die Pflege der &lt;a href=&quot;https://th-h.de/net/usenet/faqs/dsr-info/&quot; title=&quot;Einführung in die Rechtsgruppen des deutschsprachigen Usenets | th-h.de&quot;&gt;Einführung in die Rechtsgruppen des deutschsprachigen Usenets&lt;/a&gt; übernommen. Der Text wird jetzt wieder regelmäßig gepostet und steht auch online; pi&amp;#8217;s Webseiten leiten auf den neuen Ablageort des Textes weiter.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Der bisherige Maintainer des Textes &amp;#8220;&lt;a href=&quot;https://th-h.de/archives/faqs/de-newsgruppen.txt&quot; title=&quot;&quot;&gt;Die Newsgruppen der de-Hierarchie&lt;/a&gt;&amp;#8221; war nicht mehr erreichbar. Ich habe daher diesen Text in Absprache mit dem Moderator von &lt;em&gt;de.newusers.infos&lt;/em&gt; ebenso übernommen (und aktualisiert) wie das &amp;#8220;&lt;a href=&quot;https://th-h.de/archives/faqs/dni-metafaq.txt&quot; title=&quot;&quot;&gt;Informationstexte-Verzeichnis für Usenet-Einsteiger&lt;/a&gt;&amp;#8221;.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Für diese Texte gilt - wie für alle anderen -: &amp;#8220;Betreuung&amp;#8221; einer FAQ muss und soll nicht gleichbedeutend sein mit &amp;#8220;einziger Autor&amp;#8221;. Ergänzungen, Korrekturen, Kommentare nehme ich gerne entgegen.&lt;/p&gt;
 
    </content:encoded>

    <pubDate>Fri, 26 Jan 2018 07:30:00 +0000</pubDate>
    <guid isPermaLink="false">https://netz-rettung-recht.de/archives/2055-guid.html</guid>
    <category>usenet</category>

</item>
<item>
    <title>Der Injection-Date:-Header</title>
    <link>https://netz-rettung-recht.de/archives/2037-Der-Injection-Date-Header.html</link>
            <category>Bits'n'Bytes</category>
    
    <comments>https://netz-rettung-recht.de/archives/2037-Der-Injection-Date-Header.html#comments</comments>
    <wfw:comment>https://netz-rettung-recht.de/wfwcomment.php?cid=2037</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>https://netz-rettung-recht.de/rss.php?version=2.0&amp;type=comments&amp;cid=2037</wfw:commentRss>
    

    <author>nospam@example.com (Thomas Hochstein)</author>
    <content:encoded>
    &lt;p&gt;Das Usenet ist zunehmend in die Bedeutungslosigkeit zurückgefallen - ironischerweise sind die zugrundeliegenden Formate und Protokolle heutzutage aber klarer spezifiziert als das zu seinen Hochzeiten der Fall war. &lt;em&gt;NNTP&lt;/em&gt;, das Übermittlungsprotokoll mit der größten Verbreitung, war recht gut definiert, erst in &lt;a href=&quot;https://www.eyrie.org/~eagle/nntp/rfcs/rfc977.txt&quot; title=&quot;&quot;&gt;RFC 977&lt;/a&gt; von 1986 und dann zwanzig Jahre später in &lt;a href=&quot;https://www.eyrie.org/~eagle/nntp/rfcs/rfc3977.txt&quot; title=&quot;&quot;&gt;RFC 3977&lt;/a&gt;; außerdem kann man den &lt;em&gt;INN&lt;/em&gt; wohl als eine Referenzimplementation betrachten.&lt;/p&gt;

&lt;p&gt;Mit dem Nachrichtenformat war es da schon schwieriger: Auf &lt;a href=&quot;https://www.ietf.org/rfc/rfc850.txt&quot; title=&quot;&quot;&gt;RFC 850&lt;/a&gt; von 1983 folgte &lt;a href=&quot;https://www.eyrie.org/~eagle/usefor/rfcs/rfc1036.txt&quot; title=&quot;&quot;&gt;RFC 1036&lt;/a&gt; von 1987, der während der Blütezeit des Usenets niemals aktualisiert wurde, obschon es bereits 1993 einen Entwurf für einen Nachfolger gab, den sog. &amp;#8220;Son-of-1036&amp;#8221; (der erst 2010 als historisches Dokument in Form von &lt;a href=&quot;https://www.eyrie.org/~eagle/usefor/rfcs/rfc1849.txt&quot; title=&quot;&quot;&gt;RFC 1849&lt;/a&gt; veröffentlicht wurde). Der De-Facto-Standard war dann letztlich &amp;#8220;Son-of-1036&amp;#8221; mit weitgehend ungeschriebenen Modifikationen aus der Implementierungspraxis, während die &lt;em&gt;USEFOR working group&lt;/em&gt; der &lt;em&gt;IETF&lt;/em&gt; sich unendlich lange vergeblich mit der Erstellung einer Spezifikation abmühte. Als Ende 2009 dann endlich &lt;a href=&quot;https://www.eyrie.org/~eagle/usefor/rfcs/rfc5536.txt&quot; title=&quot;&quot;&gt;RFC 5536&lt;/a&gt; &amp;#8220;Netnews Article Format&amp;#8221; veröffentlicht wurde (der zusammen mit &lt;a href=&quot;https://www.eyrie.org/~eagle/usefor/rfcs/rfc5537.txt&quot; title=&quot;&quot;&gt;RFC 5537&lt;/a&gt; &amp;#8220;Netnews Architecture and Protocols&amp;#8221; ein umfassendes Kompendium zur Implementation von Newsservern, -readern und allen möglichen anderen Tools rund um das Usenet bzw. Netnews darstellt), waren die großen Zeiten des Usenets bereits Vergangenheit.&lt;/p&gt;

&lt;h3 id=&quot;implementation-von-rfc-5536&quot;&gt;Implementation von RFC 5536&lt;/h3&gt;

&lt;p&gt;Es dauerte dementsprechend auch seine Zeit, bis die Theorie der RFCs allmählich in die Praxis einzusickern begann. Die ersten Neuerungen fanden sich schon in &lt;em&gt;INN 2.5.0&lt;/em&gt; (von 2009), aber neue Header wie &lt;em&gt;Injection-Info&lt;/em&gt; oder &lt;em&gt;Injection-Date&lt;/em&gt; wurden erst ab &lt;em&gt;INN 2.5.3&lt;/em&gt; (2012) tatsächlich beachtet und erst ab &lt;em&gt;INN 2.6.0&lt;/em&gt; (2015!) erzeugt.&lt;/p&gt;

&lt;p&gt;Damit wurden dann die bisherigen, nie offiziell standardisierten Header &lt;em&gt;NNTP-Posting-Host&lt;/em&gt;, &lt;em&gt;NNTP-Posting-Date&lt;/em&gt; und &lt;em&gt;X-Trace&lt;/em&gt; durch eine klarere Definition des &lt;em&gt;Path&lt;/em&gt;-Headers und die neuen Header &lt;em&gt;Injection-Info&lt;/em&gt; und &lt;em&gt;Injection-Date&lt;/em&gt; ersetzt. Dabei ersetzt &lt;em&gt;Injection-Date&lt;/em&gt; das &lt;em&gt;NNTP-Posting-Date&lt;/em&gt; (also den Zeitstempel der Einspeisung ins Netz per &lt;kbd&gt;POST&lt;/kbd&gt;), wohingegen im Header &lt;em&gt;Injection-Info&lt;/em&gt; alle Daten über das einspeisende System enthalten sind; dieser Header ersetzt also neben &lt;em&gt;NNTP-Posting-Host&lt;/em&gt; vor allem &lt;em&gt;X-Trace&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Wer als Newsserver-Betreiber diese Tracking-Header zu Zwecken der Anonymisierung oder Pseudonymisierung seiner Nutzer bisher entfernt oder modifiziert hat, muss beim Update auf &lt;em&gt;INN 2.6.0&lt;/em&gt; (und damit beim Update auf &lt;em&gt;Debian Stretch&lt;/em&gt;) entsprechend &lt;a href=&quot;https://netz-rettung-recht.de/archives/2032-Von-Jessie-zu-Stretch.html#c4649&quot; title=&quot;&quot;&gt;aufpassen und nacharbeiten&lt;/a&gt;. Dasselbe gilt auch für denjenigen, der Postings aus seinem &lt;em&gt;INN&lt;/em&gt; heraus per &lt;em&gt;suck&lt;/em&gt; erneut ins Netz einspeist: auch der Header &lt;em&gt;Injection-Info&lt;/em&gt; muss vor dem Repost entfernt werden.&lt;/p&gt;

&lt;h3 id=&quot;-injection-date-als-ersatz-f-r-nntp-posting-date-&quot;&gt;&lt;em&gt;Injection-Date&lt;/em&gt; als Ersatz für &lt;em&gt;NNTP-Posting-Date&lt;/em&gt;?&lt;/h3&gt;

&lt;p&gt;So weit, so gut - eines sollte man aber dabei nicht aus den Augen verlieren: &lt;em&gt;Injection-Date&lt;/em&gt; ist &lt;strong&gt;nicht&lt;/strong&gt; dasselbe wie &lt;em&gt;NNTP-Posting-Date&lt;/em&gt;, obschon das eine der Ersatz des anderen sein soll (RFC 5536, 3.2.7):&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;This header field is intended to replace the currently used but
undocumented &quot;NNTP-Posting-Date&quot; header field, whose use is now
deprecated.
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;em&gt;NNTP-Posting-Date&lt;/em&gt; wurde nämlich - wenn konfiguriert - immer gesetzt, um den Zeitpunkt der tatsächlichen Einspeisungs ins Netz anzugeben, der durchaus Stunden oder Tage nach der Erstellung des Artikels liegen kann. &lt;em&gt;Injection-Date&lt;/em&gt; hat zwar denselben Zweck - um aber zu vermeiden, dass ansonsten identische Artikel mit verschiedenen &lt;em&gt;Injection-Date&lt;/em&gt;-Headern verbreitet werden, &lt;strong&gt;darf&lt;/strong&gt; &lt;em&gt;Injection-Date&lt;/em&gt; nicht gesetzt werden, wenn der eingelieferte Artikel bereits sowohl einen &lt;em&gt;Date:&lt;/em&gt;- als auch einen &lt;em&gt;Message-ID:&lt;/em&gt;-Header hat:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;                                     If the proto-article had
both a Message-ID header field and a Date header field, an
Injection-Date header field MUST NOT be added, since the proto-
article may have been multiply injected by a posting agent that
predates this standard.  Otherwise, the injecting agent MUST add
an Injection-Date header field containing the current date and
time.
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Sinnigerweise findet man das nicht in RFC 5536, sondern in RFC 5537 (3.6, Ziffer 11). Der Hintergrund für diese Regelung ist etwas komplex: Die Verbreitung von Duplikaten bereits vorhandener Artikel wird verhindert, indem jeder Newsserver nur solche Artikel annimmt, deren &lt;em&gt;Message-ID&lt;/em&gt; er noch nicht kennt. Um nun diese Liste bekannter &lt;em&gt;Message-IDs&lt;/em&gt; (die sog. &lt;em&gt;History&lt;/em&gt;) nicht ins Unendliche wachsen zu lassen, speichert jeder Newsserver die ihm bekannte &lt;em&gt;Message-IDs&lt;/em&gt; nur für einen begrenzten Zeitraum (bspw. 14 Tage) und nimmt ältere Artikel schlicht nicht an. Für die Bestimmung des Alters eines Artikels soll aber auf den &lt;em&gt;Injection-Date&lt;/em&gt;-Header abgestellt werden, nicht auf &amp;#8220;Date&amp;#8221;; schließlich mag ein Artikel vor seiner Einspeisung länger auf Halde gelegen haben. Wenn nun aber ein Artikel (mit &lt;em&gt;Date&lt;/em&gt; und &lt;em&gt;Message-ID&lt;/em&gt;) einmal heute und dann nochmals drei Wochen später eingespeist würde und beide Male ein aktuelles &lt;em&gt;Injection-Date&lt;/em&gt; bekäme, dann würde ein Newsserver, der seine &lt;em&gt;History&lt;/em&gt; nur 14 Tage hält, den zweiten Artikel annehmen (lt. &lt;em&gt;Injection-Date&lt;/em&gt; ist er ja ganz frisch) und duplizieren (weil er nicht mehr weiß, dass derselbe Artikel vor drei Wochen schonmal vorbeikam).&lt;/p&gt;

&lt;p&gt;Nun ist es alles andere als ungewöhnlich, dass ein einzuspeisender Artikel bereits über &lt;em&gt;Date&lt;/em&gt; und &lt;em&gt;Message-ID&lt;/em&gt; verfügt; das Datum wird ohnehin regelmäßig gesetzt, und die Message-ID setzten viele (die meisten?) Newsreader auch. Das bedeutet dann aber im Umkehrschluss, dass &lt;em&gt;Injection-Date&lt;/em&gt; in sehr vielen Situationen eben kein Ersatz für &lt;em&gt;NNTP-Posting-Date&lt;/em&gt; ist.&lt;/p&gt;

&lt;p&gt;Mir fiel das auf, als ich mal wieder einen Stapel noch auf meinem Laptop herumliegender Artikel mit ungefähr einer Woche Verspätung gepostet hatte: nach dem Update meines lokalen Newsservers auf &lt;em&gt;Debian Stretch&lt;/em&gt; war nicht mehr erkennbar, dass diese Postings verspätet eingespeist worden waren, weil es keinen &lt;em&gt;Injection-Date&lt;/em&gt;-Header gab. Die Ursache dieses scheinbaren Fehlers musste ich mir dann erst von &lt;em&gt;Russ Allbery&lt;/em&gt; persönlich erklären lassen &amp;#8230;&lt;/p&gt;

&lt;h3 id=&quot;-x-nntp-posting-date-&quot;&gt;&lt;em&gt;X-NNTP-Posting-Date&lt;/em&gt;&lt;/h3&gt;

&lt;p&gt;Ich habe mir dann kurzerhand einen Ersatz geschaffen und setze nunmehr über den Perl-Filter (&lt;code&gt;filter_nnrpd.pl&lt;/code&gt;) einen &lt;em&gt;X-NNTP-Posting-Date&lt;/em&gt;-Header:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;# Add X-NNTP-Posting-Date header
$hdr{&#039;X-NNTP-Posting-Date&#039;} = strftime(&quot;%a, %d %b %Y %H:%M:%S %z&quot;, localtime);
&lt;/code&gt;&lt;/pre&gt;
&lt;img src=&quot;https://ssl-vg03.met.vgwort.de/na/757823ebb3e148a6b238b1627c04ff19&quot; width=&quot;1&quot; height=&quot;1&quot; alt=&quot;&quot;&gt; 
    </content:encoded>

    <pubDate>Fri, 06 Oct 2017 06:05:00 +0000</pubDate>
    <guid isPermaLink="false">https://netz-rettung-recht.de/archives/2037-guid.html</guid>
    <category>debian</category>
<category>inn</category>
<category>perl</category>
<category>stretch</category>
<category>usenet</category>

</item>
<item>
    <title>votetakers.de - Release 0.13</title>
    <link>https://netz-rettung-recht.de/archives/2018-votetakers.de-Release-0.13.html</link>
            <category>Releases</category>
    
    <comments>https://netz-rettung-recht.de/archives/2018-votetakers.de-Release-0.13.html#comments</comments>
    <wfw:comment>https://netz-rettung-recht.de/wfwcomment.php?cid=2018</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>https://netz-rettung-recht.de/rss.php?version=2.0&amp;type=comments&amp;cid=2018</wfw:commentRss>
    

    <author>nospam@example.com (Thomas Hochstein)</author>
    <content:encoded>
    &lt;p&gt;Vor rund zweieinhalb Jahren habe ich das letzte Mal über ein &lt;a href=&quot;https://netz-rettung-recht.de/archives/1830-votetakers.de-Release-0.11.html&quot; title=&quot;&quot;&gt;Update&lt;/a&gt; für &lt;em&gt;votetakers.de&lt;/em&gt; berichtet. Diesmal kann ich dann direkt zwei Updates vermelden.&lt;/p&gt;

&lt;p&gt;Bei den Releases &lt;em&gt;0.12&lt;/em&gt; im Januar 2016 und &lt;em&gt;0.13&lt;/em&gt; im August 2017 wurden einige Fehler behoben (darunter auch Schreibfehler), Whitespace bei verlinkten Message-IDs ausgefiltert und alle URLs auf HTTPS umgestellt. Außerdem sind die Seiten auf einen neuen Server umgezogen und wurden nach UTF-8 konvertiert.&lt;/p&gt;
 
    </content:encoded>

    <pubDate>Mon, 28 Aug 2017 17:10:00 +0000</pubDate>
    <guid isPermaLink="false">https://netz-rettung-recht.de/archives/2018-guid.html</guid>
    <category>gvv</category>
<category>usenet</category>

</item>
<item>
    <title>FAQ-Updates</title>
    <link>https://netz-rettung-recht.de/archives/2007-FAQ-Updates.html</link>
            <category>Releases</category>
    
    <comments>https://netz-rettung-recht.de/archives/2007-FAQ-Updates.html#comments</comments>
    <wfw:comment>https://netz-rettung-recht.de/wfwcomment.php?cid=2007</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>https://netz-rettung-recht.de/rss.php?version=2.0&amp;type=comments&amp;cid=2007</wfw:commentRss>
    

    <author>nospam@example.com (Thomas Hochstein)</author>
    <content:encoded>
    &lt;p&gt;In den letzten Tagen habe ich mal wieder einige meiner FAQs aktualisiert:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;die &lt;em&gt;&lt;a href=&quot;http://th-h.de/archives/faqs/dana-manual.txt&quot; title=&quot;302 Found&quot;&gt;Erläuterungen zur Einrichtung neuer Gruppen in de.*&lt;/a&gt;&lt;/em&gt; (dana-Manual),&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;a href=&quot;http://th-h.de/archives/faqs/mitgestalten.txt&quot; title=&quot;302 Found&quot;&gt;Wie kann ich das Usenet aktiv mitgestalten?&lt;/a&gt;&lt;/em&gt; und&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;a href=&quot;http://th-h.de/archives/faqs/dan-glossar.txt&quot; title=&quot;302 Found&quot;&gt;Wichtige Begriffe in de.admin.news.*&lt;/a&gt;&lt;/em&gt; (dan-Glossar)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Dabei habe ich insbesondere Links geprüft und aktualisiert - einmal betraf das die Änderungen an meiner Website nach dem Relaunch im Mai, zum anderen aber sind in den letzten Monaten und Jahren wieder einmal viele Seiten (und ganze Domains) aus dem Netz verschwunden. &lt;img src=&quot;https://netz-rettung-recht.de/plugins/serendipity_event_emoticate/img/emoticons/sad.png&quot; alt=&quot;:-(&quot; class=&quot;emoticon&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Gefühlt geht immer mehr Wissen aus der frühen (und der gar nicht ganz so frühen) Zeit des Netzes in den Neunziger Jahren und nach dem Jahrtausendwechsel verloren &amp;#8230;&lt;/p&gt;
 
    </content:encoded>

    <pubDate>Thu, 03 Aug 2017 06:05:00 +0000</pubDate>
    <guid isPermaLink="false">https://netz-rettung-recht.de/archives/2007-guid.html</guid>
    <category>usenet</category>

</item>

</channel>
</rss>
