[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[SCM] gawk branch, porting, updated. gawk-4.1.0-4417-g9618c3a
From: |
Arnold Robbins |
Subject: |
[SCM] gawk branch, porting, updated. gawk-4.1.0-4417-g9618c3a |
Date: |
Mon, 28 Dec 2020 11:08:07 -0500 (EST) |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gawk".
The branch, porting has been updated
via 9618c3a50e5bfb4baffc23020a2941a53ac1328c (commit)
via 7c95bf2e5e112f1acdf2e058daaac3cdb2b0bb12 (commit)
via f113836a8fc282b7c7642eff82a4cf73d8e346fa (commit)
from afa1258bbe6aee156ec0dcde22e804243eabd356 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://git.sv.gnu.org/cgit/gawk.git/commit/?id=9618c3a50e5bfb4baffc23020a2941a53ac1328c
commit 9618c3a50e5bfb4baffc23020a2941a53ac1328c
Merge: afa1258 7c95bf2
Author: Arnold D. Robbins <arnold@skeeve.com>
Date: Mon Dec 28 18:08:00 2020 +0200
Merge branch 'master' into porting
http://git.sv.gnu.org/cgit/gawk.git/commit/?id=7c95bf2e5e112f1acdf2e058daaac3cdb2b0bb12
commit 7c95bf2e5e112f1acdf2e058daaac3cdb2b0bb12
Merge: 7920288 f113836
Author: Arnold D. Robbins <arnold@skeeve.com>
Date: Mon Dec 28 18:07:45 2020 +0200
Merge branch 'gawk-5.1-stable'
http://git.sv.gnu.org/cgit/gawk.git/commit/?id=f113836a8fc282b7c7642eff82a4cf73d8e346fa
commit f113836a8fc282b7c7642eff82a4cf73d8e346fa
Author: Arnold D. Robbins <arnold@skeeve.com>
Date: Mon Dec 28 18:07:18 2020 +0200
Additional update in gawkinet.texi.
diff --git a/awklib/eg/network/mailpopclient.awk
b/awklib/eg/network/mailpopclient.awk
new file mode 100644
index 0000000..041c562
--- /dev/null
+++ b/awklib/eg/network/mailpopclient.awk
@@ -0,0 +1,16 @@
+BEGIN {
+ POPService = "/inet/tcp/0/var{emailhost}/pop3"
+ RS = ORS = "\r\n"
+ print "user var{name}" |& POPService
+ POPService |& getline
+ print "pass var{password}" |& POPService
+ POPService |& getline
+ print "retr 1" |& POPService
+ POPService |& getline
+ if ($1 != "+OK") exit
+ print "quit" |& POPService
+ RS = "\r\n\\.\r\n"
+ POPService |& getline
+ print $0
+ close(POPService)
+}
diff --git a/doc/ChangeLog b/doc/ChangeLog
index cdd1d56..7326172 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,7 @@
+2020-12-28 Juergen Kahrs <Juergen.Kahrs@googlemail.com>
+
+ * gawkinet.texi: Update mailpopclient.
+
2020-12-27 Juergen Kahrs <Juergen.Kahrs@googlemail.com>
* gawkinet.texi: Update finger client, add catpipe
diff --git a/doc/gawkinet.info b/doc/gawkinet.info
index 4b41d6f..527f469 100644
--- a/doc/gawkinet.info
+++ b/doc/gawkinet.info
@@ -1027,7 +1027,7 @@ File: gawkinet.info, Node: Email, Next: Web page,
Prev: Setting Up, Up: Usin
The distribution of email is usually done by dedicated email servers
that communicate with your machine using special protocols. In this
-node we show how simple the basic steps are.
+node we show how simple the basic steps are.(1)
To receive email, we use the Post Office Protocol (POP). Sending can
be done with the much older Simple Mail Transfer Protocol (SMTP).
@@ -1071,6 +1071,21 @@ finds this sequence in the mail message, it quits. You
can invoke this
program as often as you like; it does not delete the message it reads,
but instead leaves it on the server.
+ ---------- Footnotes ----------
+
+ (1) No, things are _not_ that simple any more. Things _were_ that
+simple when email was young in the 20th century. These days,
+unencrypted plaintext authentication is usually disallowed on non-secure
+connections. Since encryption of network connections is not supported
+in 'gawk', you should not use 'gawk' to write such scripts. We left
+this node as it is because it demonstrates how application level
+protocols work in principle (a command being issued by the client
+followed by a reply coming back). Unfortunately, modern application
+level protocols are much more flexible in the sequence of actions. For
+example, modern POP3 servers may introduce themselves with an unprompted
+initial line that arrives before the initial command. Dealing with such
+variance is not worth the effort in 'gawk'.
+
File: gawkinet.info, Node: Web page, Next: Primitive Service, Prev: Email,
Up: Using Networking
@@ -4444,35 +4459,36 @@ Ref: Troubleshooting-Footnote-136096
Node: Interacting37053
Node: Setting Up41411
Node: Email45960
-Node: Web page48343
-Ref: Web page-Footnote-151163
-Ref: Web page-Footnote-251361
-Node: Primitive Service51855
-Node: Interacting Service54589
-Ref: Interacting Service-Footnote-163744
-Node: CGI Lib63776
-Node: Simple Server70776
-Ref: Simple Server-Footnote-178578
-Node: Caveats78679
-Node: Challenges79822
-Ref: Challenges-Footnote-188564
-Node: Some Applications and Techniques88665
-Node: PANIC91126
-Node: GETURL92852
-Node: REMCONF95485
-Node: URLCHK100981
-Node: WEBGRAB104825
-Node: STATIST109289
-Ref: STATIST-Footnote-1122437
-Node: MAZE122880
-Node: MOBAGWHO129105
-Ref: MOBAGWHO-Footnote-1143007
-Node: STOXPRED143075
-Node: PROTBASE157367
-Ref: PROTBASE-Footnote-1170534
-Node: Links170649
-Node: GNU Free Documentation License173540
-Node: Index198660
+Ref: Email-Footnote-148382
+Node: Web page49190
+Ref: Web page-Footnote-152010
+Ref: Web page-Footnote-252208
+Node: Primitive Service52702
+Node: Interacting Service55436
+Ref: Interacting Service-Footnote-164591
+Node: CGI Lib64623
+Node: Simple Server71623
+Ref: Simple Server-Footnote-179425
+Node: Caveats79526
+Node: Challenges80669
+Ref: Challenges-Footnote-189411
+Node: Some Applications and Techniques89512
+Node: PANIC91973
+Node: GETURL93699
+Node: REMCONF96332
+Node: URLCHK101828
+Node: WEBGRAB105672
+Node: STATIST110136
+Ref: STATIST-Footnote-1123284
+Node: MAZE123727
+Node: MOBAGWHO129952
+Ref: MOBAGWHO-Footnote-1143854
+Node: STOXPRED143922
+Node: PROTBASE158214
+Ref: PROTBASE-Footnote-1171381
+Node: Links171496
+Node: GNU Free Documentation License174387
+Node: Index199507
End Tag Table
diff --git a/doc/gawkinet.texi b/doc/gawkinet.texi
index 47d9a95..342b067 100644
--- a/doc/gawkinet.texi
+++ b/doc/gawkinet.texi
@@ -1270,7 +1270,21 @@ BEGIN @{
@cindex Simple Mail Transfer Protocol (SMTP)
The distribution of email is usually done by dedicated email servers that
communicate with your machine using special protocols.
-In this @value{SECTION} we show how simple the basic steps are.
+In this @value{SECTION} we show how simple the basic steps are.@footnote{No,
+things are @emph{not} that simple any more. Things @emph{were} that simple
+when email was young in the 20th century. These days, unencrypted plaintext
+authentication is usually disallowed on non-secure connections.
+Since encryption of network connections is not supported in @command{gawk},
+you should not use @command{gawk} to write such scripts.
+We left this @value{SECTION} as it is because it demonstrates how
+application level protocols work in principle (a command being issued
+by the client followed by a reply coming back). Unfortunately, modern
+application level protocols are much more flexible in the sequence of
+actions. For example, modern POP3 servers may introduce themselves
+with an unprompted initial line that arrives before the initial command.
+Dealing with such variance is not worth the effort in @command{gawk}.}
+@c FIXME: This would be the proper place to refer to Arnold's work on
+@c writing SMTP client and server.
To receive email, we use the Post Office Protocol (POP). Sending can
be done with the much older Simple Mail Transfer Protocol (SMTP).
@@ -1285,6 +1299,7 @@ name or password. Replace them in the program and it
shows you the first email the server has in store:
@example
+@c file eg/network/mailpopclient.awk
BEGIN @{
POPService = "/inet/tcp/0/@var{emailhost}/pop3"
RS = ORS = "\r\n"
@@ -1301,6 +1316,7 @@ BEGIN @{
print $0
close(POPService)
@}
+@c endfile
@end example
@cindex RFC 1939
-----------------------------------------------------------------------
Summary of changes:
awklib/eg/network/mailpopclient.awk | 16 ++++++++
doc/ChangeLog | 4 ++
doc/gawkinet.info | 76 ++++++++++++++++++++++---------------
doc/gawkinet.texi | 18 ++++++++-
4 files changed, 83 insertions(+), 31 deletions(-)
create mode 100644 awklib/eg/network/mailpopclient.awk
hooks/post-receive
--
gawk
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [SCM] gawk branch, porting, updated. gawk-4.1.0-4417-g9618c3a,
Arnold Robbins <=