Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Implementation of NAS protocol

9 views
Skip to first unread message

Julien ÉLIE

unread,
Aug 19, 2019, 5:07:05 PM8/19/19
to
Hi all,

I have finally taken the time to write an implementation of a Netnews
Administration System (NAS) server, as defined in experimental RFC 4707.
Only client-server commands are supported (I've not implemented yet
GETA and GETP commands to transfer data between two NAS servers).

I'll soon release the source code of nas-server.py on Github.

Data are based on what ftp.isc.org has.

To test the NAS server, just use:
telnet nas.trigofacile.com 991


You can use HELP to see available commands, and HELP COMMAND to obtain
more help for a given COMMAND.


Feel free to play with it, and please let me know of any problems you
may encounter.

Of course, if you have additional information regarding hierarchies and
newsgroups, do not hesitate to post them here to complete the database :-)

--
Julien ÉLIE

« Vous savez, les idées, elles sont dans l'air. Il suffit que
quelqu'un vous en parle de trop près, pour que vous les
attrapiez ! » (Raymond Devos)

Julien ÉLIE

unread,
Aug 19, 2019, 5:08:03 PM8/19/19
to
Hi all,

A few examples to get started:


*** Information about a hierarchy:

HIER fr
611 Information follows for hierarchies
Name: fr
Status: Complete
Description: French language
Charter: http://www.usenet-fr.net/fur/usenet/presentation-fr.html
Netiquette: http://www.usenet-fr.net/fr-chartes/netiquette.html
Netiquette: http://www.usenet-fr.net/fr-chartes/savoir-communiquer.html
Netiquette: http://www.usenet-fr.net/fr-chartes/emily-postnews.html
Netiquette: http://www.usenet-fr.net/fur/usenet/bons-usages.html
Netiquette: http://www.usenet-fr.net/fur/usenet/repondre-sur-usenet.html
Netiquette: http://www.usenet-fr.net/spam.html
Ctl-Send-Adr: con...@usenet-fr.news.eu.org
Ctl-Newsgroup: fr.usenet.distribution
Language: fr
Charset: ISO-8859-1
Charset: ISO-8859-15
Encoding: text/plain
Newsgroup-Type: Discussion
Hier-Type: Global
Hier-Type: Non-commercial
Name-Length: 41
Comp-Length: 18
Date-Create: 19930310000000
Source: http://www.usenet-fr.net/
Ctl-PGP-Key:
U con...@usenet-fr.news.eu.org
U Control <con...@usenet-fr.news.eu.org>
U fr.usenet.forums.annonces
B 1024
I B5EB07BD
L http://www.usenet-fr.net/fur/usenet/presentation-fr.html
V 2.6.3ia
K------BEGIN PGP PUBLIC KEY BLOCK-----
K-Version: 2.6.3ia
K-
K-mQCNAzWmUiEAAAEEAOPaQr+8kL2D02TMg34nWqzRGyQLfO09QJeEux+pZMq34vR1
K-tgYvjh4hMpBepIdHYPooUeilWoieDimNEIkhWjDOd0YISo16i1o91K3s7daMY3VZ
K-M8SMZcPeOEZUZ4yvj83q9Z1vc/rIC25JFBLf2YTMBph3Pnx/tLgiQr+16we9AAUR
K-tB1jb250cm9sQHVzZW5ldC1mci5uZXdzLmV1Lm9yZ4kAlQMFEDXKL6q4IkK/tesH
K-vQEBa28EAN0XAIB3YFphdeICkr4z4l7k9zdesZnKsP3qsgqEnlPvNggD78l7R2ZI
K-bHD/m8JnIZ+sxU2sOVO/vwLJhD7KZ5qtpljc6vcQiVkUVbfsbDWHkqqMqaO2/4rt
K-dbfMU8D/LILibZ7zo4/EKHbgthL7EueMrIswcF7Z5y0A8W654h0QtCdDb250cm9s
K-IDxjb250cm9sQHVzZW5ldC1mci5uZXdzLmV1Lm9yZz6JAJUDBRA1qntauCJCv7Xr
K-B70BAcBcBACz7ftK3xMcCnFMAAiIu56QKbl4NfUVNpxYNaewQq3oZd8IoI+sWpkp
K-SyFyACadofIMig3m18QwkLfKkrbkXwzjCvmj/kTeCNDeVQcoVl8tEx0zDquDiiCS
K-g2e9Bd+j/TveiNh5/tAii+znjVXyGAdjgk0VsKVeUcm7qt4lMCXwjLQZZnIudXNl
K-bmV0LmZvcnVtcy5hbm5vbmNlc4kAlQMFEDWmUiG4IkK/tesHvQEBRf4D/iJTcOQf
K-duPEqQ0dhDAe8gDO0rSqX0QIPh4dbjxLQVK13aaHzuxgE3cdm9zFpf9jcmOqslHd
K-R8SKMFIHgI31HFBkQB6f7O7p4zsgKk77l3XU6f5l4YBTelE22VcbYRLcGnlz6oT3
K-PicZGO8FoYq1/QLoGd118u7b/JUZiE8v3Gfc
K-=oeOZ
K -----END PGP PUBLIC KEY BLOCK-----

.




*** Information for a subset of data:

HIER fido7 ,Mod-Wildcard
611 Information follows for hierarchies
Name: fido7
Status: Complete
Mod-Wildcard: %s...@fido7.ru

.




*** Information about newsgroups (the first one no longer exists):

DATA fr.bienvenue.questions cn.comp.software
612 Information follows for newsgroups
Name: fr.bienvenue.questions
Status: Removed
Description: Les premières questions sur Usenet. (Où ? Comment ?)
Date-Create: 19971016173454
Date-Delete: 20111219233002
Replacement: fr.bienvenue

Name: cn.comp.software
Status: Unmoderated
Description: 计算机软件一般性讨论

.




*** List newsgroups and sub-hierarchies in news.* (note that news.groups
is a sub-hierarchy and at the same time an unmoderated newsgroup):

LIST news
610 List follows
news.admin Complete
news.announce Complete
news.answers Moderated
news.groups Complete
news.groups Unmoderated
news.lists Complete
news.misc Unmoderated
news.newusers Complete
news.software Complete
.




*** Similar example for fr.bienvenue:

LSTR fr.bien*
610 List follows
fr.bienvenue Obsolete
fr.bienvenue Unmoderated
fr.bienvenue.questions Removed
.




*** Recursive list of newsgroups and sub-hierarchies in news.admin.*:

LSTR news.admin
610 List follows
news.admin Complete
news.admin.announce Moderated
news.admin.censorship Unmoderated
news.admin.hierarchies Unmoderated
news.admin.misc Unmoderated
news.admin.moderation Moderated
news.admin.net-abuse Complete
news.admin.net-abuse.blocklisting Removed
news.admin.net-abuse.bulletins Removed
news.admin.net-abuse.email Unmoderated
news.admin.net-abuse.misc Unmoderated
news.admin.net-abuse.policy Moderated
news.admin.net-abuse.sightings Removed
news.admin.net-abuse.usenet Unmoderated
news.admin.nocem Removed
news.admin.peering Unmoderated
news.admin.technical Moderated
.

Franck

unread,
Oct 20, 2019, 9:04:04 AM10/20/19
to
Le 19/08/2019 à 23:06, Julien ÉLIE a écrit :

> To test the NAS server, just use:
> telnet nas.trigofacile.com 991
>
> Feel free to play with it, and please let me know of any problems you
> may encounter.

Hello,

It works fine except for "LSTR *" who seems to crash your deamon.

I open 2 connections, try "LSTR *" in one session => The deamon do not
reply anymore on both connections.

Hope it will help.

Have nice day.
Franck

Julien ÉLIE

unread,
Oct 20, 2019, 10:30:26 AM10/20/19
to
Hi Franck,
> > To test the NAS server, just use:
> >      telnet nas.trigofacile.com 991
> >
> > Feel free to play with it, and please let me know of any problems you
> > may encounter.
>
> It works fine except for "LSTR *" who seems to crash your deamon.
>
> I open 2 connections, try "LSTR *" in one session => The deamon do not
> reply anymore on both connections.

Strange.
I see that response to "LSTR *" takes almost 50 seconds to compute.
I'll have a look to make it faster.


I see errors in transferring the whole result (but only to your IP...).
The same command had worked for other people in the past.
And also with me, just tested now.


Just to be sure, I've restarted the daemon. Does it work better?
And a mere "LSTR fr*" ?


2019-10-20 03:36:20,392 - DEBUG - [5] <-- LSTR *
2019-10-20 03:37:10,120 - DEBUG - [5] --> 610 List follows
2019-10-20 03:37:10,120 - DEBUG - [5] --> a Incomplete
2019-10-20 03:37:10,120 - DEBUG - [5] --> a.bsu Obsolete
[...]
2019-10-20 03:37:10,155 - DEBUG - [5] --> alt.an Unmoderated
2019-10-20 03:37:10,155 - WARNING - [5] Impossible to send data to client
2019-10-20 03:37:10,155 - INFO - [5] Closing connection with (your ip)
2019-10-20 03:37:10,155 - ERROR - [Errno 9] Bad file descriptor
File "/usr/lib/python2.7/socket.py", line 224, in meth
return getattr(self._sock,name)(*args)
File "/usr/lib/python2.7/socket.py", line 170, in _dummy
raise error(EBADF, 'Bad file descriptor')


2019-10-20 14:27:38,108 - DEBUG - [5] <-- LSTR *
2019-10-20 14:28:27,630 - DEBUG - [5] --> 610 List follows
2019-10-20 14:28:27,630 - DEBUG - [5] --> a Incomplete
[...]
2019-10-20 14:28:27,752 - DEBUG - [5] --> alt.bbs.citadel Incomplete
2019-10-20 14:28:27,752 - WARNING - [5] Impossible to send data to client
2019-10-20 14:28:27,752 - INFO - [5] Closing connection with (your ip)
2019-10-20 14:28:27,752 - ERROR - [Errno 9] Bad file descriptor


2019-10-20 14:38:41,057 - DEBUG - [6] <-- lstr *
2019-10-20 14:39:30,628 - DEBUG - [6] --> 610 List follows
2019-10-20 14:39:30,628 - DEBUG - [6] --> a Incomplete
[...]
2019-10-20 14:39:30,717 - DEBUG - [6] --> alt.binaires Incomplete
2019-10-20 14:39:30,717 - WARNING - [6] Impossible to send data to client
2019-10-20 14:39:30,717 - INFO - [6] Closing connection with (your ip)
2019-10-20 14:39:30,717 - ERROR - [Errno 9] Bad file descriptor




Thanks for having played with thas NAS implementation!

--
Julien ÉLIE

« – Prends un peu de potion magique, Jolitorax ?
– Mais ça va être l'heure de l'eau chaude ! » (Astérix)

Franck

unread,
Oct 20, 2019, 11:51:23 AM10/20/19
to
Le 20/10/2019 à 16:30, Julien ÉLIE a écrit :

Hi,

> Strange.
> I see that response to "LSTR *" takes almost 50 seconds to compute. I'll
> have a look to make it faster
> I see errors in transferring the whole result (but only to your IP...).
> The same command had worked for other people in the past.
> And also with me, just tested now.


I was not waiting so long! So yes, it works but takes at least 50-60
sec. for the reply.

> Just to be sure, I've restarted the daemon.  Does it work better?

Just the same as before.

> And a mere "LSTR fr*" ?

It's better, it takes about 4-5 secs for the reply.

> Thanks for having played with thas NAS implementation!

You're welcome.

Franck

unread,
Nov 3, 2019, 2:21:40 PM11/3/19
to
Hello,

I had fun with Julien's last toy and found some time to code my NAS
server for Windows (64bit service).

If you want to play with it, telnet 93.115.97.199 991

GETA & GETP are not implemented and data is based on what
nas.trigofacile.com has.

You can use HELP to see available commands, and HELP COMMAND to obtain
more help for a given COMMAND.

If you play with it, please let me know of any problems you may encounter.

Thanks!

Julien ÉLIE

unread,
Nov 3, 2019, 2:54:31 PM11/3/19
to
Hi Franck,

> I had fun with Julien's last toy and found some time to code my NAS
> server for Windows (64bit service).

I'll have a look.
I see that you also found fun after CodoSoft NNTPd :)
--
Julien ÉLIE

« – Cet homme qui est sorti du palais, nous renseignera peut-être
sur la façon d'y entrer. Suivons-le.
– Mais… Il sait sortir d'accord, mais rien ne prouve qu'il sache
entrer, et… » (Astérix)

Franck

unread,
Nov 4, 2019, 7:05:28 AM11/4/19
to
Hi,

> I'll have a look.
> I see that you also found fun after CodoSoft NNTPd :)

When I sold (a misery) the source code, I thought the project would be
followed. To date, I have no news from the buyer. I think he just wanted
to adapt my code for another project.

So I moved on to something else:-)
0 new messages