One of the custommers of the company I work in, have a active directory windows server and linux machines acting as clients with samba 4. The software uses getpwuid to get the current user executing it, but in that environment, that function is returning a NULL pointer and the errno ends with the value 11 (EAGAIN, which translates to "Try again"). Can someone help me with which are the possible causes? Also when I run passwd -S user on the machine, it returns the user as L (locked), but we can login as that user with no problems and in local tests in my linux machine, with an already logged in locked user, executing getpwuid doesn't return any error.

  • Try getent passwd <user> on the command line, its functioning is very similar to getpwuid. You can even ltrace it to see if EAGAIN errors occur and how they are dealt with.
    – xhienne
    Jan 9, 2017 at 18:43

1 Answer 1


So I've ran strace on a simple C source using the getpwuid_r API function, and found that some Samba, Kerberos, Winbind, PAM 32 bit libraries were missing. I ran a 64 bit version of the source and it works fine, the problem is with missing 32 bit libraries (:

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .