Работаю с FreeBSD 9.2.
Столкнулся со следующей проблемой: пытаюсь вручную читать структуры utmpx из файлов:
/var/run/utx.active
/var/log/utx.lastlogin
/var/log/utx.log
На языке Си
Код: Выделить всё
fread(&tm, sizeof(struct utmpx), 1, fd)
Ведь в мануале говорится, что в этих файлах находятся именно utmpx структуры.
А на деле получается иначе. Вместо ожидаемой структуры, получаю хлам.
Просмотрел эти файлы вручную, и получил что-то невнятное. Все структуры разного размера, смещение между структурами тоже разное, да и на вид структуры из этих файлов не похожи на utmpx.
Вот пример такой структуры:
И то, что находится в ней отличается от utmpx.
Но работая с системными функциями, например, getutxent, удаётся получить данные в структурах utmpx. Однако меня интересует чтение этих структур вручную.
Подскажите, что именно находится в этих фалах? Что за структуры?
Как их правильно считывать?
Благодарю.