--len;
}
buf[len] = 0;
- syslog(LOG_DEBUG, "\033[32m[ %s\033[0m", buf);
+ // syslog(LOG_DEBUG, "\033[32m[ %s\033[0m", buf);
return (len);
}
++len;
}
- syslog(LOG_DEBUG, "\033[32m[ %s\033[0m", buf);
+ // syslog(LOG_DEBUG, "\033[32m[ %s\033[0m", buf);
return (len);
}
return NULL;
}
- while ((ctdl_readline(ctdl, buf, sizeof(buf)) >= 0) && (strcmp(buf, "000"))) {
+ while (ctdl_readline(ctdl, buf, sizeof(buf)), strcmp(buf, "000")) {
StrBufAppendPrintf(sj, "%s\n", buf);
}
StrBufVAppendPrintf(Buf, format, arg_ptr);
va_end(arg_ptr);
- syslog(LOG_DEBUG, "\033[32m] %s\033[0m", ChrPtr(Buf));
+ // syslog(LOG_DEBUG, "\033[32m] %s\033[0m", ChrPtr(Buf));
ctdl_write(ctdl, (char *) ChrPtr(Buf), StrLength(Buf));
ctdl_write(ctdl, "\n", 1);
FreeStrBuf(&Buf);
ctdl_readline(c, buf, 1024);
if (buf[0] == '2') {
- strcpy(c->auth, auth);
extract_token(c->whoami, &buf[4], 0, '|', sizeof c->whoami);
- syslog(LOG_DEBUG, "Login succeeded: %s", buf);
+ syslog(LOG_DEBUG, "Logged in as %s", c->whoami);
+
+ // Re-encode the auth string so it contains the properly formatted username
+ char new_auth_string[1024];
+ snprintf(new_auth_string, sizeof(new_auth_string), "%s:%s", c->whoami, supplied_password);
+ CtdlEncodeBase64(c->auth, new_auth_string, strlen(new_auth_string), BASE64_NO_LINEBREAKS);
+
return(0);
}
- syslog(LOG_DEBUG, "Login failed: %s", buf);
+ syslog(LOG_DEBUG, "Login failed: %s", &buf[4]);
return(1); // login failed; resultbuf will explain why
}