From 432de5ad219cd91e6496ee7faf94b423b7f63674 Mon Sep 17 00:00:00 2001 From: Greg Wildman Date: Thu, 17 Jun 2021 15:58:28 +0200 Subject: [PATCH] Fix default NNTP port and allow skipping of client authentication to NNTP server --- apps/nntp65.c | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/apps/nntp65.c b/apps/nntp65.c index 09ad129..37998b5 100644 --- a/apps/nntp65.c +++ b/apps/nntp65.c @@ -327,7 +327,7 @@ void readconfigfile(void) { colon = strchr(cfg_server, ':'); if (!colon) - nntp_port = 110; + nntp_port = 119; else { nntp_port = atoi(colon + 1); *colon = '\0'; @@ -649,19 +649,22 @@ void main(int argc, char *argv[]) { if (expect(buf, "20")) // "200" if posting is allowed / "201" if no posting error_exit(); - sprintf(sendbuf, "AUTHINFO USER %s\r\n", cfg_user); - if (!w5100_tcp_send_recv(sendbuf, buf, NETBUFSZ, DO_SEND, CMD_MODE)) { - error_exit(); - } - if (expect(buf, "381")) // Username accepted - error_exit(); + // Skip authentication? + if (strcmp(cfg_user, "-") != 0) { + sprintf(sendbuf, "AUTHINFO USER %s\r\n", cfg_user); + if (!w5100_tcp_send_recv(sendbuf, buf, NETBUFSZ, DO_SEND, CMD_MODE)) { + error_exit(); + } + if (expect(buf, "381")) // Username accepted + error_exit(); - sprintf(sendbuf, "AUTHINFO PASS %s\r\n", cfg_pass); - if (!w5100_tcp_send_recv(sendbuf, buf, NETBUFSZ, DO_SEND, CMD_MODE)) { - error_exit(); + sprintf(sendbuf, "AUTHINFO PASS %s\r\n", cfg_pass); + if (!w5100_tcp_send_recv(sendbuf, buf, NETBUFSZ, DO_SEND, CMD_MODE)) { + error_exit(); + } + if (expect(buf, "281")) // Authentication successful + error_exit(); } - if (expect(buf, "281")) // Authentication successful - error_exit(); while (1) { msg = fscanf(newsgroupsfp, "%s %s %ld", newsgroup, mailbox, &msgnum);