blob: f8d8c6905bf74871fb14ba00e21dd43521c0a6fc [file] [log] [blame]
Paul Bakker37ca75d2011-01-06 12:28:03 +00001/**
Jaeden Amero25facdd2018-01-23 15:36:58 +00002 * \file doc_tcpip.h
3 *
4 * \brief TCP/IP communication module documentation file.
5 */
6/*
Manuel Pégourié-Gonnard8119dad2015-08-06 10:59:26 +02007 *
Bence Szépkúti1e148272020-08-07 13:07:28 +02008 * Copyright The Mbed TLS Contributors
Dave Rodgman16799db2023-11-02 19:47:20 +00009 * SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
Paul Bakker37ca75d2011-01-06 12:28:03 +000010 */
11
12/**
13 * @addtogroup tcpip_communication_module TCP/IP communication module
Paul Bakkerdcbfdcc2013-09-10 16:16:50 +020014 *
Paul Bakker37ca75d2011-01-06 12:28:03 +000015 * The TCP/IP communication module provides for a channel of
Paul Bakkerdcbfdcc2013-09-10 16:16:50 +020016 * communication for the \link ssltls_communication_module SSL/TLS communication
17 * module\endlink to use.
18 * In the TCP/IP-model it provides for communication up to the Transport
19 * (or Host-to-host) layer.
Paul Bakker37ca75d2011-01-06 12:28:03 +000020 * SSL/TLS resides on top of that, in the Application layer, and makes use of
21 * its basic provisions:
Manuel Pégourié-Gonnard151dc772015-05-14 13:55:51 +020022 * - listening on a port (see \c mbedtls_net_bind()).
23 * - accepting a connection (through \c mbedtls_net_accept()).
24 * - read/write (through \c mbedtls_net_recv()/\c mbedtls_net_send()).
25 * - close a connection (through \c mbedtls_net_close()).
Paul Bakker37ca75d2011-01-06 12:28:03 +000026 *
Paul Bakkerdcbfdcc2013-09-10 16:16:50 +020027 * This way you have the means to, for example, implement and use an UDP or
Paul Bakker37ca75d2011-01-06 12:28:03 +000028 * IPSec communication solution as a basis.
Paul Bakkerdcbfdcc2013-09-10 16:16:50 +020029 *
Paul Bakker37ca75d2011-01-06 12:28:03 +000030 * This module can be used at server- and clientside to provide a basic
31 * means of communication over the internet.
32 */