HardenedBSD/sys/kern
Kyle Evans 5862c891bb kern: zero out stack buffer after copying out random bits
The kern.arandom sysctl handler uses an intermediate buffer on the stack
to hold random data that it subsequently copies out to the sysctl
request.  Err on the side of caution and zero out the stack buffer after
we're done with it to avoid a potential entropy leak later on.

Reviewed by:	cem, emaste, markj
MFC after:	3 days
Differential Revision:	https://reviews.freebsd.org/D45978
2024-07-15 15:17:47 -05:00
..
bus_if.m new-bus: Remove the 'rid' and 'type' arguments from BUS_RELEASE_RESOURCE 2024-03-13 15:05:54 -07:00
clock_if.m
cpufreq_if.m
device_if.m
firmw.S arm64: Support BTI checking in most of the kernel 2024-06-05 09:23:40 +00:00
genassym.sh
genoffset.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
genoffset.sh
imgact_aout.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
imgact_binmisc.c man filesystems: fix more xrefs after move to s4 2024-06-27 18:32:05 -06:00
imgact_elf32.c sys/kern: Remove a few sys/cdefs.h around some elf things 2024-02-20 20:40:19 -07:00
imgact_elf64.c sys/kern: Remove a few sys/cdefs.h around some elf things 2024-02-20 20:40:19 -07:00
imgact_elf.c arm64: Support the L3 ATTR_CONTIGUOUS page size in pagesizes[] 2024-07-13 12:43:42 -05:00
imgact_shell.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
init_main.c amd64: initialize td_frame stack area for init(8) main thread 2024-03-26 04:01:38 +02:00
init_sysent.c Regen 2024-05-21 22:03:20 +02:00
kern_acct.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
kern_alq.c alq, siftr: add panic/debugger checks to shutdown hooks 2023-11-23 12:07:42 -04:00
kern_boottrace.c boottrace: Use NULL for SYSINIT's last arg, which is a pointer type 2024-05-14 12:03:50 +08:00
kern_clock.c sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
kern_clocksource.c
kern_condvar.c ktrace: Fix the build when options KTRACE is not configured 2024-03-09 00:33:55 -05:00
kern_conf.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
kern_cons.c vt/sc: retire logic to select vt(4) by default for UEFI boot 2024-05-25 11:00:35 -04:00
kern_context.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
kern_cpu.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
kern_cpuset.c ktrace: Record cpuset violations with KTR_CAPFAIL 2024-04-07 18:52:51 -05:00
kern_ctf.c kern_ctf.c: Don't print out warning messages unconditionally 2024-03-29 20:32:18 +01:00
kern_descrip.c ktrace: Record namei violations with KTR_CAPFAIL 2024-04-07 18:52:51 -05:00
kern_devctl.c devctl: Disable the boottime optimization of suppressing NOMATCH 2024-05-18 07:07:16 -06:00
kern_dtrace.c
kern_dump.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
kern_environment.c Reduce reliance on sys/sysproto.h pollution 2024-04-15 21:35:40 +01:00
kern_et.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
kern_event.c kcmp(2): implement for generic file types 2024-01-24 07:11:26 +02:00
kern_exec.c kern_exec.c: quiet gcc -Wmaybe-uninitialized 2024-07-09 10:57:33 -07:00
kern_exit.c Revert "kqueue: on process exit, force-clear its registered signal events" 2023-11-28 19:29:58 +02:00
kern_fail.c
kern_ffclock.c
kern_fork.c thread: Simplify sanitizer integration with thread creation 2024-04-22 11:46:59 -04:00
kern_hhook.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
kern_idle.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
kern_intr.c intr: Document how to get the interrupt frame 2024-05-10 15:41:36 -06:00
kern_jail.c jail: allow adjustment of host time 2024-06-28 12:23:31 +02:00
kern_kcov.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
kern_khelp.c khelp: uma_zcreate() does not fail 2024-04-24 08:46:35 -04:00
kern_kthread.c kthread: Set *tdptr earlier in kproc_kthread_add() 2024-04-25 09:35:38 -04:00
kern_ktr.c
kern_ktrace.c ktrace: Record detailed ECAPMODE violations 2024-04-07 18:52:51 -05:00
kern_linker.c linuxkpi: Provide a non-NULL value for THIS_MODULE 2024-05-16 10:36:36 -07:00
kern_lock.c kern: move __always_inline to canonical position 2024-06-24 10:05:58 -07:00
kern_lockf.c sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
kern_lockstat.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
kern_loginclass.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
kern_malloc.c Adjust comments referencing vm_mem_init() 2024-05-27 18:37:40 -03:00
kern_mbuf.c mbuf: provide m_freemp() 2024-06-03 17:23:06 -07:00
kern_membarrier.c Reduce reliance on sys/sysproto.h pollution 2024-04-15 21:35:40 +01:00
kern_mib.c kern: zero out stack buffer after copying out random bits 2024-07-15 15:17:47 -05:00
kern_module.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
kern_mtxpool.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
kern_mutex.c locks: add a runtime check for missing turnstile 2024-07-11 11:06:52 +00:00
kern_ntptime.c
kern_osd.c Add function to OSD to get values without taking the lock. 2024-05-22 15:55:48 -04:00
kern_physio.c uio: Use switch statements when handling UIO_READ vs UIO_WRITE 2024-05-10 13:43:36 -07:00
kern_pmc.c
kern_poll.c
kern_priv.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
kern_proc.c arm64: Support the L3 ATTR_CONTIGUOUS page size in pagesizes[] 2024-07-13 12:43:42 -05:00
kern_procctl.c Reduce reliance on sys/sysproto.h pollution 2024-04-15 21:35:40 +01:00
kern_prot.c Reduce reliance on sys/sysproto.h pollution 2024-04-15 21:35:40 +01:00
kern_racct.c
kern_rangelock.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
kern_rctl.c Reduce reliance on sys/sysproto.h pollution 2024-04-15 21:35:40 +01:00
kern_resource.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
kern_rmlock.c
kern_rwlock.c locks: add a runtime check for missing turnstile 2024-07-11 11:06:52 +00:00
kern_sdt.c sdt: Support fetching the probe sixth argument with MI machinery 2024-06-20 12:40:25 -04:00
kern_sema.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
kern_sendfile.c Revert "sendfile: mark it explicitly as a TCP only feature" 2024-04-10 11:28:11 -07:00
kern_sharedpage.c
kern_shutdown.c cons: Add boot option to mute boot messages after banner 2024-04-30 16:23:47 -04:00
kern_sig.c sigqueue(2): add impl-specific flag __SIGQUEUE_TID 2024-04-23 19:51:09 +03:00
kern_switch.c
kern_sx.c kern: move __always_inline to canonical position 2024-06-24 10:05:58 -07:00
kern_synch.c ktrace: Fix the build when options KTRACE is not configured 2024-03-09 00:33:55 -05:00
kern_syscalls.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
kern_sysctl.c sysctl: Make sysctl_ctx_free() a bit safer 2024-05-02 15:42:28 -04:00
kern_tc.c
kern_thr.c kern_thr.c: normalize includes 2024-04-23 19:51:07 +03:00
kern_thread.c kern_thread.c: remove unneeded include of sys/param.h 2024-04-23 19:51:03 +03:00
kern_time.c Reduce reliance on sys/sysproto.h pollution 2024-04-15 21:35:40 +01:00
kern_timeout.c callout: assert that callout_init_*lock* functions are called with a lock 2024-06-20 10:53:31 -07:00
kern_tslog.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
kern_ubsan.c
kern_umtx.c Reduce reliance on sys/sysproto.h pollution 2024-04-15 21:35:40 +01:00
kern_uuid.c Reduce reliance on sys/sysproto.h pollution 2024-04-15 21:35:40 +01:00
kern_vnodedumper.c kerneldump: add livedump_start_vnode(9) 2024-03-18 17:12:18 -04:00
kern_xxx.c compat_freebsd4: Add const qualifier to the local variable s inside function freebsd4_uname() 2024-05-20 12:02:32 +08:00
ksched.c
link_elf_obj.c kern linker: Don't invoke dtors without having invoked ctors 2024-03-31 14:15:11 -04:00
link_elf.c kern linker: Don't invoke dtors without having invoked ctors 2024-03-31 14:15:11 -04:00
linker_if.m ddb: Add CTF-based pretty printing 2024-03-22 04:03:33 +01:00
Make.tags.inc sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
Makefile sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
md4c.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
md5c.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
msi_if.m
p1003_1b.c sched_setscheduler(2): Change realtime privilege check 2024-02-14 15:24:11 +01:00
pic_if.m
posix4_mib.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
sched_4bsd.c sched: Simplify sched_lend_user_prio_cond() 2024-02-27 09:59:48 +01:00
sched_ule.c sched: Simplify sched_lend_user_prio_cond() 2024-02-27 09:59:48 +01:00
serdev_if.m
stack_protector.c
subr_acl_nfs4.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_acl_posix1e.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_asan.c thread: Simplify sanitizer integration with thread creation 2024-04-22 11:46:59 -04:00
subr_atomic64.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_autoconf.c sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
subr_blist.c
subr_boot.c cons: Add boot option to mute boot messages after banner 2024-04-30 16:23:47 -04:00
subr_bufring.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_bus_dma.c
subr_bus.c new-bus: Remove the 'rid' and 'type' arguments from BUS_RELEASE_RESOURCE 2024-03-13 15:05:54 -07:00
subr_busdma_bounce.c busdma: better handling of small segment bouncing 2024-05-07 13:02:57 -03:00
subr_busdma_bufalloc.c busdma: uma_zcreate() does not fail 2024-04-24 08:46:41 -04:00
subr_capability.c capsicum: introduce cap_rights_is_empty Function 2023-12-11 12:15:46 +01:00
subr_clock.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_clockcalib.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_compressor.c
subr_counter.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_coverage.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_csan.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_devmap.c devmap: eliminate unused arguments 2024-06-04 20:17:47 -03:00
subr_devstat.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_disk.c
subr_dummy_vdso_tc.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_early.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_epoch.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_eventhandler.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_fattime.c fattime: fix fattime to timespec conversion of dates beyond 2106-02-06 2024-05-01 07:56:41 +03:00
subr_filter.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_firmware.c firmware: unbreak armv7 2024-02-29 10:53:05 -07:00
subr_gtaskqueue.c gtaskqueue: Fix a typo 2023-12-31 11:49:08 -05:00
subr_hash.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_hints.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_intr.c intrng: switch flag arguments to unsigned 2024-05-09 17:14:38 -06:00
subr_kdb.c kdb_sysctl_trap: suppress gcc -Warray-bounds 2024-07-09 10:58:21 -07:00
subr_kobj.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_lock.c
subr_log.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_mchain.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_memdesc.c memdesc: Helper function to construct mbuf chain backed by memdesc buffer 2024-01-09 11:09:43 -08:00
subr_module.c linker: Add MODINFOMD_SPLASH type 2024-07-11 08:47:21 +02:00
subr_msan.c kmsan: Add some additional bus_space accessors 2024-02-08 11:22:58 -05:00
subr_msgbuf.c
subr_param.c Fix new users of MAXPHYS and hide it from the kernel namespace 2024-04-30 15:29:06 -04:00
subr_pcpu.c
subr_pctrie.c subr_pctrie: add a word to a comment 2024-06-13 15:28:15 -05:00
subr_physmem.c physmem: Correct a comment 2024-06-20 17:45:40 -04:00
subr_pidctrl.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_power.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_prf.c Fix "%hhi" conversion for kvprintf() 2024-06-28 08:57:39 -06:00
subr_prng.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_prof.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_rangeset.c pctrie: avoid typecast 2024-06-14 02:19:03 -05:00
subr_rman.c kern/rman: mark rman get functions as taking constants 2024-05-21 17:52:29 -06:00
subr_rtc.c sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
subr_sbuf.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_scanf.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_sfbuf.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_sglist.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_sleepqueue.c
subr_smp.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_smr.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_stack.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_stats.c stats: Fix the build under gcc 2024-06-05 09:23:40 +00:00
subr_syscall.c ktrace: Record syscall violations with KTR_CAPFAIL 2024-04-07 18:52:51 -05:00
subr_taskqueue.c Schedule fast taskqueue callouts on right CPU. 2023-12-26 22:55:24 -05:00
subr_terminal.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
subr_trap.c Optimize HPTS so that little work is done until we have a hpts thread that is over the connection threshold 2024-03-28 08:12:37 -04:00
subr_turnstile.c
subr_uio.c uio: Use switch statements when handling UIO_READ vs UIO_WRITE 2024-05-10 13:43:36 -07:00
subr_unit.c
subr_vmem.c uma: Deduplicate uma_small_alloc 2024-05-25 19:24:46 +02:00
subr_witness.c
sys_capability.c capsicum: SIGTRAP is delivered also on ECAPMODE error. 2024-05-21 21:51:50 -07:00
sys_eventfd.c kcmp(2): implement for generic file types 2024-01-24 07:11:26 +02:00
sys_generic.c kcmp_pget(): do not accept TIDs 2024-04-30 10:07:03 +03:00
sys_getrandom.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
sys_pipe.c kcmp(2): implement for generic file types 2024-01-24 07:11:26 +02:00
sys_procdesc.c kcmp(2): implement for procdesc 2024-01-24 07:11:27 +02:00
sys_process.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
sys_socket.c inpcb: fully retire inp_ppcb pointer 2024-03-29 12:18:32 -07:00
sys_timerfd.c timerfd_create: fix after cf742faa39 2024-03-06 18:28:02 +01:00
syscalls.c regen 2024-01-24 07:11:27 +02:00
syscalls.conf libsys: add a libsys.h 2024-04-16 17:48:07 +01:00
syscalls.master capsicum: allow rfork(2) in capability mode 2024-05-21 22:02:36 +02:00
sysctl_security_jail_children.sh tests: Fixing incomplete atf_skip if missing jail condition 2024-02-23 13:08:09 +01:00
systrace_args.c syscalls.master: correct return type of {read,write}v 2024-04-24 20:48:46 +01:00
sysv_ipc.c
sysv_msg.c SysV IPC: provide in-kernel helpers to obtain ipcs(8)-like information 2024-05-16 20:53:31 +03:00
sysv_sem.c SysV IPC: provide in-kernel helpers to obtain ipcs(8)-like information 2024-05-16 20:53:31 +03:00
sysv_shm.c SysV IPC: provide in-kernel helpers to obtain ipcs(8)-like information 2024-05-16 20:53:31 +03:00
tty_compat.c sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
tty_info.c
tty_inq.c kern: tty: fix recanonicalization 2024-01-24 13:48:31 -06:00
tty_outq.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
tty_pts.c kcmp(2): implement for generic file types 2024-01-24 07:11:26 +02:00
tty_tty.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
tty_ttydisc.c kern: tty: recanonicalize the buffer on ICANON/VEOF/VEOL changes 2024-01-15 20:55:59 -06:00
tty.c kern: fix panic with disabled ttys 2024-02-26 15:11:27 -05:00
uipc_accf.c accept_filter: return different errors for non-listener and a busy socket 2024-04-24 21:55:58 -07:00
uipc_debug.c sockets: garbage collect SS_ISCONFIRMING 2024-01-30 10:38:33 -08:00
uipc_domain.c uipc_domain: Fix a typo in a source code comment 2024-04-21 09:51:14 +02:00
uipc_ktls.c ktls: Remove the socket parameter to ktls_ocf_try() 2024-07-08 12:10:48 -04:00
uipc_mbuf2.c sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
uipc_mbuf.c mbuf: provide m_freemp() 2024-06-03 17:23:06 -07:00
uipc_mbufhash.c
uipc_mqueue.c mqueue: Introduce kern_kmq_timedreceive & kern_kmq_timedsend 2024-05-23 13:40:46 -06:00
uipc_sem.c kcmp(2): implement for generic file types 2024-01-24 07:11:26 +02:00
uipc_shm.c arm64: Support the L3 ATTR_CONTIGUOUS page size in pagesizes[] 2024-07-13 12:43:42 -05:00
uipc_sockbuf.c socket: Don't assume m0 != NULL in sbappendcontrol_locked() 2024-02-02 14:00:37 -05:00
uipc_socket.c socket: Simplify synchronization in soreceive_stream() 2024-07-09 10:33:53 -04:00
uipc_syscalls.c socket: Pass capsicum rights down to socket option handlers 2024-07-08 12:10:48 -04:00
uipc_usrreq.c unix: use m_freemp() when disposing unix socket buffers 2024-06-03 17:23:06 -07:00
vfs_acl.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
vfs_aio.c lio_listio(2): add LIO_FOFFSET flag to ignore aiocb aio_offset 2024-02-11 03:53:50 +02:00
vfs_bio.c getblk: track "non-sterile" bufobj to avoid bo lock on miss if sterile 2024-06-16 14:09:45 -07:00
vfs_cache.c vfs cache: add sysctl vfs.cache.param.hitpct 2024-07-08 18:17:54 +00:00
vfs_cluster.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
vfs_default.c vfs: move __always_inline to canonical position 2024-06-24 10:05:58 -07:00
vfs_export.c sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
vfs_extattr.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
vfs_hash.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
vfs_init.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
vfs_lookup.c vfs_lookup.c: only call ktrcapfail() if KTRACE is enabled 2024-04-24 22:43:32 +03:00
vfs_mount.c vfs_domount_update(): postpone setting MNT_UNION until VFS_MOUNT() is done 2024-05-16 04:00:26 +03:00
vfs_mountroot.c Add an implementation of the 9P filesystem 2024-06-19 13:12:04 +01:00
vfs_subr.c vfs: make skipping LRU requeue optional 2024-07-08 12:40:20 +00:00
vfs_syscalls.c Add kern_openatfp(9) 2024-01-24 07:13:26 +02:00
vfs_vnops.c uio: Use switch statements when handling UIO_READ vs UIO_WRITE 2024-05-10 13:43:36 -07:00
vnode_if.src VFS: add VOP_GETLOWVNODE() 2023-11-28 19:32:53 +02:00