blob: 5dd09fda3e7b42473176d46bf92290d0b8862d0f [file] [log] [blame]
Pascal Brandc639ac82015-07-02 08:53:34 +02001#!/bin/bash
2
3cd $(dirname $0)
4export CDIR=${PWD}
5
6# Initialization
7if [ -f .env ]; then
8. .env
9else
10echo -e " ERROR: .env NOT FOUND";
11echo -e " ERROR: .env must be at the same location as $0";
12exit 0;
13fi;
14
Pascal Brandc639ac82015-07-02 08:53:34 +020015LCI_PRINT_SEPARATOR
16LCI_PRINT_HEADER "Running `basename $0`"
17LCI_PRINT_SEPARATOR
18LCI_PRINT_HEADER "Patch Global Platform testsuite"
19LCI_PRINT_L1 "global platform package: ${CFG_GP_PACKAGE_PATH}"
20LCI_PRINT_L1 "stm package: ${CFG_GP_XSL_PACKAGE_PATH}"
21LCI_PRINT_L1 "GP api: ${CFG_GP_API}"
22
23if [ $(basename ${CFG_GP_PACKAGE_PATH}) == "TEE_Initial_Configuration-Test_Suite_v1_1_0_4-2014_11_07" ]; then
24 LCI_PRINT_L1 "GP package $(basename ${CFG_GP_PACKAGE_PATH}) SUPPORTED"
25
26
27else
28 LCI_FORCE_QUIT "$(basename ${CFG_GP_PACKAGE_PATH}) NOT SUPPORTED"
29 exit;
30
31fi
32
33
34LCI_PRINT_SEPARATOR
35LCI_PRINT_L1 "Patch directories structure"
36if [ ! -d ${CFG_GP_PACKAGE_PATH}/packages ]; then
37 LCI_PRINT_MSG "mkdir -p ${CFG_GP_PACKAGE_PATH}/packages"
38 mkdir -p ${CFG_GP_PACKAGE_PATH}/packages
39fi
40
41DIRLIST="ClientAPI Crypto DataStorage Time_Arithmetical TrustedCoreFw"
42for dir in ${DIRLIST}
43 do
44 if [ -d ${CFG_GP_PACKAGE_PATH}/${dir} ]; then
45 LCI_PRINT_MSG "mv ${CFG_GP_PACKAGE_PATH}/${dir}"
46 LCI_PRINT_MSG "to ${CFG_GP_PACKAGE_PATH}/packages"
47 mv ${CFG_GP_PACKAGE_PATH}/${dir} \
48 ${CFG_GP_PACKAGE_PATH}/packages
49 fi
50done
51
52LCI_PRINT_SEPARATOR
53LCI_PRINT_L1 "Patch XML files"
54
55declare -A ARRAY
56function LCI_PATCHFILE () {
57 #printf "${LCI_MSG} | apply patch %-s\n" "${2}";
58 #printf "${LCI_MSG} | on %-s\n" "${1}";
59 if [ ! -e ${1}.orig ]; then
60 patch -N -b ${1} < ${2};
61 else
62 LCI_PRINT_WARNING "${1}.orig ALREADY EXISTS"
63 LCI_PRINT_WARNING "PATCH NOT APPLIED"
64 fi
65}
66
67function LCI_PATCH () {
68 LCI_PATCH_CHECKFILE ${1}
69 LCI_PATCH_CHECKFILE "${2}"
70 LCI_PATCHFILE ${1} ${2}
71}
72
73ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/packages/ClientAPI/xmlStable/TEE.xml"
74 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/packages/ClientAPI/xmlpatch/v1_1_0_4-2014_11_07/TEE.xml.patch")
75LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
76LCI_PRINT_SEPARATOR
77
78ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/packages/Crypto/xmlStable/TEE_Crypto_API.xml"
79 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/packages/Crypto/xmlpatch/v1_1_0_4-2014_11_07/TEE_Crypto_API.xml.patch")
80LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
81LCI_PRINT_SEPARATOR
82
83ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/packages/DataStorage/xmlStable/TEE_DataStorage_API.xml"
84 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/packages/DataStorage/xmlpatch/v1_1_0_4-2014_11_07/TEE_DataStorage_API.xml.patch")
85LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
86LCI_PRINT_SEPARATOR
87
88ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/packages/Time_Arithmetical/xmlStable/TEE_TimeArithm_API.xml"
89 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/packages/Time_Arithmetical/xmlpatch/v1_1_0_4-2014_11_07/TEE_TimeArithm_API.xml.patch")
90LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
91LCI_PRINT_SEPARATOR
92
93ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/packages/TrustedCoreFw/xmlStable/TEE_Internal_API.xml"
94 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/packages/TrustedCoreFw/xmlpatch/v1_1_0_4-2014_11_07/TEE_Internal_API.xml.patch")
95LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
96LCI_PRINT_SEPARATOR
97
98LCI_PRINT_SEPARATOR
99LCI_PRINT_L1 "Patch TTAs files"
100
101ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/TTAs/TTA_Arithmetical/TTA_Arithmetical/code_files/TTA_Arithmetical.c"
102 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/TTAs/TTA_Arithmetical/code_patches/v1_1_0_4-2014_11_07/TTA_Arithmetical.c.patch")
103LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
104LCI_PRINT_SEPARATOR
105
106ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/TTAs/TTA_Arithmetical/TTA_Arithmetical/code_files/TTA_Arithmetical_protocol.h"
107 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/TTAs/TTA_Arithmetical/code_patches/v1_1_0_4-2014_11_07/TTA_Arithmetical_protocol.h.patch")
108LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
109LCI_PRINT_SEPARATOR
110
111ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/TTAs/TTA_ClientAPI/TTA_check_OpenSession_with_4_parameters/code_files/TTA_check_OpenSession_with_4_parameters_protocol.h"
112 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/TTAs/TTA_ClientAPI/TTA_check_OpenSession_with_4_parameters/code_patches/v1_1_0_4-2014_11_07/TTA_check_OpenSession_with_4_parameters_protocol.h.patch")
113LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
114LCI_PRINT_SEPARATOR
115
116ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/TTAs/TTA_ClientAPI/TTA_testingClientAPI/code_files/TTA_testingClientAPI_protocol.h"
117 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/TTAs/TTA_ClientAPI/TTA_testingClientAPI/code_patches/v1_1_0_4-2014_11_07/TTA_testingClientAPI_protocol.h.patch")
118LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
119LCI_PRINT_SEPARATOR
120
121ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/TTAs/TTA_ClientAPI/TTA_answerSuccessTo_OpenSession_Invoke/code_files/TTA_answerSuccessTo_OpenSession_Invoke_protocol.h"
122 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/TTAs/TTA_ClientAPI/TTA_answerSuccessTo_OpenSession_Invoke/code_patches/v1_1_0_4-2014_11_07/TTA_answerSuccessTo_OpenSession_Invoke_protocol.h.patch")
123LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
124LCI_PRINT_SEPARATOR
125
126ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/TTAs/TTA_ClientAPI/TTA_answerErrorTo_OpenSession/code_files/TTA_answerErrorTo_OpenSession_protocol.h"
127 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/TTAs/TTA_ClientAPI/TTA_answerErrorTo_OpenSession/code_patches/v1_1_0_4-2014_11_07/TTA_answerErrorTo_OpenSession_protocol.h.patch")
128LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
129LCI_PRINT_SEPARATOR
130
131ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/TTAs/TTA_ClientAPI/TTA_answerErrorTo_Invoke/code_files/TTA_answerErrorTo_Invoke_protocol.h"
132 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/TTAs/TTA_ClientAPI/TTA_answerErrorTo_Invoke/code_patches/v1_1_0_4-2014_11_07/TTA_answerErrorTo_Invoke_protocol.h.patch")
133LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
134LCI_PRINT_SEPARATOR
135
136ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/TTAs/TTA_Crypto/TTA_Crypto/code_files/TTA_Crypto.c"
137 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/TTAs/TTA_Crypto/code_patches/v1_1_0_4-2014_11_07/TTA_Crypto.c.patch")
138LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
139LCI_PRINT_SEPARATOR
140
141ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/TTAs/TTA_Crypto/TTA_Crypto/code_files/TTA_Crypto_protocol.h"
142 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/TTAs/TTA_Crypto/code_patches/v1_1_0_4-2014_11_07/TTA_Crypto_protocol.h.patch")
143LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
144LCI_PRINT_SEPARATOR
145
146ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/TTAs/TTA_DS/TTA_DS/code_files/TTA_DS_protocol.h"
147 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/TTAs/TTA_DS/code_patches/v1_1_0_4-2014_11_07/TTA_DS_protocol.h.patch")
148LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
149LCI_PRINT_SEPARATOR
150
151ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/TTAs/TTA_DS/TTA_DS/code_files/TTA_DS.c"
152 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/TTAs/TTA_DS/code_patches/v1_1_0_4-2014_11_07/TTA_DS.c.patch")
153LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
154LCI_PRINT_SEPARATOR
155
156ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/TTAs/TEE_include/tee_internal_api.h"
157 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/TTAs/TEE_include/code_patches/v1_1_0_4-2014_11_07/tee_internal_api.h.patch")
158LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
159LCI_PRINT_SEPARATOR
160
161ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/TTAs/TTA_TCF/TTA_TCF_ICA/code_files/TTA_TCF_ICA_protocol.h"
162 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/TTAs/TTA_TCF/TTA_TCF_ICA/code_patches/v1_1_0_4-2014_11_07/TTA_TCF_ICA_protocol.h.patch")
163LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
164LCI_PRINT_SEPARATOR
165
166ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/TTAs/TTA_TCF/TTA_TCF_MultipleInstanceTA/code_files/TTA_TCF_MultipleInstanceTA_protocol.h"
167 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/TTAs/TTA_TCF/TTA_TCF_MultipleInstanceTA/code_patches/v1_1_0_4-2014_11_07/TTA_TCF_MultipleInstanceTA_protocol.h.patch")
168LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
169LCI_PRINT_SEPARATOR
170
171ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/TTAs/TTA_TCF/TTA_TCF/code_files/TTA_TCF.h"
172 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/TTAs/TTA_TCF/TTA_TCF/code_patches/v1_1_0_4-2014_11_07/TTA_TCF.h.patch")
173LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
174LCI_PRINT_SEPARATOR
175
176ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/TTAs/TTA_TCF/TTA_TCF_SingleInstanceTA/code_files/TTA_TCF_SingleInstanceTA_protocol.h"
177 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/TTAs/TTA_TCF/TTA_TCF_SingleInstanceTA/code_patches/v1_1_0_4-2014_11_07/TTA_TCF_SingleInstanceTA_protocol.h.patch")
178LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
179LCI_PRINT_SEPARATOR
180
181ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/TTAs/TTA_Time/TTA_Time/code_files/TTA_Time_protocol.h"
182 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/TTAs/TTA_Time/code_patches/v1_1_0_4-2014_11_07/TTA_Time_protocol.h.patch")
183LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
184LCI_PRINT_SEPARATOR
185
186ARRAY=(["FILE"]="${CFG_GP_PACKAGE_PATH}/TTAs/TTA_Time/TTA_Time/code_files/TTA_Time.c"
187 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/TTAs/TTA_Time/code_patches/v1_1_0_4-2014_11_07/TTA_Time.c.patch")
188LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
189LCI_PRINT_SEPARATOR
190
191LCI_PRINT_L1 "Patch HOST files"
192
Pascal Brandc639ac82015-07-02 08:53:34 +0200193cd ${CDIR}
194
Cedric Chaumontae237e22015-07-10 16:40:14 +0200195if [ ${CFG_GP_TESTSUITE_ENABLE} == "y" ]; then
196 cd ${CDIR}
197 echo ${CDIR}
198 ./enable_gp_testsuite.sh
199
200 # openssl .h file installation
201 if [ -d /usr/include/openssl ]; then
202 forgpdir=${CFG_DEV_PATH}/optee_test/host/xtest/for_gp/
203 mkdir -p ${forgpdir}/include/openssl ${forgpdir}/lib
204 [ -d /usr/include/x86_64-linux-gnu/openssl ] && LCI_CPD /usr/include/x86_64-linux-gnu/openssl ${forgpdir}/include
205 for f in /usr/include/openssl/*.h ; do
206 LCI_CPF $f ${forgpdir}/include/openssl
207 done
208 else
209 LCI_PRINT_WARNING "ERROR: '/usr/include/openssl' NOT FOUND"
210 exit;
211 fi;
Cedric Chaumontae237e22015-07-10 16:40:14 +0200212fi
213
Cedric Chaumontac883d92015-07-20 12:40:30 +0200214cd ${CDIR}
215
216LCI_PRINT_L1 "Update test: 9238 (TEE_GetOperationInfoMultiple)"
217ARRAY=(["FILE"]="${CFG_OPTEE_TEST_PATH}/host/xtest/xtest_9000.c"
218 ["PATCH"]="${CFG_GP_XSL_PACKAGE_PATH}/host/xtest/xtest_9000.c.patch")
219LCI_PATCH ${ARRAY[FILE]} ${ARRAY[PATCH]}
220LCI_PRINT_SEPARATOR
221
Pascal Brandc639ac82015-07-02 08:53:34 +0200222LCI_PRINT_SEPARATOR
223LCI_PRINT_HEADER "`basename $0` finished";
224LCI_PRINT_SEPARATOR