├── .metadata
├── .lock
├── .plugins
│ ├── org.eclipse.rse.ui
│ │ └── .log
│ ├── org.eclipse.rse.core
│ │ ├── .log
│ │ ├── initializerMarks
│ │ │ └── org.eclipse.rse.internal.core.RSELocalConnectionInitializer.mark
│ │ └── profiles
│ │ │ └── PRF.kiki_15
│ │ │ ├── node.properties
│ │ │ ├── H.local_16
│ │ │ └── node.properties
│ │ │ └── FP.local.files_0
│ │ │ └── node.properties
│ ├── org.eclipse.cdt.make.core
│ │ ├── specs.c
│ │ └── specs.cpp
│ ├── org.eclipse.cdt.managedbuilder.core
│ │ └── spec.c
│ ├── com.st.stm32cube.ide.mcu.livewatch
│ │ ├── saved_expr.dat
│ │ └── params.dat
│ ├── org.eclipse.core.resources
│ │ ├── .root
│ │ │ ├── .indexes
│ │ │ │ ├── history.version
│ │ │ │ ├── properties.version
│ │ │ │ └── properties.index
│ │ │ └── 2.tree
│ │ ├── .safetable
│ │ │ └── org.eclipse.core.resources
│ │ └── .projects
│ │ │ └── STM32F4_HAL_ETH_MQTT_CLIENT
│ │ │ ├── .markers
│ │ │ ├── .location
│ │ │ └── .indexes
│ │ │ └── properties.index
│ ├── com.st.stm32cube.ide.mcu.informationcenter
│ │ └── 1.2.0.201912201802
│ ├── org.eclipse.core.runtime
│ │ └── .settings
│ │ │ ├── org.eclipse.ui.prefs
│ │ │ ├── org.eclipse.core.resources.prefs
│ │ │ ├── org.eclipse.cdt.dsf.ui.prefs
│ │ │ ├── org.eclipse.ui.editors.prefs
│ │ │ ├── org.eclipse.rse.ui.prefs
│ │ │ ├── com.st.stm32cube.ide.mcu.ide.oss.prefs
│ │ │ ├── org.eclipse.cdt.core.prj-STM32F4_HAL_ETH_MQTT_CLIENT.prefs
│ │ │ ├── org.eclipse.cdt.ui.prefs
│ │ │ ├── org.eclipse.rse.core.prefs
│ │ │ ├── org.eclipse.ui.ide.prefs
│ │ │ ├── org.eclipse.ui.workbench.prefs
│ │ │ ├── org.eclipse.launchbar.core.prefs
│ │ │ ├── org.eclipse.cdt.debug.core.prefs
│ │ │ ├── org.eclipse.debug.core.prefs
│ │ │ ├── org.eclipse.ui.navigator.prefs
│ │ │ ├── org.eclipse.debug.ui.prefs
│ │ │ └── org.eclipse.cdt.managedbuilder.core.prefs
│ ├── org.eclipse.cdt.core
│ │ ├── .log
│ │ └── STM32F4_HAL_ETH_MQTT_CLIENT.1588253397719.pdom
│ ├── org.eclipse.cdt.make.ui
│ │ └── dialog_settings.xml
│ ├── org.eclipse.cdt.ui
│ │ ├── dialog_settings.xml
│ │ ├── global-build.log
│ │ └── STM32F4_HAL_ETH_MQTT_CLIENT.build.log
│ ├── org.eclipse.ui.workbench
│ │ ├── workingsets.xml
│ │ └── dialog_settings.xml
│ ├── org.eclipse.ui.ide
│ │ └── dialog_settings.xml
│ └── org.eclipse.debug.ui
│ │ └── launchConfigurationHistory.xml
├── version.ini
├── .ide.log
├── .log4j.xml
└── .log
├── .gitattributes
├── STM32F4_HAL_ETH_MQTT_CLIENT
├── Drivers
│ ├── CMSIS
│ │ ├── Device
│ │ │ └── ST
│ │ │ │ └── STM32F4xx
│ │ │ │ └── Include
│ │ │ │ └── stm32f4xx.h
│ │ └── Include
│ │ │ ├── cmsis_version.h
│ │ │ └── tz_context.h
│ └── STM32F4xx_HAL_Driver
│ │ └── Inc
│ │ ├── stm32f4xx_hal_flash_ramfunc.h
│ │ └── stm32f4xx_hal_dma_ex.h
├── Middlewares
│ └── Third_Party
│ │ ├── LwIP
│ │ ├── src
│ │ │ ├── include
│ │ │ │ ├── netif
│ │ │ │ │ ├── etharp.h
│ │ │ │ │ ├── ppp
│ │ │ │ │ │ ├── chap-md5.h
│ │ │ │ │ │ ├── chap_ms.h
│ │ │ │ │ │ └── ecp.h
│ │ │ │ │ ├── zepif.h
│ │ │ │ │ ├── ethernet.h
│ │ │ │ │ ├── lowpan6.h
│ │ │ │ │ ├── lowpan6_ble.h
│ │ │ │ │ ├── slipif.h
│ │ │ │ │ └── lowpan6_common.h
│ │ │ │ ├── lwip
│ │ │ │ │ ├── apps
│ │ │ │ │ │ ├── snmp_snmpv2_usm.h
│ │ │ │ │ │ ├── snmp_snmpv2_framework.h
│ │ │ │ │ │ ├── netbiosns.h
│ │ │ │ │ │ ├── smtp_opts.h
│ │ │ │ │ │ ├── netbiosns_opts.h
│ │ │ │ │ │ ├── mdns_priv.h
│ │ │ │ │ │ ├── altcp_tls_mbedtls_opts.h
│ │ │ │ │ │ ├── mdns_opts.h
│ │ │ │ │ │ ├── sntp.h
│ │ │ │ │ │ ├── altcp_proxyconnect.h
│ │ │ │ │ │ ├── snmp_mib2.h
│ │ │ │ │ │ ├── tftp_opts.h
│ │ │ │ │ │ └── mqtt_opts.h
│ │ │ │ │ ├── prot
│ │ │ │ │ │ ├── ip.h
│ │ │ │ │ │ ├── udp.h
│ │ │ │ │ │ ├── mld6.h
│ │ │ │ │ │ ├── iana.h
│ │ │ │ │ │ ├── igmp.h
│ │ │ │ │ │ ├── ieee.h
│ │ │ │ │ │ └── autoip.h
│ │ │ │ │ ├── ethip6.h
│ │ │ │ │ ├── if_api.h
│ │ │ │ │ ├── mem.h
│ │ │ │ │ ├── priv
│ │ │ │ │ │ └── raw_priv.h
│ │ │ │ │ ├── icmp6.h
│ │ │ │ │ ├── altcp_tcp.h
│ │ │ │ │ ├── tcpbase.h
│ │ │ │ │ └── nd6.h
│ │ │ │ └── compat
│ │ │ │ │ ├── posix
│ │ │ │ │ ├── netdb.h
│ │ │ │ │ ├── arpa
│ │ │ │ │ │ └── inet.h
│ │ │ │ │ ├── sys
│ │ │ │ │ │ └── socket.h
│ │ │ │ │ └── net
│ │ │ │ │ │ └── if.h
│ │ │ │ │ └── stdc
│ │ │ │ │ └── errno.h
│ │ │ ├── core
│ │ │ │ ├── ipv6
│ │ │ │ │ └── inet6.c
│ │ │ │ └── altcp_alloc.c
│ │ │ └── netif
│ │ │ │ └── ppp
│ │ │ │ ├── eui64.c
│ │ │ │ └── pppcrypt.c
│ │ └── system
│ │ │ └── arch
│ │ │ ├── bpstruct.h
│ │ │ ├── epstruct.h
│ │ │ ├── lib.h
│ │ │ ├── cpu.h
│ │ │ ├── perf.h
│ │ │ ├── init.h
│ │ │ ├── sys_arch.h
│ │ │ └── cc.h
│ │ ├── FreeRTOS
│ │ └── Source
│ │ │ └── CMSIS_RTOS
│ │ │ ├── cmsis_os.c
│ │ │ └── cmsis_os.h
│ │ └── MQTT
│ │ ├── MQTTInterface.h
│ │ └── MQTTPacket
│ │ ├── MQTTUnsubscribe.h
│ │ ├── MQTTSubscribe.h
│ │ ├── MQTTPublish.h
│ │ ├── MQTTFormat.h
│ │ └── StackTrace.h
├── .project
├── Inc
│ ├── gpio.h
│ ├── ethernetif.h
│ ├── stm32f4xx_it.h
│ ├── lwip.h
│ └── main.h
├── Src
│ ├── sysmem.c
│ ├── gpio.c
│ ├── stm32f4xx_hal_msp.c
│ └── syscalls.c
└── .settings
│ └── language.settings.xml
├── RemoteSystemsTempFiles
└── .project
└── README.md
/.metadata/.lock:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.rse.ui/.log:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.rse.core/.log:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.cdt.make.core/specs.c:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.cdt.make.core/specs.cpp:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.cdt.managedbuilder.core/spec.c:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.metadata/.plugins/com.st.stm32cube.ide.mcu.livewatch/saved_expr.dat:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.metadata/.plugins/com.st.stm32cube.ide.mcu.informationcenter/1.2.0.201912201802:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
3 |
--------------------------------------------------------------------------------
/.metadata/.plugins/com.st.stm32cube.ide.mcu.livewatch/params.dat:
--------------------------------------------------------------------------------
1 | NUMBER_FORMAT=0
2 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.rse.core/initializerMarks/org.eclipse.rse.internal.core.RSELocalConnectionInitializer.mark:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | showIntro=false
3 |
--------------------------------------------------------------------------------
/.metadata/version.ini:
--------------------------------------------------------------------------------
1 | #Thu Apr 30 23:31:41 KST 2020
2 | org.eclipse.core.runtime=2
3 | org.eclipse.platform=4.13.0.v20190916-1045
4 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | version=1
3 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.dsf.ui.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | useAnnotationsPrefPage=true
3 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | overviewRuler_migration=migrated_3.1
3 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.rse.ui.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | org.eclipse.rse.preferences.order.connections=KIKI.Local
3 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/com.st.stm32cube.ide.mcu.ide.oss.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | project_presentation/setHierarchicalMode=false
3 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.core.prj-STM32F4_HAL_ETH_MQTT_CLIENT.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | indexer/preferenceScope=0
3 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index:
--------------------------------------------------------------------------------
1 | / org.eclipse.core.resources contentCacheState 2 contentCacheTimestamp
1587829570178
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.resources/.root/2.tree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eziya/STM32F4_HAL_ETH_MQTT_CLIENT/HEAD/.metadata/.plugins/org.eclipse.core.resources/.root/2.tree
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.ui.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | spelling_locale_initialized=true
3 | useAnnotationsPrefPage=true
4 | useQuickDiffPrefPage=true
5 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.cdt.core/.log:
--------------------------------------------------------------------------------
1 | *** SESSION 4월 30, 2020 22:29:29.02 --------------------------------------------
2 | *** SESSION 4월 30, 2020 23:31:47.69 --------------------------------------------
3 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.cdt.make.ui/dialog_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eziya/STM32F4_HAL_ETH_MQTT_CLIENT/HEAD/STM32F4_HAL_ETH_MQTT_CLIENT/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/netif/etharp.h:
--------------------------------------------------------------------------------
1 | /* ARP has been moved to core/ipv4, provide this #include for compatibility only */
2 | #include "lwip/etharp.h"
3 | #include "netif/ethernet.h"
4 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eziya/STM32F4_HAL_ETH_MQTT_CLIENT/HEAD/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.cdt.core/STM32F4_HAL_ETH_MQTT_CLIENT.1588253397719.pdom:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eziya/STM32F4_HAL_ETH_MQTT_CLIENT/HEAD/.metadata/.plugins/org.eclipse.cdt.core/STM32F4_HAL_ETH_MQTT_CLIENT.1588253397719.pdom
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS/cmsis_os.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eziya/STM32F4_HAL_ETH_MQTT_CLIENT/HEAD/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS/cmsis_os.c
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS/cmsis_os.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eziya/STM32F4_HAL_ETH_MQTT_CLIENT/HEAD/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS/cmsis_os.h
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.resources/.projects/STM32F4_HAL_ETH_MQTT_CLIENT/.markers:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eziya/STM32F4_HAL_ETH_MQTT_CLIENT/HEAD/.metadata/.plugins/org.eclipse.core.resources/.projects/STM32F4_HAL_ETH_MQTT_CLIENT/.markers
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.rse.core.prefs:
--------------------------------------------------------------------------------
1 | activeuserprofiles=KIKI;Team
2 | eclipse.preferences.version=1
3 | org.eclipse.rse.systemtype.local.systemType.defaultUserId=jihoo
4 | useridperkey=KIKI.Local\=jihoo;
5 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs:
--------------------------------------------------------------------------------
1 | PROBLEMS_FILTERS_MIGRATE=true
2 | TASKS_FILTERS_MIGRATE=true
3 | eclipse.preferences.version=1
4 | platformState=1587829570178
5 | quickStart=false
6 | tipsAndTricks=true
7 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.rse.core/profiles/PRF.kiki_15/node.properties:
--------------------------------------------------------------------------------
1 | # RSE DOM Node
2 | 00-name=KIKI
3 | 01-type=Profile
4 | 03-attr.defaultPrivate=true
5 | 03-attr.isActive=true
6 | 05-ref.00000=FP.local.files_0
7 | 05-ref.00001=H.local_16
8 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.resources/.projects/STM32F4_HAL_ETH_MQTT_CLIENT/.location:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eziya/STM32F4_HAL_ETH_MQTT_CLIENT/HEAD/.metadata/.plugins/org.eclipse.core.resources/.projects/STM32F4_HAL_ETH_MQTT_CLIENT/.location
--------------------------------------------------------------------------------
/.metadata/.ide.log:
--------------------------------------------------------------------------------
1 | 2020-04-30 22:29:31,160 [INFO] Activator:176 -
2 |
3 |
4 | 2020-04-30 22:29:31,162 [INFO] Activator:177 - !SESSION log4j initialized
5 | 2020-04-30 23:31:47,285 [INFO] Activator:176 -
6 |
7 |
8 | 2020-04-30 23:31:47,317 [INFO] Activator:177 - !SESSION log4j initialized
9 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.cdt.ui/dialog_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.cdt.ui/global-build.log:
--------------------------------------------------------------------------------
1 | 23:31:58 **** Clean-only build of configuration Debug for project STM32F4_HAL_ETH_MQTT_CLIENT ****
2 | make -j4 clean
3 | make: *** No rule to make target 'clean'. Stop.
4 | "make -j4 clean" terminated with exit code 2. Build might be incomplete.
5 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RemoteSystemsTempFiles/.project:
--------------------------------------------------------------------------------
1 |
2 |
3 | RemoteSystemsTempFiles
4 |
5 |
6 |
7 |
8 |
9 |
10 | org.eclipse.rse.ui.remoteSystemsTempNature
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.resources/.projects/STM32F4_HAL_ETH_MQTT_CLIENT/.indexes/properties.index:
--------------------------------------------------------------------------------
1 | org.eclipse.cdt.core activeConfiguration Ecom.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.1591738372 pdomName .STM32F4_HAL_ETH_MQTT_CLIENT.1588253397719.pdom org.eclipse.cdt.make.core discoveredScannerConfigFileName STM32F4_HAL_ETH_MQTT_CLIENT.sc
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.cdt.ui/STM32F4_HAL_ETH_MQTT_CLIENT.build.log:
--------------------------------------------------------------------------------
1 | 23:31:58 **** Clean-only build of configuration Debug for project STM32F4_HAL_ETH_MQTT_CLIENT ****
2 | make -j4 clean
3 | make: *** No rule to make target 'clean'. Stop.
4 | "make -j4 clean" terminated with exit code 2. Build might be incomplete.
5 |
6 | 23:31:59 Build Failed. 1 errors, 0 warnings. (took 850ms)
7 |
8 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs:
--------------------------------------------------------------------------------
1 | //org.eclipse.ui.commands/state/com.st.stm32cube.ide.mcu.buildanalyzer.showstate/org.eclipse.ui.commands.radioState=human
2 | //org.eclipse.ui.commands/state/com.st.stm32cube.ide.mcu.debug.swv.core.start_trace/org.eclipse.ui.commands.toggleState=true
3 | //org.eclipse.ui.commands/state/org.eclipse.ui.navigator.resources.nested.changeProjectPresentation/org.eclipse.ui.commands.radioState=false
4 | UIActivities.org.eclipse.cdt.debug.dsfgdbActivity=true
5 | eclipse.preferences.version=1
6 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/apps/snmp_snmpv2_usm.h:
--------------------------------------------------------------------------------
1 | /*
2 | Generated by LwipMibCompiler
3 | */
4 |
5 | #ifndef LWIP_HDR_APPS_SNMP_USER_BASED_SM_MIB_H
6 | #define LWIP_HDR_APPS_SNMP_USER_BASED_SM_MIB_H
7 |
8 | #include "lwip/apps/snmp_opts.h"
9 | #if LWIP_SNMP
10 |
11 | #ifdef __cplusplus
12 | extern "C" {
13 | #endif /* __cplusplus */
14 |
15 | #include "lwip/apps/snmp_core.h"
16 |
17 | extern const struct snmp_mib snmpusmmib;
18 |
19 | #ifdef __cplusplus
20 | }
21 | #endif /* __cplusplus */
22 |
23 | #endif /* LWIP_SNMP */
24 | #endif /* LWIP_HDR_APPS_SNMP_USER_BASED_SM_MIB_H */
25 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.launchbar.core.prefs:
--------------------------------------------------------------------------------
1 | LaunchTargetManager/org.eclipse.launchbar.core.launchTargetType.local,Local/arch=x86_64
2 | LaunchTargetManager/org.eclipse.launchbar.core.launchTargetType.local,Local/name=Local
3 | LaunchTargetManager/org.eclipse.launchbar.core.launchTargetType.local,Local/os=win32
4 | configDescList=org.eclipse.cdt.dsf.gdb.gdbRemotedescriptorType\:STM32F4_HAL_ETH_MQTT_CLIENT Debug
5 | eclipse.preferences.version=1
6 | org.eclipse.cdt.dsf.gdb.gdbRemotedescriptorType\:STM32F4_HAL_ETH_MQTT_CLIENT\ Debug/activeLaunchMode=debug
7 | org.eclipse.cdt.dsf.gdb.gdbRemotedescriptorType\:STM32F4_HAL_ETH_MQTT_CLIENT\ Debug/activeLaunchTarget=null\:---
8 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.debug.core.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | org.eclipse.cdt.debug.core.cDebug.default_source_containers=\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
3 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.core.prefs:
--------------------------------------------------------------------------------
1 | //org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.launch.applicationLaunchType=org.eclipse.cdt.dsf.gdb.launch.localCLaunch,debug,;org.eclipse.cdt.cdi.launch.localCLaunch,run,;
2 | //org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.launch.attachLaunchType=org.eclipse.cdt.dsf.gdb.launch.attachCLaunch,debug,;
3 | //org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.launch.postmortemLaunchType=org.eclipse.cdt.dsf.gdb.launch.coreCLaunch,debug,;
4 | //org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.launch.remoteApplicationLaunchType=org.eclipse.rse.remotecdt.dsf.debug,debug,;
5 | eclipse.preferences.version=1
6 | prefWatchExpressions=\r\n\r\n
7 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # STM32F4_HAL_ETH_MQTT_CLIENT
2 | STM32 + FREERTOS + LWIP + MQTT example
3 |
4 | !!! Updated for STM32CubeIDE 1.9.0
5 | https://github.com/eziya/STM32F4_HAL_LWIP_LAB/tree/master/STM32F4_HAL_ETH_MQTT_CLIENT_NEW
6 |
7 |
8 | 1. Reference
9 | - https://www.eclipse.org/paho/
10 | - https://github.com/eclipse/paho.mqtt.embedded-c
11 | - https://www.instructables.com/id/How-to-implement-embedded-Mqtt-Client-using-W5500-/
12 | - http://blog.naver.com/pcppcp454/221380882726
13 |
14 | 2. Implementation
15 | - Added MQTTInerface.c/h files to port paho MQTT library for STM32 HAL + FREERTOS + LWIP
16 | - Added Socket & Netconn API based port functions for timer and network
17 |
18 | 3. Tutorial & Videos
19 | - Written in Korean : https://blog.naver.com/eziya76/221938551688
20 | - Test video : https://youtu.be/I7lXjgMT5Yo
21 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/.metadata/.log4j.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/apps/snmp_snmpv2_framework.h:
--------------------------------------------------------------------------------
1 | /*
2 | Generated by LwipMibCompiler
3 | */
4 |
5 | #ifndef LWIP_HDR_APPS_SNMP_FRAMEWORK_MIB_H
6 | #define LWIP_HDR_APPS_SNMP_FRAMEWORK_MIB_H
7 |
8 | #include "lwip/apps/snmp_opts.h"
9 | #if LWIP_SNMP
10 |
11 | #ifdef __cplusplus
12 | extern "C" {
13 | #endif /* __cplusplus */
14 |
15 | #include "lwip/apps/snmp_core.h"
16 |
17 | extern const struct snmp_obj_id usmNoAuthProtocol;
18 | extern const struct snmp_obj_id usmHMACMD5AuthProtocol;
19 | extern const struct snmp_obj_id usmHMACSHAAuthProtocol;
20 |
21 | extern const struct snmp_obj_id usmNoPrivProtocol;
22 | extern const struct snmp_obj_id usmDESPrivProtocol;
23 | extern const struct snmp_obj_id usmAESPrivProtocol;
24 |
25 | extern const struct snmp_mib snmpframeworkmib;
26 |
27 | #ifdef __cplusplus
28 | }
29 | #endif /* __cplusplus */
30 |
31 | #endif /* LWIP_SNMP */
32 | #endif /* LWIP_HDR_APPS_SNMP_FRAMEWORK_MIB_H */
33 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.navigator.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | org.eclipse.ui.navigator.ProjectExplorer.activatedExtensions=org.eclipse.cdt.make.ui.makeTargets.content\=true;org.eclipse.ui.navigator.resourceContent\=true;org.eclipse.cdt.ui.navigator.content\=true;org.eclipse.ui.navigator.resources.workingSets\=true;org.eclipse.team.ui.patchSyncNavigatorContent\=true;org.eclipse.team.ui.resourceContent\=true;org.eclipse.ui.navigator.resources.nested.nestedProjectContentProvider\=true;org.eclipse.remote.ui.navigatorContent.connections\=true;
3 | org.eclipse.ui.navigator.ProjectExplorer.filterActivation=\:org.eclipse.rse.project.filters.RemoteSystemsProjects\:org.eclipse.ui.navigator.resources.filters.startsWithDot\:org.eclipse.cdt.ui.navigator.filters.AnonymousStructFilter\:org.eclipse.ui.navigator.resources.nested.HideTopLevelProjectIfNested\:org.eclipse.ui.navigator.resources.nested.HideFolderWhenProjectIsShownAsNested\:org.eclipse.cdt.ui.navigator.filters.ForwardDeclarationFilter\:
4 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | org.eclipse.debug.ui.MemoryView.orientation=0
3 | org.eclipse.debug.ui.PREF_LAUNCH_PERSPECTIVES=\r\n\r\n
4 | org.eclipse.debug.ui.switch_perspective_on_suspend=always
5 | org.eclipse.debug.ui.user_view_bindings=\r\n\r\n\r\n\r\n\r\n\r\n
6 | pref_state_memento.org.eclipse.debug.ui.DebugVieworg.eclipse.debug.ui.DebugView=\r\n
7 | preferredDetailPanes=DefaultDetailPane\:DefaultDetailPane|
8 | preferredTargets=org.eclipse.cdt.debug.ui.toggleCBreakpointTarget,org.eclipse.cdt.debug.ui.toggleCDynamicPrintfTarget\:org.eclipse.cdt.debug.ui.toggleCBreakpointTarget|
9 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.debug.ui/launchConfigurationHistory.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.rse.core/profiles/PRF.kiki_15/H.local_16/node.properties:
--------------------------------------------------------------------------------
1 | # RSE DOM Node
2 | 00-name=Local
3 | 01-type=Host
4 | 03-attr.description=
5 | 03-attr.hostname=LOCALHOST
6 | 03-attr.offline=false
7 | 03-attr.promptable=false
8 | 03-attr.systemType=org.eclipse.rse.systemtype.local
9 | 03-attr.type=Local
10 | 06-child.00000.00-name=Local Connector Service
11 | 06-child.00000.01-type=ConnectorService
12 | 06-child.00000.03-attr.group=Local Connector Service
13 | 06-child.00000.03-attr.port=0
14 | 06-child.00000.03-attr.useSSL=false
15 | 06-child.00000.06-child.00000.00-name=Local Files
16 | 06-child.00000.06-child.00000.01-type=SubSystem
17 | 06-child.00000.06-child.00000.03-attr.hidden=false
18 | 06-child.00000.06-child.00000.03-attr.type=local.files
19 | 06-child.00000.06-child.00000.06-child.00000.00-name=KIKI___KIKI\:local.files
20 | 06-child.00000.06-child.00000.06-child.00000.01-type=FilterPoolReference
21 | 06-child.00000.06-child.00000.06-child.00000.03-attr.refID=local.files
22 | 06-child.00000.06-child.00001.00-name=Local Shells
23 | 06-child.00000.06-child.00001.01-type=SubSystem
24 | 06-child.00000.06-child.00001.03-attr.hidden=false
25 | 06-child.00000.06-child.00001.03-attr.type=local.shells
26 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/MQTT/MQTTInterface.h:
--------------------------------------------------------------------------------
1 | /*
2 | * MQTTInterface.h
3 | *
4 | * Created on: 2020. 4. 29.
5 | * Author: https://github.com/eziya
6 | */
7 |
8 | #ifndef __MQTT_INTERFACE_H_
9 | #define __MQTT_INTERFACE_H_
10 |
11 | #define MQTT_LWIP_SOCKET //Use SOCKET API
12 | //#define MQTT_LWIP_NETCONN //Use NETCONN API
13 |
14 | typedef struct Timer Timer;
15 |
16 | struct Timer {
17 | unsigned long systick_period;
18 | unsigned long end_time;
19 | };
20 |
21 | typedef struct Network Network;
22 |
23 | struct Network
24 | {
25 | #ifdef MQTT_LWIP_SOCKET
26 | int socket;
27 | #elif MQTT_LWIP_NETCONN
28 | struct netconn *conn;
29 | struct netbuf *buf;
30 | int offset;
31 | #endif
32 | int (*mqttread) (Network*, unsigned char*, int, int);
33 | int (*mqttwrite) (Network*, unsigned char*, int, int);
34 | void (*disconnect) (Network*);
35 | };
36 |
37 | void InitTimer(Timer*);
38 | char TimerIsExpired(Timer*);
39 | void TimerCountdownMS(Timer*, unsigned int);
40 | void TimerCountdown(Timer*, unsigned int);
41 | int TimerLeftMS(Timer*);
42 |
43 | int net_read(Network*, unsigned char*, int, int);
44 | int net_write(Network*, unsigned char*, int, int);
45 | void net_disconnect(Network*);
46 | void NewNetwork(Network*);
47 | int ConnectNetwork(Network*, char*, int);
48 |
49 | #endif
50 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/.project:
--------------------------------------------------------------------------------
1 |
2 |
3 | STM32F4_HAL_ETH_MQTT_CLIENT
4 |
5 |
6 |
7 |
8 |
9 | org.eclipse.cdt.managedbuilder.core.genmakebuilder
10 | clean,full,incremental,
11 |
12 |
13 |
14 |
15 | org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder
16 | full,incremental,
17 |
18 |
19 |
20 |
21 |
22 | com.st.stm32cube.ide.mcu.MCUProjectNature
23 | org.eclipse.cdt.core.cnature
24 | com.st.stm32cube.ide.mcu.MCUCubeIdeServicesRevAProjectNature
25 | com.st.stm32cube.ide.mcu.MCUCubeProjectNature
26 | com.st.stm32cube.ide.mcu.MCUEndUserDisabledTrustZoneProjectNature
27 | com.st.stm32cube.ide.mcu.MCUSingleCpuProjectNature
28 | com.st.stm32cube.ide.mcu.MCURootProjectNature
29 | org.eclipse.cdt.managedbuilder.core.managedBuildNature
30 | org.eclipse.cdt.managedbuilder.core.ScannerConfigNature
31 |
32 |
33 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/netif/ppp/chap-md5.h:
--------------------------------------------------------------------------------
1 | /*
2 | * chap-md5.h - New CHAP/MD5 implementation.
3 | *
4 | * Copyright (c) 2003 Paul Mackerras. All rights reserved.
5 | *
6 | * Redistribution and use in source and binary forms, with or without
7 | * modification, are permitted provided that the following conditions
8 | * are met:
9 | *
10 | * 1. Redistributions of source code must retain the above copyright
11 | * notice, this list of conditions and the following disclaimer.
12 | *
13 | * 2. The name(s) of the authors of this software must not be used to
14 | * endorse or promote products derived from this software without
15 | * prior written permission.
16 | *
17 | * 3. Redistributions of any form whatsoever must retain the following
18 | * acknowledgment:
19 | * "This product includes software developed by Paul Mackerras
20 | * ".
21 | *
22 | * THE AUTHORS OF THIS SOFTWARE DISCLAIM ALL WARRANTIES WITH REGARD TO
23 | * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
24 | * AND FITNESS, IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY
25 | * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
26 | * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
27 | * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
28 | * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
29 | */
30 |
31 | #include "netif/ppp/ppp_opts.h"
32 | #if PPP_SUPPORT && CHAP_SUPPORT /* don't build if not configured for use in lwipopts.h */
33 |
34 | extern const struct chap_digest_type md5_digest;
35 |
36 | #endif /* PPP_SUPPORT && CHAP_SUPPORT */
37 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Inc/gpio.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * File Name : gpio.h
4 | * Description : This file contains all the functions prototypes for
5 | * the gpio
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2020 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __gpio_H
22 | #define __gpio_H
23 | #ifdef __cplusplus
24 | extern "C" {
25 | #endif
26 |
27 | /* Includes ------------------------------------------------------------------*/
28 | #include "main.h"
29 |
30 | /* USER CODE BEGIN Includes */
31 |
32 | /* USER CODE END Includes */
33 |
34 | /* USER CODE BEGIN Private defines */
35 |
36 | /* USER CODE END Private defines */
37 |
38 | void MX_GPIO_Init(void);
39 |
40 | /* USER CODE BEGIN Prototypes */
41 |
42 | /* USER CODE END Prototypes */
43 |
44 | #ifdef __cplusplus
45 | }
46 | #endif
47 | #endif /*__ pinoutConfig_H */
48 |
49 | /**
50 | * @}
51 | */
52 |
53 | /**
54 | * @}
55 | */
56 |
57 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
58 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/MQTT/MQTTPacket/MQTTUnsubscribe.h:
--------------------------------------------------------------------------------
1 | /*******************************************************************************
2 | * Copyright (c) 2014 IBM Corp.
3 | *
4 | * All rights reserved. This program and the accompanying materials
5 | * are made available under the terms of the Eclipse Public License v1.0
6 | * and Eclipse Distribution License v1.0 which accompany this distribution.
7 | *
8 | * The Eclipse Public License is available at
9 | * http://www.eclipse.org/legal/epl-v10.html
10 | * and the Eclipse Distribution License is available at
11 | * http://www.eclipse.org/org/documents/edl-v10.php.
12 | *
13 | * Contributors:
14 | * Ian Craggs - initial API and implementation and/or initial documentation
15 | * Xiang Rong - 442039 Add makefile to Embedded C client
16 | *******************************************************************************/
17 |
18 | #ifndef MQTTUNSUBSCRIBE_H_
19 | #define MQTTUNSUBSCRIBE_H_
20 |
21 | #if !defined(DLLImport)
22 | #define DLLImport
23 | #endif
24 | #if !defined(DLLExport)
25 | #define DLLExport
26 | #endif
27 |
28 | DLLExport int MQTTSerialize_unsubscribe(unsigned char* buf, int buflen, unsigned char dup, unsigned short packetid,
29 | int count, MQTTString topicFilters[]);
30 |
31 | DLLExport int MQTTDeserialize_unsubscribe(unsigned char* dup, unsigned short* packetid, int max_count, int* count, MQTTString topicFilters[],
32 | unsigned char* buf, int len);
33 |
34 | DLLExport int MQTTSerialize_unsuback(unsigned char* buf, int buflen, unsigned short packetid);
35 |
36 | DLLExport int MQTTDeserialize_unsuback(unsigned short* packetid, unsigned char* buf, int len);
37 |
38 | #endif /* MQTTUNSUBSCRIBE_H_ */
39 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.managedbuilder.core.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | properties/STM32F4_HAL_ETH_MQTT_CLIENT.null.1809902586/com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.1591738372=com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.7791459\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.symbolsrec.105567551\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.binary.951063245\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.verilog.1578454530\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.linker.1865189963\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.exe.debug.2063224970\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker.945912305\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.1591738372\=rcState\\\=0\\r\\nrebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.hex.629893886\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.srec.1677388668\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.369240892\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.size.910083189\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.395649896\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objdump.listfile.11973898\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.archiver.902328408\=rebuildState\\\=false\\r\\n\r\n
3 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Src/sysmem.c:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file sysmem.c
4 | * @author Auto-generated by STM32CubeIDE
5 | * @brief STM32CubeIDE Minimal System Memory calls file
6 | *
7 | * For more information about which c-functions
8 | * need which of these lowlevel functions
9 | * please consult the Newlib libc-manual
10 | ******************************************************************************
11 | * @attention
12 | *
13 | * © Copyright (c) 2020 STMicroelectronics.
14 | * All rights reserved.
15 | *
16 | * This software component is licensed by ST under BSD 3-Clause license,
17 | * the "License"; You may not use this file except in compliance with the
18 | * License. You may obtain a copy of the License at:
19 | * opensource.org/licenses/BSD-3-Clause
20 | *
21 | ******************************************************************************
22 | */
23 |
24 | /* Includes */
25 | #include
26 | #include
27 |
28 | /* Variables */
29 | extern int errno;
30 | register char * stack_ptr asm("sp");
31 |
32 | /* Functions */
33 |
34 | /**
35 | _sbrk
36 | Increase program data space. Malloc and related functions depend on this
37 | **/
38 | caddr_t _sbrk(int incr)
39 | {
40 | extern char end asm("end");
41 | static char *heap_end;
42 | char *prev_heap_end;
43 |
44 | if (heap_end == 0)
45 | heap_end = &end;
46 |
47 | prev_heap_end = heap_end;
48 | if (heap_end + incr > stack_ptr)
49 | {
50 | errno = ENOMEM;
51 | return (caddr_t) -1;
52 | }
53 |
54 | heap_end += incr;
55 |
56 | return (caddr_t) prev_heap_end;
57 | }
58 |
59 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/compat/posix/netdb.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * This file is a posix wrapper for lwip/netdb.h.
4 | */
5 |
6 | /*
7 | * Redistribution and use in source and binary forms, with or without modification,
8 | * are permitted provided that the following conditions are met:
9 | *
10 | * 1. Redistributions of source code must retain the above copyright notice,
11 | * this list of conditions and the following disclaimer.
12 | * 2. Redistributions in binary form must reproduce the above copyright notice,
13 | * this list of conditions and the following disclaimer in the documentation
14 | * and/or other materials provided with the distribution.
15 | * 3. The name of the author may not be used to endorse or promote products
16 | * derived from this software without specific prior written permission.
17 | *
18 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
19 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
20 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
21 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
22 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
23 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
26 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
27 | * OF SUCH DAMAGE.
28 | *
29 | * This file is part of the lwIP TCP/IP stack.
30 | *
31 | */
32 |
33 | #include "lwip/netdb.h"
34 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/compat/stdc/errno.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * This file is a posix/stdc wrapper for lwip/errno.h.
4 | */
5 |
6 | /*
7 | * Redistribution and use in source and binary forms, with or without modification,
8 | * are permitted provided that the following conditions are met:
9 | *
10 | * 1. Redistributions of source code must retain the above copyright notice,
11 | * this list of conditions and the following disclaimer.
12 | * 2. Redistributions in binary form must reproduce the above copyright notice,
13 | * this list of conditions and the following disclaimer in the documentation
14 | * and/or other materials provided with the distribution.
15 | * 3. The name of the author may not be used to endorse or promote products
16 | * derived from this software without specific prior written permission.
17 | *
18 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
19 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
20 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
21 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
22 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
23 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
26 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
27 | * OF SUCH DAMAGE.
28 | *
29 | * This file is part of the lwIP TCP/IP stack.
30 | *
31 | */
32 |
33 | #include "lwip/errno.h"
34 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/compat/posix/arpa/inet.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * This file is a posix wrapper for lwip/sockets.h.
4 | */
5 |
6 | /*
7 | * Redistribution and use in source and binary forms, with or without modification,
8 | * are permitted provided that the following conditions are met:
9 | *
10 | * 1. Redistributions of source code must retain the above copyright notice,
11 | * this list of conditions and the following disclaimer.
12 | * 2. Redistributions in binary form must reproduce the above copyright notice,
13 | * this list of conditions and the following disclaimer in the documentation
14 | * and/or other materials provided with the distribution.
15 | * 3. The name of the author may not be used to endorse or promote products
16 | * derived from this software without specific prior written permission.
17 | *
18 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
19 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
20 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
21 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
22 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
23 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
26 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
27 | * OF SUCH DAMAGE.
28 | *
29 | * This file is part of the lwIP TCP/IP stack.
30 | *
31 | */
32 |
33 | #include "lwip/sockets.h"
34 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/compat/posix/sys/socket.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * This file is a posix wrapper for lwip/sockets.h.
4 | */
5 |
6 | /*
7 | * Redistribution and use in source and binary forms, with or without modification,
8 | * are permitted provided that the following conditions are met:
9 | *
10 | * 1. Redistributions of source code must retain the above copyright notice,
11 | * this list of conditions and the following disclaimer.
12 | * 2. Redistributions in binary form must reproduce the above copyright notice,
13 | * this list of conditions and the following disclaimer in the documentation
14 | * and/or other materials provided with the distribution.
15 | * 3. The name of the author may not be used to endorse or promote products
16 | * derived from this software without specific prior written permission.
17 | *
18 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
19 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
20 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
21 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
22 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
23 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
26 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
27 | * OF SUCH DAMAGE.
28 | *
29 | * This file is part of the lwIP TCP/IP stack.
30 | *
31 | */
32 |
33 | #include "lwip/sockets.h"
34 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/MQTT/MQTTPacket/MQTTSubscribe.h:
--------------------------------------------------------------------------------
1 | /*******************************************************************************
2 | * Copyright (c) 2014 IBM Corp.
3 | *
4 | * All rights reserved. This program and the accompanying materials
5 | * are made available under the terms of the Eclipse Public License v1.0
6 | * and Eclipse Distribution License v1.0 which accompany this distribution.
7 | *
8 | * The Eclipse Public License is available at
9 | * http://www.eclipse.org/legal/epl-v10.html
10 | * and the Eclipse Distribution License is available at
11 | * http://www.eclipse.org/org/documents/edl-v10.php.
12 | *
13 | * Contributors:
14 | * Ian Craggs - initial API and implementation and/or initial documentation
15 | * Xiang Rong - 442039 Add makefile to Embedded C client
16 | *******************************************************************************/
17 |
18 | #ifndef MQTTSUBSCRIBE_H_
19 | #define MQTTSUBSCRIBE_H_
20 |
21 | #if !defined(DLLImport)
22 | #define DLLImport
23 | #endif
24 | #if !defined(DLLExport)
25 | #define DLLExport
26 | #endif
27 |
28 | DLLExport int MQTTSerialize_subscribe(unsigned char* buf, int buflen, unsigned char dup, unsigned short packetid,
29 | int count, MQTTString topicFilters[], int requestedQoSs[]);
30 |
31 | DLLExport int MQTTDeserialize_subscribe(unsigned char* dup, unsigned short* packetid,
32 | int maxcount, int* count, MQTTString topicFilters[], int requestedQoSs[], unsigned char* buf, int len);
33 |
34 | DLLExport int MQTTSerialize_suback(unsigned char* buf, int buflen, unsigned short packetid, int count, int* grantedQoSs);
35 |
36 | DLLExport int MQTTDeserialize_suback(unsigned short* packetid, int maxcount, int* count, int grantedQoSs[], unsigned char* buf, int len);
37 |
38 |
39 | #endif /* MQTTSUBSCRIBE_H_ */
40 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/system/arch/bpstruct.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2001-2003 Swedish Institute of Computer Science.
3 | * All rights reserved.
4 | *
5 | * Redistribution and use in source and binary forms, with or without modification,
6 | * are permitted provided that the following conditions are met:
7 | *
8 | * 1. Redistributions of source code must retain the above copyright notice,
9 | * this list of conditions and the following disclaimer.
10 | * 2. Redistributions in binary form must reproduce the above copyright notice,
11 | * this list of conditions and the following disclaimer in the documentation
12 | * and/or other materials provided with the distribution.
13 | * 3. The name of the author may not be used to endorse or promote products
14 | * derived from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
19 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
20 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
21 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
24 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
25 | * OF SUCH DAMAGE.
26 | *
27 | * This file is part of the lwIP TCP/IP stack.
28 | *
29 | * Author: Adam Dunkels
30 | *
31 | */
32 |
33 | #if defined(__IAR_SYSTEMS_ICC__)
34 | #pragma pack(1)
35 | #endif
36 |
37 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/system/arch/epstruct.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2001-2003 Swedish Institute of Computer Science.
3 | * All rights reserved.
4 | *
5 | * Redistribution and use in source and binary forms, with or without modification,
6 | * are permitted provided that the following conditions are met:
7 | *
8 | * 1. Redistributions of source code must retain the above copyright notice,
9 | * this list of conditions and the following disclaimer.
10 | * 2. Redistributions in binary form must reproduce the above copyright notice,
11 | * this list of conditions and the following disclaimer in the documentation
12 | * and/or other materials provided with the distribution.
13 | * 3. The name of the author may not be used to endorse or promote products
14 | * derived from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
19 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
20 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
21 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
24 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
25 | * OF SUCH DAMAGE.
26 | *
27 | * This file is part of the lwIP TCP/IP stack.
28 | *
29 | * Author: Adam Dunkels
30 | *
31 | */
32 |
33 | #if defined(__IAR_SYSTEMS_ICC__)
34 | #pragma pack()
35 | #endif
36 |
37 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Drivers/CMSIS/Include/cmsis_version.h:
--------------------------------------------------------------------------------
1 | /**************************************************************************//**
2 | * @file cmsis_version.h
3 | * @brief CMSIS Core(M) Version definitions
4 | * @version V5.0.2
5 | * @date 19. April 2017
6 | ******************************************************************************/
7 | /*
8 | * Copyright (c) 2009-2017 ARM Limited. All rights reserved.
9 | *
10 | * SPDX-License-Identifier: Apache-2.0
11 | *
12 | * Licensed under the Apache License, Version 2.0 (the License); you may
13 | * not use this file except in compliance with the License.
14 | * You may obtain a copy of the License at
15 | *
16 | * www.apache.org/licenses/LICENSE-2.0
17 | *
18 | * Unless required by applicable law or agreed to in writing, software
19 | * distributed under the License is distributed on an AS IS BASIS, WITHOUT
20 | * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21 | * See the License for the specific language governing permissions and
22 | * limitations under the License.
23 | */
24 |
25 | #if defined ( __ICCARM__ )
26 | #pragma system_include /* treat file as system include file for MISRA check */
27 | #elif defined (__clang__)
28 | #pragma clang system_header /* treat file as system include file */
29 | #endif
30 |
31 | #ifndef __CMSIS_VERSION_H
32 | #define __CMSIS_VERSION_H
33 |
34 | /* CMSIS Version definitions */
35 | #define __CM_CMSIS_VERSION_MAIN ( 5U) /*!< [31:16] CMSIS Core(M) main version */
36 | #define __CM_CMSIS_VERSION_SUB ( 1U) /*!< [15:0] CMSIS Core(M) sub version */
37 | #define __CM_CMSIS_VERSION ((__CM_CMSIS_VERSION_MAIN << 16U) | \
38 | __CM_CMSIS_VERSION_SUB ) /*!< CMSIS Core(M) version number */
39 | #endif
40 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/compat/posix/net/if.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * This file is a posix wrapper for lwip/if_api.h.
4 | */
5 |
6 | /*
7 | * Copyright (c) 2017 Joel Cunningham, Garmin International, Inc.
8 | * All rights reserved.
9 | *
10 | * Redistribution and use in source and binary forms, with or without modification,
11 | * are permitted provided that the following conditions are met:
12 | *
13 | * 1. Redistributions of source code must retain the above copyright notice,
14 | * this list of conditions and the following disclaimer.
15 | * 2. Redistributions in binary form must reproduce the above copyright notice,
16 | * this list of conditions and the following disclaimer in the documentation
17 | * and/or other materials provided with the distribution.
18 | * 3. The name of the author may not be used to endorse or promote products
19 | * derived from this software without specific prior written permission.
20 | *
21 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
22 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
23 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
24 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
26 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
29 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
30 | * OF SUCH DAMAGE.
31 | *
32 | * This file is part of the lwIP TCP/IP stack.
33 | *
34 | */
35 |
36 | #include "lwip/if_api.h"
37 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/system/arch/lib.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2001-2003 Swedish Institute of Computer Science.
3 | * All rights reserved.
4 | *
5 | * Redistribution and use in source and binary forms, with or without modification,
6 | * are permitted provided that the following conditions are met:
7 | *
8 | * 1. Redistributions of source code must retain the above copyright notice,
9 | * this list of conditions and the following disclaimer.
10 | * 2. Redistributions in binary form must reproduce the above copyright notice,
11 | * this list of conditions and the following disclaimer in the documentation
12 | * and/or other materials provided with the distribution.
13 | * 3. The name of the author may not be used to endorse or promote products
14 | * derived from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
19 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
20 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
21 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
24 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
25 | * OF SUCH DAMAGE.
26 | *
27 | * This file is part of the lwIP TCP/IP stack.
28 | *
29 | * Author: Adam Dunkels
30 | *
31 | */
32 | #ifndef __LIB_H__
33 | #define __LIB_H__
34 |
35 | #include
36 |
37 |
38 | #endif /* __LIB_H__ */
39 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/MQTT/MQTTPacket/MQTTPublish.h:
--------------------------------------------------------------------------------
1 | /*******************************************************************************
2 | * Copyright (c) 2014 IBM Corp.
3 | *
4 | * All rights reserved. This program and the accompanying materials
5 | * are made available under the terms of the Eclipse Public License v1.0
6 | * and Eclipse Distribution License v1.0 which accompany this distribution.
7 | *
8 | * The Eclipse Public License is available at
9 | * http://www.eclipse.org/legal/epl-v10.html
10 | * and the Eclipse Distribution License is available at
11 | * http://www.eclipse.org/org/documents/edl-v10.php.
12 | *
13 | * Contributors:
14 | * Ian Craggs - initial API and implementation and/or initial documentation
15 | * Xiang Rong - 442039 Add makefile to Embedded C client
16 | *******************************************************************************/
17 |
18 | #ifndef MQTTPUBLISH_H_
19 | #define MQTTPUBLISH_H_
20 |
21 | #if !defined(DLLImport)
22 | #define DLLImport
23 | #endif
24 | #if !defined(DLLExport)
25 | #define DLLExport
26 | #endif
27 |
28 | DLLExport int MQTTSerialize_publish(unsigned char* buf, int buflen, unsigned char dup, int qos, unsigned char retained, unsigned short packetid,
29 | MQTTString topicName, unsigned char* payload, int payloadlen);
30 |
31 | DLLExport int MQTTDeserialize_publish(unsigned char* dup, int* qos, unsigned char* retained, unsigned short* packetid, MQTTString* topicName,
32 | unsigned char** payload, int* payloadlen, unsigned char* buf, int len);
33 |
34 | DLLExport int MQTTSerialize_puback(unsigned char* buf, int buflen, unsigned short packetid);
35 | DLLExport int MQTTSerialize_pubrel(unsigned char* buf, int buflen, unsigned char dup, unsigned short packetid);
36 | DLLExport int MQTTSerialize_pubcomp(unsigned char* buf, int buflen, unsigned short packetid);
37 |
38 | #endif /* MQTTPUBLISH_H_ */
39 |
--------------------------------------------------------------------------------
/.metadata/.log:
--------------------------------------------------------------------------------
1 | !SESSION 2020-04-30 22:29:05.812 -----------------------------------------------
2 | eclipse.buildId=Version 1.3.1
3 | java.version=1.8.0_202
4 | java.vendor=AdoptOpenJdk
5 | BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=ko_KR
6 | Command-line arguments: -os win32 -ws win32 -arch x86_64
7 |
8 | !ENTRY com.st.stm32cube.ide.mcu.informationcenter 1 1 2020-04-30 22:29:31.153
9 | !MESSAGE Log4j initialized with config file C:\Github\STM32F4_HAL_ETH_MQTT_CLIENT\.metadata\.log4j.xml
10 |
11 | !ENTRY com.st.stm32cube.ide.mcu.ide 1 1 2020-04-30 22:29:33.600
12 | !MESSAGE Started RMI Server, listening on port 41337
13 |
14 | !ENTRY com.st.stm32cube.ide.mcu.ide 4 4 2020-04-30 22:29:34.610
15 | !MESSAGE com.st.stm32cube.ide.mcu.ide/META-INF/version/build_ref file not found, build reference will not be reported into properties
16 |
17 | !ENTRY org.eclipse.cdt.core 1 0 2020-04-30 22:30:16.212
18 | !MESSAGE Indexed 'STM32F4_HAL_ETH_MQTT_CLIENT' (130 sources, 304 headers) in 18.2 sec: 17,510 declarations; 89,482 references; 2 unresolved inclusions; 134 syntax errors; 188 unresolved names (0.18%)
19 | !SESSION 2020-04-30 23:31:35.566 -----------------------------------------------
20 | eclipse.buildId=Version 1.3.1
21 | java.version=1.8.0_202
22 | java.vendor=AdoptOpenJdk
23 | BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=ko_KR
24 | Command-line arguments: -os win32 -ws win32 -arch x86_64
25 |
26 | !ENTRY com.st.stm32cube.ide.mcu.informationcenter 1 1 2020-04-30 23:31:47.254
27 | !MESSAGE Log4j initialized with config file C:\Github\STM32F4_HAL_ETH_MQTT_CLIENT\.metadata\.log4j.xml
28 |
29 | !ENTRY com.st.stm32cube.ide.mcu.ide 1 1 2020-04-30 23:31:56.890
30 | !MESSAGE Started RMI Server, listening on port 41337
31 |
32 | !ENTRY com.st.stm32cube.ide.mcu.ide 4 4 2020-04-30 23:31:57.717
33 | !MESSAGE com.st.stm32cube.ide.mcu.ide/META-INF/version/build_ref file not found, build reference will not be reported into properties
34 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/system/arch/cpu.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2001-2003 Swedish Institute of Computer Science.
3 | * All rights reserved.
4 | *
5 | * Redistribution and use in source and binary forms, with or without modification,
6 | * are permitted provided that the following conditions are met:
7 | *
8 | * 1. Redistributions of source code must retain the above copyright notice,
9 | * this list of conditions and the following disclaimer.
10 | * 2. Redistributions in binary form must reproduce the above copyright notice,
11 | * this list of conditions and the following disclaimer in the documentation
12 | * and/or other materials provided with the distribution.
13 | * 3. The name of the author may not be used to endorse or promote products
14 | * derived from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
19 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
20 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
21 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
24 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
25 | * OF SUCH DAMAGE.
26 | *
27 | * This file is part of the lwIP TCP/IP stack.
28 | *
29 | * Author: Adam Dunkels
30 | *
31 | */
32 | #ifndef __CPU_H__
33 | #define __CPU_H__
34 |
35 | #ifndef BYTE_ORDER
36 | #define BYTE_ORDER LITTLE_ENDIAN
37 | #endif
38 |
39 | #endif /* __CPU_H__ */
40 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/system/arch/perf.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2001-2003 Swedish Institute of Computer Science.
3 | * All rights reserved.
4 | *
5 | * Redistribution and use in source and binary forms, with or without modification,
6 | * are permitted provided that the following conditions are met:
7 | *
8 | * 1. Redistributions of source code must retain the above copyright notice,
9 | * this list of conditions and the following disclaimer.
10 | * 2. Redistributions in binary form must reproduce the above copyright notice,
11 | * this list of conditions and the following disclaimer in the documentation
12 | * and/or other materials provided with the distribution.
13 | * 3. The name of the author may not be used to endorse or promote products
14 | * derived from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
19 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
20 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
21 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
24 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
25 | * OF SUCH DAMAGE.
26 | *
27 | * This file is part of the lwIP TCP/IP stack.
28 | *
29 | * Author: Adam Dunkels
30 | *
31 | */
32 | #ifndef __PERF_H__
33 | #define __PERF_H__
34 |
35 | #define PERF_START /* null definition */
36 | #define PERF_STOP(x) /* null definition */
37 |
38 | #endif /* __PERF_H__ */
39 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/netif/ppp/chap_ms.h:
--------------------------------------------------------------------------------
1 | /*
2 | * chap_ms.h - Challenge Handshake Authentication Protocol definitions.
3 | *
4 | * Copyright (c) 1995 Eric Rosenquist. All rights reserved.
5 | *
6 | * Redistribution and use in source and binary forms, with or without
7 | * modification, are permitted provided that the following conditions
8 | * are met:
9 | *
10 | * 1. Redistributions of source code must retain the above copyright
11 | * notice, this list of conditions and the following disclaimer.
12 | *
13 | * 2. Redistributions in binary form must reproduce the above copyright
14 | * notice, this list of conditions and the following disclaimer in
15 | * the documentation and/or other materials provided with the
16 | * distribution.
17 | *
18 | * 3. The name(s) of the authors of this software must not be used to
19 | * endorse or promote products derived from this software without
20 | * prior written permission.
21 | *
22 | * THE AUTHORS OF THIS SOFTWARE DISCLAIM ALL WARRANTIES WITH REGARD TO
23 | * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
24 | * AND FITNESS, IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY
25 | * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
26 | * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
27 | * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
28 | * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
29 | *
30 | * $Id: chap_ms.h,v 1.13 2004/11/15 22:13:26 paulus Exp $
31 | */
32 |
33 | #include "netif/ppp/ppp_opts.h"
34 | #if PPP_SUPPORT && MSCHAP_SUPPORT /* don't build if not configured for use in lwipopts.h */
35 |
36 | #ifndef CHAPMS_INCLUDE
37 | #define CHAPMS_INCLUDE
38 |
39 | extern const struct chap_digest_type chapms_digest;
40 | extern const struct chap_digest_type chapms2_digest;
41 |
42 | #endif /* CHAPMS_INCLUDE */
43 |
44 | #endif /* PPP_SUPPORT && MSCHAP_SUPPORT */
45 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Inc/ethernetif.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * File Name : ethernetif.h
4 | * Description : This file provides initialization code for LWIP
5 | * middleWare.
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2020 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 | #ifndef __ETHERNETIF_H__
22 | #define __ETHERNETIF_H__
23 |
24 | #include "lwip/err.h"
25 | #include "lwip/netif.h"
26 | #include "cmsis_os.h"
27 |
28 | /* Exported types ------------------------------------------------------------*/
29 | /* Structure that include link thread parameters */
30 | struct link_str {
31 | struct netif *netif;
32 | osSemaphoreId semaphore;
33 | };
34 |
35 | /* Within 'USER CODE' section, code will be kept by default at each generation */
36 | /* USER CODE BEGIN 0 */
37 |
38 | /* USER CODE END 0 */
39 |
40 | /* Exported functions ------------------------------------------------------- */
41 | err_t ethernetif_init(struct netif *netif);
42 |
43 | void ethernetif_input(void const * argument);
44 | void ethernetif_set_link(void const *argument);
45 | void ethernetif_update_config(struct netif *netif);
46 | void ethernetif_notify_conn_changed(struct netif *netif);
47 |
48 | u32_t sys_jiffies(void);
49 | u32_t sys_now(void);
50 |
51 | /* USER CODE BEGIN 1 */
52 |
53 | /* USER CODE END 1 */
54 | #endif
55 |
56 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
57 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/system/arch/init.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2001-2003 Swedish Institute of Computer Science.
3 | * All rights reserved.
4 | *
5 | * Redistribution and use in source and binary forms, with or without modification,
6 | * are permitted provided that the following conditions are met:
7 | *
8 | * 1. Redistributions of source code must retain the above copyright notice,
9 | * this list of conditions and the following disclaimer.
10 | * 2. Redistributions in binary form must reproduce the above copyright notice,
11 | * this list of conditions and the following disclaimer in the documentation
12 | * and/or other materials provided with the distribution.
13 | * 3. The name of the author may not be used to endorse or promote products
14 | * derived from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
19 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
20 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
21 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
24 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
25 | * OF SUCH DAMAGE.
26 | *
27 | * This file is part of the lwIP TCP/IP stack.
28 | *
29 | * Author: Adam Dunkels
30 | *
31 | */
32 | #ifndef __ARCH_INIT_H__
33 | #define __ARCH_INIT_H__
34 |
35 | #define TCPIP_INIT_DONE(arg) tcpip_init_done(arg)
36 |
37 | void tcpip_init_done(void *);
38 | int wait_for_tcpip_init(void);
39 |
40 | #endif /* __ARCH_INIT_H__ */
41 |
42 |
43 |
44 |
45 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/apps/netbiosns.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * NETBIOS name service responder
4 | */
5 |
6 | /*
7 | * Redistribution and use in source and binary forms, with or without modification,
8 | * are permitted provided that the following conditions are met:
9 | *
10 | * 1. Redistributions of source code must retain the above copyright notice,
11 | * this list of conditions and the following disclaimer.
12 | * 2. Redistributions in binary form must reproduce the above copyright notice,
13 | * this list of conditions and the following disclaimer in the documentation
14 | * and/or other materials provided with the distribution.
15 | * 3. The name of the author may not be used to endorse or promote products
16 | * derived from this software without specific prior written permission.
17 | *
18 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
19 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
20 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
21 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
22 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
23 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
26 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
27 | * OF SUCH DAMAGE.
28 | *
29 | * This file is part of the lwIP TCP/IP stack.
30 | *
31 | */
32 | #ifndef LWIP_HDR_APPS_NETBIOS_H
33 | #define LWIP_HDR_APPS_NETBIOS_H
34 |
35 | #include "lwip/apps/netbiosns_opts.h"
36 |
37 | #ifdef __cplusplus
38 | extern "C" {
39 | #endif
40 |
41 | void netbiosns_init(void);
42 | #ifndef NETBIOS_LWIP_NAME
43 | void netbiosns_set_name(const char* hostname);
44 | #endif
45 | void netbiosns_stop(void);
46 |
47 | #ifdef __cplusplus
48 | }
49 | #endif
50 |
51 | #endif /* LWIP_HDR_APPS_NETBIOS_H */
52 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/apps/smtp_opts.h:
--------------------------------------------------------------------------------
1 | #ifndef LWIP_HDR_APPS_SMTP_OPTS_H
2 | #define LWIP_HDR_APPS_SMTP_OPTS_H
3 |
4 | #include "lwip/opt.h"
5 |
6 | #ifdef __cplusplus
7 | extern "C" {
8 | #endif
9 |
10 | /**
11 | * @defgroup smtp_opts Options
12 | * @ingroup smtp
13 | *
14 | * @{
15 | */
16 |
17 | /** Set this to 1 to enable data handler callback on BODY */
18 | #ifndef SMTP_BODYDH
19 | #define SMTP_BODYDH 0
20 | #endif
21 |
22 | /** SMTP_DEBUG: Enable debugging for SNTP. */
23 | #ifndef SMTP_DEBUG
24 | #define SMTP_DEBUG LWIP_DBG_OFF
25 | #endif
26 |
27 | /** Maximum length reserved for server name including terminating 0 byte */
28 | #ifndef SMTP_MAX_SERVERNAME_LEN
29 | #define SMTP_MAX_SERVERNAME_LEN 256
30 | #endif
31 |
32 | /** Maximum length reserved for username */
33 | #ifndef SMTP_MAX_USERNAME_LEN
34 | #define SMTP_MAX_USERNAME_LEN 32
35 | #endif
36 |
37 | /** Maximum length reserved for password */
38 | #ifndef SMTP_MAX_PASS_LEN
39 | #define SMTP_MAX_PASS_LEN 32
40 | #endif
41 |
42 | /** Set this to 0 if you know the authentication data will not change
43 | * during the smtp session, which saves some heap space. */
44 | #ifndef SMTP_COPY_AUTHDATA
45 | #define SMTP_COPY_AUTHDATA 1
46 | #endif
47 |
48 | /** Set this to 0 to save some code space if you know for sure that all data
49 | * passed to this module conforms to the requirements in the SMTP RFC.
50 | * WARNING: use this with care!
51 | */
52 | #ifndef SMTP_CHECK_DATA
53 | #define SMTP_CHECK_DATA 1
54 | #endif
55 |
56 | /** Set this to 1 to enable AUTH PLAIN support */
57 | #ifndef SMTP_SUPPORT_AUTH_PLAIN
58 | #define SMTP_SUPPORT_AUTH_PLAIN 1
59 | #endif
60 |
61 | /** Set this to 1 to enable AUTH LOGIN support */
62 | #ifndef SMTP_SUPPORT_AUTH_LOGIN
63 | #define SMTP_SUPPORT_AUTH_LOGIN 1
64 | #endif
65 |
66 | /* Memory allocation/deallocation can be overridden... */
67 | #ifndef SMTP_STATE_MALLOC
68 | #define SMTP_STATE_MALLOC(size) mem_malloc(size)
69 | #define SMTP_STATE_FREE(ptr) mem_free(ptr)
70 | #endif
71 |
72 | /**
73 | * @}
74 | */
75 |
76 | #ifdef __cplusplus
77 | }
78 | #endif
79 |
80 | #endif /* SMTP_OPTS_H */
81 |
82 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/MQTT/MQTTPacket/MQTTFormat.h:
--------------------------------------------------------------------------------
1 | /*******************************************************************************
2 | * Copyright (c) 2014 IBM Corp.
3 | *
4 | * All rights reserved. This program and the accompanying materials
5 | * are made available under the terms of the Eclipse Public License v1.0
6 | * and Eclipse Distribution License v1.0 which accompany this distribution.
7 | *
8 | * The Eclipse Public License is available at
9 | * http://www.eclipse.org/legal/epl-v10.html
10 | * and the Eclipse Distribution License is available at
11 | * http://www.eclipse.org/org/documents/edl-v10.php.
12 | *
13 | * Contributors:
14 | * Ian Craggs - initial API and implementation and/or initial documentation
15 | *******************************************************************************/
16 |
17 | #if !defined(MQTTFORMAT_H)
18 | #define MQTTFORMAT_H
19 |
20 | #include
21 | #include
22 |
23 | const char* MQTTPacket_getName(unsigned short packetid);
24 | int MQTTStringFormat_connect(char* strbuf, int strbuflen, MQTTPacket_connectData* data);
25 | int MQTTStringFormat_connack(char* strbuf, int strbuflen, unsigned char connack_rc, unsigned char sessionPresent);
26 | int MQTTStringFormat_publish(char* strbuf, int strbuflen, unsigned char dup, int qos, unsigned char retained,
27 | unsigned short packetid, MQTTString topicName, unsigned char* payload, int payloadlen);
28 | int MQTTStringFormat_ack(char* strbuf, int strbuflen, unsigned char packettype, unsigned char dup, unsigned short packetid);
29 | int MQTTStringFormat_subscribe(char* strbuf, int strbuflen, unsigned char dup, unsigned short packetid, int count,
30 | MQTTString topicFilters[], int requestedQoSs[]);
31 | int MQTTStringFormat_suback(char* strbuf, int strbuflen, unsigned short packetid, int count, int* grantedQoSs);
32 | int MQTTStringFormat_unsubscribe(char* strbuf, int strbuflen, unsigned char dup, unsigned short packetid,
33 | int count, MQTTString topicFilters[]);
34 | char* MQTTFormat_toClientString(char* strbuf, int strbuflen, unsigned char* buf, int buflen);
35 | char* MQTTFormat_toServerString(char* strbuf, int strbuflen, unsigned char* buf, int buflen);
36 |
37 | #endif
38 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/core/ipv6/inet6.c:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | *
4 | * INET v6 addresses.
5 | */
6 |
7 | /*
8 | * Copyright (c) 2010 Inico Technologies Ltd.
9 | * All rights reserved.
10 | *
11 | * Redistribution and use in source and binary forms, with or without modification,
12 | * are permitted provided that the following conditions are met:
13 | *
14 | * 1. Redistributions of source code must retain the above copyright notice,
15 | * this list of conditions and the following disclaimer.
16 | * 2. Redistributions in binary form must reproduce the above copyright notice,
17 | * this list of conditions and the following disclaimer in the documentation
18 | * and/or other materials provided with the distribution.
19 | * 3. The name of the author may not be used to endorse or promote products
20 | * derived from this software without specific prior written permission.
21 | *
22 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
23 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
24 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
25 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
26 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
27 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
30 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
31 | * OF SUCH DAMAGE.
32 | *
33 | * This file is part of the lwIP TCP/IP stack.
34 | *
35 | * Author: Ivan Delamer
36 | *
37 | *
38 | * Please coordinate changes and requests with Ivan Delamer
39 | *
40 | */
41 |
42 | #include "lwip/opt.h"
43 |
44 | #if LWIP_IPV6 && LWIP_SOCKET /* don't build if not configured for use in lwipopts.h */
45 |
46 | #include "lwip/def.h"
47 | #include "lwip/inet.h"
48 |
49 | /** This variable is initialized by the system to contain the wildcard IPv6 address.
50 | */
51 | const struct in6_addr in6addr_any = IN6ADDR_ANY_INIT;
52 |
53 | #endif /* LWIP_IPV6 */
54 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/netif/ppp/ecp.h:
--------------------------------------------------------------------------------
1 | /*
2 | * ecp.h - Definitions for PPP Encryption Control Protocol.
3 | *
4 | * Copyright (c) 2002 Google, Inc.
5 | * All rights reserved.
6 | *
7 | * Redistribution and use in source and binary forms, with or without
8 | * modification, are permitted provided that the following conditions
9 | * are met:
10 | *
11 | * 1. Redistributions of source code must retain the above copyright
12 | * notice, this list of conditions and the following disclaimer.
13 | *
14 | * 2. Redistributions in binary form must reproduce the above copyright
15 | * notice, this list of conditions and the following disclaimer in
16 | * the documentation and/or other materials provided with the
17 | * distribution.
18 | *
19 | * 3. The name(s) of the authors of this software must not be used to
20 | * endorse or promote products derived from this software without
21 | * prior written permission.
22 | *
23 | * THE AUTHORS OF THIS SOFTWARE DISCLAIM ALL WARRANTIES WITH REGARD TO
24 | * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
25 | * AND FITNESS, IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY
26 | * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
27 | * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
28 | * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
29 | * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
30 | *
31 | * $Id: ecp.h,v 1.2 2003/01/10 07:12:36 fcusack Exp $
32 | */
33 |
34 | #include "netif/ppp/ppp_opts.h"
35 | #if PPP_SUPPORT && ECP_SUPPORT /* don't build if not configured for use in lwipopts.h */
36 |
37 | #ifndef ECP_H
38 | #define ECP_H
39 |
40 | #ifdef __cplusplus
41 | extern "C" {
42 | #endif
43 |
44 | typedef struct ecp_options {
45 | bool required; /* Is ECP required? */
46 | unsigned enctype; /* Encryption type */
47 | } ecp_options;
48 |
49 | extern fsm ecp_fsm[];
50 | extern ecp_options ecp_wantoptions[];
51 | extern ecp_options ecp_gotoptions[];
52 | extern ecp_options ecp_allowoptions[];
53 | extern ecp_options ecp_hisoptions[];
54 |
55 | extern const struct protent ecp_protent;
56 |
57 | #ifdef __cplusplus
58 | }
59 | #endif
60 |
61 | #endif /* ECP_H */
62 | #endif /* PPP_SUPPORT && ECP_SUPPORT */
63 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Inc/stm32f4xx_it.h:
--------------------------------------------------------------------------------
1 | /* USER CODE BEGIN Header */
2 | /**
3 | ******************************************************************************
4 | * @file stm32f4xx_it.h
5 | * @brief This file contains the headers of the interrupt handlers.
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2020 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 | /* USER CODE END Header */
20 |
21 | /* Define to prevent recursive inclusion -------------------------------------*/
22 | #ifndef __STM32F4xx_IT_H
23 | #define __STM32F4xx_IT_H
24 |
25 | #ifdef __cplusplus
26 | extern "C" {
27 | #endif
28 |
29 | /* Private includes ----------------------------------------------------------*/
30 | /* USER CODE BEGIN Includes */
31 |
32 | /* USER CODE END Includes */
33 |
34 | /* Exported types ------------------------------------------------------------*/
35 | /* USER CODE BEGIN ET */
36 |
37 | /* USER CODE END ET */
38 |
39 | /* Exported constants --------------------------------------------------------*/
40 | /* USER CODE BEGIN EC */
41 |
42 | /* USER CODE END EC */
43 |
44 | /* Exported macro ------------------------------------------------------------*/
45 | /* USER CODE BEGIN EM */
46 |
47 | /* USER CODE END EM */
48 |
49 | /* Exported functions prototypes ---------------------------------------------*/
50 | void NMI_Handler(void);
51 | void HardFault_Handler(void);
52 | void MemManage_Handler(void);
53 | void BusFault_Handler(void);
54 | void UsageFault_Handler(void);
55 | void DebugMon_Handler(void);
56 | void TIM6_DAC_IRQHandler(void);
57 | void ETH_IRQHandler(void);
58 | /* USER CODE BEGIN EFP */
59 |
60 | /* USER CODE END EFP */
61 |
62 | #ifdef __cplusplus
63 | }
64 | #endif
65 |
66 | #endif /* __STM32F4xx_IT_H */
67 |
68 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
69 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/netif/ppp/eui64.c:
--------------------------------------------------------------------------------
1 | /*
2 | * eui64.c - EUI64 routines for IPv6CP.
3 | *
4 | * Copyright (c) 1999 Tommi Komulainen. All rights reserved.
5 | *
6 | * Redistribution and use in source and binary forms, with or without
7 | * modification, are permitted provided that the following conditions
8 | * are met:
9 | *
10 | * 1. Redistributions of source code must retain the above copyright
11 | * notice, this list of conditions and the following disclaimer.
12 | *
13 | * 2. Redistributions in binary form must reproduce the above copyright
14 | * notice, this list of conditions and the following disclaimer in
15 | * the documentation and/or other materials provided with the
16 | * distribution.
17 | *
18 | * 3. The name(s) of the authors of this software must not be used to
19 | * endorse or promote products derived from this software without
20 | * prior written permission.
21 | *
22 | * 4. Redistributions of any form whatsoever must retain the following
23 | * acknowledgment:
24 | * "This product includes software developed by Tommi Komulainen
25 | * ".
26 | *
27 | * THE AUTHORS OF THIS SOFTWARE DISCLAIM ALL WARRANTIES WITH REGARD TO
28 | * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
29 | * AND FITNESS, IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY
30 | * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
31 | * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
32 | * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
33 | * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
34 | *
35 | * $Id: eui64.c,v 1.6 2002/12/04 23:03:32 paulus Exp $
36 | */
37 |
38 | #include "netif/ppp/ppp_opts.h"
39 | #if PPP_SUPPORT && PPP_IPV6_SUPPORT /* don't build if not configured for use in lwipopts.h */
40 |
41 | #include "netif/ppp/ppp_impl.h"
42 | #include "netif/ppp/eui64.h"
43 |
44 | /*
45 | * eui64_ntoa - Make an ascii representation of an interface identifier
46 | */
47 | char *eui64_ntoa(eui64_t e) {
48 | static char buf[20];
49 |
50 | sprintf(buf, "%02x%02x:%02x%02x:%02x%02x:%02x%02x",
51 | e.e8[0], e.e8[1], e.e8[2], e.e8[3],
52 | e.e8[4], e.e8[5], e.e8[6], e.e8[7]);
53 | return buf;
54 | }
55 |
56 | #endif /* PPP_SUPPORT && PPP_IPV6_SUPPORT */
57 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/prot/ip.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * IP protocol definitions
4 | */
5 |
6 | /*
7 | * Copyright (c) 2001-2004 Swedish Institute of Computer Science.
8 | * All rights reserved.
9 | *
10 | * Redistribution and use in source and binary forms, with or without modification,
11 | * are permitted provided that the following conditions are met:
12 | *
13 | * 1. Redistributions of source code must retain the above copyright notice,
14 | * this list of conditions and the following disclaimer.
15 | * 2. Redistributions in binary form must reproduce the above copyright notice,
16 | * this list of conditions and the following disclaimer in the documentation
17 | * and/or other materials provided with the distribution.
18 | * 3. The name of the author may not be used to endorse or promote products
19 | * derived from this software without specific prior written permission.
20 | *
21 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
22 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
23 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
24 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
26 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
29 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
30 | * OF SUCH DAMAGE.
31 | *
32 | * This file is part of the lwIP TCP/IP stack.
33 | *
34 | * Author: Adam Dunkels
35 | *
36 | */
37 | #ifndef LWIP_HDR_PROT_IP_H
38 | #define LWIP_HDR_PROT_IP_H
39 |
40 | #include "lwip/arch.h"
41 |
42 | #ifdef __cplusplus
43 | extern "C" {
44 | #endif
45 |
46 | #define IP_PROTO_ICMP 1
47 | #define IP_PROTO_IGMP 2
48 | #define IP_PROTO_UDP 17
49 | #define IP_PROTO_UDPLITE 136
50 | #define IP_PROTO_TCP 6
51 |
52 | /** This operates on a void* by loading the first byte */
53 | #define IP_HDR_GET_VERSION(ptr) ((*(u8_t*)(ptr)) >> 4)
54 |
55 | #ifdef __cplusplus
56 | }
57 | #endif
58 |
59 | #endif /* LWIP_HDR_PROT_IP_H */
60 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Inc/lwip.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * File Name : LWIP.h
4 | * Description : This file provides code for the configuration
5 | * of the LWIP.
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2020 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | *************************************************************************
18 |
19 | */
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __mx_lwip_H
22 | #define __mx_lwip_H
23 | #ifdef __cplusplus
24 | extern "C" {
25 | #endif
26 |
27 | /* Includes ------------------------------------------------------------------*/
28 | #include "lwip/opt.h"
29 | #include "lwip/mem.h"
30 | #include "lwip/memp.h"
31 | #include "netif/etharp.h"
32 | #include "lwip/dhcp.h"
33 | #include "lwip/netif.h"
34 | #include "lwip/timeouts.h"
35 | #include "ethernetif.h"
36 |
37 | /* Includes for RTOS ---------------------------------------------------------*/
38 | #if WITH_RTOS
39 | #include "lwip/tcpip.h"
40 | #endif /* WITH_RTOS */
41 |
42 | /* USER CODE BEGIN 0 */
43 |
44 | /* USER CODE END 0 */
45 |
46 | /* Global Variables ----------------------------------------------------------*/
47 | extern ETH_HandleTypeDef heth;
48 |
49 | /* LWIP init function */
50 | void MX_LWIP_Init(void);
51 |
52 | #if !WITH_RTOS
53 | /* USER CODE BEGIN 1 */
54 | /* Function defined in lwip.c to:
55 | * - Read a received packet from the Ethernet buffers
56 | * - Send it to the lwIP stack for handling
57 | * - Handle timeouts if NO_SYS_NO_TIMERS not set
58 | */
59 | void MX_LWIP_Process(void);
60 |
61 | /* USER CODE END 1 */
62 | #endif /* WITH_RTOS */
63 |
64 | #ifdef __cplusplus
65 | }
66 | #endif
67 | #endif /*__ mx_lwip_H */
68 |
69 | /**
70 | * @}
71 | */
72 |
73 | /**
74 | * @}
75 | */
76 |
77 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
78 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/.settings/language.settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.rse.core/profiles/PRF.kiki_15/FP.local.files_0/node.properties:
--------------------------------------------------------------------------------
1 | # RSE DOM Node
2 | 00-name=KIKI\:local.files
3 | 01-type=FilterPool
4 | 03-attr.default=true
5 | 03-attr.deletable=true
6 | 03-attr.id=local.files
7 | 03-attr.nonRenamable=false
8 | 03-attr.owningParentName=null
9 | 03-attr.release=200
10 | 03-attr.singleFilterStringOnly=false
11 | 03-attr.singleFilterStringOnlyESet=false
12 | 03-attr.stringsCaseSensitive=true
13 | 03-attr.supportsDuplicateFilterStrings=false
14 | 03-attr.supportsNestedFilters=true
15 | 03-attr.type=default
16 | 06-child.00000.00-name=My Home
17 | 06-child.00000.01-type=Filter
18 | 06-child.00000.03-attr.default=false
19 | 06-child.00000.03-attr.filterType=default
20 | 06-child.00000.03-attr.id=My Home
21 | 06-child.00000.03-attr.nonChangable=false
22 | 06-child.00000.03-attr.nonDeletable=false
23 | 06-child.00000.03-attr.nonRenamable=false
24 | 06-child.00000.03-attr.promptable=false
25 | 06-child.00000.03-attr.relativeOrder=0
26 | 06-child.00000.03-attr.release=200
27 | 06-child.00000.03-attr.singleFilterStringOnly=false
28 | 06-child.00000.03-attr.stringsCaseSensitive=false
29 | 06-child.00000.03-attr.stringsNonChangable=false
30 | 06-child.00000.03-attr.supportsDuplicateFilterStrings=false
31 | 06-child.00000.03-attr.supportsNestedFilters=true
32 | 06-child.00000.06-child.00000.00-name=C\:\\Users\\jihoo\\*
33 | 06-child.00000.06-child.00000.01-type=FilterString
34 | 06-child.00000.06-child.00000.03-attr.default=false
35 | 06-child.00000.06-child.00000.03-attr.string=C\:\\Users\\jihoo\\*
36 | 06-child.00000.06-child.00000.03-attr.type=default
37 | 06-child.00001.00-name=Drives
38 | 06-child.00001.01-type=Filter
39 | 06-child.00001.03-attr.default=false
40 | 06-child.00001.03-attr.filterType=default
41 | 06-child.00001.03-attr.id=Drives
42 | 06-child.00001.03-attr.nonChangable=false
43 | 06-child.00001.03-attr.nonDeletable=false
44 | 06-child.00001.03-attr.nonRenamable=false
45 | 06-child.00001.03-attr.promptable=false
46 | 06-child.00001.03-attr.relativeOrder=0
47 | 06-child.00001.03-attr.release=200
48 | 06-child.00001.03-attr.singleFilterStringOnly=false
49 | 06-child.00001.03-attr.stringsCaseSensitive=false
50 | 06-child.00001.03-attr.stringsNonChangable=false
51 | 06-child.00001.03-attr.supportsDuplicateFilterStrings=false
52 | 06-child.00001.03-attr.supportsNestedFilters=true
53 | 06-child.00001.06-child.00000.00-name=*
54 | 06-child.00001.06-child.00000.01-type=FilterString
55 | 06-child.00001.06-child.00000.03-attr.default=false
56 | 06-child.00001.06-child.00000.03-attr.string=*
57 | 06-child.00001.06-child.00000.03-attr.type=default
58 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/ethip6.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | *
4 | * Ethernet output for IPv6. Uses ND tables for link-layer addressing.
5 | */
6 |
7 | /*
8 | * Copyright (c) 2010 Inico Technologies Ltd.
9 | * All rights reserved.
10 | *
11 | * Redistribution and use in source and binary forms, with or without modification,
12 | * are permitted provided that the following conditions are met:
13 | *
14 | * 1. Redistributions of source code must retain the above copyright notice,
15 | * this list of conditions and the following disclaimer.
16 | * 2. Redistributions in binary form must reproduce the above copyright notice,
17 | * this list of conditions and the following disclaimer in the documentation
18 | * and/or other materials provided with the distribution.
19 | * 3. The name of the author may not be used to endorse or promote products
20 | * derived from this software without specific prior written permission.
21 | *
22 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
23 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
24 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
25 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
26 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
27 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
30 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
31 | * OF SUCH DAMAGE.
32 | *
33 | * This file is part of the lwIP TCP/IP stack.
34 | *
35 | * Author: Ivan Delamer
36 | *
37 | *
38 | * Please coordinate changes and requests with Ivan Delamer
39 | *
40 | */
41 |
42 | #ifndef LWIP_HDR_ETHIP6_H
43 | #define LWIP_HDR_ETHIP6_H
44 |
45 | #include "lwip/opt.h"
46 |
47 | #if LWIP_IPV6 && LWIP_ETHERNET /* don't build if not configured for use in lwipopts.h */
48 |
49 | #include "lwip/pbuf.h"
50 | #include "lwip/ip6.h"
51 | #include "lwip/ip6_addr.h"
52 | #include "lwip/netif.h"
53 |
54 |
55 | #ifdef __cplusplus
56 | extern "C" {
57 | #endif
58 |
59 |
60 | err_t ethip6_output(struct netif *netif, struct pbuf *q, const ip6_addr_t *ip6addr);
61 |
62 | #ifdef __cplusplus
63 | }
64 | #endif
65 |
66 | #endif /* LWIP_IPV6 && LWIP_ETHERNET */
67 |
68 | #endif /* LWIP_HDR_ETHIP6_H */
69 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/prot/udp.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * UDP protocol definitions
4 | */
5 |
6 | /*
7 | * Copyright (c) 2001-2004 Swedish Institute of Computer Science.
8 | * All rights reserved.
9 | *
10 | * Redistribution and use in source and binary forms, with or without modification,
11 | * are permitted provided that the following conditions are met:
12 | *
13 | * 1. Redistributions of source code must retain the above copyright notice,
14 | * this list of conditions and the following disclaimer.
15 | * 2. Redistributions in binary form must reproduce the above copyright notice,
16 | * this list of conditions and the following disclaimer in the documentation
17 | * and/or other materials provided with the distribution.
18 | * 3. The name of the author may not be used to endorse or promote products
19 | * derived from this software without specific prior written permission.
20 | *
21 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
22 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
23 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
24 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
26 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
29 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
30 | * OF SUCH DAMAGE.
31 | *
32 | * This file is part of the lwIP TCP/IP stack.
33 | *
34 | * Author: Adam Dunkels
35 | *
36 | */
37 | #ifndef LWIP_HDR_PROT_UDP_H
38 | #define LWIP_HDR_PROT_UDP_H
39 |
40 | #include "lwip/arch.h"
41 |
42 | #ifdef __cplusplus
43 | extern "C" {
44 | #endif
45 |
46 | #define UDP_HLEN 8
47 |
48 | /* Fields are (of course) in network byte order. */
49 | #ifdef PACK_STRUCT_USE_INCLUDES
50 | # include "arch/bpstruct.h"
51 | #endif
52 | PACK_STRUCT_BEGIN
53 | struct udp_hdr {
54 | PACK_STRUCT_FIELD(u16_t src);
55 | PACK_STRUCT_FIELD(u16_t dest); /* src/dest UDP ports */
56 | PACK_STRUCT_FIELD(u16_t len);
57 | PACK_STRUCT_FIELD(u16_t chksum);
58 | } PACK_STRUCT_STRUCT;
59 | PACK_STRUCT_END
60 | #ifdef PACK_STRUCT_USE_INCLUDES
61 | # include "arch/epstruct.h"
62 | #endif
63 |
64 | #ifdef __cplusplus
65 | }
66 | #endif
67 |
68 | #endif /* LWIP_HDR_PROT_UDP_H */
69 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/netif/ppp/pppcrypt.c:
--------------------------------------------------------------------------------
1 | /*
2 | * pppcrypt.c - PPP/DES linkage for MS-CHAP and EAP SRP-SHA1
3 | *
4 | * Extracted from chap_ms.c by James Carlson.
5 | *
6 | * Copyright (c) 1995 Eric Rosenquist. All rights reserved.
7 | *
8 | * Redistribution and use in source and binary forms, with or without
9 | * modification, are permitted provided that the following conditions
10 | * are met:
11 | *
12 | * 1. Redistributions of source code must retain the above copyright
13 | * notice, this list of conditions and the following disclaimer.
14 | *
15 | * 2. Redistributions in binary form must reproduce the above copyright
16 | * notice, this list of conditions and the following disclaimer in
17 | * the documentation and/or other materials provided with the
18 | * distribution.
19 | *
20 | * 3. The name(s) of the authors of this software must not be used to
21 | * endorse or promote products derived from this software without
22 | * prior written permission.
23 | *
24 | * THE AUTHORS OF THIS SOFTWARE DISCLAIM ALL WARRANTIES WITH REGARD TO
25 | * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
26 | * AND FITNESS, IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY
27 | * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
28 | * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
29 | * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
30 | * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
31 | */
32 |
33 | #include "netif/ppp/ppp_opts.h"
34 | #if PPP_SUPPORT && MSCHAP_SUPPORT /* don't build if not necessary */
35 |
36 | #include "netif/ppp/ppp_impl.h"
37 |
38 | #include "netif/ppp/pppcrypt.h"
39 |
40 |
41 | static u_char pppcrypt_get_7bits(u_char *input, int startBit) {
42 | unsigned int word;
43 |
44 | word = (unsigned)input[startBit / 8] << 8;
45 | word |= (unsigned)input[startBit / 8 + 1];
46 |
47 | word >>= 15 - (startBit % 8 + 7);
48 |
49 | return word & 0xFE;
50 | }
51 |
52 | /* IN 56 bit DES key missing parity bits
53 | * OUT 64 bit DES key with parity bits added
54 | */
55 | void pppcrypt_56_to_64_bit_key(u_char *key, u_char * des_key) {
56 | des_key[0] = pppcrypt_get_7bits(key, 0);
57 | des_key[1] = pppcrypt_get_7bits(key, 7);
58 | des_key[2] = pppcrypt_get_7bits(key, 14);
59 | des_key[3] = pppcrypt_get_7bits(key, 21);
60 | des_key[4] = pppcrypt_get_7bits(key, 28);
61 | des_key[5] = pppcrypt_get_7bits(key, 35);
62 | des_key[6] = pppcrypt_get_7bits(key, 42);
63 | des_key[7] = pppcrypt_get_7bits(key, 49);
64 | }
65 |
66 | #endif /* PPP_SUPPORT && MSCHAP_SUPPORT */
67 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Src/gpio.c:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * File Name : gpio.c
4 | * Description : This file provides code for the configuration
5 | * of all used GPIO pins.
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2020 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Includes ------------------------------------------------------------------*/
21 | #include "gpio.h"
22 | /* USER CODE BEGIN 0 */
23 |
24 | /* USER CODE END 0 */
25 |
26 | /*----------------------------------------------------------------------------*/
27 | /* Configure GPIO */
28 | /*----------------------------------------------------------------------------*/
29 | /* USER CODE BEGIN 1 */
30 |
31 | /* USER CODE END 1 */
32 |
33 | /** Configure pins as
34 | * Analog
35 | * Input
36 | * Output
37 | * EVENT_OUT
38 | * EXTI
39 | */
40 | void MX_GPIO_Init(void)
41 | {
42 |
43 | GPIO_InitTypeDef GPIO_InitStruct = {0};
44 |
45 | /* GPIO Ports Clock Enable */
46 | __HAL_RCC_GPIOC_CLK_ENABLE();
47 | __HAL_RCC_GPIOH_CLK_ENABLE();
48 | __HAL_RCC_GPIOA_CLK_ENABLE();
49 | __HAL_RCC_GPIOB_CLK_ENABLE();
50 | __HAL_RCC_GPIOG_CLK_ENABLE();
51 |
52 | /*Configure GPIO pin Output Level */
53 | HAL_GPIO_WritePin(GPIOB, LED_GREEN_Pin|LED_RED_Pin|LED_BLUE_Pin, GPIO_PIN_RESET);
54 |
55 | /*Configure GPIO pin : PtPin */
56 | GPIO_InitStruct.Pin = USER_BTN_Pin;
57 | GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
58 | GPIO_InitStruct.Pull = GPIO_NOPULL;
59 | HAL_GPIO_Init(USER_BTN_GPIO_Port, &GPIO_InitStruct);
60 |
61 | /*Configure GPIO pins : PBPin PBPin PBPin */
62 | GPIO_InitStruct.Pin = LED_GREEN_Pin|LED_RED_Pin|LED_BLUE_Pin;
63 | GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
64 | GPIO_InitStruct.Pull = GPIO_NOPULL;
65 | GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
66 | HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
67 |
68 | }
69 |
70 | /* USER CODE BEGIN 2 */
71 |
72 | /* USER CODE END 2 */
73 |
74 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
75 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/system/arch/sys_arch.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2001-2003 Swedish Institute of Computer Science.
3 | * All rights reserved.
4 | *
5 | * Redistribution and use in source and binary forms, with or without modification,
6 | * are permitted provided that the following conditions are met:
7 | *
8 | * 1. Redistributions of source code must retain the above copyright notice,
9 | * this list of conditions and the following disclaimer.
10 | * 2. Redistributions in binary form must reproduce the above copyright notice,
11 | * this list of conditions and the following disclaimer in the documentation
12 | * and/or other materials provided with the distribution.
13 | * 3. The name of the author may not be used to endorse or promote products
14 | * derived from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
19 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
20 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
21 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
24 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
25 | * OF SUCH DAMAGE.
26 | *
27 | * This file is part of the lwIP TCP/IP stack.
28 | *
29 | * Author: Adam Dunkels
30 | *
31 | */
32 | #ifndef __SYS_ARCH_H__
33 | #define __SYS_ARCH_H__
34 |
35 | #include "lwip/opt.h"
36 |
37 | #if (NO_SYS != 0)
38 | #error "NO_SYS need to be set to 0 to use threaded API"
39 | #endif
40 |
41 | #include "cmsis_os.h"
42 |
43 | #ifdef __cplusplus
44 | extern "C" {
45 | #endif
46 |
47 | #if (osCMSIS < 0x20000U)
48 |
49 | #define SYS_MBOX_NULL (osMessageQId)0
50 | #define SYS_SEM_NULL (osSemaphoreId)0
51 |
52 | typedef osSemaphoreId sys_sem_t;
53 | typedef osSemaphoreId sys_mutex_t;
54 | typedef osMessageQId sys_mbox_t;
55 | typedef osThreadId sys_thread_t;
56 | #else
57 |
58 | #define SYS_MBOX_NULL (osMessageQueueId_t)0
59 | #define SYS_SEM_NULL (osSemaphoreId_t)0
60 |
61 | typedef osSemaphoreId_t sys_sem_t;
62 | typedef osSemaphoreId_t sys_mutex_t;
63 | typedef osMessageQueueId_t sys_mbox_t;
64 | typedef osThreadId_t sys_thread_t;
65 | #endif
66 |
67 | #ifdef __cplusplus
68 | }
69 | #endif
70 |
71 | #endif /* __SYS_ARCH_H__ */
72 |
73 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Inc/main.h:
--------------------------------------------------------------------------------
1 | /* USER CODE BEGIN Header */
2 | /**
3 | ******************************************************************************
4 | * @file : main.h
5 | * @brief : Header for main.c file.
6 | * This file contains the common defines of the application.
7 | ******************************************************************************
8 | * @attention
9 | *
10 | * © Copyright (c) 2020 STMicroelectronics.
11 | * All rights reserved.
12 | *
13 | * This software component is licensed by ST under Ultimate Liberty license
14 | * SLA0044, the "License"; You may not use this file except in compliance with
15 | * the License. You may obtain a copy of the License at:
16 | * www.st.com/SLA0044
17 | *
18 | ******************************************************************************
19 | */
20 | /* USER CODE END Header */
21 |
22 | /* Define to prevent recursive inclusion -------------------------------------*/
23 | #ifndef __MAIN_H
24 | #define __MAIN_H
25 |
26 | #ifdef __cplusplus
27 | extern "C" {
28 | #endif
29 |
30 | /* Includes ------------------------------------------------------------------*/
31 | #include "stm32f4xx_hal.h"
32 | #include "stm32f4xx_hal.h"
33 |
34 | /* Private includes ----------------------------------------------------------*/
35 | /* USER CODE BEGIN Includes */
36 |
37 | /* USER CODE END Includes */
38 |
39 | /* Exported types ------------------------------------------------------------*/
40 | /* USER CODE BEGIN ET */
41 |
42 | /* USER CODE END ET */
43 |
44 | /* Exported constants --------------------------------------------------------*/
45 | /* USER CODE BEGIN EC */
46 |
47 | /* USER CODE END EC */
48 |
49 | /* Exported macro ------------------------------------------------------------*/
50 | /* USER CODE BEGIN EM */
51 |
52 | /* USER CODE END EM */
53 |
54 | /* Exported functions prototypes ---------------------------------------------*/
55 | void Error_Handler(void);
56 |
57 | /* USER CODE BEGIN EFP */
58 |
59 | /* USER CODE END EFP */
60 |
61 | /* Private defines -----------------------------------------------------------*/
62 | #define USER_BTN_Pin GPIO_PIN_13
63 | #define USER_BTN_GPIO_Port GPIOC
64 | #define LED_GREEN_Pin GPIO_PIN_0
65 | #define LED_GREEN_GPIO_Port GPIOB
66 | #define LED_RED_Pin GPIO_PIN_14
67 | #define LED_RED_GPIO_Port GPIOB
68 | #define LED_BLUE_Pin GPIO_PIN_7
69 | #define LED_BLUE_GPIO_Port GPIOB
70 | /* USER CODE BEGIN Private defines */
71 |
72 | /* USER CODE END Private defines */
73 |
74 | #ifdef __cplusplus
75 | }
76 | #endif
77 |
78 | #endif /* __MAIN_H */
79 |
80 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
81 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/prot/mld6.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * MLD6 protocol definitions
4 | */
5 |
6 | /*
7 | * Copyright (c) 2001-2004 Swedish Institute of Computer Science.
8 | * All rights reserved.
9 | *
10 | * Redistribution and use in source and binary forms, with or without modification,
11 | * are permitted provided that the following conditions are met:
12 | *
13 | * 1. Redistributions of source code must retain the above copyright notice,
14 | * this list of conditions and the following disclaimer.
15 | * 2. Redistributions in binary form must reproduce the above copyright notice,
16 | * this list of conditions and the following disclaimer in the documentation
17 | * and/or other materials provided with the distribution.
18 | * 3. The name of the author may not be used to endorse or promote products
19 | * derived from this software without specific prior written permission.
20 | *
21 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
22 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
23 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
24 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
26 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
29 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
30 | * OF SUCH DAMAGE.
31 | *
32 | * This file is part of the lwIP TCP/IP stack.
33 | *
34 | * Author: Adam Dunkels
35 | *
36 | */
37 | #ifndef LWIP_HDR_PROT_MLD6_H
38 | #define LWIP_HDR_PROT_MLD6_H
39 |
40 | #include "lwip/arch.h"
41 | #include "lwip/prot/ip6.h"
42 |
43 | #ifdef __cplusplus
44 | extern "C" {
45 | #endif
46 |
47 | #define MLD6_HBH_HLEN 8
48 | /** Multicast listener report/query/done message header. */
49 | #ifdef PACK_STRUCT_USE_INCLUDES
50 | # include "arch/bpstruct.h"
51 | #endif
52 | PACK_STRUCT_BEGIN
53 | struct mld_header {
54 | PACK_STRUCT_FLD_8(u8_t type);
55 | PACK_STRUCT_FLD_8(u8_t code);
56 | PACK_STRUCT_FIELD(u16_t chksum);
57 | PACK_STRUCT_FIELD(u16_t max_resp_delay);
58 | PACK_STRUCT_FIELD(u16_t reserved);
59 | PACK_STRUCT_FLD_S(ip6_addr_p_t multicast_address);
60 | /* Options follow. */
61 | } PACK_STRUCT_STRUCT;
62 | PACK_STRUCT_END
63 | #ifdef PACK_STRUCT_USE_INCLUDES
64 | # include "arch/epstruct.h"
65 | #endif
66 |
67 | #ifdef __cplusplus
68 | }
69 | #endif
70 |
71 | #endif /* LWIP_HDR_PROT_MLD6_H */
72 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/apps/netbiosns_opts.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * NETBIOS name service responder options
4 | */
5 |
6 | /*
7 | * Redistribution and use in source and binary forms, with or without modification,
8 | * are permitted provided that the following conditions are met:
9 | *
10 | * 1. Redistributions of source code must retain the above copyright notice,
11 | * this list of conditions and the following disclaimer.
12 | * 2. Redistributions in binary form must reproduce the above copyright notice,
13 | * this list of conditions and the following disclaimer in the documentation
14 | * and/or other materials provided with the distribution.
15 | * 3. The name of the author may not be used to endorse or promote products
16 | * derived from this software without specific prior written permission.
17 | *
18 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
19 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
20 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
21 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
22 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
23 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
26 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
27 | * OF SUCH DAMAGE.
28 | *
29 | * This file is part of the lwIP TCP/IP stack.
30 | *
31 | */
32 | #ifndef LWIP_HDR_APPS_NETBIOS_OPTS_H
33 | #define LWIP_HDR_APPS_NETBIOS_OPTS_H
34 |
35 | #include "lwip/opt.h"
36 |
37 | /**
38 | * @defgroup netbiosns_opts Options
39 | * @ingroup netbiosns
40 | * @{
41 | */
42 |
43 | /** NetBIOS name of lwip device
44 | * This must be uppercase until NETBIOS_STRCMP() is defined to a string
45 | * comparision function that is case insensitive.
46 | * If you want to use the netif's hostname, use this (with LWIP_NETIF_HOSTNAME):
47 | * (ip_current_netif() != NULL ? ip_current_netif()->hostname != NULL ? ip_current_netif()->hostname : "" : "")
48 | *
49 | * If this is not defined, netbiosns_set_name() can be called at runtime to change the name.
50 | */
51 | #ifdef __DOXYGEN__
52 | #define NETBIOS_LWIP_NAME "NETBIOSLWIPDEV"
53 | #endif
54 |
55 | /** Respond to NetBIOS name queries
56 | * Default is disabled
57 | */
58 | #if !defined LWIP_NETBIOS_RESPOND_NAME_QUERY || defined __DOXYGEN__
59 | #define LWIP_NETBIOS_RESPOND_NAME_QUERY 0
60 | #endif
61 |
62 | /**
63 | * @}
64 | */
65 |
66 | #endif /* LWIP_HDR_APPS_NETBIOS_OPTS_H */
67 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_flash_ramfunc.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file stm32f4xx_hal_flash_ramfunc.h
4 | * @author MCD Application Team
5 | * @brief Header file of FLASH RAMFUNC driver.
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2017 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __STM32F4xx_FLASH_RAMFUNC_H
22 | #define __STM32F4xx_FLASH_RAMFUNC_H
23 |
24 | #ifdef __cplusplus
25 | extern "C" {
26 | #endif
27 | #if defined(STM32F410Tx) || defined(STM32F410Cx) || defined(STM32F410Rx) || defined(STM32F411xE) || defined(STM32F446xx) || defined(STM32F412Zx) ||\
28 | defined(STM32F412Vx) || defined(STM32F412Rx) || defined(STM32F412Cx)
29 |
30 | /* Includes ------------------------------------------------------------------*/
31 | #include "stm32f4xx_hal_def.h"
32 |
33 | /** @addtogroup STM32F4xx_HAL_Driver
34 | * @{
35 | */
36 |
37 | /** @addtogroup FLASH_RAMFUNC
38 | * @{
39 | */
40 |
41 | /* Exported types ------------------------------------------------------------*/
42 | /* Exported macro ------------------------------------------------------------*/
43 | /* Exported functions --------------------------------------------------------*/
44 | /** @addtogroup FLASH_RAMFUNC_Exported_Functions
45 | * @{
46 | */
47 |
48 | /** @addtogroup FLASH_RAMFUNC_Exported_Functions_Group1
49 | * @{
50 | */
51 | __RAM_FUNC HAL_StatusTypeDef HAL_FLASHEx_StopFlashInterfaceClk(void);
52 | __RAM_FUNC HAL_StatusTypeDef HAL_FLASHEx_StartFlashInterfaceClk(void);
53 | __RAM_FUNC HAL_StatusTypeDef HAL_FLASHEx_EnableFlashSleepMode(void);
54 | __RAM_FUNC HAL_StatusTypeDef HAL_FLASHEx_DisableFlashSleepMode(void);
55 | /**
56 | * @}
57 | */
58 |
59 | /**
60 | * @}
61 | */
62 |
63 | /**
64 | * @}
65 | */
66 |
67 | /**
68 | * @}
69 | */
70 |
71 | #endif /* STM32F410xx || STM32F411xE || STM32F446xx || STM32F412Zx || STM32F412Vx || STM32F412Rx || STM32F412Cx */
72 | #ifdef __cplusplus
73 | }
74 | #endif
75 |
76 |
77 | #endif /* __STM32F4xx_FLASH_RAMFUNC_H */
78 |
79 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
80 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/if_api.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * Interface Identification APIs from:
4 | * RFC 3493: Basic Socket Interface Extensions for IPv6
5 | * Section 4: Interface Identification
6 | */
7 |
8 | /*
9 | * Copyright (c) 2017 Joel Cunningham, Garmin International, Inc.
10 | * All rights reserved.
11 | *
12 | * Redistribution and use in source and binary forms, with or without modification,
13 | * are permitted provided that the following conditions are met:
14 | *
15 | * 1. Redistributions of source code must retain the above copyright notice,
16 | * this list of conditions and the following disclaimer.
17 | * 2. Redistributions in binary form must reproduce the above copyright notice,
18 | * this list of conditions and the following disclaimer in the documentation
19 | * and/or other materials provided with the distribution.
20 | * 3. The name of the author may not be used to endorse or promote products
21 | * derived from this software without specific prior written permission.
22 | *
23 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
24 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
25 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
26 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
27 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
28 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
29 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
30 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
31 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
32 | * OF SUCH DAMAGE.
33 | *
34 | * This file is part of the lwIP TCP/IP stack.
35 | *
36 | * Author: Joel Cunningham
37 | *
38 | */
39 | #ifndef LWIP_HDR_IF_H
40 | #define LWIP_HDR_IF_H
41 |
42 | #include "lwip/opt.h"
43 |
44 | #if LWIP_SOCKET /* don't build if not configured for use in lwipopts.h */
45 |
46 | #include "lwip/netif.h"
47 |
48 | #ifdef __cplusplus
49 | extern "C" {
50 | #endif
51 |
52 | #define IF_NAMESIZE NETIF_NAMESIZE
53 |
54 | char * lwip_if_indextoname(unsigned int ifindex, char *ifname);
55 | unsigned int lwip_if_nametoindex(const char *ifname);
56 |
57 | #if LWIP_COMPAT_SOCKETS
58 | #define if_indextoname(ifindex, ifname) lwip_if_indextoname(ifindex,ifname)
59 | #define if_nametoindex(ifname) lwip_if_nametoindex(ifname)
60 | #endif /* LWIP_COMPAT_SOCKETS */
61 |
62 | #ifdef __cplusplus
63 | }
64 | #endif
65 |
66 | #endif /* LWIP_SOCKET */
67 |
68 | #endif /* LWIP_HDR_IF_H */
69 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Src/stm32f4xx_hal_msp.c:
--------------------------------------------------------------------------------
1 | /* USER CODE BEGIN Header */
2 | /**
3 | ******************************************************************************
4 | * File Name : stm32f4xx_hal_msp.c
5 | * Description : This file provides code for the MSP Initialization
6 | * and de-Initialization codes.
7 | ******************************************************************************
8 | * @attention
9 | *
10 | * © Copyright (c) 2020 STMicroelectronics.
11 | * All rights reserved.
12 | *
13 | * This software component is licensed by ST under Ultimate Liberty license
14 | * SLA0044, the "License"; You may not use this file except in compliance with
15 | * the License. You may obtain a copy of the License at:
16 | * www.st.com/SLA0044
17 | *
18 | ******************************************************************************
19 | */
20 | /* USER CODE END Header */
21 |
22 | /* Includes ------------------------------------------------------------------*/
23 | #include "main.h"
24 | /* USER CODE BEGIN Includes */
25 |
26 | /* USER CODE END Includes */
27 |
28 | /* Private typedef -----------------------------------------------------------*/
29 | /* USER CODE BEGIN TD */
30 |
31 | /* USER CODE END TD */
32 |
33 | /* Private define ------------------------------------------------------------*/
34 | /* USER CODE BEGIN Define */
35 |
36 | /* USER CODE END Define */
37 |
38 | /* Private macro -------------------------------------------------------------*/
39 | /* USER CODE BEGIN Macro */
40 |
41 | /* USER CODE END Macro */
42 |
43 | /* Private variables ---------------------------------------------------------*/
44 | /* USER CODE BEGIN PV */
45 |
46 | /* USER CODE END PV */
47 |
48 | /* Private function prototypes -----------------------------------------------*/
49 | /* USER CODE BEGIN PFP */
50 |
51 | /* USER CODE END PFP */
52 |
53 | /* External functions --------------------------------------------------------*/
54 | /* USER CODE BEGIN ExternalFunctions */
55 |
56 | /* USER CODE END ExternalFunctions */
57 |
58 | /* USER CODE BEGIN 0 */
59 |
60 | /* USER CODE END 0 */
61 | /**
62 | * Initializes the Global MSP.
63 | */
64 | void HAL_MspInit(void)
65 | {
66 | /* USER CODE BEGIN MspInit 0 */
67 |
68 | /* USER CODE END MspInit 0 */
69 |
70 | __HAL_RCC_SYSCFG_CLK_ENABLE();
71 | __HAL_RCC_PWR_CLK_ENABLE();
72 |
73 | /* System interrupt init*/
74 | /* PendSV_IRQn interrupt configuration */
75 | HAL_NVIC_SetPriority(PendSV_IRQn, 15, 0);
76 |
77 | /* USER CODE BEGIN MspInit 1 */
78 |
79 | /* USER CODE END MspInit 1 */
80 | }
81 |
82 | /* USER CODE BEGIN 1 */
83 |
84 | /* USER CODE END 1 */
85 |
86 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
87 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/mem.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * Heap API
4 | */
5 |
6 | /*
7 | * Copyright (c) 2001-2004 Swedish Institute of Computer Science.
8 | * All rights reserved.
9 | *
10 | * Redistribution and use in source and binary forms, with or without modification,
11 | * are permitted provided that the following conditions are met:
12 | *
13 | * 1. Redistributions of source code must retain the above copyright notice,
14 | * this list of conditions and the following disclaimer.
15 | * 2. Redistributions in binary form must reproduce the above copyright notice,
16 | * this list of conditions and the following disclaimer in the documentation
17 | * and/or other materials provided with the distribution.
18 | * 3. The name of the author may not be used to endorse or promote products
19 | * derived from this software without specific prior written permission.
20 | *
21 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
22 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
23 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
24 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
26 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
29 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
30 | * OF SUCH DAMAGE.
31 | *
32 | * This file is part of the lwIP TCP/IP stack.
33 | *
34 | * Author: Adam Dunkels
35 | *
36 | */
37 | #ifndef LWIP_HDR_MEM_H
38 | #define LWIP_HDR_MEM_H
39 |
40 | #include "lwip/opt.h"
41 |
42 | #ifdef __cplusplus
43 | extern "C" {
44 | #endif
45 |
46 | #if MEM_LIBC_MALLOC
47 |
48 | #include "lwip/arch.h"
49 |
50 | typedef size_t mem_size_t;
51 | #define MEM_SIZE_F SZT_F
52 |
53 | #elif MEM_USE_POOLS
54 |
55 | typedef u16_t mem_size_t;
56 | #define MEM_SIZE_F U16_F
57 |
58 | #else
59 |
60 | /* MEM_SIZE would have to be aligned, but using 64000 here instead of
61 | * 65535 leaves some room for alignment...
62 | */
63 | #if MEM_SIZE > 64000L
64 | typedef u32_t mem_size_t;
65 | #define MEM_SIZE_F U32_F
66 | #else
67 | typedef u16_t mem_size_t;
68 | #define MEM_SIZE_F U16_F
69 | #endif /* MEM_SIZE > 64000 */
70 | #endif
71 |
72 | void mem_init(void);
73 | void *mem_trim(void *mem, mem_size_t size);
74 | void *mem_malloc(mem_size_t size);
75 | void *mem_calloc(mem_size_t count, mem_size_t size);
76 | void mem_free(void *mem);
77 |
78 | #ifdef __cplusplus
79 | }
80 | #endif
81 |
82 | #endif /* LWIP_HDR_MEM_H */
83 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/priv/raw_priv.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * raw API internal implementations (do not use in application code)
4 | */
5 |
6 | /*
7 | * Copyright (c) 2001-2004 Swedish Institute of Computer Science.
8 | * All rights reserved.
9 | *
10 | * Redistribution and use in source and binary forms, with or without modification,
11 | * are permitted provided that the following conditions are met:
12 | *
13 | * 1. Redistributions of source code must retain the above copyright notice,
14 | * this list of conditions and the following disclaimer.
15 | * 2. Redistributions in binary form must reproduce the above copyright notice,
16 | * this list of conditions and the following disclaimer in the documentation
17 | * and/or other materials provided with the distribution.
18 | * 3. The name of the author may not be used to endorse or promote products
19 | * derived from this software without specific prior written permission.
20 | *
21 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
22 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
23 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
24 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
26 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
29 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
30 | * OF SUCH DAMAGE.
31 | *
32 | * This file is part of the lwIP TCP/IP stack.
33 | *
34 | * Author: Adam Dunkels
35 | *
36 | */
37 | #ifndef LWIP_HDR_RAW_PRIV_H
38 | #define LWIP_HDR_RAW_PRIV_H
39 |
40 | #include "lwip/opt.h"
41 |
42 | #if LWIP_RAW /* don't build if not configured for use in lwipopts.h */
43 |
44 | #include "lwip/raw.h"
45 |
46 | #ifdef __cplusplus
47 | extern "C" {
48 | #endif
49 |
50 | /** return codes for raw_input */
51 | typedef enum raw_input_state
52 | {
53 | RAW_INPUT_NONE = 0, /* pbuf did not match any pcbs */
54 | RAW_INPUT_EATEN, /* pbuf handed off and delivered to pcb */
55 | RAW_INPUT_DELIVERED /* pbuf only delivered to pcb (pbuf can still be referenced) */
56 | } raw_input_state_t;
57 |
58 | /* The following functions are the lower layer interface to RAW. */
59 | raw_input_state_t raw_input(struct pbuf *p, struct netif *inp);
60 |
61 | void raw_netif_ip_addr_changed(const ip_addr_t* old_addr, const ip_addr_t* new_addr);
62 |
63 | #ifdef __cplusplus
64 | }
65 | #endif
66 |
67 | #endif /* LWIP_RAW */
68 |
69 | #endif /* LWIP_HDR_RAW_PRIV_H */
70 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/icmp6.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | *
4 | * IPv6 version of ICMP, as per RFC 4443.
5 | */
6 |
7 | /*
8 | * Copyright (c) 2010 Inico Technologies Ltd.
9 | * All rights reserved.
10 | *
11 | * Redistribution and use in source and binary forms, with or without modification,
12 | * are permitted provided that the following conditions are met:
13 | *
14 | * 1. Redistributions of source code must retain the above copyright notice,
15 | * this list of conditions and the following disclaimer.
16 | * 2. Redistributions in binary form must reproduce the above copyright notice,
17 | * this list of conditions and the following disclaimer in the documentation
18 | * and/or other materials provided with the distribution.
19 | * 3. The name of the author may not be used to endorse or promote products
20 | * derived from this software without specific prior written permission.
21 | *
22 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
23 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
24 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
25 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
26 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
27 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
30 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
31 | * OF SUCH DAMAGE.
32 | *
33 | * This file is part of the lwIP TCP/IP stack.
34 | *
35 | * Author: Ivan Delamer
36 | *
37 | *
38 | * Please coordinate changes and requests with Ivan Delamer
39 | *
40 | */
41 | #ifndef LWIP_HDR_ICMP6_H
42 | #define LWIP_HDR_ICMP6_H
43 |
44 | #include "lwip/opt.h"
45 | #include "lwip/pbuf.h"
46 | #include "lwip/ip6_addr.h"
47 | #include "lwip/netif.h"
48 | #include "lwip/prot/icmp6.h"
49 |
50 | #ifdef __cplusplus
51 | extern "C" {
52 | #endif
53 |
54 | #if LWIP_ICMP6 && LWIP_IPV6 /* don't build if not configured for use in lwipopts.h */
55 |
56 | void icmp6_input(struct pbuf *p, struct netif *inp);
57 | void icmp6_dest_unreach(struct pbuf *p, enum icmp6_dur_code c);
58 | void icmp6_packet_too_big(struct pbuf *p, u32_t mtu);
59 | void icmp6_time_exceeded(struct pbuf *p, enum icmp6_te_code c);
60 | void icmp6_time_exceeded_with_addrs(struct pbuf *p, enum icmp6_te_code c,
61 | const ip6_addr_t *src_addr, const ip6_addr_t *dest_addr);
62 | void icmp6_param_problem(struct pbuf *p, enum icmp6_pp_code c, const void *pointer);
63 |
64 | #endif /* LWIP_ICMP6 && LWIP_IPV6 */
65 |
66 |
67 | #ifdef __cplusplus
68 | }
69 | #endif
70 |
71 |
72 | #endif /* LWIP_HDR_ICMP6_H */
73 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/apps/mdns_priv.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * MDNS responder private definitions
4 | */
5 |
6 | /*
7 | * Copyright (c) 2015 Verisure Innovation AB
8 | * All rights reserved.
9 | *
10 | * Redistribution and use in source and binary forms, with or without modification,
11 | * are permitted provided that the following conditions are met:
12 | *
13 | * 1. Redistributions of source code must retain the above copyright notice,
14 | * this list of conditions and the following disclaimer.
15 | * 2. Redistributions in binary form must reproduce the above copyright notice,
16 | * this list of conditions and the following disclaimer in the documentation
17 | * and/or other materials provided with the distribution.
18 | * 3. The name of the author may not be used to endorse or promote products
19 | * derived from this software without specific prior written permission.
20 | *
21 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
22 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
23 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
24 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
26 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
29 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
30 | * OF SUCH DAMAGE.
31 | *
32 | * This file is part of the lwIP TCP/IP stack.
33 | *
34 | * Author: Erik Ekman
35 | *
36 | */
37 | #ifndef LWIP_HDR_MDNS_PRIV_H
38 | #define LWIP_HDR_MDNS_PRIV_H
39 |
40 | #include "lwip/apps/mdns_opts.h"
41 | #include "lwip/pbuf.h"
42 |
43 | #ifdef __cplusplus
44 | extern "C" {
45 | #endif
46 |
47 | #if LWIP_MDNS_RESPONDER
48 |
49 | /* Domain struct and methods - visible for unit tests */
50 |
51 | #define MDNS_DOMAIN_MAXLEN 256
52 | #define MDNS_READNAME_ERROR 0xFFFF
53 |
54 | struct mdns_domain {
55 | /* Encoded domain name */
56 | u8_t name[MDNS_DOMAIN_MAXLEN];
57 | /* Total length of domain name, including zero */
58 | u16_t length;
59 | /* Set if compression of this domain is not allowed */
60 | u8_t skip_compression;
61 | };
62 |
63 | err_t mdns_domain_add_label(struct mdns_domain *domain, const char *label, u8_t len);
64 | u16_t mdns_readname(struct pbuf *p, u16_t offset, struct mdns_domain *domain);
65 | int mdns_domain_eq(struct mdns_domain *a, struct mdns_domain *b);
66 | u16_t mdns_compress_domain(struct pbuf *pbuf, u16_t *offset, struct mdns_domain *domain);
67 |
68 | #endif /* LWIP_MDNS_RESPONDER */
69 |
70 | #ifdef __cplusplus
71 | }
72 | #endif
73 |
74 | #endif /* LWIP_HDR_MDNS_PRIV_H */
75 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/apps/altcp_tls_mbedtls_opts.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * Application layered TCP/TLS connection API (to be used from TCPIP thread)
4 | *
5 | * This file contains options for an mbedtls port of the TLS layer.
6 | */
7 |
8 | /*
9 | * Copyright (c) 2017 Simon Goldschmidt
10 | * All rights reserved.
11 | *
12 | * Redistribution and use in source and binary forms, with or without modification,
13 | * are permitted provided that the following conditions are met:
14 | *
15 | * 1. Redistributions of source code must retain the above copyright notice,
16 | * this list of conditions and the following disclaimer.
17 | * 2. Redistributions in binary form must reproduce the above copyright notice,
18 | * this list of conditions and the following disclaimer in the documentation
19 | * and/or other materials provided with the distribution.
20 | * 3. The name of the author may not be used to endorse or promote products
21 | * derived from this software without specific prior written permission.
22 | *
23 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
24 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
25 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
26 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
27 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
28 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
29 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
30 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
31 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
32 | * OF SUCH DAMAGE.
33 | *
34 | * This file is part of the lwIP TCP/IP stack.
35 | *
36 | * Author: Simon Goldschmidt
37 | *
38 | */
39 | #ifndef LWIP_HDR_ALTCP_TLS_OPTS_H
40 | #define LWIP_HDR_ALTCP_TLS_OPTS_H
41 |
42 | #include "lwip/opt.h"
43 |
44 | #if LWIP_ALTCP /* don't build if not configured for use in lwipopts.h */
45 |
46 | /** LWIP_ALTCP_TLS_MBEDTLS==1: use mbedTLS for TLS support for altcp API
47 | * mbedtls include directory must be reachable via include search path
48 | */
49 | #ifndef LWIP_ALTCP_TLS_MBEDTLS
50 | #define LWIP_ALTCP_TLS_MBEDTLS 0
51 | #endif
52 |
53 | /** Configure debug level of this file */
54 | #ifndef ALTCP_MBEDTLS_DEBUG
55 | #define ALTCP_MBEDTLS_DEBUG LWIP_DBG_OFF
56 | #endif
57 |
58 | /** Set a session timeout in seconds for the basic session cache
59 | * ATTENTION: Using a session cache can lower security by reusing keys!
60 | */
61 | #ifndef ALTCP_MBEDTLS_SESSION_CACHE_TIMEOUT_SECONDS
62 | #define ALTCP_MBEDTLS_SESSION_CACHE_TIMEOUT_SECONDS 0
63 | #endif
64 |
65 | #endif /* LWIP_ALTCP */
66 |
67 | #endif /* LWIP_HDR_ALTCP_TLS_OPTS_H */
68 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/altcp_tcp.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * Application layered TCP connection API (to be used from TCPIP thread)\n
4 | * This interface mimics the tcp callback API to the application while preventing
5 | * direct linking (much like virtual functions).
6 | * This way, an application can make use of other application layer protocols
7 | * on top of TCP without knowing the details (e.g. TLS, proxy connection).
8 | *
9 | * This file contains the base implementation calling into tcp.
10 | */
11 |
12 | /*
13 | * Copyright (c) 2017 Simon Goldschmidt
14 | * All rights reserved.
15 | *
16 | * Redistribution and use in source and binary forms, with or without modification,
17 | * are permitted provided that the following conditions are met:
18 | *
19 | * 1. Redistributions of source code must retain the above copyright notice,
20 | * this list of conditions and the following disclaimer.
21 | * 2. Redistributions in binary form must reproduce the above copyright notice,
22 | * this list of conditions and the following disclaimer in the documentation
23 | * and/or other materials provided with the distribution.
24 | * 3. The name of the author may not be used to endorse or promote products
25 | * derived from this software without specific prior written permission.
26 | *
27 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
28 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
29 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
30 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
31 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
32 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
33 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
34 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
35 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
36 | * OF SUCH DAMAGE.
37 | *
38 | * This file is part of the lwIP TCP/IP stack.
39 | *
40 | * Author: Simon Goldschmidt
41 | *
42 | */
43 | #ifndef LWIP_HDR_ALTCP_TCP_H
44 | #define LWIP_HDR_ALTCP_TCP_H
45 |
46 | #include "lwip/opt.h"
47 |
48 | #if LWIP_ALTCP /* don't build if not configured for use in lwipopts.h */
49 |
50 | #include "lwip/altcp.h"
51 |
52 | #ifdef __cplusplus
53 | extern "C" {
54 | #endif
55 |
56 | struct altcp_pcb *altcp_tcp_new_ip_type(u8_t ip_type);
57 |
58 | #define altcp_tcp_new() altcp_tcp_new_ip_type(IPADDR_TYPE_V4)
59 | #define altcp_tcp_new_ip6() altcp_tcp_new_ip_type(IPADDR_TYPE_V6)
60 |
61 | struct altcp_pcb *altcp_tcp_alloc(void *arg, u8_t ip_type);
62 |
63 | struct tcp_pcb;
64 | struct altcp_pcb *altcp_tcp_wrap(struct tcp_pcb *tpcb);
65 |
66 | #ifdef __cplusplus
67 | }
68 | #endif
69 |
70 | #endif /* LWIP_ALTCP */
71 |
72 | #endif /* LWIP_HDR_ALTCP_TCP_H */
73 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Drivers/CMSIS/Include/tz_context.h:
--------------------------------------------------------------------------------
1 | /******************************************************************************
2 | * @file tz_context.h
3 | * @brief Context Management for Armv8-M TrustZone
4 | * @version V1.0.1
5 | * @date 10. January 2018
6 | ******************************************************************************/
7 | /*
8 | * Copyright (c) 2017-2018 Arm Limited. All rights reserved.
9 | *
10 | * SPDX-License-Identifier: Apache-2.0
11 | *
12 | * Licensed under the Apache License, Version 2.0 (the License); you may
13 | * not use this file except in compliance with the License.
14 | * You may obtain a copy of the License at
15 | *
16 | * www.apache.org/licenses/LICENSE-2.0
17 | *
18 | * Unless required by applicable law or agreed to in writing, software
19 | * distributed under the License is distributed on an AS IS BASIS, WITHOUT
20 | * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21 | * See the License for the specific language governing permissions and
22 | * limitations under the License.
23 | */
24 |
25 | #if defined ( __ICCARM__ )
26 | #pragma system_include /* treat file as system include file for MISRA check */
27 | #elif defined (__clang__)
28 | #pragma clang system_header /* treat file as system include file */
29 | #endif
30 |
31 | #ifndef TZ_CONTEXT_H
32 | #define TZ_CONTEXT_H
33 |
34 | #include
35 |
36 | #ifndef TZ_MODULEID_T
37 | #define TZ_MODULEID_T
38 | /// \details Data type that identifies secure software modules called by a process.
39 | typedef uint32_t TZ_ModuleId_t;
40 | #endif
41 |
42 | /// \details TZ Memory ID identifies an allocated memory slot.
43 | typedef uint32_t TZ_MemoryId_t;
44 |
45 | /// Initialize secure context memory system
46 | /// \return execution status (1: success, 0: error)
47 | uint32_t TZ_InitContextSystem_S (void);
48 |
49 | /// Allocate context memory for calling secure software modules in TrustZone
50 | /// \param[in] module identifies software modules called from non-secure mode
51 | /// \return value != 0 id TrustZone memory slot identifier
52 | /// \return value 0 no memory available or internal error
53 | TZ_MemoryId_t TZ_AllocModuleContext_S (TZ_ModuleId_t module);
54 |
55 | /// Free context memory that was previously allocated with \ref TZ_AllocModuleContext_S
56 | /// \param[in] id TrustZone memory slot identifier
57 | /// \return execution status (1: success, 0: error)
58 | uint32_t TZ_FreeModuleContext_S (TZ_MemoryId_t id);
59 |
60 | /// Load secure context (called on RTOS thread context switch)
61 | /// \param[in] id TrustZone memory slot identifier
62 | /// \return execution status (1: success, 0: error)
63 | uint32_t TZ_LoadContext_S (TZ_MemoryId_t id);
64 |
65 | /// Store secure context (called on RTOS thread context switch)
66 | /// \param[in] id TrustZone memory slot identifier
67 | /// \return execution status (1: success, 0: error)
68 | uint32_t TZ_StoreContext_S (TZ_MemoryId_t id);
69 |
70 | #endif // TZ_CONTEXT_H
71 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/apps/mdns_opts.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * MDNS responder
4 | */
5 |
6 | /*
7 | * Copyright (c) 2015 Verisure Innovation AB
8 | * All rights reserved.
9 | *
10 | * Redistribution and use in source and binary forms, with or without modification,
11 | * are permitted provided that the following conditions are met:
12 | *
13 | * 1. Redistributions of source code must retain the above copyright notice,
14 | * this list of conditions and the following disclaimer.
15 | * 2. Redistributions in binary form must reproduce the above copyright notice,
16 | * this list of conditions and the following disclaimer in the documentation
17 | * and/or other materials provided with the distribution.
18 | * 3. The name of the author may not be used to endorse or promote products
19 | * derived from this software without specific prior written permission.
20 | *
21 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
22 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
23 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
24 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
26 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
29 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
30 | * OF SUCH DAMAGE.
31 | *
32 | * This file is part of the lwIP TCP/IP stack.
33 | *
34 | * Author: Erik Ekman
35 | *
36 | */
37 |
38 | #ifndef LWIP_HDR_APPS_MDNS_OPTS_H
39 | #define LWIP_HDR_APPS_MDNS_OPTS_H
40 |
41 | #include "lwip/opt.h"
42 |
43 | /**
44 | * @defgroup mdns_opts Options
45 | * @ingroup mdns
46 | * @{
47 | */
48 |
49 | /**
50 | * LWIP_MDNS_RESPONDER==1: Turn on multicast DNS module. UDP must be available for MDNS
51 | * transport. IGMP is needed for IPv4 multicast.
52 | */
53 | #ifndef LWIP_MDNS_RESPONDER
54 | #define LWIP_MDNS_RESPONDER 0
55 | #endif /* LWIP_MDNS_RESPONDER */
56 |
57 | /** The maximum number of services per netif */
58 | #ifndef MDNS_MAX_SERVICES
59 | #define MDNS_MAX_SERVICES 1
60 | #endif
61 |
62 | /** MDNS_RESP_USENETIF_EXTCALLBACK==1: register an ext_callback on the netif
63 | * to automatically restart probing/announcing on status or address change.
64 | */
65 | #ifndef MDNS_RESP_USENETIF_EXTCALLBACK
66 | #define MDNS_RESP_USENETIF_EXTCALLBACK LWIP_NETIF_EXT_STATUS_CALLBACK
67 | #endif
68 |
69 | /**
70 | * MDNS_DEBUG: Enable debugging for multicast DNS.
71 | */
72 | #ifndef MDNS_DEBUG
73 | #define MDNS_DEBUG LWIP_DBG_OFF
74 | #endif
75 |
76 | /**
77 | * @}
78 | */
79 |
80 | #endif /* LWIP_HDR_APPS_MDNS_OPTS_H */
81 |
82 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/tcpbase.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * Base TCP API definitions shared by TCP and ALTCP\n
4 | * See also @ref tcp_raw
5 | */
6 |
7 | /*
8 | * Copyright (c) 2001-2004 Swedish Institute of Computer Science.
9 | * All rights reserved.
10 | *
11 | * Redistribution and use in source and binary forms, with or without modification,
12 | * are permitted provided that the following conditions are met:
13 | *
14 | * 1. Redistributions of source code must retain the above copyright notice,
15 | * this list of conditions and the following disclaimer.
16 | * 2. Redistributions in binary form must reproduce the above copyright notice,
17 | * this list of conditions and the following disclaimer in the documentation
18 | * and/or other materials provided with the distribution.
19 | * 3. The name of the author may not be used to endorse or promote products
20 | * derived from this software without specific prior written permission.
21 | *
22 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
23 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
24 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
25 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
26 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
27 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
30 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
31 | * OF SUCH DAMAGE.
32 | *
33 | * This file is part of the lwIP TCP/IP stack.
34 | *
35 | * Author: Adam Dunkels
36 | *
37 | */
38 | #ifndef LWIP_HDR_TCPBASE_H
39 | #define LWIP_HDR_TCPBASE_H
40 |
41 | #include "lwip/opt.h"
42 |
43 | #if LWIP_TCP /* don't build if not configured for use in lwipopts.h */
44 |
45 | #ifdef __cplusplus
46 | extern "C" {
47 | #endif
48 |
49 |
50 | #if LWIP_WND_SCALE
51 | typedef u32_t tcpwnd_size_t;
52 | #else
53 | typedef u16_t tcpwnd_size_t;
54 | #endif
55 |
56 | enum tcp_state {
57 | CLOSED = 0,
58 | LISTEN = 1,
59 | SYN_SENT = 2,
60 | SYN_RCVD = 3,
61 | ESTABLISHED = 4,
62 | FIN_WAIT_1 = 5,
63 | FIN_WAIT_2 = 6,
64 | CLOSE_WAIT = 7,
65 | CLOSING = 8,
66 | LAST_ACK = 9,
67 | TIME_WAIT = 10
68 | };
69 | /* ATTENTION: this depends on state number ordering! */
70 | #define TCP_STATE_IS_CLOSING(state) ((state) >= FIN_WAIT_1)
71 |
72 | /* Flags for "apiflags" parameter in tcp_write */
73 | #define TCP_WRITE_FLAG_COPY 0x01
74 | #define TCP_WRITE_FLAG_MORE 0x02
75 |
76 | #define TCP_PRIO_MIN 1
77 | #define TCP_PRIO_NORMAL 64
78 | #define TCP_PRIO_MAX 127
79 |
80 | const char* tcp_debug_state_str(enum tcp_state s);
81 |
82 | #ifdef __cplusplus
83 | }
84 | #endif
85 |
86 | #endif /* LWIP_TCP */
87 |
88 | #endif /* LWIP_HDR_TCPBASE_H */
89 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/apps/sntp.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * SNTP client API
4 | */
5 |
6 | /*
7 | * Copyright (c) 2007-2009 Frédéric Bernon, Simon Goldschmidt
8 | * All rights reserved.
9 | *
10 | * Redistribution and use in source and binary forms, with or without modification,
11 | * are permitted provided that the following conditions are met:
12 | *
13 | * 1. Redistributions of source code must retain the above copyright notice,
14 | * this list of conditions and the following disclaimer.
15 | * 2. Redistributions in binary form must reproduce the above copyright notice,
16 | * this list of conditions and the following disclaimer in the documentation
17 | * and/or other materials provided with the distribution.
18 | * 3. The name of the author may not be used to endorse or promote products
19 | * derived from this software without specific prior written permission.
20 | *
21 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
22 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
23 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
24 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
26 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
29 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
30 | * OF SUCH DAMAGE.
31 | *
32 | * This file is part of the lwIP TCP/IP stack.
33 | *
34 | * Author: Frédéric Bernon, Simon Goldschmidt
35 | *
36 | */
37 | #ifndef LWIP_HDR_APPS_SNTP_H
38 | #define LWIP_HDR_APPS_SNTP_H
39 |
40 | #include "lwip/apps/sntp_opts.h"
41 | #include "lwip/ip_addr.h"
42 |
43 | #ifdef __cplusplus
44 | extern "C" {
45 | #endif
46 |
47 | /* SNTP operating modes: default is to poll using unicast.
48 | The mode has to be set before calling sntp_init(). */
49 | #define SNTP_OPMODE_POLL 0
50 | #define SNTP_OPMODE_LISTENONLY 1
51 | void sntp_setoperatingmode(u8_t operating_mode);
52 | u8_t sntp_getoperatingmode(void);
53 |
54 | void sntp_init(void);
55 | void sntp_stop(void);
56 | u8_t sntp_enabled(void);
57 |
58 | void sntp_setserver(u8_t idx, const ip_addr_t *addr);
59 | const ip_addr_t* sntp_getserver(u8_t idx);
60 |
61 | #if SNTP_MONITOR_SERVER_REACHABILITY
62 | u8_t sntp_getreachability(u8_t idx);
63 | #endif /* SNTP_MONITOR_SERVER_REACHABILITY */
64 |
65 | #if SNTP_SERVER_DNS
66 | void sntp_setservername(u8_t idx, const char *server);
67 | const char *sntp_getservername(u8_t idx);
68 | #endif /* SNTP_SERVER_DNS */
69 |
70 | #if SNTP_GET_SERVERS_FROM_DHCP
71 | void sntp_servermode_dhcp(int set_servers_from_dhcp);
72 | #else /* SNTP_GET_SERVERS_FROM_DHCP */
73 | #define sntp_servermode_dhcp(x)
74 | #endif /* SNTP_GET_SERVERS_FROM_DHCP */
75 |
76 | #ifdef __cplusplus
77 | }
78 | #endif
79 |
80 | #endif /* LWIP_HDR_APPS_SNTP_H */
81 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/apps/altcp_proxyconnect.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * Application layered TCP connection API that executes a proxy-connect.
4 | *
5 | * This file provides a starting layer that executes a proxy-connect e.g. to
6 | * set up TLS connections through a http proxy.
7 | */
8 |
9 | /*
10 | * Copyright (c) 2018 Simon Goldschmidt
11 | * All rights reserved.
12 | *
13 | * Redistribution and use in source and binary forms, with or without modification,
14 | * are permitted provided that the following conditions are met:
15 | *
16 | * 1. Redistributions of source code must retain the above copyright notice,
17 | * this list of conditions and the following disclaimer.
18 | * 2. Redistributions in binary form must reproduce the above copyright notice,
19 | * this list of conditions and the following disclaimer in the documentation
20 | * and/or other materials provided with the distribution.
21 | * 3. The name of the author may not be used to endorse or promote products
22 | * derived from this software without specific prior written permission.
23 | *
24 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
25 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
26 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
27 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
28 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
29 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
30 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
31 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
32 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
33 | * OF SUCH DAMAGE.
34 | *
35 | * This file is part of the lwIP TCP/IP stack.
36 | *
37 | * Author: Simon Goldschmidt
38 | *
39 | */
40 |
41 | #ifndef LWIP_HDR_APPS_ALTCP_PROXYCONNECT_H
42 | #define LWIP_HDR_APPS_ALTCP_PROXYCONNECT_H
43 |
44 | #include "lwip/opt.h"
45 |
46 | #if LWIP_ALTCP /* don't build if not configured for use in lwipopts.h */
47 |
48 | #include "lwip/ip_addr.h"
49 |
50 | #ifdef __cplusplus
51 | extern "C" {
52 | #endif
53 |
54 | struct altcp_proxyconnect_config {
55 | ip_addr_t proxy_addr;
56 | u16_t proxy_port;
57 | };
58 |
59 |
60 | struct altcp_pcb *altcp_proxyconnect_new(struct altcp_proxyconnect_config *config, struct altcp_pcb *inner_pcb);
61 | struct altcp_pcb *altcp_proxyconnect_new_tcp(struct altcp_proxyconnect_config *config, u8_t ip_type);
62 |
63 | struct altcp_pcb *altcp_proxyconnect_alloc(void *arg, u8_t ip_type);
64 |
65 | #if LWIP_ALTCP_TLS
66 | struct altcp_proxyconnect_tls_config {
67 | struct altcp_proxyconnect_config proxy;
68 | struct altcp_tls_config *tls_config;
69 | };
70 |
71 | struct altcp_pcb *altcp_proxyconnect_tls_alloc(void *arg, u8_t ip_type);
72 | #endif /* LWIP_ALTCP_TLS */
73 |
74 | #ifdef __cplusplus
75 | }
76 | #endif
77 |
78 | #endif /* LWIP_ALTCP */
79 | #endif /* LWIP_HDR_APPS_ALTCP_PROXYCONNECT_H */
80 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/system/arch/cc.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2001-2003 Swedish Institute of Computer Science.
3 | * All rights reserved.
4 | *
5 | * Redistribution and use in source and binary forms, with or without modification,
6 | * are permitted provided that the following conditions are met:
7 | *
8 | * 1. Redistributions of source code must retain the above copyright notice,
9 | * this list of conditions and the following disclaimer.
10 | * 2. Redistributions in binary form must reproduce the above copyright notice,
11 | * this list of conditions and the following disclaimer in the documentation
12 | * and/or other materials provided with the distribution.
13 | * 3. The name of the author may not be used to endorse or promote products
14 | * derived from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
19 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
20 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
21 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
24 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
25 | * OF SUCH DAMAGE.
26 | *
27 | * This file is part of the lwIP TCP/IP stack.
28 | *
29 | * Author: Adam Dunkels
30 | *
31 | */
32 | #ifndef __CC_H__
33 | #define __CC_H__
34 |
35 | #include "cpu.h"
36 | #include
37 | #include
38 |
39 | typedef int sys_prot_t;
40 |
41 | #define LWIP_PROVIDE_ERRNO
42 |
43 | #if defined (__GNUC__) & !defined (__CC_ARM)
44 |
45 | #define LWIP_TIMEVAL_PRIVATE 0
46 | #include
47 |
48 | #endif
49 |
50 | /* define compiler specific symbols */
51 | #if defined (__ICCARM__)
52 |
53 | #define PACK_STRUCT_BEGIN
54 | #define PACK_STRUCT_STRUCT
55 | #define PACK_STRUCT_END
56 | #define PACK_STRUCT_FIELD(x) x
57 | #define PACK_STRUCT_USE_INCLUDES
58 |
59 | #elif defined (__GNUC__)
60 |
61 | #define PACK_STRUCT_BEGIN
62 | #define PACK_STRUCT_STRUCT __attribute__ ((__packed__))
63 | #define PACK_STRUCT_END
64 | #define PACK_STRUCT_FIELD(x) x
65 |
66 | #elif defined (__CC_ARM)
67 |
68 | #define PACK_STRUCT_BEGIN __packed
69 | #define PACK_STRUCT_STRUCT
70 | #define PACK_STRUCT_END
71 | #define PACK_STRUCT_FIELD(x) x
72 |
73 | #elif defined (__TASKING__)
74 |
75 | #define PACK_STRUCT_BEGIN
76 | #define PACK_STRUCT_STRUCT
77 | #define PACK_STRUCT_END
78 | #define PACK_STRUCT_FIELD(x) x
79 |
80 | #endif
81 |
82 | #define LWIP_PLATFORM_ASSERT(x) do {printf("Assertion \"%s\" failed at line %d in %s\n", \
83 | x, __LINE__, __FILE__); } while(0)
84 |
85 | /* Define random number generator function */
86 | #define LWIP_RAND() ((u32_t)rand())
87 |
88 | #endif /* __CC_H__ */
89 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/netif/zepif.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | *
4 | * A netif implementing the ZigBee Eencapsulation Protocol (ZEP).
5 | * This is used to tunnel 6LowPAN over UDP.
6 | */
7 |
8 | /*
9 | * Copyright (c) 2018 Simon Goldschmidt
10 | * All rights reserved.
11 | *
12 | * Redistribution and use in source and binary forms, with or without modification,
13 | * are permitted provided that the following conditions are met:
14 | *
15 | * 1. Redistributions of source code must retain the above copyright notice,
16 | * this list of conditions and the following disclaimer.
17 | * 2. Redistributions in binary form must reproduce the above copyright notice,
18 | * this list of conditions and the following disclaimer in the documentation
19 | * and/or other materials provided with the distribution.
20 | * 3. The name of the author may not be used to endorse or promote products
21 | * derived from this software without specific prior written permission.
22 | *
23 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
24 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
25 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
26 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
27 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
28 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
29 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
30 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
31 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
32 | * OF SUCH DAMAGE.
33 | *
34 | * This file is part of the lwIP TCP/IP stack.
35 | *
36 | * Author: Simon Goldschmidt
37 | *
38 | */
39 |
40 | #ifndef LWIP_HDR_ZEPIF_H
41 | #define LWIP_HDR_ZEPIF_H
42 |
43 | #include "lwip/opt.h"
44 | #include "netif/lowpan6.h"
45 |
46 | #if LWIP_IPV6 && LWIP_UDP /* don't build if not configured for use in lwipopts.h */
47 |
48 | #include "lwip/netif.h"
49 |
50 | #ifdef __cplusplus
51 | extern "C" {
52 | #endif
53 |
54 | #define ZEPIF_DEFAULT_UDP_PORT 17754
55 |
56 | /** Pass this struct as 'state' to netif_add to control the behaviour
57 | * of this netif. If NULL is passed, default behaviour is chosen */
58 | struct zepif_init {
59 | /** The UDP port used to ZEP frames from (0 = default) */
60 | u16_t zep_src_udp_port;
61 | /** The UDP port used to ZEP frames to (0 = default) */
62 | u16_t zep_dst_udp_port;
63 | /** The IP address to sed ZEP frames from (NULL = ANY) */
64 | const ip_addr_t *zep_src_ip_addr;
65 | /** The IP address to sed ZEP frames to (NULL = BROADCAST) */
66 | const ip_addr_t *zep_dst_ip_addr;
67 | /** If != NULL, the udp pcb is bound to this netif */
68 | const struct netif *zep_netif;
69 | /** MAC address of the 6LowPAN device */
70 | u8_t addr[6];
71 | };
72 |
73 | err_t zepif_init(struct netif *netif);
74 |
75 | #ifdef __cplusplus
76 | }
77 | #endif
78 |
79 | #endif /* LWIP_IPV6 && LWIP_UDP */
80 |
81 | #endif /* LWIP_HDR_ZEPIF_H */
82 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/netif/ethernet.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * Ethernet input function - handles INCOMING ethernet level traffic
4 | * To be used in most low-level netif implementations
5 | */
6 |
7 | /*
8 | * Copyright (c) 2001-2003 Swedish Institute of Computer Science.
9 | * Copyright (c) 2003-2004 Leon Woestenberg
10 | * Copyright (c) 2003-2004 Axon Digital Design B.V., The Netherlands.
11 | * All rights reserved.
12 | *
13 | * Redistribution and use in source and binary forms, with or without modification,
14 | * are permitted provided that the following conditions are met:
15 | *
16 | * 1. Redistributions of source code must retain the above copyright notice,
17 | * this list of conditions and the following disclaimer.
18 | * 2. Redistributions in binary form must reproduce the above copyright notice,
19 | * this list of conditions and the following disclaimer in the documentation
20 | * and/or other materials provided with the distribution.
21 | * 3. The name of the author may not be used to endorse or promote products
22 | * derived from this software without specific prior written permission.
23 | *
24 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
25 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
26 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
27 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
28 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
29 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
30 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
31 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
32 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
33 | * OF SUCH DAMAGE.
34 | *
35 | * This file is part of the lwIP TCP/IP stack.
36 | *
37 | * Author: Adam Dunkels
38 | *
39 | */
40 |
41 | #ifndef LWIP_HDR_NETIF_ETHERNET_H
42 | #define LWIP_HDR_NETIF_ETHERNET_H
43 |
44 | #include "lwip/opt.h"
45 |
46 | #include "lwip/pbuf.h"
47 | #include "lwip/netif.h"
48 | #include "lwip/prot/ethernet.h"
49 |
50 | #ifdef __cplusplus
51 | extern "C" {
52 | #endif
53 |
54 | #if LWIP_ARP || LWIP_ETHERNET
55 |
56 | /** Define this to 1 and define LWIP_ARP_FILTER_NETIF_FN(pbuf, netif, type)
57 | * to a filter function that returns the correct netif when using multiple
58 | * netifs on one hardware interface where the netif's low-level receive
59 | * routine cannot decide for the correct netif (e.g. when mapping multiple
60 | * IP addresses to one hardware interface).
61 | */
62 | #ifndef LWIP_ARP_FILTER_NETIF
63 | #define LWIP_ARP_FILTER_NETIF 0
64 | #endif
65 |
66 | err_t ethernet_input(struct pbuf *p, struct netif *netif);
67 | err_t ethernet_output(struct netif* netif, struct pbuf* p, const struct eth_addr* src, const struct eth_addr* dst, u16_t eth_type);
68 |
69 | extern const struct eth_addr ethbroadcast, ethzero;
70 |
71 | #endif /* LWIP_ARP || LWIP_ETHERNET */
72 |
73 | #ifdef __cplusplus
74 | }
75 | #endif
76 |
77 | #endif /* LWIP_HDR_NETIF_ETHERNET_H */
78 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/apps/snmp_mib2.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * SNMP MIB2 API
4 | */
5 |
6 | /*
7 | * Copyright (c) 2001-2004 Swedish Institute of Computer Science.
8 | * All rights reserved.
9 | *
10 | * Redistribution and use in source and binary forms, with or without modification,
11 | * are permitted provided that the following conditions are met:
12 | *
13 | * 1. Redistributions of source code must retain the above copyright notice,
14 | * this list of conditions and the following disclaimer.
15 | * 2. Redistributions in binary form must reproduce the above copyright notice,
16 | * this list of conditions and the following disclaimer in the documentation
17 | * and/or other materials provided with the distribution.
18 | * 3. The name of the author may not be used to endorse or promote products
19 | * derived from this software without specific prior written permission.
20 | *
21 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
22 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
23 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
24 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
26 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
29 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
30 | * OF SUCH DAMAGE.
31 | *
32 | * This file is part of the lwIP TCP/IP stack.
33 | *
34 | * Author: Dirk Ziegelmeier
35 | *
36 | */
37 | #ifndef LWIP_HDR_APPS_SNMP_MIB2_H
38 | #define LWIP_HDR_APPS_SNMP_MIB2_H
39 |
40 | #include "lwip/apps/snmp_opts.h"
41 |
42 | #ifdef __cplusplus
43 | extern "C" {
44 | #endif
45 |
46 | #if LWIP_SNMP /* don't build if not configured for use in lwipopts.h */
47 | #if SNMP_LWIP_MIB2
48 |
49 | #include "lwip/apps/snmp_core.h"
50 |
51 | extern const struct snmp_mib mib2;
52 |
53 | #if SNMP_USE_NETCONN
54 | #include "lwip/apps/snmp_threadsync.h"
55 | void snmp_mib2_lwip_synchronizer(snmp_threadsync_called_fn fn, void* arg);
56 | extern struct snmp_threadsync_instance snmp_mib2_lwip_locks;
57 | #endif
58 |
59 | #ifndef SNMP_SYSSERVICES
60 | #define SNMP_SYSSERVICES ((1 << 6) | (1 << 3) | ((IP_FORWARD) << 2))
61 | #endif
62 |
63 | void snmp_mib2_set_sysdescr(const u8_t* str, const u16_t* len); /* read-only be defintion */
64 | void snmp_mib2_set_syscontact(u8_t *ocstr, u16_t *ocstrlen, u16_t bufsize);
65 | void snmp_mib2_set_syscontact_readonly(const u8_t *ocstr, const u16_t *ocstrlen);
66 | void snmp_mib2_set_sysname(u8_t *ocstr, u16_t *ocstrlen, u16_t bufsize);
67 | void snmp_mib2_set_sysname_readonly(const u8_t *ocstr, const u16_t *ocstrlen);
68 | void snmp_mib2_set_syslocation(u8_t *ocstr, u16_t *ocstrlen, u16_t bufsize);
69 | void snmp_mib2_set_syslocation_readonly(const u8_t *ocstr, const u16_t *ocstrlen);
70 |
71 | #endif /* SNMP_LWIP_MIB2 */
72 | #endif /* LWIP_SNMP */
73 |
74 | #ifdef __cplusplus
75 | }
76 | #endif
77 |
78 | #endif /* LWIP_HDR_APPS_SNMP_MIB2_H */
79 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/netif/lowpan6.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | *
4 | * 6LowPAN output for IPv6. Uses ND tables for link-layer addressing. Fragments packets to 6LowPAN units.
5 | */
6 |
7 | /*
8 | * Copyright (c) 2015 Inico Technologies Ltd.
9 | * All rights reserved.
10 | *
11 | * Redistribution and use in source and binary forms, with or without modification,
12 | * are permitted provided that the following conditions are met:
13 | *
14 | * 1. Redistributions of source code must retain the above copyright notice,
15 | * this list of conditions and the following disclaimer.
16 | * 2. Redistributions in binary form must reproduce the above copyright notice,
17 | * this list of conditions and the following disclaimer in the documentation
18 | * and/or other materials provided with the distribution.
19 | * 3. The name of the author may not be used to endorse or promote products
20 | * derived from this software without specific prior written permission.
21 | *
22 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
23 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
24 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
25 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
26 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
27 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
30 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
31 | * OF SUCH DAMAGE.
32 | *
33 | * This file is part of the lwIP TCP/IP stack.
34 | *
35 | * Author: Ivan Delamer
36 | *
37 | *
38 | * Please coordinate changes and requests with Ivan Delamer
39 | *
40 | */
41 |
42 | #ifndef LWIP_HDR_LOWPAN6_H
43 | #define LWIP_HDR_LOWPAN6_H
44 |
45 | #include "netif/lowpan6_opts.h"
46 |
47 | #if LWIP_IPV6
48 |
49 | #include "netif/lowpan6_common.h"
50 | #include "lwip/pbuf.h"
51 | #include "lwip/ip.h"
52 | #include "lwip/ip_addr.h"
53 | #include "lwip/netif.h"
54 |
55 | #ifdef __cplusplus
56 | extern "C" {
57 | #endif
58 |
59 | /** 1 second period for reassembly */
60 | #define LOWPAN6_TMR_INTERVAL 1000
61 |
62 | void lowpan6_tmr(void);
63 |
64 | err_t lowpan6_set_context(u8_t idx, const ip6_addr_t * context);
65 | err_t lowpan6_set_short_addr(u8_t addr_high, u8_t addr_low);
66 |
67 | #if LWIP_IPV4
68 | err_t lowpan4_output(struct netif *netif, struct pbuf *q, const ip4_addr_t *ipaddr);
69 | #endif /* LWIP_IPV4 */
70 | err_t lowpan6_output(struct netif *netif, struct pbuf *q, const ip6_addr_t *ip6addr);
71 | err_t lowpan6_input(struct pbuf * p, struct netif *netif);
72 | err_t lowpan6_if_init(struct netif *netif);
73 |
74 | /* pan_id in network byte order. */
75 | err_t lowpan6_set_pan_id(u16_t pan_id);
76 |
77 | u16_t lowpan6_calc_crc(const void *buf, u16_t len);
78 |
79 | #if !NO_SYS
80 | err_t tcpip_6lowpan_input(struct pbuf *p, struct netif *inp);
81 | #endif /* !NO_SYS */
82 |
83 | #ifdef __cplusplus
84 | }
85 | #endif
86 |
87 | #endif /* LWIP_IPV6 */
88 |
89 | #endif /* LWIP_HDR_LOWPAN6_H */
90 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/prot/iana.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * IANA assigned numbers (RFC 1700 and successors)
4 | *
5 | * @defgroup iana IANA assigned numbers
6 | * @ingroup infrastructure
7 | */
8 |
9 | /*
10 | * Copyright (c) 2017 Dirk Ziegelmeier.
11 | * All rights reserved.
12 | *
13 | * Redistribution and use in source and binary forms, with or without modification,
14 | * are permitted provided that the following conditions are met:
15 | *
16 | * 1. Redistributions of source code must retain the above copyright notice,
17 | * this list of conditions and the following disclaimer.
18 | * 2. Redistributions in binary form must reproduce the above copyright notice,
19 | * this list of conditions and the following disclaimer in the documentation
20 | * and/or other materials provided with the distribution.
21 | * 3. The name of the author may not be used to endorse or promote products
22 | * derived from this software without specific prior written permission.
23 | *
24 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
25 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
26 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
27 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
28 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
29 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
30 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
31 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
32 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
33 | * OF SUCH DAMAGE.
34 | *
35 | * This file is part of the lwIP TCP/IP stack.
36 | *
37 | * Author: Dirk Ziegelmeier
38 | *
39 | */
40 |
41 | #ifndef LWIP_HDR_PROT_IANA_H
42 | #define LWIP_HDR_PROT_IANA_H
43 |
44 | #ifdef __cplusplus
45 | extern "C" {
46 | #endif
47 |
48 | /**
49 | * @ingroup iana
50 | * Hardware types
51 | */
52 | enum lwip_iana_hwtype {
53 | /** Ethernet */
54 | LWIP_IANA_HWTYPE_ETHERNET = 1
55 | };
56 |
57 | /**
58 | * @ingroup iana
59 | * Port numbers
60 | * https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.txt
61 | */
62 | enum lwip_iana_port_number {
63 | /** SMTP */
64 | LWIP_IANA_PORT_SMTP = 25,
65 | /** DHCP server */
66 | LWIP_IANA_PORT_DHCP_SERVER = 67,
67 | /** DHCP client */
68 | LWIP_IANA_PORT_DHCP_CLIENT = 68,
69 | /** TFTP */
70 | LWIP_IANA_PORT_TFTP = 69,
71 | /** HTTP */
72 | LWIP_IANA_PORT_HTTP = 80,
73 | /** SNTP */
74 | LWIP_IANA_PORT_SNTP = 123,
75 | /** NETBIOS */
76 | LWIP_IANA_PORT_NETBIOS = 137,
77 | /** SNMP */
78 | LWIP_IANA_PORT_SNMP = 161,
79 | /** SNMP traps */
80 | LWIP_IANA_PORT_SNMP_TRAP = 162,
81 | /** HTTPS */
82 | LWIP_IANA_PORT_HTTPS = 443,
83 | /** SMTPS */
84 | LWIP_IANA_PORT_SMTPS = 465,
85 | /** MQTT */
86 | LWIP_IANA_PORT_MQTT = 1883,
87 | /** MDNS */
88 | LWIP_IANA_PORT_MDNS = 5353,
89 | /** Secure MQTT */
90 | LWIP_IANA_PORT_SECURE_MQTT = 8883
91 | };
92 |
93 | #ifdef __cplusplus
94 | }
95 | #endif
96 |
97 | #endif /* LWIP_HDR_PROT_IANA_H */
98 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/core/altcp_alloc.c:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * Application layered TCP connection API (to be used from TCPIP thread)\n
4 | * This interface mimics the tcp callback API to the application while preventing
5 | * direct linking (much like virtual functions).
6 | * This way, an application can make use of other application layer protocols
7 | * on top of TCP without knowing the details (e.g. TLS, proxy connection).
8 | *
9 | * This file contains allocation implementation that combine several layers.
10 | */
11 |
12 | /*
13 | * Copyright (c) 2017 Simon Goldschmidt
14 | * All rights reserved.
15 | *
16 | * Redistribution and use in source and binary forms, with or without modification,
17 | * are permitted provided that the following conditions are met:
18 | *
19 | * 1. Redistributions of source code must retain the above copyright notice,
20 | * this list of conditions and the following disclaimer.
21 | * 2. Redistributions in binary form must reproduce the above copyright notice,
22 | * this list of conditions and the following disclaimer in the documentation
23 | * and/or other materials provided with the distribution.
24 | * 3. The name of the author may not be used to endorse or promote products
25 | * derived from this software without specific prior written permission.
26 | *
27 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
28 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
29 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
30 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
31 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
32 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
33 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
34 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
35 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
36 | * OF SUCH DAMAGE.
37 | *
38 | * This file is part of the lwIP TCP/IP stack.
39 | *
40 | * Author: Simon Goldschmidt
41 | *
42 | */
43 |
44 | #include "lwip/opt.h"
45 |
46 | #if LWIP_ALTCP /* don't build if not configured for use in lwipopts.h */
47 |
48 | #include "lwip/altcp.h"
49 | #include "lwip/altcp_tcp.h"
50 | #include "lwip/altcp_tls.h"
51 | #include "lwip/priv/altcp_priv.h"
52 | #include "lwip/mem.h"
53 |
54 | #include
55 |
56 | #if LWIP_ALTCP_TLS
57 |
58 | /** This standard allocator function creates an altcp pcb for
59 | * TLS over TCP */
60 | struct altcp_pcb *
61 | altcp_tls_new(struct altcp_tls_config *config, u8_t ip_type)
62 | {
63 | struct altcp_pcb *inner_conn, *ret;
64 | LWIP_UNUSED_ARG(ip_type);
65 |
66 | inner_conn = altcp_tcp_new_ip_type(ip_type);
67 | if (inner_conn == NULL) {
68 | return NULL;
69 | }
70 | ret = altcp_tls_wrap(config, inner_conn);
71 | if (ret == NULL) {
72 | altcp_close(inner_conn);
73 | }
74 | return ret;
75 | }
76 |
77 | /** This standard allocator function creates an altcp pcb for
78 | * TLS over TCP */
79 | struct altcp_pcb *
80 | altcp_tls_alloc(void *arg, u8_t ip_type)
81 | {
82 | return altcp_tls_new((struct altcp_tls_config *)arg, ip_type);
83 | }
84 |
85 | #endif /* LWIP_ALTCP_TLS */
86 |
87 | #endif /* LWIP_ALTCP */
88 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_dma_ex.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file stm32f4xx_hal_dma_ex.h
4 | * @author MCD Application Team
5 | * @brief Header file of DMA HAL extension module.
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2017 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __STM32F4xx_HAL_DMA_EX_H
22 | #define __STM32F4xx_HAL_DMA_EX_H
23 |
24 | #ifdef __cplusplus
25 | extern "C" {
26 | #endif
27 |
28 | /* Includes ------------------------------------------------------------------*/
29 | #include "stm32f4xx_hal_def.h"
30 |
31 | /** @addtogroup STM32F4xx_HAL_Driver
32 | * @{
33 | */
34 |
35 | /** @addtogroup DMAEx
36 | * @{
37 | */
38 |
39 | /* Exported types ------------------------------------------------------------*/
40 | /** @defgroup DMAEx_Exported_Types DMAEx Exported Types
41 | * @brief DMAEx Exported types
42 | * @{
43 | */
44 |
45 | /**
46 | * @brief HAL DMA Memory definition
47 | */
48 | typedef enum
49 | {
50 | MEMORY0 = 0x00U, /*!< Memory 0 */
51 | MEMORY1 = 0x01U /*!< Memory 1 */
52 | }HAL_DMA_MemoryTypeDef;
53 |
54 | /**
55 | * @}
56 | */
57 |
58 | /* Exported functions --------------------------------------------------------*/
59 | /** @defgroup DMAEx_Exported_Functions DMAEx Exported Functions
60 | * @brief DMAEx Exported functions
61 | * @{
62 | */
63 |
64 | /** @defgroup DMAEx_Exported_Functions_Group1 Extended features functions
65 | * @brief Extended features functions
66 | * @{
67 | */
68 |
69 | /* IO operation functions *******************************************************/
70 | HAL_StatusTypeDef HAL_DMAEx_MultiBufferStart(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t SecondMemAddress, uint32_t DataLength);
71 | HAL_StatusTypeDef HAL_DMAEx_MultiBufferStart_IT(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t SecondMemAddress, uint32_t DataLength);
72 | HAL_StatusTypeDef HAL_DMAEx_ChangeMemory(DMA_HandleTypeDef *hdma, uint32_t Address, HAL_DMA_MemoryTypeDef memory);
73 |
74 | /**
75 | * @}
76 | */
77 | /**
78 | * @}
79 | */
80 |
81 | /* Private functions ---------------------------------------------------------*/
82 | /** @defgroup DMAEx_Private_Functions DMAEx Private Functions
83 | * @brief DMAEx Private functions
84 | * @{
85 | */
86 | /**
87 | * @}
88 | */
89 |
90 | /**
91 | * @}
92 | */
93 |
94 | /**
95 | * @}
96 | */
97 |
98 | #ifdef __cplusplus
99 | }
100 | #endif
101 |
102 | #endif /*__STM32F4xx_HAL_DMA_EX_H*/
103 |
104 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
105 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/prot/igmp.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * IGMP protocol definitions
4 | */
5 |
6 | /*
7 | * Copyright (c) 2001-2004 Swedish Institute of Computer Science.
8 | * All rights reserved.
9 | *
10 | * Redistribution and use in source and binary forms, with or without modification,
11 | * are permitted provided that the following conditions are met:
12 | *
13 | * 1. Redistributions of source code must retain the above copyright notice,
14 | * this list of conditions and the following disclaimer.
15 | * 2. Redistributions in binary form must reproduce the above copyright notice,
16 | * this list of conditions and the following disclaimer in the documentation
17 | * and/or other materials provided with the distribution.
18 | * 3. The name of the author may not be used to endorse or promote products
19 | * derived from this software without specific prior written permission.
20 | *
21 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
22 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
23 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
24 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
26 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
29 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
30 | * OF SUCH DAMAGE.
31 | *
32 | * This file is part of the lwIP TCP/IP stack.
33 | *
34 | * Author: Adam Dunkels
35 | *
36 | */
37 | #ifndef LWIP_HDR_PROT_IGMP_H
38 | #define LWIP_HDR_PROT_IGMP_H
39 |
40 | #include "lwip/arch.h"
41 | #include "lwip/prot/ip4.h"
42 |
43 | #ifdef __cplusplus
44 | extern "C" {
45 | #endif
46 |
47 | /*
48 | * IGMP constants
49 | */
50 | #define IGMP_TTL 1
51 | #define IGMP_MINLEN 8
52 | #define ROUTER_ALERT 0x9404U
53 | #define ROUTER_ALERTLEN 4
54 |
55 | /*
56 | * IGMP message types, including version number.
57 | */
58 | #define IGMP_MEMB_QUERY 0x11 /* Membership query */
59 | #define IGMP_V1_MEMB_REPORT 0x12 /* Ver. 1 membership report */
60 | #define IGMP_V2_MEMB_REPORT 0x16 /* Ver. 2 membership report */
61 | #define IGMP_LEAVE_GROUP 0x17 /* Leave-group message */
62 |
63 | /* Group membership states */
64 | #define IGMP_GROUP_NON_MEMBER 0
65 | #define IGMP_GROUP_DELAYING_MEMBER 1
66 | #define IGMP_GROUP_IDLE_MEMBER 2
67 |
68 | /**
69 | * IGMP packet format.
70 | */
71 | #ifdef PACK_STRUCT_USE_INCLUDES
72 | # include "arch/bpstruct.h"
73 | #endif
74 | PACK_STRUCT_BEGIN
75 | struct igmp_msg {
76 | PACK_STRUCT_FLD_8(u8_t igmp_msgtype);
77 | PACK_STRUCT_FLD_8(u8_t igmp_maxresp);
78 | PACK_STRUCT_FIELD(u16_t igmp_checksum);
79 | PACK_STRUCT_FLD_S(ip4_addr_p_t igmp_group_address);
80 | } PACK_STRUCT_STRUCT;
81 | PACK_STRUCT_END
82 | #ifdef PACK_STRUCT_USE_INCLUDES
83 | # include "arch/epstruct.h"
84 | #endif
85 |
86 | #ifdef __cplusplus
87 | }
88 | #endif
89 |
90 | #endif /* LWIP_HDR_PROT_IGMP_H */
91 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/prot/ieee.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * IEEE assigned numbers
4 | *
5 | * @defgroup ieee IEEE assigned numbers
6 | * @ingroup infrastructure
7 | */
8 |
9 | /*
10 | * Copyright (c) 2017 Dirk Ziegelmeier.
11 | * All rights reserved.
12 | *
13 | * Redistribution and use in source and binary forms, with or without modification,
14 | * are permitted provided that the following conditions are met:
15 | *
16 | * 1. Redistributions of source code must retain the above copyright notice,
17 | * this list of conditions and the following disclaimer.
18 | * 2. Redistributions in binary form must reproduce the above copyright notice,
19 | * this list of conditions and the following disclaimer in the documentation
20 | * and/or other materials provided with the distribution.
21 | * 3. The name of the author may not be used to endorse or promote products
22 | * derived from this software without specific prior written permission.
23 | *
24 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
25 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
26 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
27 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
28 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
29 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
30 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
31 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
32 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
33 | * OF SUCH DAMAGE.
34 | *
35 | * This file is part of the lwIP TCP/IP stack.
36 | *
37 | * Author: Dirk Ziegelmeier
38 | *
39 | */
40 |
41 | #ifndef LWIP_HDR_PROT_IEEE_H
42 | #define LWIP_HDR_PROT_IEEE_H
43 |
44 | #ifdef __cplusplus
45 | extern "C" {
46 | #endif
47 |
48 | /**
49 | * @ingroup ieee
50 | * A list of often ethtypes (although lwIP does not use all of them).
51 | */
52 | enum lwip_ieee_eth_type {
53 | /** Internet protocol v4 */
54 | ETHTYPE_IP = 0x0800U,
55 | /** Address resolution protocol */
56 | ETHTYPE_ARP = 0x0806U,
57 | /** Wake on lan */
58 | ETHTYPE_WOL = 0x0842U,
59 | /** RARP */
60 | ETHTYPE_RARP = 0x8035U,
61 | /** Virtual local area network */
62 | ETHTYPE_VLAN = 0x8100U,
63 | /** Internet protocol v6 */
64 | ETHTYPE_IPV6 = 0x86DDU,
65 | /** PPP Over Ethernet Discovery Stage */
66 | ETHTYPE_PPPOEDISC = 0x8863U,
67 | /** PPP Over Ethernet Session Stage */
68 | ETHTYPE_PPPOE = 0x8864U,
69 | /** Jumbo Frames */
70 | ETHTYPE_JUMBO = 0x8870U,
71 | /** Process field network */
72 | ETHTYPE_PROFINET = 0x8892U,
73 | /** Ethernet for control automation technology */
74 | ETHTYPE_ETHERCAT = 0x88A4U,
75 | /** Link layer discovery protocol */
76 | ETHTYPE_LLDP = 0x88CCU,
77 | /** Serial real-time communication system */
78 | ETHTYPE_SERCOS = 0x88CDU,
79 | /** Media redundancy protocol */
80 | ETHTYPE_MRP = 0x88E3U,
81 | /** Precision time protocol */
82 | ETHTYPE_PTP = 0x88F7U,
83 | /** Q-in-Q, 802.1ad */
84 | ETHTYPE_QINQ = 0x9100U
85 | };
86 |
87 | #ifdef __cplusplus
88 | }
89 | #endif
90 |
91 | #endif /* LWIP_HDR_PROT_IEEE_H */
92 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/netif/lowpan6_ble.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * 6LowPAN over BLE for IPv6 (RFC7668).
4 | */
5 |
6 | /*
7 | * Copyright (c) 2017 Benjamin Aigner
8 | * Copyright (c) 2015 Inico Technologies Ltd. , Author: Ivan Delamer
9 | *
10 | * All rights reserved.
11 | *
12 | * Redistribution and use in source and binary forms, with or without modification,
13 | * are permitted provided that the following conditions are met:
14 | *
15 | * 1. Redistributions of source code must retain the above copyright notice,
16 | * this list of conditions and the following disclaimer.
17 | * 2. Redistributions in binary form must reproduce the above copyright notice,
18 | * this list of conditions and the following disclaimer in the documentation
19 | * and/or other materials provided with the distribution.
20 | * 3. The name of the author may not be used to endorse or promote products
21 | * derived from this software without specific prior written permission.
22 | *
23 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
24 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
25 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
26 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
27 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
28 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
29 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
30 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
31 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
32 | * OF SUCH DAMAGE.
33 | *
34 | * Author: Benjamin Aigner
35 | *
36 | * Based on the original 6lowpan implementation of lwIP ( @see 6lowpan.c)
37 | */
38 |
39 | #ifndef LWIP_HDR_LOWPAN6_BLE_H
40 | #define LWIP_HDR_LOWPAN6_BLE_H
41 |
42 | #include "netif/lowpan6_opts.h"
43 |
44 | #if LWIP_IPV6 /* don't build if not configured for use in lwipopts.h */
45 |
46 | #include "netif/lowpan6_common.h"
47 | #include "lwip/pbuf.h"
48 | #include "lwip/ip.h"
49 | #include "lwip/ip_addr.h"
50 | #include "lwip/netif.h"
51 |
52 | #ifdef __cplusplus
53 | extern "C" {
54 | #endif
55 |
56 | err_t rfc7668_output(struct netif *netif, struct pbuf *q, const ip6_addr_t *ip6addr);
57 | err_t rfc7668_input(struct pbuf * p, struct netif *netif);
58 | err_t rfc7668_set_local_addr_eui64(struct netif *netif, const u8_t *local_addr, size_t local_addr_len);
59 | err_t rfc7668_set_local_addr_mac48(struct netif *netif, const u8_t *local_addr, size_t local_addr_len, int is_public_addr);
60 | err_t rfc7668_set_peer_addr_eui64(struct netif *netif, const u8_t *peer_addr, size_t peer_addr_len);
61 | err_t rfc7668_set_peer_addr_mac48(struct netif *netif, const u8_t *peer_addr, size_t peer_addr_len, int is_public_addr);
62 | err_t rfc7668_set_context(u8_t index, const ip6_addr_t * context);
63 | err_t rfc7668_if_init(struct netif *netif);
64 |
65 | #if !NO_SYS
66 | err_t tcpip_rfc7668_input(struct pbuf *p, struct netif *inp);
67 | #endif
68 |
69 | void ble_addr_to_eui64(uint8_t *dst, const uint8_t *src, int public_addr);
70 | void eui64_to_ble_addr(uint8_t *dst, const uint8_t *src);
71 |
72 | #ifdef __cplusplus
73 | }
74 | #endif
75 |
76 | #endif /* LWIP_IPV6 */
77 |
78 | #endif /* LWIP_HDR_LOWPAN6_BLE_H */
79 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/netif/slipif.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | *
4 | * SLIP netif API
5 | */
6 |
7 | /*
8 | * Copyright (c) 2001, Swedish Institute of Computer Science.
9 | * All rights reserved.
10 | *
11 | * Redistribution and use in source and binary forms, with or without
12 | * modification, are permitted provided that the following conditions
13 | * are met:
14 | * 1. Redistributions of source code must retain the above copyright
15 | * notice, this list of conditions and the following disclaimer.
16 | * 2. Redistributions in binary form must reproduce the above copyright
17 | * notice, this list of conditions and the following disclaimer in the
18 | * documentation and/or other materials provided with the distribution.
19 | * 3. Neither the name of the Institute nor the names of its contributors
20 | * may be used to endorse or promote products derived from this software
21 | * without specific prior written permission.
22 | *
23 | * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
24 | * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26 | * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
27 | * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
28 | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
29 | * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33 | * SUCH DAMAGE.
34 | *
35 | * This file is part of the lwIP TCP/IP stack.
36 | *
37 | * Author: Adam Dunkels
38 | *
39 | */
40 | #ifndef LWIP_HDR_NETIF_SLIPIF_H
41 | #define LWIP_HDR_NETIF_SLIPIF_H
42 |
43 | #include "lwip/opt.h"
44 | #include "lwip/netif.h"
45 |
46 | /** Set this to 1 to start a thread that blocks reading on the serial line
47 | * (using sio_read()).
48 | */
49 | #ifndef SLIP_USE_RX_THREAD
50 | #define SLIP_USE_RX_THREAD !NO_SYS
51 | #endif
52 |
53 | /** Set this to 1 to enable functions to pass in RX bytes from ISR context.
54 | * If enabled, slipif_received_byte[s]() process incoming bytes and put assembled
55 | * packets on a queue, which is fed into lwIP from slipif_poll().
56 | * If disabled, slipif_poll() polls the serial line (using sio_tryread()).
57 | */
58 | #ifndef SLIP_RX_FROM_ISR
59 | #define SLIP_RX_FROM_ISR 0
60 | #endif
61 |
62 | /** Set this to 1 (default for SLIP_RX_FROM_ISR) to queue incoming packets
63 | * received by slipif_received_byte[s]() as long as PBUF_POOL pbufs are available.
64 | * If disabled, packets will be dropped if more than one packet is received.
65 | */
66 | #ifndef SLIP_RX_QUEUE
67 | #define SLIP_RX_QUEUE SLIP_RX_FROM_ISR
68 | #endif
69 |
70 | #ifdef __cplusplus
71 | extern "C" {
72 | #endif
73 |
74 | err_t slipif_init(struct netif * netif);
75 | void slipif_poll(struct netif *netif);
76 | #if SLIP_RX_FROM_ISR
77 | void slipif_process_rxqueue(struct netif *netif);
78 | void slipif_received_byte(struct netif *netif, u8_t data);
79 | void slipif_received_bytes(struct netif *netif, u8_t *data, u8_t len);
80 | #endif /* SLIP_RX_FROM_ISR */
81 |
82 | #ifdef __cplusplus
83 | }
84 | #endif
85 |
86 | #endif /* LWIP_HDR_NETIF_SLIPIF_H */
87 |
88 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/netif/lowpan6_common.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | *
4 | * Common 6LowPAN routines for IPv6. Uses ND tables for link-layer addressing. Fragments packets to 6LowPAN units.
5 | */
6 |
7 | /*
8 | * Copyright (c) 2015 Inico Technologies Ltd.
9 | * All rights reserved.
10 | *
11 | * Redistribution and use in source and binary forms, with or without modification,
12 | * are permitted provided that the following conditions are met:
13 | *
14 | * 1. Redistributions of source code must retain the above copyright notice,
15 | * this list of conditions and the following disclaimer.
16 | * 2. Redistributions in binary form must reproduce the above copyright notice,
17 | * this list of conditions and the following disclaimer in the documentation
18 | * and/or other materials provided with the distribution.
19 | * 3. The name of the author may not be used to endorse or promote products
20 | * derived from this software without specific prior written permission.
21 | *
22 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
23 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
24 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
25 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
26 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
27 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
30 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
31 | * OF SUCH DAMAGE.
32 | *
33 | * This file is part of the lwIP TCP/IP stack.
34 | *
35 | * Author: Ivan Delamer
36 | *
37 | *
38 | * Please coordinate changes and requests with Ivan Delamer
39 | *
40 | */
41 |
42 | #ifndef LWIP_HDR_LOWPAN6_COMMON_H
43 | #define LWIP_HDR_LOWPAN6_COMMON_H
44 |
45 | #include "netif/lowpan6_opts.h"
46 |
47 | #if LWIP_IPV6 /* don't build if IPv6 is disabled in lwipopts.h */
48 |
49 | #include "lwip/pbuf.h"
50 | #include "lwip/ip.h"
51 | #include "lwip/ip6_addr.h"
52 | #include "lwip/netif.h"
53 |
54 | #ifdef __cplusplus
55 | extern "C" {
56 | #endif
57 |
58 | /** Helper define for a link layer address, which can be encoded as 0, 2 or 8 bytes */
59 | struct lowpan6_link_addr {
60 | /* encoded length of the address */
61 | u8_t addr_len;
62 | /* address bytes */
63 | u8_t addr[8];
64 | };
65 |
66 | s8_t lowpan6_get_address_mode(const ip6_addr_t *ip6addr, const struct lowpan6_link_addr *mac_addr);
67 |
68 | #if LWIP_6LOWPAN_IPHC
69 | err_t lowpan6_compress_headers(struct netif *netif, u8_t *inbuf, size_t inbuf_size, u8_t *outbuf, size_t outbuf_size,
70 | u8_t *lowpan6_header_len_out, u8_t *hidden_header_len_out, ip6_addr_t *lowpan6_contexts,
71 | const struct lowpan6_link_addr *src, const struct lowpan6_link_addr *dst);
72 | struct pbuf *lowpan6_decompress(struct pbuf *p, u16_t datagram_size, ip6_addr_t *lowpan6_contexts,
73 | struct lowpan6_link_addr *src, struct lowpan6_link_addr *dest);
74 | #endif /* LWIP_6LOWPAN_IPHC */
75 |
76 | #ifdef __cplusplus
77 | }
78 | #endif
79 |
80 | #endif /* LWIP_IPV6 */
81 |
82 | #endif /* LWIP_HDR_LOWPAN6_COMMON_H */
83 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/MQTT/MQTTPacket/StackTrace.h:
--------------------------------------------------------------------------------
1 | /*******************************************************************************
2 | * Copyright (c) 2014 IBM Corp.
3 | *
4 | * All rights reserved. This program and the accompanying materials
5 | * are made available under the terms of the Eclipse Public License v1.0
6 | * and Eclipse Distribution License v1.0 which accompany this distribution.
7 | *
8 | * The Eclipse Public License is available at
9 | * http://www.eclipse.org/legal/epl-v10.html
10 | * and the Eclipse Distribution License is available at
11 | * http://www.eclipse.org/org/documents/edl-v10.php.
12 | *
13 | * Contributors:
14 | * Ian Craggs - initial API and implementation and/or initial documentation
15 | * Ian Craggs - fix for bug #434081
16 | *******************************************************************************/
17 |
18 | #ifndef STACKTRACE_H_
19 | #define STACKTRACE_H_
20 |
21 | #include
22 | #define NOSTACKTRACE 1
23 |
24 | #if defined(NOSTACKTRACE)
25 | #define FUNC_ENTRY
26 | #define FUNC_ENTRY_NOLOG
27 | #define FUNC_ENTRY_MED
28 | #define FUNC_ENTRY_MAX
29 | #define FUNC_EXIT
30 | #define FUNC_EXIT_NOLOG
31 | #define FUNC_EXIT_MED
32 | #define FUNC_EXIT_MAX
33 | #define FUNC_EXIT_RC(x)
34 | #define FUNC_EXIT_MED_RC(x)
35 | #define FUNC_EXIT_MAX_RC(x)
36 |
37 | #else
38 |
39 | #if defined(WIN32)
40 | #define inline __inline
41 | #define FUNC_ENTRY StackTrace_entry(__FUNCTION__, __LINE__, TRACE_MINIMUM)
42 | #define FUNC_ENTRY_NOLOG StackTrace_entry(__FUNCTION__, __LINE__, -1)
43 | #define FUNC_ENTRY_MED StackTrace_entry(__FUNCTION__, __LINE__, TRACE_MEDIUM)
44 | #define FUNC_ENTRY_MAX StackTrace_entry(__FUNCTION__, __LINE__, TRACE_MAXIMUM)
45 | #define FUNC_EXIT StackTrace_exit(__FUNCTION__, __LINE__, NULL, TRACE_MINIMUM)
46 | #define FUNC_EXIT_NOLOG StackTrace_exit(__FUNCTION__, __LINE__, -1)
47 | #define FUNC_EXIT_MED StackTrace_exit(__FUNCTION__, __LINE__, NULL, TRACE_MEDIUM)
48 | #define FUNC_EXIT_MAX StackTrace_exit(__FUNCTION__, __LINE__, NULL, TRACE_MAXIMUM)
49 | #define FUNC_EXIT_RC(x) StackTrace_exit(__FUNCTION__, __LINE__, &x, TRACE_MINIMUM)
50 | #define FUNC_EXIT_MED_RC(x) StackTrace_exit(__FUNCTION__, __LINE__, &x, TRACE_MEDIUM)
51 | #define FUNC_EXIT_MAX_RC(x) StackTrace_exit(__FUNCTION__, __LINE__, &x, TRACE_MAXIMUM)
52 | #else
53 | #define FUNC_ENTRY StackTrace_entry(__func__, __LINE__, TRACE_MINIMUM)
54 | #define FUNC_ENTRY_NOLOG StackTrace_entry(__func__, __LINE__, -1)
55 | #define FUNC_ENTRY_MED StackTrace_entry(__func__, __LINE__, TRACE_MEDIUM)
56 | #define FUNC_ENTRY_MAX StackTrace_entry(__func__, __LINE__, TRACE_MAXIMUM)
57 | #define FUNC_EXIT StackTrace_exit(__func__, __LINE__, NULL, TRACE_MINIMUM)
58 | #define FUNC_EXIT_NOLOG StackTrace_exit(__func__, __LINE__, NULL, -1)
59 | #define FUNC_EXIT_MED StackTrace_exit(__func__, __LINE__, NULL, TRACE_MEDIUM)
60 | #define FUNC_EXIT_MAX StackTrace_exit(__func__, __LINE__, NULL, TRACE_MAXIMUM)
61 | #define FUNC_EXIT_RC(x) StackTrace_exit(__func__, __LINE__, &x, TRACE_MINIMUM)
62 | #define FUNC_EXIT_MED_RC(x) StackTrace_exit(__func__, __LINE__, &x, TRACE_MEDIUM)
63 | #define FUNC_EXIT_MAX_RC(x) StackTrace_exit(__func__, __LINE__, &x, TRACE_MAXIMUM)
64 |
65 | void StackTrace_entry(const char* name, int line, int trace);
66 | void StackTrace_exit(const char* name, int line, void* return_value, int trace);
67 |
68 | void StackTrace_printStack(FILE* dest);
69 | char* StackTrace_get(unsigned long);
70 |
71 | #endif
72 |
73 | #endif
74 |
75 |
76 |
77 |
78 | #endif /* STACKTRACE_H_ */
79 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/apps/tftp_opts.h:
--------------------------------------------------------------------------------
1 | /**
2 | *
3 | * @file tftp_opts.h
4 | *
5 | * @author Logan Gunthorpe
6 | *
7 | * @brief Trivial File Transfer Protocol (RFC 1350) implementation options
8 | *
9 | * Copyright (c) Deltatee Enterprises Ltd. 2013
10 | * All rights reserved.
11 | *
12 | */
13 |
14 | /*
15 | * Redistribution and use in source and binary forms, with or without
16 | * modification,are permitted provided that the following conditions are met:
17 | *
18 | * 1. Redistributions of source code must retain the above copyright notice,
19 | * this list of conditions and the following disclaimer.
20 | * 2. Redistributions in binary form must reproduce the above copyright notice,
21 | * this list of conditions and the following disclaimer in the documentation
22 | * and/or other materials provided with the distribution.
23 | * 3. The name of the author may not be used to endorse or promote products
24 | * derived from this software without specific prior written permission.
25 | *
26 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
27 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
28 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
29 | * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
30 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
31 | * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
32 | * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
33 | * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
34 | * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
35 | * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
36 | *
37 | * Author: Logan Gunthorpe
38 | *
39 | */
40 |
41 | #ifndef LWIP_HDR_APPS_TFTP_OPTS_H
42 | #define LWIP_HDR_APPS_TFTP_OPTS_H
43 |
44 | #include "lwip/opt.h"
45 | #include "lwip/prot/iana.h"
46 |
47 | /**
48 | * @defgroup tftp_opts Options
49 | * @ingroup tftp
50 | * @{
51 | */
52 |
53 | /**
54 | * Enable TFTP debug messages
55 | */
56 | #if !defined TFTP_DEBUG || defined __DOXYGEN__
57 | #define TFTP_DEBUG LWIP_DBG_OFF
58 | #endif
59 |
60 | /**
61 | * TFTP server port
62 | */
63 | #if !defined TFTP_PORT || defined __DOXYGEN__
64 | #define TFTP_PORT LWIP_IANA_PORT_TFTP
65 | #endif
66 |
67 | /**
68 | * TFTP timeout
69 | */
70 | #if !defined TFTP_TIMEOUT_MSECS || defined __DOXYGEN__
71 | #define TFTP_TIMEOUT_MSECS 10000
72 | #endif
73 |
74 | /**
75 | * Max. number of retries when a file is read from server
76 | */
77 | #if !defined TFTP_MAX_RETRIES || defined __DOXYGEN__
78 | #define TFTP_MAX_RETRIES 5
79 | #endif
80 |
81 | /**
82 | * TFTP timer cyclic interval
83 | */
84 | #if !defined TFTP_TIMER_MSECS || defined __DOXYGEN__
85 | #define TFTP_TIMER_MSECS (TFTP_TIMEOUT_MSECS / 10)
86 | #endif
87 |
88 | /**
89 | * Max. length of TFTP filename
90 | */
91 | #if !defined TFTP_MAX_FILENAME_LEN || defined __DOXYGEN__
92 | #define TFTP_MAX_FILENAME_LEN 20
93 | #endif
94 |
95 | /**
96 | * Max. length of TFTP mode
97 | */
98 | #if !defined TFTP_MAX_MODE_LEN || defined __DOXYGEN__
99 | #define TFTP_MAX_MODE_LEN 7
100 | #endif
101 |
102 | /**
103 | * @}
104 | */
105 |
106 | #endif /* LWIP_HDR_APPS_TFTP_OPTS_H */
107 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/apps/mqtt_opts.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * MQTT client options
4 | */
5 |
6 | /*
7 | * Copyright (c) 2016 Erik Andersson
8 | * All rights reserved.
9 | *
10 | * Redistribution and use in source and binary forms, with or without modification,
11 | * are permitted provided that the following conditions are met:
12 | *
13 | * 1. Redistributions of source code must retain the above copyright notice,
14 | * this list of conditions and the following disclaimer.
15 | * 2. Redistributions in binary form must reproduce the above copyright notice,
16 | * this list of conditions and the following disclaimer in the documentation
17 | * and/or other materials provided with the distribution.
18 | * 3. The name of the author may not be used to endorse or promote products
19 | * derived from this software without specific prior written permission.
20 | *
21 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
22 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
23 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
24 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
26 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
29 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
30 | * OF SUCH DAMAGE.
31 | *
32 | * This file is part of the lwIP TCP/IP stack.
33 | *
34 | * Author: Erik Andersson
35 | *
36 | */
37 | #ifndef LWIP_HDR_APPS_MQTT_OPTS_H
38 | #define LWIP_HDR_APPS_MQTT_OPTS_H
39 |
40 | #include "lwip/opt.h"
41 |
42 | #ifdef __cplusplus
43 | extern "C" {
44 | #endif
45 |
46 | /**
47 | * @defgroup mqtt_opts Options
48 | * @ingroup mqtt
49 | * @{
50 | */
51 |
52 | /**
53 | * Output ring-buffer size, must be able to fit largest outgoing publish message topic+payloads
54 | */
55 | #ifndef MQTT_OUTPUT_RINGBUF_SIZE
56 | #define MQTT_OUTPUT_RINGBUF_SIZE 256
57 | #endif
58 |
59 | /**
60 | * Number of bytes in receive buffer, must be at least the size of the longest incoming topic + 8
61 | * If one wants to avoid fragmented incoming publish, set length to max incoming topic length + max payload length + 8
62 | */
63 | #ifndef MQTT_VAR_HEADER_BUFFER_LEN
64 | #define MQTT_VAR_HEADER_BUFFER_LEN 128
65 | #endif
66 |
67 | /**
68 | * Maximum number of pending subscribe, unsubscribe and publish requests to server .
69 | */
70 | #ifndef MQTT_REQ_MAX_IN_FLIGHT
71 | #define MQTT_REQ_MAX_IN_FLIGHT 4
72 | #endif
73 |
74 | /**
75 | * Seconds between each cyclic timer call.
76 | */
77 | #ifndef MQTT_CYCLIC_TIMER_INTERVAL
78 | #define MQTT_CYCLIC_TIMER_INTERVAL 5
79 | #endif
80 |
81 | /**
82 | * Publish, subscribe and unsubscribe request timeout in seconds.
83 | */
84 | #ifndef MQTT_REQ_TIMEOUT
85 | #define MQTT_REQ_TIMEOUT 30
86 | #endif
87 |
88 | /**
89 | * Seconds for MQTT connect response timeout after sending connect request
90 | */
91 | #ifndef MQTT_CONNECT_TIMOUT
92 | #define MQTT_CONNECT_TIMOUT 100
93 | #endif
94 |
95 | /**
96 | * @}
97 | */
98 |
99 | #ifdef __cplusplus
100 | }
101 | #endif
102 |
103 | #endif /* LWIP_HDR_APPS_MQTT_OPTS_H */
104 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/prot/autoip.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * AutoIP protocol definitions
4 | */
5 |
6 | /*
7 | *
8 | * Copyright (c) 2007 Dominik Spies
9 | * All rights reserved.
10 | *
11 | * Redistribution and use in source and binary forms, with or without modification,
12 | * are permitted provided that the following conditions are met:
13 | *
14 | * 1. Redistributions of source code must retain the above copyright notice,
15 | * this list of conditions and the following disclaimer.
16 | * 2. Redistributions in binary form must reproduce the above copyright notice,
17 | * this list of conditions and the following disclaimer in the documentation
18 | * and/or other materials provided with the distribution.
19 | * 3. The name of the author may not be used to endorse or promote products
20 | * derived from this software without specific prior written permission.
21 | *
22 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
23 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
24 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
25 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
26 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
27 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
30 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
31 | * OF SUCH DAMAGE.
32 | *
33 | * Author: Dominik Spies
34 | *
35 | * This is a AutoIP implementation for the lwIP TCP/IP stack. It aims to conform
36 | * with RFC 3927.
37 | *
38 | */
39 |
40 | #ifndef LWIP_HDR_PROT_AUTOIP_H
41 | #define LWIP_HDR_PROT_AUTOIP_H
42 |
43 | #ifdef __cplusplus
44 | extern "C" {
45 | #endif
46 |
47 | /* 169.254.0.0 */
48 | #define AUTOIP_NET 0xA9FE0000
49 | /* 169.254.1.0 */
50 | #define AUTOIP_RANGE_START (AUTOIP_NET | 0x0100)
51 | /* 169.254.254.255 */
52 | #define AUTOIP_RANGE_END (AUTOIP_NET | 0xFEFF)
53 |
54 | /* RFC 3927 Constants */
55 | #define PROBE_WAIT 1 /* second (initial random delay) */
56 | #define PROBE_MIN 1 /* second (minimum delay till repeated probe) */
57 | #define PROBE_MAX 2 /* seconds (maximum delay till repeated probe) */
58 | #define PROBE_NUM 3 /* (number of probe packets) */
59 | #define ANNOUNCE_NUM 2 /* (number of announcement packets) */
60 | #define ANNOUNCE_INTERVAL 2 /* seconds (time between announcement packets) */
61 | #define ANNOUNCE_WAIT 2 /* seconds (delay before announcing) */
62 | #define MAX_CONFLICTS 10 /* (max conflicts before rate limiting) */
63 | #define RATE_LIMIT_INTERVAL 60 /* seconds (delay between successive attempts) */
64 | #define DEFEND_INTERVAL 10 /* seconds (min. wait between defensive ARPs) */
65 |
66 | /* AutoIP client states */
67 | typedef enum {
68 | AUTOIP_STATE_OFF = 0,
69 | AUTOIP_STATE_PROBING = 1,
70 | AUTOIP_STATE_ANNOUNCING = 2,
71 | AUTOIP_STATE_BOUND = 3
72 | } autoip_state_enum_t;
73 |
74 | #ifdef __cplusplus
75 | }
76 | #endif
77 |
78 | #endif /* LWIP_HDR_PROT_AUTOIP_H */
79 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Src/syscalls.c:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file syscalls.c
4 | * @author Auto-generated by STM32CubeIDE
5 | * @brief STM32CubeIDE Minimal System calls file
6 | *
7 | * For more information about which c-functions
8 | * need which of these lowlevel functions
9 | * please consult the Newlib libc-manual
10 | ******************************************************************************
11 | * @attention
12 | *
13 | * © Copyright (c) 2020 STMicroelectronics.
14 | * All rights reserved.
15 | *
16 | * This software component is licensed by ST under BSD 3-Clause license,
17 | * the "License"; You may not use this file except in compliance with the
18 | * License. You may obtain a copy of the License at:
19 | * opensource.org/licenses/BSD-3-Clause
20 | *
21 | ******************************************************************************
22 | */
23 |
24 | /* Includes */
25 | #include
26 | #include
27 | #include
28 | #include
29 | #include
30 | #include
31 | #include
32 | #include
33 |
34 |
35 | /* Variables */
36 | //#undef errno
37 | extern int errno;
38 | extern int __io_putchar(int ch) __attribute__((weak));
39 | extern int __io_getchar(void) __attribute__((weak));
40 |
41 | register char * stack_ptr asm("sp");
42 |
43 | char *__env[1] = { 0 };
44 | char **environ = __env;
45 |
46 |
47 | /* Functions */
48 | void initialise_monitor_handles()
49 | {
50 | }
51 |
52 | int _getpid(void)
53 | {
54 | return 1;
55 | }
56 |
57 | int _kill(int pid, int sig)
58 | {
59 | errno = EINVAL;
60 | return -1;
61 | }
62 |
63 | void _exit (int status)
64 | {
65 | _kill(status, -1);
66 | while (1) {} /* Make sure we hang here */
67 | }
68 |
69 | __attribute__((weak)) int _read(int file, char *ptr, int len)
70 | {
71 | int DataIdx;
72 |
73 | for (DataIdx = 0; DataIdx < len; DataIdx++)
74 | {
75 | *ptr++ = __io_getchar();
76 | }
77 |
78 | return len;
79 | }
80 |
81 | __attribute__((weak)) int _write(int file, char *ptr, int len)
82 | {
83 | int DataIdx;
84 |
85 | for (DataIdx = 0; DataIdx < len; DataIdx++)
86 | {
87 | __io_putchar(*ptr++);
88 | }
89 | return len;
90 | }
91 |
92 | int _close(int file)
93 | {
94 | return -1;
95 | }
96 |
97 |
98 | int _fstat(int file, struct stat *st)
99 | {
100 | st->st_mode = S_IFCHR;
101 | return 0;
102 | }
103 |
104 | int _isatty(int file)
105 | {
106 | return 1;
107 | }
108 |
109 | int _lseek(int file, int ptr, int dir)
110 | {
111 | return 0;
112 | }
113 |
114 | int _open(char *path, int flags, ...)
115 | {
116 | /* Pretend like we always fail */
117 | return -1;
118 | }
119 |
120 | int _wait(int *status)
121 | {
122 | errno = ECHILD;
123 | return -1;
124 | }
125 |
126 | int _unlink(char *name)
127 | {
128 | errno = ENOENT;
129 | return -1;
130 | }
131 |
132 | int _times(struct tms *buf)
133 | {
134 | return -1;
135 | }
136 |
137 | int _stat(char *file, struct stat *st)
138 | {
139 | st->st_mode = S_IFCHR;
140 | return 0;
141 | }
142 |
143 | int _link(char *old, char *new)
144 | {
145 | errno = EMLINK;
146 | return -1;
147 | }
148 |
149 | int _fork(void)
150 | {
151 | errno = EAGAIN;
152 | return -1;
153 | }
154 |
155 | int _execve(char *name, char **argv, char **env)
156 | {
157 | errno = ENOMEM;
158 | return -1;
159 | }
160 |
--------------------------------------------------------------------------------
/STM32F4_HAL_ETH_MQTT_CLIENT/Middlewares/Third_Party/LwIP/src/include/lwip/nd6.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | *
4 | * Neighbor discovery and stateless address autoconfiguration for IPv6.
5 | * Aims to be compliant with RFC 4861 (Neighbor discovery) and RFC 4862
6 | * (Address autoconfiguration).
7 | */
8 |
9 | /*
10 | * Copyright (c) 2010 Inico Technologies Ltd.
11 | * All rights reserved.
12 | *
13 | * Redistribution and use in source and binary forms, with or without modification,
14 | * are permitted provided that the following conditions are met:
15 | *
16 | * 1. Redistributions of source code must retain the above copyright notice,
17 | * this list of conditions and the following disclaimer.
18 | * 2. Redistributions in binary form must reproduce the above copyright notice,
19 | * this list of conditions and the following disclaimer in the documentation
20 | * and/or other materials provided with the distribution.
21 | * 3. The name of the author may not be used to endorse or promote products
22 | * derived from this software without specific prior written permission.
23 | *
24 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
25 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
26 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
27 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
28 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
29 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
30 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
31 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
32 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
33 | * OF SUCH DAMAGE.
34 | *
35 | * This file is part of the lwIP TCP/IP stack.
36 | *
37 | * Author: Ivan Delamer
38 | *
39 | *
40 | * Please coordinate changes and requests with Ivan Delamer
41 | *
42 | */
43 |
44 | #ifndef LWIP_HDR_ND6_H
45 | #define LWIP_HDR_ND6_H
46 |
47 | #include "lwip/opt.h"
48 |
49 | #if LWIP_IPV6 /* don't build if not configured for use in lwipopts.h */
50 |
51 | #include "lwip/ip6_addr.h"
52 | #include "lwip/err.h"
53 |
54 | #ifdef __cplusplus
55 | extern "C" {
56 | #endif
57 |
58 | /** 1 second period */
59 | #define ND6_TMR_INTERVAL 1000
60 |
61 | /** Router solicitations are sent in 4 second intervals (see RFC 4861, ch. 6.3.7) */
62 | #ifndef ND6_RTR_SOLICITATION_INTERVAL
63 | #define ND6_RTR_SOLICITATION_INTERVAL 4000
64 | #endif
65 |
66 | struct pbuf;
67 | struct netif;
68 |
69 | void nd6_tmr(void);
70 | void nd6_input(struct pbuf *p, struct netif *inp);
71 | void nd6_clear_destination_cache(void);
72 | struct netif *nd6_find_route(const ip6_addr_t *ip6addr);
73 | err_t nd6_get_next_hop_addr_or_queue(struct netif *netif, struct pbuf *q, const ip6_addr_t *ip6addr, const u8_t **hwaddrp);
74 | u16_t nd6_get_destination_mtu(const ip6_addr_t *ip6addr, struct netif *netif);
75 | #if LWIP_ND6_TCP_REACHABILITY_HINTS
76 | void nd6_reachability_hint(const ip6_addr_t *ip6addr);
77 | #endif /* LWIP_ND6_TCP_REACHABILITY_HINTS */
78 | void nd6_cleanup_netif(struct netif *netif);
79 | #if LWIP_IPV6_MLD
80 | void nd6_adjust_mld_membership(struct netif *netif, s8_t addr_idx, u8_t new_state);
81 | #endif /* LWIP_IPV6_MLD */
82 | void nd6_restart_netif(struct netif *netif);
83 |
84 | #ifdef __cplusplus
85 | }
86 | #endif
87 |
88 | #endif /* LWIP_IPV6 */
89 |
90 | #endif /* LWIP_HDR_ND6_H */
91 |
--------------------------------------------------------------------------------