version 1.4, 1999/11/24 00:26:03 |
version 1.5, 1999/11/24 19:53:54 |
|
|
else |
else |
userlen = strlen(filename); /* Nothing after username. */ |
userlen = strlen(filename); /* Nothing after username. */ |
if (userlen == 0) |
if (userlen == 0) |
pw = getpwuid(my_uid); /* Own home directory. */ |
pw = getpwuid(my_uid); /* Own home directory. */ |
else { |
else { |
/* Tilde refers to someone elses home directory. */ |
/* Tilde refers to someone elses home directory. */ |
if (userlen > sizeof(user) - 1) |
if (userlen > sizeof(user) - 1) |
|
|
user[userlen] = 0; |
user[userlen] = 0; |
pw = getpwnam(user); |
pw = getpwnam(user); |
} |
} |
/* Check that we found the user. */ |
|
if (!pw) |
if (!pw) |
fatal("Unknown user %100s.", user); |
fatal("Unknown user %100s.", user); |
|
|
/* If referring to someones home directory, return it now. */ |
/* If referring to someones home directory, return it now. */ |
if (!cp) { /* Only home directory specified */ |
if (!cp) { |
|
/* Only home directory specified */ |
return xstrdup(pw->pw_dir); |
return xstrdup(pw->pw_dir); |
} |
} |
/* Build a path combining the specified directory and path. */ |
/* Build a path combining the specified directory and path. */ |