Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add OTA library and PAL #1412

Merged
merged 172 commits into from
Dec 4, 2020
Merged
Show file tree
Hide file tree
Changes from 171 commits
Commits
Show all changes
172 commits
Select commit Hold shift + click to select a range
6b239a4
Add OTA from AFR 202007.00 release
Jul 13, 2020
ed8541f
Fix OTA CMake file, add jsmn and tinycbor
Jul 13, 2020
f34bbc7
Delete JSMN files before submodule
yanjos-dev Jul 14, 2020
62ed0e8
Submodule JSMN on master
yanjos-dev Jul 14, 2020
69f6698
Update JSMN to v1.1.0
yanjos-dev Jul 14, 2020
7e27a46
Merge pull request #31 from yanjos-dev/feature/submodule_jsmn
Jul 14, 2020
db89020
Delete tinycbor before submodule
yanjos-dev Jul 14, 2020
21bfef7
Submodule TinyCBOR to master
yanjos-dev Jul 14, 2020
e1c6093
Update .gitmodule with the version of TinyCBOR
yanjos-dev Jul 14, 2020
938985a
Merge pull request #30 from aws/feature/submodule_tinycbor
Jul 14, 2020
de0b22e
OTA Agent Posix : Use POSIX thread instead of FreeRTOS task
pvyawaha Jul 20, 2020
597e9d7
OTA Agent POSIX: Use POSIX semaphore instead of FreeRTOS semaphore
pvyawaha Jul 20, 2020
410c301
Merge pull request #32 from pvyawaha/ota
pvyawaha Jul 20, 2020
ef1d92d
Merge remote-tracking branch 'origin/development' into HEAD
Aug 24, 2020
88eb590
OTA linux pal
Aug 17, 2020
46ca975
Add OTA demo
Aug 26, 2020
860edb0
Update OTA library to use new MQTT library
Aug 26, 2020
78a0e2c
OTA LTS Dev: Update include files in OTA Agent File
pvyawaha Sep 10, 2020
ec61639
OTA LTS Dev: Update OTA Agent context initialization
pvyawaha Sep 10, 2020
d5ebc99
OTA LTS Dev: Self-test timer functions to use timer interface
pvyawaha Sep 10, 2020
ecd0ab4
OTA LTS Dev: Request timer functions implementation to use timers pas…
pvyawaha Sep 10, 2020
7ef33d0
OTA LTS Dev: use assert instead of configassert in OTA Agent
pvyawaha Sep 10, 2020
7c86f77
OTA LTS Dev: Update buffer get and free functions by removing protection
pvyawaha Sep 10, 2020
d4a13c3
OTA LTS Dev: Add OS interface context to OTA Agent Init functions
pvyawaha Sep 10, 2020
f805ed0
OTA LTS Dev: Add OTA OS implementation file
pvyawaha Sep 10, 2020
4fef576
OTA LTS Dev: OTA MQTT demo update
pvyawaha Sep 15, 2020
0d54f6d
OTA LTS Dev: OTA Agent changes for C-SDK
pvyawaha Sep 15, 2020
1058060
OTA LTS Dev: OTA MQTT component changes for C-SDK
pvyawaha Sep 15, 2020
888540a
OTA Dev LTS: OTA OS interface for linux
pvyawaha Sep 15, 2020
6a6b5e7
Add mbedtls
Sep 16, 2020
c5a9d16
Remove mock
Sep 16, 2020
3958ae8
tmp fix for OTA
Sep 16, 2020
25dd57c
Remove OTA library
Sep 17, 2020
96dc951
Add OTA as an submodule
Sep 17, 2020
bb55954
Update OTA config with minimum request blocks
pvyawaha Sep 18, 2020
aad7eaa
Remove ota_os_interface.h from platform folder
Sep 18, 2020
f4c8fe7
Remove stdbool.h from ota_os_posix.h
Sep 18, 2020
5b9f76f
Update OTA naming convention
Sep 22, 2020
5f25fdb
Update OTA submodule
Sep 22, 2020
d446ab8
Merge latest master into OTA
Sep 24, 2020
b75d20a
Update OTA demo cmake file
Sep 24, 2020
c95b3e6
Fix warnings
Sep 24, 2020
bff635b
Update OTA submodule
Sep 24, 2020
2057780
Remove tinycbor from 3rdparty dir
Sep 24, 2020
b333a2d
Update OTA submodule and demo CMake file
Sep 24, 2020
7be91cc
OTA MQTT demo main and startota functions
pvyawaha Sep 28, 2020
d58871a
MQTT and OS interface in startotademo
pvyawaha Sep 28, 2020
81e6972
OTA MQTT interface publish and subscribe implementation
pvyawaha Sep 28, 2020
243ff2f
OTA demo MQTT interface cleanup
pvyawaha Sep 28, 2020
e83b4a0
Fix OTA demo due to folder structure update
Sep 29, 2020
29e316f
Remove hard coded cert from OTA demo
Sep 29, 2020
70b0f3d
Use OTA error codes for OTA MQTT interface
pvyawaha Sep 30, 2020
975b457
Add sending start event from the OTA demo
pvyawaha Oct 1, 2020
988d91a
Implement MQTT unscubscribe function for OTA MQTT
pvyawaha Oct 2, 2020
2631d72
Update OTA submodule and remove jsmn, mbedtls
Oct 2, 2020
1045dba
Update OTA submodule
Oct 8, 2020
573dae0
Update .gitmodules URL and ota target commit
yanjos-dev Oct 8, 2020
bcafa89
Merge pull request #34 from yanjos-dev/ota
yanjos-dev Oct 8, 2020
f9960d8
Update OTA submodule
Oct 8, 2020
235fcdb
Update OTA submodule and remove iot_appversion32.h
Oct 9, 2020
7ee8089
Update naming convention in OTA demo and OTA submodule
Oct 9, 2020
b9b6de9
Add platform state update in OTA pal for linux
pvyawaha Oct 12, 2020
390fa9d
Update OTA demo loop for receivng notification
pvyawaha Oct 12, 2020
f7ea106
Update OTA submodule
Oct 12, 2020
b6378c8
Update OTA submodule
Oct 12, 2020
a6256d0
Add sleep in the OTA demo loop for all conditions
pvyawaha Oct 13, 2020
3a19433
Change to use https link for ota submodule
xuelix Oct 14, 2020
c969a85
Merge pull request #35 from aws/xueli/ota-e2e
xuelix Oct 14, 2020
0789751
Add payload size to callback log messages
pvyawaha Oct 18, 2020
964ad14
Merge branch 'ota' of github.com:aws/aws-iot-device-sdk-embedded-C-st…
pvyawaha Oct 18, 2020
0ae5af1
Remove OTA OS Posix implementation from Paltforms
pvyawaha Oct 19, 2020
040a10b
OTA demo directory change
divekarshubham Oct 19, 2020
32814d6
fixing merge conflicts with staging/ota
divekarshubham Oct 19, 2020
b693798
renaming demos
divekarshubham Oct 21, 2020
f94ec83
Merge pull request #36 from divekarshubham/dev
pvyawaha Oct 26, 2020
e23e93f
Refactor MQTT initialization and connection functions
pvyawaha Oct 27, 2020
d85529f
OTA over HTTP demo use local mqtt context
pvyawaha Oct 27, 2020
02f6a2d
Add http interface to OTA_AgentInit
pvyawaha Oct 27, 2020
fdff7fc
Add http utils functions
pvyawaha Oct 27, 2020
c0bedaf
Update HTTP utils functions
pvyawaha Oct 27, 2020
f84e8fd
OTA over HTTP cmake update for HTTP sources
pvyawaha Oct 27, 2020
25dde12
Implement OTA http request function
pvyawaha Oct 27, 2020
5010550
Merge pull request #37 from pvyawaha/ota
pvyawaha Oct 27, 2020
871b031
Implement http deinit function
pvyawaha Oct 27, 2020
e418137
Merge pull request #38 from pvyawaha/ota
pvyawaha Oct 27, 2020
f02e925
Add HTTP port to OTA HTTP demo config
pvyawaha Oct 27, 2020
6e1c5b1
Merge pull request #39 from pvyawaha/ota
pvyawaha Oct 27, 2020
19a448d
Update OTA submodule
Oct 27, 2020
c93dd4f
Merge remote-tracking branch 'origin/master' into ota
Oct 27, 2020
c99b394
Fix OTA platform cmake file
Oct 27, 2020
984332d
Remove aws_ota_agent_config.h
pvyawaha Nov 2, 2020
17ee374
Add ota_config.h for MQTT & HTTP demos
pvyawaha Nov 2, 2020
631712a
Merge pull request #40 from pvyawaha/ota
pvyawaha Nov 2, 2020
06dd0c4
change OTA logging to csdk logging in demos
pvyawaha Nov 2, 2020
9ddb878
Change OTA logging to Csdk on Linux OTA pal
pvyawaha Nov 2, 2020
e6a0d93
Merge pull request #41 from pvyawaha/ota
pvyawaha Nov 2, 2020
883c032
Update OTA demo config files and OTA submodule
yanjos-dev Nov 4, 2020
0e9fc60
Merge pull request #42 from yanjos-dev/ota
yanjos-dev Nov 4, 2020
d9c1d68
Use application buffers in OTA MQTT demo
pvyawaha Nov 9, 2020
94971e1
Uncrustify demo
pvyawaha Nov 9, 2020
22628e2
use application memory in OTA HTTP
pvyawaha Nov 9, 2020
707de87
remove ota pal file temporarily
xuelix Nov 11, 2020
7230cf5
Adding OTA Linux Pal file
xuelix Nov 11, 2020
39e935f
Update with new PAL interface
xuelix Nov 11, 2020
4f790d7
Update after PR review
xuelix Nov 12, 2020
0aac2c9
Update OTA submodule
Nov 13, 2020
bb714b5
Refactor and cleanup OTA MQTT demo
pvyawaha Nov 13, 2020
64d2bc0
Merge pull request #45 from xuelix/xueli/pal-review
divekarshubham Nov 13, 2020
7cb7f5b
Format aws_ota_pal.c
yanjos-dev Nov 13, 2020
4412f1e
Update log strings in aws_ota_pal.c
yanjos-dev Nov 13, 2020
c0a7370
Merge pull request #46 from yanjos-dev/ota
yanjos-dev Nov 13, 2020
2ae67eb
Fix typos in aws_ota_pal.c (#47)
yanjos-dev Nov 13, 2020
749c978
Fix space formatting in aws_ota_mqtt.c (#48)
yanjos-dev Nov 13, 2020
10740cb
Update OTA submodule
Nov 13, 2020
05021f7
Added OTA Pal unit tests (#50)
xuelix Nov 14, 2020
f7e23de
Added more ota pal unittest coverage
xuelix Nov 16, 2020
8a4dada
Added more ota pal unittest coverage (#51)
xuelix Nov 16, 2020
d07fb3f
Fix file context check in ota linux pal
pvyawaha Nov 16, 2020
22e7ad8
Update OTA submodule
Nov 16, 2020
2c722ee
Formatting changes (#52)
xuelix Nov 16, 2020
1f0a052
formatting update (#53)
xuelix Nov 16, 2020
a410c74
Update OTA submodule
Nov 17, 2020
1c78b20
Change OTA demo config and remove pal context checks
pvyawaha Nov 17, 2020
13d2f70
Update OTA submodule
Nov 17, 2020
ed5efe0
Update OTA submodule
Nov 18, 2020
2f677b2
Update coreHTTP submodule
divekarshubham Nov 18, 2020
2f84c1b
Merge pull request #54 from divekarshubham/update/http
pvyawaha Nov 18, 2020
c494203
Fix OTA HTTP demo
pvyawaha Nov 18, 2020
ba1e303
Update Thing Name to 128
pvyawaha Nov 19, 2020
baec3ac
Update ota_config.h
pvyawaha Nov 19, 2020
8951bd6
Build and CI checks fixed
divekarshubham Nov 20, 2020
38238f3
Merge pull request #55 from divekarshubham/fix/ci-checks
pvyawaha Nov 21, 2020
85a34db
Fixing the CMakeLists.txt
xuelix Nov 24, 2020
e9fbcfb
Coverity MISRA warning fix
xuelix Nov 25, 2020
0e277fd
Fix spell check errors
xuelix Nov 25, 2020
0bb6f3e
Fix uncrustify warning
xuelix Nov 25, 2020
9bc1ee7
changes from review
xuelix Nov 25, 2020
411f623
changes from review
xuelix Nov 26, 2020
f19b80f
File, folder name changes.
xuelix Nov 28, 2020
b0b6844
formatting and spell check fix
xuelix Nov 28, 2020
266dd75
fix spell check
xuelix Nov 28, 2020
b86119e
Update OTA submodule, demo, and posix pal
Nov 30, 2020
1429e4e
Update HTTP submodule
Nov 30, 2020
fa07df7
Merge remote-tracking branch 'origin/main' into ota
Nov 30, 2020
5aa17c6
Clean up and remove duplicates in demo/lexicon.txt
Nov 30, 2020
136c58d
Fix OTA demo after merge with c-sdk main
Nov 30, 2020
7d81451
Temporarily remove ota demos
Nov 30, 2020
20acb99
Revert a cmake change
Nov 30, 2020
cadb5c6
Fix some compiler warnings in ota pal posix
Nov 30, 2020
9b0fb3b
Update OTA submodule
Dec 2, 2020
6d00a8b
Update error codes in OTA pal and unit tests
Dec 3, 2020
d18f0b2
Add realpath to the file name. (#57)
xuelix Dec 3, 2020
6e9c553
Update OTA submodule
Dec 3, 2020
b31d51d
Fix unused variable warning
Dec 3, 2020
7acd1d2
Fix ota pal unit tests
Dec 3, 2020
7984ea8
Remove the private key for ota unit tests
Dec 3, 2020
cb2a7ec
Remove ota pal temporarily from cmake
Dec 3, 2020
6d8c5c2
Fix spell check
Dec 4, 2020
364f008
Rename ota submodule
Dec 4, 2020
cf842a5
Reorder and add declarations for static functions in ota pal
Dec 4, 2020
c36f71d
Remove pc-lint comments
Dec 4, 2020
eafab47
Fix version comments and remove redundant comments
Dec 4, 2020
582ee38
Remove a todo in ota pal
Dec 4, 2020
6d209ec
Update version number, comments, and lexicon.txt
Dec 4, 2020
7212a48
Replace linux with posix
Dec 4, 2020
758a7ae
Address PR feedbacks
Dec 4, 2020
59c0891
Update lexicon.txt
Dec 4, 2020
db3bfb3
Reduce complexity on Openssl_DigestVerify
Dec 4, 2020
4e58663
Fix OTA pal cmake files
Dec 4, 2020
1d9afa0
Update demo lexicon.txt
Dec 4, 2020
e07585d
Update lexicon and correct spelling
Dec 4, 2020
7ddeece
Update lexicon.txt and correct spelling
Dec 4, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -33,3 +33,7 @@
path = libraries/standard/backoffAlgorithm
branch = main
url = https://github.com/FreeRTOS/backoffAlgorithm.git
[submodule "libraries/aws/ota-for-aws-iot-embedded-sdk"]
path = libraries/aws/ota-for-aws-iot-embedded-sdk
branch = main
url = https://github.com/aws/ota-for-aws-iot-embedded-sdk.git
1 change: 0 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -101,4 +101,3 @@ if(${BUILD_TESTS})
add_subdirectory(${DIR_PATH})
endforeach()
endif()

37 changes: 36 additions & 1 deletion demos/lexicon.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@

accel
ack
acks
addr
addresslength
aead
aes
aesni
Expand Down Expand Up @@ -37,12 +39,16 @@ baltimorecybertrustroot
bhargavan
bignum
bio
bitmasking
bn
bootable
boston
bp
br
bsd
bufferlength
buffersize
bytesread
bytesreceived
bytessent
bzero
Expand Down Expand Up @@ -92,6 +98,7 @@ connectfunction
connectionsarraylength
const
contentrangevalstr
copybrief
coremqtt
corepkcs
correclty
Expand Down Expand Up @@ -142,6 +149,7 @@ dp
drbg
dsa
dtls
dummydata
dup
eap
ec
Expand All @@ -158,18 +166,25 @@ en
enc
endcond
endif
epalstate
esavedagentstate
establishmqttsession
ethernet
eventcallback
extendedkeyusage
familiy
faqs
filerc
filesize
filterindex
findobjects
fopen
fprintf
fread
freertos
fs
fseek
fwrite
ga
galois
gcc
Expand Down Expand Up @@ -248,7 +263,6 @@ kwp
lastcontrolpacketsent
latestversion
len
lenghth
leurent
libc
libmosquitto
Expand All @@ -269,6 +283,7 @@ matchtopic
mbed
mbedtls
mbedtlssl
mcu
md
mechanims
mem
Expand All @@ -294,6 +309,7 @@ mpi
mpis
mq
mqtt
mqttcontext
mqttkeepalivetimeout
mqttprocessincomingpacket
mqttsubackfailure
Expand Down Expand Up @@ -329,10 +345,14 @@ optionalquery
org
os
ota
otaagentstatestopped
otafile
otapalimagestatevalid
outform
outgoingpublishpackets
outlength
overriden
pacdata
packetid
packetidentifier
packetsreceived
Expand All @@ -343,9 +363,11 @@ pake
param
params
pathlen
pathlength
payloadlength
pbe
pbkdf
pbuf
pbuffer
pcdescription
pcks
Expand All @@ -356,6 +378,8 @@ pdeserializedinfo
pdf
pdigest
pem
pfile
pfilepath
pfilesize
pfixedbuffer
phost
Expand All @@ -370,6 +394,7 @@ pkcs
pki
pkparse
pkwrite
plaformimagestate
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

spelling: platformimagestage

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it is platform image state, we have valid, invalid, pending commit states I believe.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

right, but the t is missing from "platform",

plaintext
pleace
pmessage
Expand Down Expand Up @@ -398,6 +423,7 @@ ppacketinfo
ppath
ppathlen
ppayload
ppkey
pprocfile
ppubinfo
ppublishinfo
Expand All @@ -415,6 +441,7 @@ prvobjectgeneration
prvobjectimporting
ps
psessionpresent
psignature
psk
pslotlist
pss
Expand Down Expand Up @@ -467,7 +494,9 @@ resubscribe
resubscription
retrievehttpresponse
retryutils
returnstatus
rfc
rfcxh
ripemd
rng
rom
Expand All @@ -484,9 +513,11 @@ sendupdate
serverhost
setkey
sha
sha256
shadowstatus
shasum
sig
signer
signinit
sizeof
slotcount
Expand Down Expand Up @@ -541,8 +572,10 @@ udbl
udp
udpportsarraylength
uint
ulblocksize
uldatalength
uldigestlength
uloffset
ulong
ulslotcount
unix
Expand All @@ -560,8 +593,10 @@ usb
userguide
util
utils
v1
ve
verifyinit
vtaskdelay
weierstrass
wikipedia
www
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ add_library( ${LIBRARY_NAME}
target_include_directories(
${LIBRARY_NAME}
PUBLIC
${CMAKE_CURRENT_LIST_DIR}
${LOGGING_INCLUDE_DIRS}
${MQTT_INCLUDE_PUBLIC_DIRS}
)

2 changes: 1 addition & 1 deletion demos/pkcs11/common/include/demo_helpers.h
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ void end( CK_SESSION_HANDLE session,
*
* @param[in] pcDescription Description message
* @param[in] pucData Hex contents to print (Public key)
* @param[in] ulDataLength Lenghth of pucData
* @param[in] ulDataLength Length of pucData
*
*/
void writeHexBytesToConsole( char * description,
Expand Down
1 change: 1 addition & 0 deletions libraries/aws/ota-for-aws-iot-embedded-sdk
11 changes: 11 additions & 0 deletions platform/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,13 @@
set(OPENSSL_USE_STATIC_LIBS TRUE)
find_package(OpenSSL REQUIRED)

set(THREADS_PREFER_PTHREAD_FLAG ON)
find_package(Threads REQUIRED)

find_library(LIB_RT rt REQUIRED)
Comment on lines +1 to +7
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What are these for? If this is being introduced in this PR, can I assume it is only required by the OTA PAL? In that case would it make sense to move this to the OTA PAL specific CMakeLists.txt instead of this one?


# Add the posix targets
add_subdirectory( ${PLATFORM_DIR}/posix )

# Add ota porting targets
# add_subdirectory( ${PLATFORM_DIR}/posix/ota_pal )
Loading