summaryrefslogtreecommitdiffstats
path: root/src/lib/asiodns/README
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/asiodns/README')
-rw-r--r--src/lib/asiodns/README10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/lib/asiodns/README b/src/lib/asiodns/README
index e47b166638..e785845342 100644
--- a/src/lib/asiodns/README
+++ b/src/lib/asiodns/README
@@ -5,11 +5,11 @@ These DNS server and client routines are written using the "stackless
coroutine" pattern invented by Chris Kohlhoff and described at
http://blog.think-async.com/2010/03/potted-guide-to-stackless-coroutines.html.
This is intended to simplify development a bit, since it allows the
-routines to be written in a straightfowrard step-step-step fashion rather
+routines to be written in a straightforward step-step-step fashion rather
than as a complex chain of separate handler functions.
Coroutine objects (i.e., UDPServer, TCPServer and IOFetch) are objects
-with reenterable operator() members. When an instance of one of these
+with reentrant operator() members. When an instance of one of these
classes is called as a function, it resumes at the position where it left
off. Thus, a UDPServer can issue an asynchronous I/O call and specify
itself as the handler object; when the call completes, the UDPServer
@@ -47,7 +47,7 @@ In an authoritative server, the DNSLookup implementation would examine
the query, look up the answer, then call "resume". (See the diagram
in doc/auth_process.jpg.)
-In a recursive server, the DNSLookup impelemtation would initiate a
+In a recursive server, the DNSLookup implementation would initiate a
DNSQuery, which in turn would be responsible for calling the server's
"resume" method. (See the diagram in doc/recursive_process.jpg.)
@@ -89,7 +89,7 @@ fetch logic:
|
IOAsioSocket
|
- +-----+-----+
+ +-----+-----+
| |
UDPSocket TCPSocket
@@ -122,7 +122,7 @@ protocol to use. The sequence is:
if (! synchronous) {
YIELD;
}
- YIELD asyncSend(query) // Send query
+ YIELD asyncSend(query) // Send query
do {
YIELD asyncReceive(response) // Read response
} while (! complete(response))