Функция C: getpwuid (), которая возвращает структуру passwd:
struct passwd {
char *pw_name; /* username */
char *pw_passwd; /* user password */
uid_t pw_uid; /* user ID */
gid_t pw_gid; /* group ID */
char *pw_gecos; /* user information */
char *pw_dir; /* home directory */
char *pw_shell; /* shell program */
};
---------------------- Код ----------------
#include <pwd.h>
register uid_t uid;
struct passwd *uid_pw;
uid = geteuid ();
uid_pw = getpwuid (uid);
strcpy(uname,uid_pw->pw_name)
// аналогично другой информации