Доброе утро, ЛОР!
Необходимо сделать logout программно. Работать должно и в Linux, и во FreeBSD.
Это, видимо, возможно реализовать через libPAM, но гугл говорит, что эта либа в этих системах реализована по-разному (хотя API может быть и идентичным, не проверял). Разные модули писать для разных систем сильно не хочется.
Если все же PAM, то буду благодарен за название конкретной функции в нем.
UPD:
system("killall -u `whoami`");
На машине может быть запущено несколько иксовых сессий от одного юзера, закрыта должна быть только текущая.