android_device_samsung_msm8.../rootdir
D. Andrei Măceș 2540653e36 msm8226-common: init: Modify time_daemon to allow settimeofday() fallback
The legacy time_daemon binary relied on the old Android alarm dri-
ver for setting RTC at bootup. Once /dev/alarm support was removed
we found that time cannot be restored properly, unless a data con-
nection was available for NTP sync.

However, the blob already has a fallback mechanism that relies on
settimeofday(), except that it could never work properly. While
time_daemon is started under UID/GID of root, it immediately drops
to system/net_raw, which is required for subsequent socket commu-
ications (e.g., QMI, modem, etc).

The issue was that any UID transition from root triggers the remo-
val of all thread capabilities, including CAP_SYS_TIME, required
for settimeofday() or other RTC adjustments. Thus, time_daemon was
edited to skip the internal set[gu]id() calls altoghether, in order
to use the new capabilities mechanism introduced with Oreo init.

Change-Id: I8a0e220b724234c26b99a09b7f54af7996129d67
Signed-off-by: D. Andrei Măceș <andrei@unlegacy-android.org>
Signed-off-by: RenanQueiroz <queirozrrq@gmail.com>
2019-10-16 12:32:04 +02:00
..
etc msm8226-common: init: Modify time_daemon to allow settimeofday() fallback 2019-10-16 12:32:04 +02:00
Android.mk [SQUASH]: initial bringup of samsung msm8226-common repo from msm8974-common 2019-10-12 10:17:42 +02:00