All,
This is a patch which attempts to resolve some of the more obvious problems with the current NNTP implementation. Some of the corrections were: i) Parsing of the LIST command and its extensions was badly incorrect. The parsing is now correct, with all extensions and wildmat parameters being set as appropriate. ii) The GROUP command wiped the previous selected group, even if the group name passed in didn't correspond to a valid newsgroup. iii) The auth implementation was completely wrong. This fix needs further refactoring, but the whole AuthService architecture was badly designed. It does not allow per-connection authentication, which makes it useless for our purposes. These changes leave the AuthService class in place, but move the authRequired configuration to the NNTP server handler configuration. The AuthService is unused, and should be removed completely. If flexible, pluggable authentication services are desired in the future, a new interface and implementation should be used. iv) Added a number of comments. v) Made the protocol debugging like the SMTP and POP3 debugging. vi) Fixed an obvious typo in the TLS support for the NNTP server. Problems that still need to be addressed: i) Passwords are displayed in the debug log ii) The code is very un-robust. Even slightly misformed commands will lead to nasty errors in the handler. There is no consistent syntax checking. iii) The functionality needs a complete sweep to make sure that commands do what is expected iv) The code needs a great deal of refactoring to make it correct and maintainable. --Peter
NNTPServer.java.diff
Description: Binary data
NNTPHandler.java.diff
Description: Binary data
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
