{"guid":"1d8a5caa-369e-5950-a072-9d9e1bb4a807","title":"Y2038: replace utmp with logind","subtitle":null,"slug":"all-systems-go-2023-183-y2038-replace-utmp-with-logind","link":"https://cfp.all-systems-go.io/all-systems-go-2023/talk/3Z7XEE/","description":"The utmp implementation of glibc uses on quite some 64bit architectures a 32bit time variable, which leads to an overflow on 03:14:07 UTC on 19 January 2038. This talk will explain the current work on replacing utmp with logind.\n\nThe year 2038 problem (also known as Y2038) is a time formatting bug on Unix systems with representing times after 03:14:07 UTC on 19 January 2038. This happens with a 32bit time_t, not with a 64bit time_t. The general statement so far has always been that on 64bit systems with a 64bit time_t you are safe with respect to the Y2038 problem. But this isn't correct: on bi-arch systems like x86-64 (so which can execute 64bit and 32bit binaries) glibc defines __WORDSIZE_TIME64_COMPAT32, which leads to the fact, that struct utmp (used for utmp, wtmp and btmp) and struct lastlog uses int32_t instead of time_t. So we have a Y2038 problem, which is not easy fixable, as this would require ABI and on disk format changes. In this talk I will speak about the background, which tools are affected and a radical solution: drop utmp, wtmp, btmp and lastlog completely and make use of systemd-logind and other tools instead.","original_language":"eng","persons":["Thorsten Kukuk"],"view_count":134,"promoted":false,"date":"2023-09-13T17:00:00.000+02:00","release_date":"2023-09-14T00:00:00.000+02:00","updated_at":"2026-02-09T15:45:08.255+01:00","tags":["asg2023","183","2023"],"length":1475,"duration":1475,"thumb_url":"https://static.media.ccc.de/media/events/all_systems_go/2023/183-1d8a5caa-369e-5950-a072-9d9e1bb4a807.jpg","poster_url":"https://static.media.ccc.de/media/events/all_systems_go/2023/183-1d8a5caa-369e-5950-a072-9d9e1bb4a807_preview.jpg","timeline_url":"https://static.media.ccc.de/media/events/all_systems_go/2023/183-1d8a5caa-369e-5950-a072-9d9e1bb4a807.timeline.jpg","thumbnails_url":"https://static.media.ccc.de/media/events/all_systems_go/2023/183-1d8a5caa-369e-5950-a072-9d9e1bb4a807.thumbnails.vtt","frontend_link":"https://media.ccc.de/v/all-systems-go-2023-183-y2038-replace-utmp-with-logind","url":"https://api.media.ccc.de/public/events/1d8a5caa-369e-5950-a072-9d9e1bb4a807","conference_title":"All Systems Go! 2023","conference_url":"https://api.media.ccc.de/public/conferences/asg2023","related":[],"recordings":[{"size":113,"length":1475,"mime_type":"video/webm","language":"eng","filename":"asg2023-183-eng-Y2038_replace_utmp_with_logind_webm-hd.webm","state":"new","folder":"webm-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2023-09-14T14:45:35.097+02:00","recording_url":"https://cdn.media.ccc.de/events/all_systems_go/2023/webm-hd/asg2023-183-eng-Y2038_replace_utmp_with_logind_webm-hd.webm","url":"https://api.media.ccc.de/public/recordings/70421","event_url":"https://api.media.ccc.de/public/events/1d8a5caa-369e-5950-a072-9d9e1bb4a807","conference_url":"https://api.media.ccc.de/public/conferences/asg2023"},{"size":50,"length":1475,"mime_type":"video/webm","language":"eng","filename":"asg2023-183-eng-Y2038_replace_utmp_with_logind_webm-sd.webm","state":"new","folder":"webm-sd","high_quality":false,"width":720,"height":576,"updated_at":"2023-09-14T13:53:04.186+02:00","recording_url":"https://cdn.media.ccc.de/events/all_systems_go/2023/webm-sd/asg2023-183-eng-Y2038_replace_utmp_with_logind_webm-sd.webm","url":"https://api.media.ccc.de/public/recordings/70411","event_url":"https://api.media.ccc.de/public/events/1d8a5caa-369e-5950-a072-9d9e1bb4a807","conference_url":"https://api.media.ccc.de/public/conferences/asg2023"},{"size":39,"length":1475,"mime_type":"video/mp4","language":"eng","filename":"asg2023-183-eng-Y2038_replace_utmp_with_logind_sd.mp4","state":"new","folder":"h264-sd","high_quality":false,"width":720,"height":576,"updated_at":"2023-09-14T02:14:34.390+02:00","recording_url":"https://cdn.media.ccc.de/events/all_systems_go/2023/h264-sd/asg2023-183-eng-Y2038_replace_utmp_with_logind_sd.mp4","url":"https://api.media.ccc.de/public/recordings/70328","event_url":"https://api.media.ccc.de/public/events/1d8a5caa-369e-5950-a072-9d9e1bb4a807","conference_url":"https://api.media.ccc.de/public/conferences/asg2023"},{"size":22,"length":1475,"mime_type":"audio/mpeg","language":"eng","filename":"asg2023-183-eng-Y2038_replace_utmp_with_logind_mp3.mp3","state":"new","folder":"mp3","high_quality":false,"width":0,"height":0,"updated_at":"2023-09-14T01:56:03.925+02:00","recording_url":"https://cdn.media.ccc.de/events/all_systems_go/2023/mp3/asg2023-183-eng-Y2038_replace_utmp_with_logind_mp3.mp3","url":"https://api.media.ccc.de/public/recordings/70311","event_url":"https://api.media.ccc.de/public/events/1d8a5caa-369e-5950-a072-9d9e1bb4a807","conference_url":"https://api.media.ccc.de/public/conferences/asg2023"},{"size":13,"length":1475,"mime_type":"audio/opus","language":"eng","filename":"asg2023-183-eng-Y2038_replace_utmp_with_logind_opus.opus","state":"new","folder":"opus","high_quality":false,"width":0,"height":0,"updated_at":"2023-09-14T01:53:34.088+02:00","recording_url":"https://cdn.media.ccc.de/events/all_systems_go/2023/opus/asg2023-183-eng-Y2038_replace_utmp_with_logind_opus.opus","url":"https://api.media.ccc.de/public/recordings/70308","event_url":"https://api.media.ccc.de/public/events/1d8a5caa-369e-5950-a072-9d9e1bb4a807","conference_url":"https://api.media.ccc.de/public/conferences/asg2023"},{"size":102,"length":1475,"mime_type":"video/mp4","language":"eng","filename":"asg2023-183-eng-Y2038_replace_utmp_with_logind_hd.mp4","state":"new","folder":"h264-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2023-09-14T01:27:37.729+02:00","recording_url":"https://cdn.media.ccc.de/events/all_systems_go/2023/h264-hd/asg2023-183-eng-Y2038_replace_utmp_with_logind_hd.mp4","url":"https://api.media.ccc.de/public/recordings/70272","event_url":"https://api.media.ccc.de/public/events/1d8a5caa-369e-5950-a072-9d9e1bb4a807","conference_url":"https://api.media.ccc.de/public/conferences/asg2023"}]}