Have you ever seen this?

localhost login: root
login: This applet requires root priviledges!

Chances are, you haven’t. Chances are you aren’t building a custom home-rolled embedded Gentoo Linux system with busybox.

But if you are, and your using uclibc 0.9.28 or older, make sure you turn on “General setup->Enable 16-bit UID system calls” in your kernel. Otherwise uclibc will be confused about root’s UID, and not thing will work.

For example, ‘id’ will report the uid as being 4294967295, and getuid() will return -1. Excellent!

Hopefully this will save some poor shlub two days of debugging work.