Merge 'iotssl-591-glue-layers' into development
diff --git a/include/mbedtls/config.h b/include/mbedtls/config.h
index ee1a23a..d9b37e0 100644
--- a/include/mbedtls/config.h
+++ b/include/mbedtls/config.h
@@ -1899,10 +1899,14 @@
  *
  * Enable the TCP and UDP over IPv6/IPv4 networking routines.
  *
- * \note This module only works on Unix (including Linux, BSD and OS X) and
- * Windows. For other platforms, you'll want to disable it, and write your
+ * \note This module only works on POSIX/Unix (including Linux, BSD and OS X)
+ * and Windows. For other platforms, you'll want to disable it, and write your
  * own networking callbacks to be passed to \c mbedtls_ssl_set_bio().
  *
+ * \note See also our Knowledge Base article about porting to a new
+ * environment:
+ * https://tls.mbed.org/kb/how-to/how-do-i-port-mbed-tls-to-a-new-environment-OS
+ *
  * Module:  library/net.c
  *
  * This module provides networking routines.
@@ -2251,7 +2255,8 @@
  * By default mbed TLS assumes it is used in a non-threaded environment or that
  * contexts are not shared between threads. If you do intend to use contexts
  * between threads, you will need to enable this layer to prevent race
- * conditions.
+ * conditions. See also our Knowledge Base article about threading:
+ * https://tls.mbed.org/kb/development/thread-safety-and-multi-threading
  *
  * Module:  library/threading.c
  *
@@ -2270,13 +2275,17 @@
  *
  * Enable the semi-portable timing interface.
  *
- * \note The provided implementation only works on Unix (including Linux, BSD
- * and OS X) and Windows. On other platforms, you can either disable that
+ * \note The provided implementation only works on POSIX/Unix (including Linux,
+ * BSD and OS X) and Windows. On other platforms, you can either disable that
  * module and provide your own implementations of the callbacks needed by
  * \c mbedtls_ssl_set_timer_cb() for DTLS, or leave it enabled and provide
  * your own implementation of the whole module by setting
  * \c MBEDTLS_TIMING_ALT in the current file.
  *
+ * \note See also our Knowledge Base article about porting to a new
+ * environment:
+ * https://tls.mbed.org/kb/how-to/how-do-i-port-mbed-tls-to-a-new-environment-OS
+ *
  * Module:  library/timing.c
  * Caller:  library/havege.c
  *
diff --git a/include/mbedtls/ssl.h b/include/mbedtls/ssl.h
index 9bd1051..3072751 100644
--- a/include/mbedtls/ssl.h
+++ b/include/mbedtls/ssl.h
@@ -417,7 +417,7 @@
  * \note           That callback may be either blocking or non-blocking.
  *
  * \param ctx      Context for the send callback (typically a file descriptor)
- * \param buf      Buffer holding the date to send
+ * \param buf      Buffer holding the data to send
  * \param len      Length of the data to send
  *
  * \return         The callback must return the number of bytes sent if any,
@@ -425,7 +425,7 @@
  *                 If performing non-blocking I/O, \c MBEDTLS_ERR_SSL_WANT_WRITE
  *                 must be returned when the operation would block.
  *
- * \note           The callback is allowed to send less bytes than requested.
+ * \note           The callback is allowed to send fewer bytes than requested.
  *                 It must always return the number of bytes actually sent.
  */
 typedef int mbedtls_ssl_send_t( void *ctx,
@@ -447,7 +447,7 @@
  *                 If performing non-blocking I/O, \c MBEDTLS_ERR_SSL_WANT_READ
  *                 must be returned when the operation would block.
  *
- * \note           The callback may receive less bytes than the length of the
+ * \note           The callback may receive fewer bytes than the length of the
  *                 buffer. It must always return the number of bytes actually
  *                 received and written to the buffer.
  */
@@ -473,7 +473,7 @@
  *                 \c MBEDTLS_ERR_SSL_TIMEOUT if the operation timed out,
  *                 \c MBEDTLS_ERR_SSL_WANT_READ if interrupted by a signal.
  *
- * \note           The callback may receive less bytes than the length of the
+ * \note           The callback may receive fewer bytes than the length of the
  *                 buffer. It must always return the number of bytes actually
  *                 received and written to the buffer.
  */
@@ -1102,7 +1102,7 @@
  *
  * \note           See the documentations of \c mbedtls_ssl_sent_t,
  *                 \c mbedtls_ssl_recv_t and \c mbedtls_ssl_recv_timeout_t for
- *                 the convetions those callbacks must follow.
+ *                 the conventions those callbacks must follow.
  *
  * \note           On some platforms, net.c provides \c mbedtls_net_send(),
  *                 \c mbedtls_net_recv() and \c mbedtls_net_recv_timeout()
@@ -1150,6 +1150,7 @@
  *                 here, except if using an event-driven style.
  *
  * \note           See also the "DTLS tutorial" article in our knowledge base.
+ *                 https://tls.mbed.org/kb/how-to/dtls-tutorial
  */
 void mbedtls_ssl_set_timer_cb( mbedtls_ssl_context *ssl,
                                void *p_timer,