According to RFC 3977 Section 6 (http://tools.ietf.org/html/rfc3977#section-6),
article numbers can increase until they reach 2,147,483,647, the upper bounds
of a 32-bit Integer. While servers are not allowed to send higher values, the
RFC is open to this possibility and advises implementors to have internal
structures prepared to hold higher values. In fact, some high-volume newsgroups
have already exceeded the boundary (for instance,
http://en.wikipedia.org/wiki/Alt.binaries.boneless) and some newsreaders have
issues handling this. Some of the most popular news servers, like GigaNews, are
already sending higher bound numbers in unsigned 64-bit format and are
recommending for newsreaders to implement this as well (see
http://www.giganews.com/news/article/64-bit-Usenet.html).
When the number reaches 32-bit limit odd things may happen in newsreaders -
they may stop accepting new articles. Some servers might (not sure) wrap
article numbers to reset the count. But most popular ones have chosen not to do
so but continue increasing the number and this is likely to happen for others
as well.
TIdNNTP and TIdNNTPServer use 32-bit Integers for holding article numbers.
This needs to be changed to Int64, or even UInt64 on versions that support it.
Original issue reported on code.google.com by gambit47 on 6 Dec 2011 at 6:28
Original issue reported on code.google.com by
gambit47
on 6 Dec 2011 at 6:28