diff options
author | Blake Setlow <csetlow@tower-research.com> | 2008-01-25 08:14:13 (GMT) |
---|---|---|
committer | Michael Stone <michael@laptop.org> | 2008-01-25 08:14:13 (GMT) |
commit | 9c373de91bc963e1ff675e12ef5201b31193407f (patch) | |
tree | 45fb8047b7f01dd036ad6fbd82d68cb364bec56b | |
parent | 6d62f4a9f9045b1072674e1fc1172ea5a58fad4f (diff) |
Correct broken function names.
-rw-r--r-- | nss-rainbow.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/nss-rainbow.c b/nss-rainbow.c index 04b6517..533ca88 100644 --- a/nss-rainbow.c +++ b/nss-rainbow.c @@ -18,7 +18,7 @@ #define STATIC_ASSERT(expr) extern char __static_assertion_failed [(expr) ? 1 : -1] #define SAVE_ERR(EXPR) {int __errno_save = errno; EXPR; errno = __errno_save;} #define __XSTRING(X) __STRING(X) -#define PERROR(msg) {syslog(LOG_ERR, "%s|%d| %s: %s", __FILE__, __LINE__, __func__, msg);} +#define PERROR(msg) {syslog(LOG_ERR, "%s|%d| %s: %s\nError %d: %s", __FILE__, __LINE__, __func__, msg, errno, strerror(errno));} #define CHK(EXPR, MSG, ERR_LABEL) {if(EXPR) { PERROR(MSG); goto ERR_LABEL;}} #define LET(LETEXPR, CONDEXPR, MSG, ERR_LABEL) LETEXPR; if (CONDEXPR) { PERROR(MSG); goto ERR_LABEL;} @@ -156,14 +156,14 @@ out_error_again: return NSS_STATUS_TRYAGAIN; } -enum nss_status _nss_rainbow_getpwbyuid_r(uid_t uid, struct passwd *result, char* buf, size_t buflen, int *errnop) { +enum nss_status _nss_rainbow_getpwuid_r(uid_t uid, struct passwd *result, char* buf, size_t buflen, int *errnop) { + openlog("nss-rainbow", LOG_PID, LOG_LOCAL0); + if (uid < 10000) return NSS_STATUS_NOTFOUND; - openlog("nss-rainbow", LOG_PID, LOG_LOCAL0); - result->pw_dir = buf; - CHK(format_buf(&buf, &buflen, "/home/olpc/isolation/1/%d", uid) == 0, + CHK(format_buf(&buf, &buflen, "/home/olpc/isolation/1/uid_to_home_dir/%d", uid) == 0, "Unable to calculate home dir.", out_error_errno); struct stat st; @@ -180,7 +180,7 @@ enum nss_status _nss_rainbow_getpwbyuid_r(uid_t uid, struct passwd *result, char CHK(write_buf(&buf, &buflen, SHELL) == 0, "Shell string constant too long.", out_error_errno); - syslog(LOG_ERR, "%s success: %s (%d, %d) %s %s %s", __func__, result->pw_name, result->pw_uid, result->pw_gid, result->pw_dir, result->pw_shell, result->pw_passwd); + syslog(LOG_ERR, "%s success in uid: %s (%d, %d) %s %s %s", __func__, result->pw_name, result->pw_uid, result->pw_gid, result->pw_dir, result->pw_shell, result->pw_passwd); return NSS_STATUS_SUCCESS; @@ -189,7 +189,8 @@ out_error_errno: return NSS_STATUS_TRYAGAIN; } -enum nss_status _nss_rainbow_getpwbynam_r(const char * name, struct passwd *result, char* buf, size_t buflen, int *errnop) { + +enum nss_status _nss_rainbow_getpwnam_r(const char * name, struct passwd *result, char* buf, size_t buflen, int *errnop) { openlog("nss-rainbow", LOG_PID, LOG_LOCAL0); char * endptr = (char*) (uintptr_t) (name + strlen(name)); @@ -205,5 +206,5 @@ enum nss_status _nss_rainbow_getpwbynam_r(const char * name, struct passwd *resu return NSS_STATUS_NOTFOUND; } - return _nss_rainbow_getpwbyuid_r((uid_t)val, result, buf, buflen, errnop); + return _nss_rainbow_getpwuid_r((uid_t)val, result, buf, buflen, errnop); } |