Jouni Malinen
b256d9393d
tests: DPP2 connection status result
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2019-09-16 17:25:34 +03:00
Jouni Malinen
530b31ea88
tests: Fix DPP wait_auth_success() check for Configurator success
...
This looked like a copy-paste error in the event message check and once
that was fixed, couple of test cases needed fixes to expect a success
from the Configurator.
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2019-09-15 17:01:59 +03:00
Jouni Malinen
ba2d5f3642
tests: DPP network introduction with expired netaccesskey
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2019-08-11 16:45:43 +03:00
Jouni Malinen
b4928ff9cb
tests: DPP Controller RX error cases
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2019-08-06 21:02:12 +03:00
Jouni Malinen
161490906a
tests: DPP TCP failure cases
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2019-08-06 20:22:44 +03:00
Jouni Malinen
c9ead82d11
tests: Fix robustness issue in DPP test cases with SAE
...
The sae_groups parameter needs to be cleared before attempt a SAE
connection in a test case to avoid issues with this parameter having
been left to something else than the default one by a previous test
case. This was found with the following sequence:
sae_pwe_failure dpp_auto_connect_legacy_psk_sae_1
Signed-off-by: Jouni Malinen <j@w1.fi>
2019-05-25 21:18:24 +03:00
Jouni Malinen
358141344a
tests: DPP channel-list with multiple channels in opclass
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2019-05-23 01:37:16 +03:00
Jouni Malinen
5fbefcc64b
tests: DPP over TCP using Controller/Relay
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2019-04-22 21:08:59 +03:00
Jouni Malinen
5be5b81678
tests: dpp_bootstrap_gen_failures to match implementation changes
...
The separate dpp_bootstrap_gen() functions were merged into a single
one, so the test case needs a matching change to avoid failures.
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2019-03-24 17:29:45 +02:00
Jouni Malinen
f9bac0f6b3
tests: Remove unnecessary dump_monitor() calls from end of test cases
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2019-03-18 18:32:31 +02:00
Jouni Malinen
e105110f40
tests: Use a helper function for DPP_CONFIGURATOR_ADD/REMOVE
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2019-03-18 18:32:31 +02:00
Jouni Malinen
5725b3e355
tests: Use a helper function for DPP_AUTH_INIT
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2019-03-18 18:32:31 +02:00
Jouni Malinen
84438350ae
tests: DPP AP+STA provisioning and connection with Brainpool curves
...
Increase testing coverage by going through all six possible curves with
full provisioning of AP and STA and connection (which includes PFS with
DPP2).
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2019-03-18 18:32:31 +02:00
Jouni Malinen
203878d797
tests: Helper function for checking DPP-FAIL reporting
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2019-03-17 20:58:44 +02:00
Jouni Malinen
6d196e5928
tests: Helper functions for DPP PKEX initiator and responder
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2019-03-17 20:57:58 +02:00
Jouni Malinen
517f76b158
tests: DPP use the wait_auth_success() helper function
...
Use the already existing helper function and extend it to cover the most
common test sequences.
Signed-off-by: Jouni Malinen <j@w1.fi>
2019-03-17 19:17:31 +02:00
Jouni Malinen
7e0091007c
tests: Use helper function for DPP_LISTEN commands
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2019-03-17 18:19:58 +02:00
Jouni Malinen
421d658a67
tests: Fix ECDSA signature generation
...
Parsing of the DER encoded signature was unable to handle results that
were shorter than the prime. These need to be zero padded from left to
generate the correct value.
Signed-off-by: Jouni Malinen <j@w1.fi>
2019-03-17 16:53:05 +02:00
Jouni Malinen
fab49f6145
tests: Python coding style cleanup (pylint3 bad-whitespace)
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2019-03-16 18:52:09 +02:00
Jouni Malinen
009b54bedd
tests: DPP and provisoning DPP and legacy AKMs
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2019-03-16 18:52:09 +02:00
Jouni Malinen
8ad1009e50
tests: DPP and Enrollee rejecting Config Object
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2019-03-15 00:31:09 +02:00
Jouni Malinen
8b6c834ff9
tests: DPP test cases to handle new behavior due to config result
...
The new DPP Configuration Result message can result in a bit different
behavior at the end of the configuration exchange and some of the test
cases need more flexibility to work with that DPP2 behavior.
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2019-03-15 00:31:09 +02:00
Jouni Malinen
f77d106294
tests: Fix dpp_qr_code_auth_initiator_enrollee to clear gas_address3
...
gas_address3 was set to 1 in this test case, but it was never cleared.
That can result in unexpected behavior in other test cases that dpeends
on gas_address3 being in its default value 0. Clear the parameter
explicitly to avoid this.
This resulted in an error in the following test sequence:
dpp_qr_code_auth_initiator_enrollee gas_anqp_address3_ap_forced
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2019-03-14 00:13:35 +02:00
Jouni Malinen
3d5cfa0f6d
tests: Make DPP protocol failure testing more robust
...
Wait explicitly for the DPP-NOT-COMPATIBLE event when going through
protocol testing with local failures instead of just waiting for a fixed
0.1 second duration. This prevents a test failure at least in
dppauth_resp_status_failure in a case where the failing operation may be
delayed under heavy CPU load.
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2019-03-13 19:44:50 +02:00
Jouni Malinen
ba6ce9c657
tests: DPP and duplicated Authentication Response
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2019-03-13 13:22:40 +02:00
Jouni Malinen
a5387062e5
tests: Use a helper function for DPP_BOOTSTRAP_GEN commands
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2019-03-09 18:13:10 +02:00
Jouni Malinen
0422d06b54
tests: Use a helper function for DPP_QR_CODE commands
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2019-03-09 16:55:54 +02:00
Jouni Malinen
7010f4bed5
tests: DPP provisioning updating wpa_supplicant configuration file
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2019-03-09 16:23:04 +02:00
Jouni Malinen
051c8cae6a
tests: DPP and two initiators
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2019-02-14 11:50:40 +02:00
Masashi Honma
c4e333fa43
tests: Encode/decode base64 operations for python3
...
Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
2019-02-04 12:26:34 +02:00
Masashi Honma
54c58f29c0
tests: Replace str.encode('hex') with binascii.hexlify() for python3
...
Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
Signed-off-by: Jouni Malinen <j@w1.fi>
2019-02-04 12:26:34 +02:00
Masashi Honma
15dfcb69df
tests: Use 'b' prefix to mark Bytes literals explicitly for python3
...
Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
Signed-off-by: Jouni Malinen <j@w1.fi>
2019-02-04 12:26:33 +02:00
Jouni Malinen
58be42b264
tests: Remove trailing semicolons from python code
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2019-02-02 12:10:53 +02:00
Jouni Malinen
5a5529c9f4
tests: Make dpp_pkex_no_responder handle enabled 5 GHz channels
...
It was possible for the 5 GHz PKEX channels to be enabled, e.g., when
running "ap_ht40_csa2 dpp_pkex_no_responder" test sequence, and that
resulted in a failure in dpp_pkex_no_responder due to the unexpectedly
long wait needed for the DPP-FAIL event. Increase the wait time to allow
for 5 GHz PKEX channels to be probed.
Signed-off-by: Jouni Malinen <j@w1.fi>
2019-01-01 16:17:13 +02:00
Jouni Malinen
ba3146e154
tests: Wait a bit after 'iw reg set 00' at the end of test cases
...
This is needed to avoid leaving unexpected cfg80211 regulatory country
code in place at the point when a test case terminates.
Signed-off-by: Jouni Malinen <j@w1.fi>
2019-01-01 11:46:50 +02:00
Jouni Malinen
9552a7364f
tests: DPP_CONFIGURATOR_SIGN without double space
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-12-21 12:02:57 +02:00
Jouni Malinen
d0cd2d1ab2
tests: DPP network addition failure
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2018-12-02 18:40:06 +02:00
Jouni Malinen
fe7c91f822
tests: DPP and continue listen state
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2018-12-02 18:40:06 +02:00
Jouni Malinen
88c08a29a2
tests: DPP_BOOTSTRAP_GEN/REMOVE/GET_URI/INFO error cases
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2018-12-02 18:40:06 +02:00
Jouni Malinen
d0e88871a7
tests: DPP and unknown configurator id
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2018-12-02 18:40:06 +02:00
Jouni Malinen
24c4200d2e
tests: DPP and PKEX with local failure in processing Commit Reveal Req
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2018-12-02 18:40:06 +02:00
Jouni Malinen
a7758916c6
tests: DPP and PKEX with local failure in processing Exchange Resp
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2018-12-02 12:44:13 +02:00
Jouni Malinen
6026ed0df1
tests: DPP and PKEX with mismatching curve (local failure)
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2018-12-02 12:39:05 +02:00
Jouni Malinen
eb390abb21
tests: DPP PKEX identifier combinations
...
Check behavior with valid and invalid identifier combinations.
Signed-off-by: Jouni Malinen <j@w1.fi>
2018-12-02 12:32:17 +02:00
Jouni Malinen
7e26f1bc89
tests: DPP peer introduction local failures
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2018-12-02 01:22:59 +02:00
Jouni Malinen
5c6c42aa2c
tests: DPP peer introduction failures
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2018-12-02 00:44:42 +02:00
Jouni Malinen
b856b94395
tests: DPP own config signing failure
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2018-12-02 00:10:08 +02:00
Jouni Malinen
1ddf1b34fe
tests: DPP invalid configurator key
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2018-12-01 23:50:24 +02:00
Jouni Malinen
88d4e0baf2
tests: DPP legacy parameters local failure
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2018-12-01 22:02:55 +02:00
Jouni Malinen
77e4f012f1
tests: DPP invalid legacy parameters
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-11-30 17:17:03 +02:00
Jouni Malinen
4d38285b3b
tests: DPP protocol testing - Auth Conf RX processing failure
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-11-30 14:21:35 +02:00
Jouni Malinen
4ea1915bad
tests: DPP Auth Resp AES-SIV issue
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-11-30 14:10:12 +02:00
Jouni Malinen
3710b58d24
tests: More DPP incompatible roles coverage
...
Cover the Configurator/Configurator case in addition Enrollee/Enrollee.
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-11-30 14:05:21 +02:00
Jouni Malinen
14ea96dbd0
tests: DPP and Auth Resp(status) build failure
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-11-30 13:39:19 +02:00
Jouni Malinen
f1042596d1
tests: DPP bootstrap key autogen issues
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-11-30 13:35:39 +02:00
Jouni Malinen
4e72b1de1d
tests: DPP protocol testing cases for Auth Resp status-not-OK cases
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-11-27 17:21:22 +02:00
Jouni Malinen
9c976e2c45
tests: Additional DPP AES-SIV local failure coverage
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-11-27 17:02:31 +02:00
Jouni Malinen
545bf954c4
tests: DPP QR Code and keygen failure
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-11-27 16:50:36 +02:00
Jouni Malinen
9eadebe3d4
tests: DPP local failure on hashing public key for PKEX bootstrap info
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-11-27 16:44:48 +02:00
Jouni Malinen
e9bca5b8c3
tests: DPP QR Code and unsupported curve
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-11-27 16:44:48 +02:00
Jouni Malinen
d16be03bd1
tests: Additional DPP bootstrapping URI parsing coverage
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-11-26 21:35:23 +02:00
Jouni Malinen
01e39ba992
tests: DPP invalid attribute checks
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-11-26 20:43:30 +02:00
Jouni Malinen
fd1534a258
tests: DPP Connector testing with ECDSA signature in Python
...
Implement ECDSA signing functionality in the Python test script for
generating a valid signedConnector. This allows coverage of DPP config
object testing to be increased more easily.
Signed-off-by: Jouni Malinen <j@w1.fi>
2018-11-25 22:01:35 +02:00
Jouni Malinen
30dda44dcc
tests: More DPP Config Object protocol testing coverage
...
Signed-off-by: Jouni Malinen <j@w1.fi>
2018-11-25 20:24:50 +02:00
Jouni Malinen
a46b60c440
tests: Additional coverage for DPP GAS error cases
...
These test cases found number of error handling issues in the DPP/GAS
implementation.
Signed-off-by: Jouni Malinen <j@w1.fi>
2018-11-25 13:53:05 +02:00
Jouni Malinen
f1e2d38166
tests: DPP_CONFIGURATOR_ADD error path
...
This is a regression test case for a memory leak on DPP_CONFIGURATOR_ADD
error path in dpp_keygen_configurator() when an unsupported curve is
specified.
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-09-21 21:39:34 +03:00
Jouni Malinen
2697e85ea9
tests: DPP group_id parameter
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-08-30 23:34:37 +03:00
Jouni Malinen
e5b0b58bfa
tests: DPP and SAE AKMs
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-04-12 21:14:33 +03:00
Jouni Malinen
0c061630ad
tests: DPP Configurator reconfiguration
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-03-16 20:56:05 +02:00
Jouni Malinen
c63e69c379
tests: DPP protocol testing - stop when transmitting Auth Conf
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-03-13 01:04:03 +02:00
Jouni Malinen
27a8d93b07
tests: Make dpp_qr_code_curve_select more robust
...
Wait for the configuration exchange to complete before issuing the
DPP_STOP_LISTEN command to avoid confusing sequence of operation between
the ongoing and immediately following DPP exchanges.
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-02-07 17:09:20 +02:00
Jouni Malinen
4370ffc0c4
tests: DPP and PKEX on 5 GHz
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-02-07 16:58:52 +02:00
Jouni Malinen
2fec710ac5
tests: Use PMF in DPP with legacy PSK/SAE cases
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-02-06 20:52:44 +02:00
Jouni Malinen
8f9d2b171f
tests: Update DPP PKEX test vector parameters to match new tech spec
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-01-30 18:28:24 +02:00
Jouni Malinen
2d7aa8d575
tests: Make dpp_pkex_test_vector parameters clearer
...
This makes it a bit clearer to see which parameters need to be modified
if the test vector needs to be recreated based on new values.
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-01-30 18:21:37 +02:00
Jouni Malinen
35818d3e07
tests: DPP using externally generated bootstrapping keys
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-01-29 13:23:19 +02:00
Jouni Malinen
c8b19de245
tests: DPP QR Code and hostapd as initiator (offchannel)
...
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2018-01-08 05:21:49 +02:00
Jouni Malinen
8b5a497325
tests: Make dpp_pkex_test_fail and dpp_pkex_alloc_fail more robust
...
Wait for test/allocation failure for longer than the wait_fail_trigger()
default two seconds to allow DPP (in particular, PKEX) retransmission to
occur. This removes some issues where the previous wait was more or less
exactly the same duration as the retransmission interval and the first
Listen operation not always starting quickly enough to receive the first
frame.
Signed-off-by: Jouni Malinen <j@w1.fi>
2017-12-25 18:36:17 +02:00
Jouni Malinen
9a3acf43e8
tests: DPP P-521 test vector (mutual auth)
...
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-12-13 16:25:13 +02:00
Jouni Malinen
055cd39788
tests: DPP P-256 test vectors
...
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-12-07 13:35:19 +02:00
Jouni Malinen
41dafe0c0a
tests: DPP testing to check for mutual authentication on Initiator
...
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-12-02 12:00:44 +02:00
Jouni Malinen
c30517c6f7
tests: DPP exchange stopping unexpectedly
...
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-12-02 12:00:44 +02:00
Jouni Malinen
5f170c99a4
tests: DPP protocol testing - invalid E-nonce in Conf Req
...
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-11-30 22:03:07 +02:00
Jouni Malinen
087f494140
tests: DPP protocol testing - invalid Transaction ID in Peer Disc Req
...
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-11-30 21:56:55 +02:00
Jouni Malinen
edac8087e6
tests: Make dpp_auth_req_retries* more reliable
...
These test cases were failing when run immediately after
dpp_pkex_test_fail. It looks like timing of the TX status and the short
eloop wait were getting reordered in this cases. This ended up with some
of the DPP-TX-STATUS event messages missing. Instead of explicitly
checking for those message, simply count the number of DPP-TX messages
to verify that the correct number of retries are being sent.
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-11-30 12:56:24 +02:00
Jouni Malinen
818e3c94b7
tests: DPP/PKEX and local failures
...
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-11-30 00:08:40 +02:00
Jouni Malinen
e6a6de2994
tests: Generate DPP Config Object for legacy network (PSK)
...
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-11-29 12:12:31 +02:00
Jouni Malinen
73a7feb311
tests: DPP configurator (AP) signing own connector
...
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-11-27 13:24:20 +02:00
Jouni Malinen
cdef4e91aa
tests: DPP QR Code and mutual authentication with auto-generated key
...
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-11-26 17:43:43 +02:00
Jouni Malinen
5da4b2f386
tests: DPP and PKEX (P-256) test vector
...
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-11-24 01:43:23 +02:00
Jouni Malinen
92fe5f567c
tests: Fix dpp_auth_req_retries* check for DPP capability
...
Need to do this before trying to set the DPP test parameters.
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-11-23 20:12:34 +02:00
Jouni Malinen
8968acda9b
tests: DPP Auth Req retry behavior
...
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-11-23 13:15:40 +02:00
Jouni Malinen
fce412d3ef
tests: DPP with SAE
...
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-11-22 21:24:08 +02:00
Jouni Malinen
af872d9d88
tests: DPP protocol testing - invalid I-nonce in Auth Req
...
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-11-22 17:34:05 +02:00
Jouni Malinen
169e341e34
tests: DPP and PKEX retry behavior
...
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-11-22 15:55:51 +02:00
Jouni Malinen
de731ec25c
tests: Additional DPP protocol testing for Peer Discovery Req/Resp
...
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-11-19 17:15:48 +02:00
Jouni Malinen
b0fda6b715
tests: DPP protocol testing - invalid Config Attr Obj in Conf Req
...
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-11-19 14:13:20 +02:00
Jouni Malinen
655e82b1bb
tests: DPP protocol testing - invalid Status in Auth Resp/Conf
...
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-11-19 14:13:20 +02:00
Jouni Malinen
47183df78a
tests: DPP protocol testing for invalid I/R-bootstrap key hash
...
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-11-19 11:33:22 +02:00
Jouni Malinen
dc515328a2
tests: DPP protocol testing - invalid I/R-proto key in Auth Req/Resp
...
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2017-11-19 00:12:37 +02:00