getpwnam() 함수가 false만 리턴합니다.

refinestyle의 이미지

임베디드 보드에 vsftpd를 올릴려고 합니다.
vsftpd소스를 보니깐 UID를 /etc/passwd 에서 가져올 때 getpwnam()을 쓰더군요.
그런데 getpwnam()이 항상 0을 리턴해서 UID를 가지고 오지 못하고 있습니다.

보드에 올린 lib들은
ld.so.1 libcrypt.so.1
libc.so.6 libdl.so.2
libm.so.6 libpthread.so.0
libuuid.so
입니다.

/etc밑에는
passwd group shadow vsftpd.conf resolve.conf 가 있습니다.

glibc소스를 보니깐 getpwnam()소스는 메크로로 되있어 컴파일 할때 만드는거 같고 제 실력으론 분석이 안되더군요...

nthroot의 이미지

ldd vsftpd 를 해보시거나
errno 를 찍어보시면 도움이 될 것 같네요.

저 같은 경우 아래와 같은 lib이 필요하다고 나오네요.

libpam.so.0
libdl.so.2
libnsl.so.1
libresolv.so.2
libutil.so.1
libcap.so.1
libc.so.6
ld-linux.so.2

------식은이 처------
길이 끝나는 저기엔 아무 것도 없어요. 희망이고 나발이고 아무 것도 없어.