[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gawk-diffs] [SCM] gawk branch, gawk-4.1-stable, updated. gawk-4.1.0-842
From: |
Arnold Robbins |
Subject: |
[gawk-diffs] [SCM] gawk branch, gawk-4.1-stable, updated. gawk-4.1.0-842-g74824b0 |
Date: |
Mon, 21 Mar 2016 03:45:09 +0000 |
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, gawk-4.1-stable has been updated
via 74824b0b51cacfc952abb11428c4108afb9e7194 (commit)
from f32d60edb8a3325e27953787b7fb9f051423b6bc (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=74824b0b51cacfc952abb11428c4108afb9e7194
commit 74824b0b51cacfc952abb11428c4108afb9e7194
Author: Arnold D. Robbins <address@hidden>
Date: Mon Mar 21 05:44:51 2016 +0200
Update doc on UDP client.
diff --git a/doc/ChangeLog b/doc/ChangeLog
index 2a5fbb2..a8f13ab 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,8 @@
+2016-03-21 Arnold D. Robbins <address@hidden>
+
+ * gawkinet.texi: Update UDP client and discussion, update
+ modification dates and gawk versions.
+
2016-03-11 Arnold D. Robbins <address@hidden>
* gawktexi.in: Improve system() return values documentation.
diff --git a/doc/gawkinet.info b/doc/gawkinet.info
index 81837aa..5b989fb 100644
--- a/doc/gawkinet.info
+++ b/doc/gawkinet.info
@@ -1,11 +1,11 @@
-This is gawkinet.info, produced by makeinfo version 5.2 from
+This is gawkinet.info, produced by makeinfo version 6.1 from
gawkinet.texi.
-This is Edition 1.3 of 'TCP/IP Internetworking with 'gawk'', for the
-4.0.0 (or later) version of the GNU implementation of AWK.
+This is Edition 1.4 of 'TCP/IP Internetworking with 'gawk'', for the
+4.1.4 (or later) version of the GNU implementation of AWK.
- Copyright (C) 2000, 2001, 2002, 2004, 2009, 2010 Free Software
+ Copyright (C) 2000, 2001, 2002, 2004, 2009, 2010, 2016 Free Software
Foundation, Inc.
@@ -29,11 +29,11 @@ END-INFO-DIR-ENTRY
This file documents the networking features in GNU 'awk'.
- This is Edition 1.3 of 'TCP/IP Internetworking with 'gawk'', for the
-4.0.0 (or later) version of the GNU implementation of AWK.
+ This is Edition 1.4 of 'TCP/IP Internetworking with 'gawk'', for the
+4.1.4 (or later) version of the GNU implementation of AWK.
- Copyright (C) 2000, 2001, 2002, 2004, 2009, 2010 Free Software
+ Copyright (C) 2000, 2001, 2002, 2004, 2009, 2010, 2016 Free Software
Foundation, Inc.
@@ -60,11 +60,11 @@ General Introduction
This file documents the networking features in GNU Awk ('gawk') version
4.0 and later.
- This is Edition 1.3 of 'TCP/IP Internetworking with 'gawk'', for the
-4.0.0 (or later) version of the GNU implementation of AWK.
+ This is Edition 1.4 of 'TCP/IP Internetworking with 'gawk'', for the
+4.1.4 (or later) version of the GNU implementation of AWK.
- Copyright (C) 2000, 2001, 2002, 2004, 2009, 2010 Free Software
+ Copyright (C) 2000, 2001, 2002, 2004, 2009, 2010, 2016 Free Software
Foundation, Inc.
@@ -477,8 +477,8 @@ File: gawkinet.info, Node: Gawk Special Files, Next: TCP
Connecting, Prev: Us
The '|&' operator for use in communicating with a "coprocess" is
described in *note Two-way Communications With Another Process:
-(gawk)Two-way I/O. It shows how to do two-way I/O to a separate
-process, sending it data with 'print' or 'printf' and reading data with
+(gawk)Two-way I/O. It shows how to do two-way I/O to a separate process,
+sending it data with 'print' or 'printf' and reading data with
'getline'. If you haven't read it already, you should detour there to
do so.
@@ -686,17 +686,33 @@ started first:
# Client
BEGIN {
+ print "hi!" |& "/inet/udp/0/localhost/8888"
"/inet/udp/0/localhost/8888" |& getline
print $0
close("/inet/udp/0/localhost/8888")
}
+ In the case of UDP, the initial 'print' command is the one that
+actually sends data so that there is a connection. UDP and "connection"
+sounds strange to anyone who has learned that UDP is a connectionless
+protocol. Here, "connection" means that the 'connect()' system call has
+completed its work and completed the "association" between a certain
+socket and an IP address. Thus there are subtle differences between
+'connect()' for TCP and UDP; see the man page for details.(1)
+
UDP cannot guarantee that the datagrams at the receiving end will
arrive in exactly the same order they were sent. Some datagrams could
be lost, some doubled, and some out of order. But no overhead is
necessary to accomplish this. This unreliable behavior is good enough
for tasks such as data acquisition, logging, and even stateless services
-like NFS.
+like the original versions of NFS.
+
+ ---------- Footnotes ----------
+
+ (1) This subtlety is just one of many details that are hidden in the
+socket API, invisible and intractable for the 'gawk' user. The
+developers are currently considering how to rework the network
+facilities to make them easier to understand and use.
File: gawkinet.info, Node: TCP Connecting, Next: Troubleshooting, Prev:
Gawk Special Files, Up: Using Networking
@@ -4143,10 +4159,10 @@ Index
[index ]
* Menu:
-* '/inet/' files ('gawk'): Gawk Special Files. (line 34)
-* '/inet/tcp' special files ('gawk'): File /inet/tcp. (line 6)
-* '/inet/udp' special files ('gawk'): File /inet/udp. (line 6)
-* '|' (vertical bar), '|&' operator (I/O): TCP Connecting. (line 25)
+* /inet/ files (gawk): Gawk Special Files. (line 34)
+* /inet/tcp special files (gawk): File /inet/tcp. (line 6)
+* /inet/udp special files (gawk): File /inet/udp. (line 6)
+* | (vertical bar), |& operator (I/O): TCP Connecting. (line 25)
* advanced features, network connections: Troubleshooting. (line 6)
* agent: Challenges. (line 75)
* agent <1>: MOBAGWHO. (line 6)
@@ -4166,7 +4182,7 @@ Index
* Common Gateway Interface, See CGI: Web page. (line 45)
* Computational Biology: PROTBASE. (line 227)
* contest: Challenges. (line 6)
-* 'cron' utility: STOXPRED. (line 23)
+* cron utility: STOXPRED. (line 23)
* CSV format: STOXPRED. (line 128)
* Dow Jones Industrial Index: STOXPRED. (line 44)
* ELIZA program: Simple Server. (line 11)
@@ -4176,22 +4192,22 @@ Index
* FDL (Free Documentation License): GNU Free Documentation License.
(line 6)
* filenames, for network access: Gawk Special Files. (line 29)
-* files, '/inet/' ('gawk'): Gawk Special Files. (line 34)
-* files, '/inet/tcp' ('gawk'): File /inet/tcp. (line 6)
-* files, '/inet/udp' ('gawk'): File /inet/udp. (line 6)
-* 'finger' utility: Setting Up. (line 22)
+* files, /inet/ (gawk): Gawk Special Files. (line 34)
+* files, /inet/tcp (gawk): File /inet/tcp. (line 6)
+* files, /inet/udp (gawk): File /inet/udp. (line 6)
+* finger utility: Setting Up. (line 22)
* Free Documentation License (FDL): GNU Free Documentation License.
(line 6)
* FTP (File Transfer Protocol): Basic Protocols. (line 45)
-* 'gawk', networking: Using Networking. (line 6)
-* 'gawk', networking, connections: Special File Fields. (line 53)
-* 'gawk', networking, connections <1>: TCP Connecting. (line 6)
-* 'gawk', networking, filenames: Gawk Special Files. (line 29)
-* 'gawk', networking, See Also email: Email. (line 6)
-* 'gawk', networking, service, establishing: Setting Up. (line 6)
-* 'gawk', networking, troubleshooting: Caveats. (line 6)
-* 'gawk', web and, See web service: Interacting Service. (line 6)
-* 'getline' command: TCP Connecting. (line 11)
+* gawk, networking: Using Networking. (line 6)
+* gawk, networking, connections: Special File Fields. (line 53)
+* gawk, networking, connections <1>: TCP Connecting. (line 6)
+* gawk, networking, filenames: Gawk Special Files. (line 29)
+* gawk, networking, See Also email: Email. (line 6)
+* gawk, networking, service, establishing: Setting Up. (line 6)
+* gawk, networking, troubleshooting: Caveats. (line 6)
+* gawk, web and, See web service: Interacting Service. (line 6)
+* getline command: TCP Connecting. (line 11)
* GETURL program: GETURL. (line 6)
* GIF image format: Web page. (line 45)
* GIF image format <1>: STATIST. (line 6)
@@ -4218,7 +4234,7 @@ Index
* image format: STATIST. (line 6)
* images, in web pages: Interacting Service. (line 189)
* images, retrieving over networks: Web page. (line 45)
-* input/output, two-way, See Also 'gawk', networking: Gawk Special Files.
+* input/output, two-way, See Also gawk, networking: Gawk Special Files.
(line 19)
* Internet, See networks: Interacting. (line 48)
* JavaScript: STATIST. (line 56)
@@ -4238,22 +4254,22 @@ Index
* NCBI, National Center for Biotechnology Information: PROTBASE.
(line 6)
* network type field: Special File Fields. (line 11)
-* networks, 'gawk' and: Using Networking. (line 6)
-* networks, 'gawk' and, connections: Special File Fields. (line 53)
-* networks, 'gawk' and, connections <1>: TCP Connecting. (line 6)
-* networks, 'gawk' and, filenames: Gawk Special Files. (line 29)
-* networks, 'gawk' and, See Also email: Email. (line 6)
-* networks, 'gawk' and, service, establishing: Setting Up. (line 6)
-* networks, 'gawk' and, troubleshooting: Caveats. (line 6)
+* networks, gawk and: Using Networking. (line 6)
+* networks, gawk and, connections: Special File Fields. (line 53)
+* networks, gawk and, connections <1>: TCP Connecting. (line 6)
+* networks, gawk and, filenames: Gawk Special Files. (line 29)
+* networks, gawk and, See Also email: Email. (line 6)
+* networks, gawk and, service, establishing: Setting Up. (line 6)
+* networks, gawk and, troubleshooting: Caveats. (line 6)
* networks, ports, reserved: Setting Up. (line 37)
* networks, ports, specifying: Special File Fields. (line 24)
* networks, See Also web pages: PANIC. (line 6)
* Numerical Recipes: STATIST. (line 24)
-* 'ORS' variable, HTTP and: Web page. (line 29)
-* 'ORS' variable, POP and: Email. (line 36)
+* ORS variable, HTTP and: Web page. (line 29)
+* ORS variable, POP and: Email. (line 36)
* PANIC program: PANIC. (line 6)
* Perl: Using Networking. (line 14)
-* Perl, 'gawk' networking and: Using Networking. (line 24)
+* Perl, gawk networking and: Using Networking. (line 24)
* Perlis, Alan: MAZE. (line 6)
* pipes, networking and: TCP Connecting. (line 30)
* PNG image format: Web page. (line 45)
@@ -4267,15 +4283,15 @@ Index
* protocol field: Special File Fields. (line 17)
* PS image format: STATIST. (line 6)
* Python: Using Networking. (line 14)
-* Python, 'gawk' networking and: Using Networking. (line 24)
+* Python, gawk networking and: Using Networking. (line 24)
* record separators, HTTP and: Web page. (line 29)
* record separators, POP and: Email. (line 36)
* REMCONF program: REMCONF. (line 6)
* remoteport field: Gawk Special Files. (line 34)
* robot: Challenges. (line 84)
* robot <1>: WEBGRAB. (line 6)
-* 'RS' variable, HTTP and: Web page. (line 29)
-* 'RS' variable, POP and: Email. (line 36)
+* RS variable, HTTP and: Web page. (line 29)
+* RS variable, POP and: Email. (line 36)
* servers: Making Connections. (line 14)
* servers <1>: Setting Up. (line 22)
* servers, as hosts: Special File Fields. (line 34)
@@ -4288,8 +4304,8 @@ Index
* STOXPRED program: STOXPRED. (line 6)
* synchronous communications: Making Connections. (line 35)
* Tcl/Tk: Using Networking. (line 14)
-* Tcl/Tk, 'gawk' and: Using Networking. (line 24)
-* Tcl/Tk, 'gawk' and <1>: Some Applications and Techniques.
+* Tcl/Tk, gawk and: Using Networking. (line 24)
+* Tcl/Tk, gawk and <1>: Some Applications and Techniques.
(line 22)
* TCP (Transmission Control Protocol): Using Networking. (line 29)
* TCP (Transmission Control Protocol) <1>: File /inet/tcp. (line 6)
@@ -4300,7 +4316,7 @@ Index
* TCP/IP, protocols, selecting: Special File Fields. (line 17)
* TCP/IP, sockets and: Gawk Special Files. (line 19)
* Transmission Control Protocol, See TCP: Using Networking. (line 29)
-* troubleshooting, 'gawk', networks: Caveats. (line 6)
+* troubleshooting, gawk, networks: Caveats. (line 6)
* troubleshooting, networks, connections: Troubleshooting. (line 6)
* troubleshooting, networks, timeouts: Caveats. (line 18)
* UDP (User Datagram Protocol): File /inet/udp. (line 6)
@@ -4308,7 +4324,7 @@ Index
* Unix, network ports and: Setting Up. (line 37)
* URLCHK program: URLCHK. (line 6)
* User Datagram Protocol, See UDP: File /inet/udp. (line 6)
-* vertical bar ('|'), '|&' operator (I/O): TCP Connecting. (line 25)
+* vertical bar (|), |& operator (I/O): TCP Connecting. (line 25)
* VRML: MAZE. (line 6)
* web browsers, See web service: Interacting Service. (line 6)
* web pages: Web page. (line 6)
@@ -4326,57 +4342,58 @@ Index
Tag Table:
-Node: Top2010
-Node: Preface5647
-Node: Introduction7022
-Node: Stream Communications8048
-Node: Datagram Communications9222
-Node: The TCP/IP Protocols10852
-Ref: The TCP/IP Protocols-Footnote-111536
-Node: Basic Protocols11693
-Ref: Basic Protocols-Footnote-113738
-Node: Ports13767
-Node: Making Connections15174
-Ref: Making Connections-Footnote-117732
-Ref: Making Connections-Footnote-217779
-Node: Using Networking17960
-Node: Gawk Special Files20283
-Node: Special File Fields22093
-Ref: table-inet-components25986
-Node: Comparing Protocols27295
-Node: File /inet/tcp27829
-Node: File /inet/udp28857
-Node: TCP Connecting29960
-Node: Troubleshooting32306
-Ref: Troubleshooting-Footnote-135365
-Node: Interacting35938
-Node: Setting Up38676
-Node: Email42179
-Node: Web page44511
-Ref: Web page-Footnote-147328
-Node: Primitive Service47526
-Node: Interacting Service50267
-Ref: Interacting Service-Footnote-159424
-Node: CGI Lib59456
-Node: Simple Server66420
-Ref: Simple Server-Footnote-174149
-Node: Caveats74250
-Node: Challenges75395
-Node: Some Applications and Techniques84093
-Node: PANIC86554
-Node: GETURL88278
-Node: REMCONF90911
-Node: URLCHK96398
-Node: WEBGRAB100247
-Node: STATIST104707
-Ref: STATIST-Footnote-1116444
-Node: MAZE116889
-Node: MOBAGWHO123088
-Ref: MOBAGWHO-Footnote-1137080
-Node: STOXPRED137135
-Node: PROTBASE151417
-Node: Links164533
-Node: GNU Free Documentation License167966
-Node: Index193086
+Node: Top2022
+Node: Preface5665
+Node: Introduction7040
+Node: Stream Communications8066
+Node: Datagram Communications9240
+Node: The TCP/IP Protocols10870
+Ref: The TCP/IP Protocols-Footnote-111554
+Node: Basic Protocols11711
+Ref: Basic Protocols-Footnote-113756
+Node: Ports13785
+Node: Making Connections15192
+Ref: Making Connections-Footnote-117750
+Ref: Making Connections-Footnote-217797
+Node: Using Networking17978
+Node: Gawk Special Files20301
+Node: Special File Fields22110
+Ref: table-inet-components26003
+Node: Comparing Protocols27312
+Node: File /inet/tcp27846
+Node: File /inet/udp28874
+Ref: File /inet/udp-Footnote-130573
+Node: TCP Connecting30827
+Node: Troubleshooting33173
+Ref: Troubleshooting-Footnote-136232
+Node: Interacting36805
+Node: Setting Up39543
+Node: Email43046
+Node: Web page45378
+Ref: Web page-Footnote-148195
+Node: Primitive Service48393
+Node: Interacting Service51134
+Ref: Interacting Service-Footnote-160291
+Node: CGI Lib60323
+Node: Simple Server67287
+Ref: Simple Server-Footnote-175016
+Node: Caveats75117
+Node: Challenges76262
+Node: Some Applications and Techniques84960
+Node: PANIC87421
+Node: GETURL89145
+Node: REMCONF91778
+Node: URLCHK97265
+Node: WEBGRAB101114
+Node: STATIST105574
+Ref: STATIST-Footnote-1117311
+Node: MAZE117756
+Node: MOBAGWHO123955
+Ref: MOBAGWHO-Footnote-1137947
+Node: STOXPRED138002
+Node: PROTBASE152284
+Node: Links165400
+Node: GNU Free Documentation License168833
+Node: Index193953
End Tag Table
diff --git a/doc/gawkinet.texi b/doc/gawkinet.texi
index 12274d0..0e0632a 100644
--- a/doc/gawkinet.texi
+++ b/doc/gawkinet.texi
@@ -61,18 +61,19 @@
@c pages, I think this is the right decision. ADR.
@set TITLE TCP/IP Internetworking with @command{gawk}
address@hidden EDITION 1.3
address@hidden UPDATE-MONTH December, 2010
address@hidden EDITION 1.4
address@hidden UPDATE-MONTH March, 2016
@c gawk versions:
address@hidden VERSION 4.0
address@hidden PATCHLEVEL 0
address@hidden VERSION 4.1
address@hidden PATCHLEVEL 4
@copying
This is Edition @value{EDITION} of @address@hidden,
for the @address@hidden (or later) version of the GNU
implementation of AWK.
@sp 2
-Copyright (C) 2000, 2001, 2002, 2004, 2009, 2010 Free Software Foundation, Inc.
+Copyright (C) 2000, 2001, 2002, 2004, 2009, 2010, 2016
+Free Software Foundation, Inc.
@sp 2
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
@@ -831,17 +832,33 @@ The receiver is almost identical to the TCP receiver:
@example
# Client
BEGIN @{
+ print "hi!" |& "/inet/udp/0/localhost/8888"
"/inet/udp/0/localhost/8888" |& getline
print $0
close("/inet/udp/0/localhost/8888")
@}
@end example
+In the case of UDP, the initial @code{print} command is the one
+that actually sends data so that there is a connection.
+UDP and ``connection'' sounds strange to anyone
+who has learned that UDP is a connectionless protocol.
+Here, ``connection'' means that the @code{connect()} system call
+has completed its work and completed the ``association''
+between a certain socket and an IP address. Thus there are
+subtle differences between @code{connect()} for TCP and UDP;
+see the man page for address@hidden subtlety
+is just one of many details that are hidden in the socket
+API, invisible and intractable for the @command{gawk} user.
+The developers are currently considering how to rework the
+network facilities to make them easier to understand and use.}
+
UDP cannot guarantee that the datagrams at the receiving end will arrive in
exactly
the same order they were sent. Some datagrams could be
lost, some doubled, and some out of order. But no overhead is necessary to
accomplish this. This unreliable behavior is good enough for tasks
-such as data acquisition, logging, and even stateless services like NFS.
+such as data acquisition, logging, and even stateless services like
+the original versions of NFS.
@node TCP Connecting, Troubleshooting, Gawk Special Files, Using Networking
@section Establishing a TCP Connection
-----------------------------------------------------------------------
Summary of changes:
doc/ChangeLog | 5 +
doc/gawkinet.info | 219 ++++++++++++++++++++++++++++------------------------
doc/gawkinet.texi | 29 ++++++--
3 files changed, 146 insertions(+), 107 deletions(-)
hooks/post-receive
--
gawk
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [gawk-diffs] [SCM] gawk branch, gawk-4.1-stable, updated. gawk-4.1.0-842-g74824b0,
Arnold Robbins <=