Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

(HS) Newsgroups professionnels PCSoft non accessibles en nntp

6 réponses
Avatar
MyTwoCents
Bonjour,

Plusieurs utilisateurs se sont plaints que les newsgroups de PCSoft
étaient inaccessibles avec leur lecteur de news préféré, et ce, de
manière très fréquente.

J'ai répondu dans ce groupe, mais ma réponse n'a visiblement pas été
jugée pertinente puisqu'elle n'a pas passé la modération.

Pour autant, il me semble que la réponse était constructive, d'autant
que je communiquais également des erreurs flagrantes dans
l'implémentation du protocole NNTP du serveur de l'éditeur (Ecrit en
Windev).

Tout ce que j'annonce ici a été découvert avec un lecteur de news bien
connu et/ou une simple connection telnet.

Donc:

1. Première chose flagrante et déconcertante, le serveur n'accepte que
les commandes en majuscules et les <TAB> ne sont pas acceptés comme
séparateur Keyword<TAB>Argument...

RFC 3977 § 3.1: Keywords and arguments MUST each be separated by
one or more space or TAB characters.

2. La commande CAPABILITIES nous renvoit:

101 Capability list follows
VERSION 2
IMPLEMENTATION PCSOFT NNTP Server 18.0.22.0
LIST ACTIVE NEWSGROUPS
READER
POST
HDR

La commande HELP nous renvoit:

100 Help text follows
NNTP version supported : VERSION 2
Software version : PCSOFT NNTP Server 18.0.22.0
NNTP commands supported :
- LIST ACTIVE
- READER
- POST
- HDR


- Capacité "IMPLEMENTATION" -> permet de dire sans forcer que c'est du
Windev :-)
- Capacité "HDR" annoncée mais l'option "HEADERS" n'est pas présente
dans la commande "LIST" alors que le protocole l'impose.

RFC 3977 § 7.6.2: HEADERS - Mandatory if the HDR capability is advertised.

- Capacité "OVER" non annoncée alors que la commande (x)OVER est fournie
(mias non listée avec la commande HELP) par le serveur. De même,
l'option "OVERVIEW.FMT" devrait être ajoutée à la capacité et à la
commande "LIST" puisque la commande "(x)OVER" est proposée.

Même paragraphe, même RFC.

Et j'en passe...

3. Attendez trois minutes et vous serez déconnectés avec un message "105
Connection timed out (181 seconds), closing connection".

Ce code erreur n'existe dans aucune RFC, et pour cause... La RFC 3977
explique clairement qu'en cas d'inactivité, le serveur ferme la
connection sans envoyer un quelconque message au client.

RFC 3977 § 3.1: An NNTP server MAY have an inactivity autologout timer.
Such a timer SHOULD be of at least three minutes duration
- - - 8< - - -
When the timer expires, the server SHOULD close the connection WITHOUT
sending ANY response to the client.

Et ce n'est vraiment qu'une très courte liste de ce qui ne va pas dans
cette implémentation du protocole NNTP puisque même certaines commandes
ne sont pas conformes au protocole.

L'introduction de la RFC 3977 dit qu'un serveur n'est pas conforme si
elle ne satisfait pas à un ou plusieurs "DOIT" (impératif) du
protocole... Donc le serveur de l'éditeur n'est pas conforme au
protocole NNTP et encore moins à sa version 2.

C'est pas moi qui le dit, c'est la RFC! ;-)

RFC 3977 § 1

An implementation is not compliant if it fails to satisfy one or more
of the MUST requirements for this protocol. An implementation that
satisfies all the MUST and all the SHOULD requirements for its
protocols is said to be "unconditionally compliant"; one that
satisfies all the MUST requirements but not all the SHOULD
requirements for NNTP is said to be "conditionally compliant".

---

Pour cette mauvaise implémentation, j'envisageais que le serveur soit
régulièrement mis en défaut et que le service ne réponde plus. Je devais
avoir tord et le modérateur raison...

Mais bon, quand je vois toutes les erreurs commises, j'imagine qu'il
était plus simple de rejeter mon message que de coder les corrections ;-)

Et juste pour ne pas être constructif jusqu'au bout, voici ce que renvoi
mon serveur nntp, codé en Windev:

101 capability list follows:
VERSION 2
AUTHINFO
IMPLEMENTATION NomSuppriméVolontairement NNTP Server 3.0.6 (64bits)
LIST ACTIVE ACTIVE.TIMES COUNTS HEADERS NEWSGROUPS OVERVIEW.FMT
READER
HDR
NEWNEWS
OVER MSGID
POST
.

100 help text follows:
article [message-id|number]
authinfo user|pass value
body [message-id|number]
capabilities [keyword]
date
group newsgroup
head [message-id|number]
hdr field [message-id|range]
help
last
list [active [wildmat]|active.times [wildmat]|counts
[wildmat]|newsgroups [wildmat]|headers [message-id|range]|overview.fmt]
listgroup [newsgroup [range]]
mode reader
newgroups date time [gmt]
newnews wildmat date time [gmt]
next
over [message-id|range]
post
quit
stat [message-id|number]
.

Libre à l'éditeur de coder les modifications ou de laisser son serveur
tomber tous les deux jours.

Cordialement,
;-)

6 réponses

Avatar
ST
On 2013-07-15, MyTwoCents wrote:
Libre à l'éditeur de coder les modifications ou de laisser son serveur
tomber tous les deux jours.



Ca donne une assez bonne idée de façon dont travaille cet éditeur
habituellement.

--
Je ne suis pas d'accord avec la vérité, en conséquence, je n'écris que
des mensonges et des contre-vérités.
Avatar
MyTwoCents
Bonsoir,

Ca donne une assez bonne idée de façon dont travaille cet éditeur
habituellement.



Perso, j'appelle pas ça du boulot. Une implémentation aussi mauvaise du
protocole nntp par une boîte spécialisée dans le développement... Bin ça
fait sourire (ou pas!).

Allez, je vous laisse juge de cette session fort instructive:

connect news.pcsoft.fr 119


200 Service available, posting allowed
MODE READER


200 Posting allowed
GROUP pcsoft.fr.windev


211 159972 1 162333 pcsoft.fr.windev Group successfully selected
LISTGROUP


412 No newsgroup selected

Donc je sélectionne le groupe avec la commande GROUP et je veux la liste
des articles du groupe avec la commande LISTGROUP.

La première me dit que le groupe est sélectionné avec succès et la
seconde me dit qu'il n'y a pas de groupe sélectionné.
Faudrait savoir quand même ;-)

Continuons dans la série des aberrations:

LISTGROUP pcsoft.fr.windev


211 159972 1 162333 pcsoft.fr.windev list follows
.

Quand je lui donne le groupe à lister, j'obtiens une liste vide. C'est
plutôt surprenant pour un groupe qui comptabilise approximativement
159972 articles!

Continuons dans le encore plus fort:

Je demande l'overview de l'article en cours. Dans ce cas précis, c'est
le premier du "groupe pcsoft.fr.windev" et en toute logique c'est le 1
comme annoncé dans le 211 (1 étant le premier et 162333 le dernier)

OVER


224 Overview follows
91 Suppression des groupes windev et webdev
=?UTF-8?B?IkxlIG1vZMOpcmF0ZXVyIg==?= Mon, 25 Jun
2001 10:39:03 +0200 <3b370640$ 378 20
.

Bin non, il me renvoit un article numéroté 91!
Ok, si je demande le suivant (NEXT) je devrais avoir le 92 et si je
redemande le précédent (LAST) retomber sur le 91... Bin non!

NEXT


223 2 retrieved
LAST


223 1 <3b370640$ retrieved

Vous remarquerez également que l'article 91 et l'article 1 ont le même
message-ID (<3b370640$). Il est tout à fait possible de
retrouver plusieurs articles avec le même message-ID dans la base
overview (en cas de crosspost) mais c'est IMPOSSIBLE dans le même groupe!

Tiens, et si je demandais l'article 91?

OVER 91


224 Overview follows
91 Importer des tables (liaison) "Anne" Tue, 20
Jul 2004 16:24:24 +0200 <40fd2b18$ 217 6
92
=?UTF-8?B?UmU6IFLDqWFsaXNlciB1bmUgc291cy1yZXF1w6p0ZSBzb3VzIFdpbmRldg==?"Raoul"
Tue, 20 Jul 2004 16:26:20 +0200
<40fd2b8c$ <40fd2087$,
<40fd2970$ 1095 33
93 Re: Mise a Faux d'interrupteur pas le biais d'une boucle "Machou"
Tue, 20 Jul 2004 16:45:41 +0200
<40fd3015$ <40fd1dfb$ 918 27

^C

Bin voyons, le serveur me renvoit tous les articles à partir du 91!
Sauf que pour faire ça, la commande c'est pas "OVER 91" mais "OVER 91-"

Bon allez, vous l'aurez compris, le serveur de l'éditeur fait partie des
pires implémentations du protocole NNTP puisque RIEN, ABSOLUMENT RIEN ne
fonctionne comme il se devrait. Pas étonnant qu'il soit mis en défaut
par les divers clients qui peuvent s'y connecter...

A bon entendeur, corrigez ^^
Avatar
JeAn-PhI
MyTwoCents avait soumis l'idée :
Bonsoir,

Ca donne une assez bonne idée de façon dont travaille cet éditeur
habituellement.



Perso, j'appelle pas ça du boulot. Une implémentation aussi mauvaise du
protocole nntp par une boîte spécialisée dans le développement... Bin ça fait
sourire (ou pas!).

Allez, je vous laisse juge de cette session fort instructive:

>connect news.pcsoft.fr 119
200 Service available, posting allowed
>MODE READER
200 Posting allowed
>GROUP pcsoft.fr.windev
211 159972 1 162333 pcsoft.fr.windev Group successfully selected
>LISTGROUP
412 No newsgroup selected

Donc je sélectionne le groupe avec la commande GROUP et je veux la liste des
articles du groupe avec la commande LISTGROUP.

La première me dit que le groupe est sélectionné avec succès et la seconde me
dit qu'il n'y a pas de groupe sélectionné.
Faudrait savoir quand même ;-)

Continuons dans la série des aberrations:

>LISTGROUP pcsoft.fr.windev
211 159972 1 162333 pcsoft.fr.windev list follows
.

Quand je lui donne le groupe à lister, j'obtiens une liste vide. C'est plutôt
surprenant pour un groupe qui comptabilise approximativement 159972 articles!

Continuons dans le encore plus fort:

Je demande l'overview de l'article en cours. Dans ce cas précis, c'est le
premier du "groupe pcsoft.fr.windev" et en toute logique c'est le 1 comme
annoncé dans le 211 (1 étant le premier et 162333 le dernier)

>OVER
224 Overview follows
91 Suppression des groupes windev et webdev
=?UTF-8?B?IkxlIG1vZMOpcmF0ZXVyIg==?= Mon, 25 Jun 2001
10:39:03 +0200 <3b370640$ 378 20
.

Bin non, il me renvoit un article numéroté 91!
Ok, si je demande le suivant (NEXT) je devrais avoir le 92 et si je redemande
le précédent (LAST) retomber sur le 91... Bin non!

>NEXT
223 2 retrieved
>LAST
223 1 <3b370640$ retrieved

Vous remarquerez également que l'article 91 et l'article 1 ont le même
message-ID (<3b370640$). Il est tout à fait possible de retrouver
plusieurs articles avec le même message-ID dans la base overview (en cas de
crosspost) mais c'est IMPOSSIBLE dans le même groupe!

Tiens, et si je demandais l'article 91?

>OVER 91
224 Overview follows
91 Importer des tables (liaison) "Anne" Tue, 20 Jul
2004 16:24:24 +0200 <40fd2b18$ 217 6
92
=?UTF-8?B?UmU6IFLDqWFsaXNlciB1bmUgc291cy1yZXF1w6p0ZSBzb3VzIFdpbmRldg==?"Raoul"
Tue, 20 Jul 2004 16:26:20 +0200
<40fd2b8c$ <40fd2087$,
<40fd2970$ 1095 33
93 Re: Mise a Faux d'interrupteur pas le biais d'une boucle "Machou"
Tue, 20 Jul 2004 16:45:41 +0200
<40fd3015$ <40fd1dfb$ 918 27

^C

Bin voyons, le serveur me renvoit tous les articles à partir du 91!
Sauf que pour faire ça, la commande c'est pas "OVER 91" mais "OVER 91-"

Bon allez, vous l'aurez compris, le serveur de l'éditeur fait partie des
pires implémentations du protocole NNTP puisque RIEN, ABSOLUMENT RIEN ne
fonctionne comme il se devrait. Pas étonnant qu'il soit mis en défaut par les
divers clients qui peuvent s'y connecter...

A bon entendeur, corrigez ^^



bonjour,

cela ne viendrait pas du fait que les articles ont été renuméroté lors
du passage à la nouvelle version ?

--
Cordialement JeAn-PhI
Avatar
MyTwoCents
Bonsoir,

cela ne viendrait pas du fait que les articles ont été renuméroté lors
du passage à la nouvelle version ?



Je ne pense pas que l'erreur vienne de là (pour plein de raisons que je
n'évoquerai pas davantage ici). De plus la renumérotation d'articles est
interdite par le protocole.

Je pense que l'éditeur a focalisé son développement sur l'interface web
et mis un peu (trop) de côté l'accès nntp. C'est bien dommage car de
nombreux utilisateurs préfèrent passer par leur client de news préféré.

On verra si l'avenir réserve son lot de bonnes nouvelles au serveur de
news de l'éditeur...
Avatar
Eric Demeester
ST (Tue, 16 Jul 2013 06:30:56 +0200 -
fr.comp.developpement.agl.windev) :

Bonjour,

On 2013-07-15, MyTwoCents wrote:
> Libre à l'éditeur de coder les modifications ou de laisser son serveur
> tomber tous les deux jours.



Il pourrait aussi installer un INN, hein. C'est pas écrit en Windev,
mais c'est open source, ça fonctionne et ça respecte les RFCs.

Et compte tenu du trafic des leurs groupes, ça pourrait tourner sans
problème sur un serveur vieux de 10 ans, de façon plus rapide et
efficace.

Ca donne une assez bonne idée de façon dont travaille cet éditeur
habituellement.



Ça fait des années que je me tue à répéter, dans le vide, que Pc-Soft ne
comprend rien à Internet. Ce n'est que la nième preuve :)

--
Eric
Avatar
MyTwoCents
Bonjour,

Libre à l'éditeur de coder les modifications ou de laisser son serveur
tomber tous les deux jours.





Il pourrait aussi installer un INN, hein. C'est pas écrit en Windev,
mais c'est open source, ça fonctionne et ça respecte les RFCs.



Bin avant leur "machin" codé en Windev, ils utilisaient dNews...
Abandonner dNews pour "ça", c'est un peu comme abandonner une Rolls pour
monter dans une "Lada" sur une route où il n'y aurait ni garage ni
station essence... Et personne pour t'aider à pousser!

Et compte tenu du trafic des leurs groupes, ça pourrait tourner sans
problème sur un serveur vieux de 10 ans, de façon plus rapide et
efficace.



Pas faux.

Ça fait des années que je me tue à répéter, dans le vide, que Pc-Soft ne
comprend rien à Internet. Ce n'est que la nième preuve



Entre autres...