authmsg,
method,
authctxt->valid ? "" : "illegal user ",
- (authctxt->user[0]) ? authctxt->user : "<implicit>",
+ (authctxt->user && authctxt->user[0]) ? authctxt->user : "<implicit>",
get_remote_ipaddr(),
get_remote_port(),
info);
{
packet_check_eom();
- if (authctxt->valid && strcmp(authctxt->user, "") != 0) {
- return(PRIVSEP(ssh_gssapi_userok(authctxt->user)));
+ if (authctxt->valid && authctxt->user &&
+ strcmp(authctxt->user, "") != 0) {
+ return(PRIVSEP(ssh_gssapi_userok(authctxt->user)));
}
return 0;
}
static void
gssapi_set_implicit_username(Authctxt *authctxt)
{
- if ((strcmp(authctxt->user, "") == 0) && (authctxt->pw == NULL)) {
+ if ((authctxt->user == NULL) || (strcmp(authctxt->user, "") == 0)) {
char *lname = NULL;
PRIVSEP(ssh_gssapi_localname(&lname));
if (lname && lname[0] != '\0') {