]> git.sur5r.net Git - freertos/blob - FreeRTOS-Labs/Demo/FreeRTOS_IoT_Libraries/include/aws_iot_setup_check.h
0fefe0305df462f78bf92c7cbc45e80edd3919a2
[freertos] / FreeRTOS-Labs / Demo / FreeRTOS_IoT_Libraries / include / aws_iot_setup_check.h
1 /*\r
2  * FreeRTOS Kernel V10.2.1\r
3  * Copyright (C) 2019 Amazon.com, Inc. or its affiliates.  All Rights Reserved.\r
4  *\r
5  * Permission is hereby granted, free of charge, to any person obtaining a copy of\r
6  * this software and associated documentation files (the "Software"), to deal in\r
7  * the Software without restriction, including without limitation the rights to\r
8  * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\r
9  * the Software, and to permit persons to whom the Software is furnished to do so,\r
10  * subject to the following conditions:\r
11  *\r
12  * The above copyright notice and this permission notice shall be included in all\r
13  * copies or substantial portions of the Software.\r
14  *\r
15  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r
16  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\r
17  * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\r
18  * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\r
19  * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r
20  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
21  *\r
22  * http://www.FreeRTOS.org\r
23  * http://aws.amazon.com/freertos\r
24  *\r
25  * 1 tab == 4 spaces!\r
26  */\r
27 \r
28 /*\r
29  * This file performs the configuration check at preprocessor time to make sure\r
30  * the credentials are defined. If credentials are not set, users will\r
31  * immediately be guided to the getting started documentation for proper setup.\r
32  *\r
33  * This is meant to be included after the credential define.\r
34  * e.g., a .c file that establishes a MQTT connection:\r
35  * #include "aws_iot_demo_profile.h" // This file includes the credential for user to define\r
36  * #include "aws_iot_setup_check.h"  // This file make sure credentials are defined\r
37  */\r
38 \r
39 #ifndef IOT_CONFIGCHECK_H\r
40 #define IOT_CONFIGCHECK_H\r
41 \r
42 /*\r
43  * TLS is enabled by default. This is config to zero for *_plain_text demo.\r
44  */\r
45 #ifndef democonfigENABLE_TLS\r
46     #define democonfigENABLE_TLS    1\r
47 #endif\r
48 \r
49 /*\r
50  * Mutual authentication is enabled by default. This is config to zero for\r
51  * *_plain_text and *_basic_tls_server demo.\r
52  */\r
53 #ifndef democonfigENABLE_MUTUAL_AUTH\r
54     #define democonfigENABLE_MUTUAL_AUTH    1\r
55 #endif\r
56 \r
57 /*\r
58  * Credential setup check.\r
59  */\r
60 #if defined( AWS_IOT_DEMO_PROFILE_H )\r
61     #ifndef awsiotdemoprofileAWS_ENDPOINT\r
62         #error ACTION REQUIRED: Please ensure you have awsiotdemoprofileAWS_ENDPOINT (in aws_iot_demo_profile.h) configured. Refer to https://www.freertos.org/mqtt/preconfiguredexamplesMA.html for proper setup.\r
63     #endif\r
64     #ifndef awsiotdemoprofileCLIENT_IDENTIFIER\r
65         #error ACTION REQUIRED: Please ensure you have awsiotdemoprofileCLIENT_IDENTIFIER (in aws_iot_demo_profile.h) configured. Refer to https://www.freertos.org/mqtt/preconfiguredexamplesMA.html for proper setup.\r
66     #endif\r
67     #if ( democonfigENABLE_TLS )\r
68         #if ( democonfigENABLE_MUTUAL_AUTH )\r
69             #ifndef awsiotdemoprofileCLIENT_CERTIFICATE_PEM\r
70                 #error ACTION REQUIRED: Please ensure you have awsiotdemoprofileCLIENT_CERTIFICATE_PEM (in aws_iot_demo_profile.h) configured as required for mutual authentication. https://www.freertos.org/mqtt/preconfiguredexamplesMA.html for proper setup.\r
71             #endif\r
72             #ifndef awsiotdemoprofileCLIENT_PRIVATE_KEY_PEM\r
73                 #error ACTION REQUIRED: Please ensure you have awsiotdemoprofileCLIENT_PRIVATE_KEY_PEM (in aws_iot_demo_profile.h) configured as required for mutual authentication. https://www.freertos.org/mqtt/preconfiguredexamplesMA.html for proper setup.\r
74             #endif\r
75         #endif\r
76     #endif /* if ( democonfigENABLE_TLS ) */\r
77 #endif /* if defined( AWS_IOT_DEMO_PROFILE_H ) */\r
78 \r
79 #endif /* IOT_CONFIGCHECK_H */\r