| Connectivity Middleware Utilities Library

API Reference | Macros
Middleware utilities enumerated types
Common middleware utilities

## General Description

Cypress middleware APIs return results of type cy_rslt_t and comprise of three parts:

- module base
- type
- error code

Result Format

               Module base             Type    Library specific error code
       +------------------------------+------+------------------------------+
       |CY_RSLT_MODULE_MIDDLEWARE_BASE| 0x2  |           Error Code         |
       +------------------------------+------+------------------------------+
                 14-bits               2-bits            16-bits

    Refer to the macro section of this document for library specific error codes.

The data structure cy_rslt_t is part of cy_result.h located in <core_lib/include>

Module base: This base is derived from CY_RSLT_MODULE_MIDDLEWARE_BASE (defined in cy_result.h) and is an offset of the CY_RSLT_MODULE_MIDDLEWARE_BASE The details of the offset and the middleware base are defined below

Type: This type is defined in cy_result.h and can be one of CY_RSLT_TYPE_FATAL, CY_RSLT_TYPE_ERROR, CY_RSLT_TYPE_WARNING or CY_RSLT_TYPE_INFO. AWS library error codes are of type CY_RSLT_TYPE_ERROR

Library specific error code: These error codes are library specific and defined in macro section of the respetcive libraries

Helper macros used for creating the library specific result are provided as part of cy_result.h

Each middleware module has been reserved with 128 error codes

## API Reference
| generic middleware results/error codes
| List of all the generic result/error codes defined by the connectivity-utilities library.
| TCP/IP socket results/error codes
| List of all the socket result/error codes defined by the connectivity-utilities library.
| TLS results/error codes
| List of all the TLS result/error codes defined by the connectivity-utilities library.

## Macros
#define | CY_RSLT_MODULE_MDNS_BASE CY_RSLT_MODULE_MIDDLEWARE_BASE
| MDNS module base.
#define | CY_RSLT_MODULE_AWS_BASE CY_RSLT_MODULE_MIDDLEWARE_BASE + 1
| AWS IoT module base.
#define | CY_RSLT_MODULE_JSON_BASE CY_RSLT_MODULE_MIDDLEWARE_BASE + 2
| JSON parser module base.
#define | CY_RSLT_MODULE_LINKED_LIST_BASE CY_RSLT_MODULE_MIDDLEWARE_BASE + 3
| Linked list module base.
#define | CY_RSLT_MODULE_COMMAND_CONSOLE_BASE CY_RSLT_MODULE_MIDDLEWARE_BASE + 4
| command console module base
#define | CY_RSLT_MODULE_HTTP_SERVER CY_RSLT_MODULE_MIDDLEWARE_BASE + 5
| HTTP server module base.
#define | CY_RSLT_MODULE_ENTERPRISE_SECURITY_BASE CY_RSLT_MODULE_MIDDLEWARE_BASE + 6
| Enterprise Security base.
#define | CY_RSLT_MODULE_TCPIP_BASE CY_RSLT_MODULE_MIDDLEWARE_BASE + 7
| TCP/IP module base.
#define | CY_RSLT_MODULE_MW_BASE CY_RSLT_MODULE_MIDDLEWARE_BASE + 8
| Generic middleware module base.
#define | CY_RSLT_MODULE_TLS_BASE CY_RSLT_MODULE_MIDDLEWARE_BASE + 9
| TLS module base.
#define | CY_RSLT_MODULE_SECURE_SOCKETS_BASE CY_RSLT_MODULE_MIDDLEWARE_BASE + 10
| Secure Sockets module base.
#define | CY_RSLT_MODULE_WCM_BASE CY_RSLT_MODULE_MIDDLEWARE_BASE + 11
| WiFi Connection Manager (WCM) module base.
#define | CY_RSLT_MODULE_LWIP_WHD_PORT_BASE CY_RSLT_MODULE_MIDDLEWARE_BASE + 12
| lwIP WHD port module base
#define | CY_RSLT_MODULE_OTA_UPDATE_BASE CY_RSLT_MODULE_MIDDLEWARE_BASE + 13
| Over The Air Update Module base (OTA)
#define | CY_RSLT_MODULE_HTTP_CLIENT CY_RSLT_MODULE_MIDDLEWARE_BASE + 14
| HTTP Client module base.