次の例は、tsoluser(4) データベースの先頭から開始し、エントリを 1 つずつ列挙する方法を示します。最後に、この列挙に割り当てられている資源と uentry (ユーザーエントリ) に割り当てられている記憶領域が解放されます。tsolprof(4) データベース内のエントリを列挙するコードはほとんどこのコードと変わらないため、示されていません。
#include <tsol/user.h>
#include <tsol/prof.h>
main()
{
userent_t *uentry;
/* ユーザーのデータベースの先頭で列挙処理を設定する */
setuserent(0, TSOL_DB_SRC_SWITCH);
while((uentry = getuserent(TSOL_DB_SRC_SWITCH)) != NULL) {
/* ユーザーエントリをひとつずつ処理する */
}
/* 列挙処理を終了し、資源を解放する */
enduserent(TSOL_DB_SRC_SWITCH);
/* uentry に割り当てられた記憶領域を解放する */
free_userent(uentry);
}