readutmp: fix non-portable UT_PID use The module readutmp is broken for the standard use read_utmp(..., READ_UTMP_USER_PROCESS | READ_UTMP_CHECK_PIDS) for all releases of FreeBSD until 8.3, and all OpenBSD ever released. The reason is that those systems do not provide `utmp.ut_pid', thus making the macro UT_PID(u) identical to naught, and then turning the predicate UT_PID (u) <= 0 found in desirable_utmp_entry(), into a permanent true clause. This makes desirable_utmp_entry() discard every legitimate user's UTMP entry for said BSD releases. NetBSD and DragonflyBSD are not touched by this malfunction. Copyright-paperwork-exempt: yes * lib/readutmp.c (desirable_utmp_entry) <READ_UTMP_CHECK_PIDS>: Use `UT_PID (u) > 0' as absolute condition.