diff options
-rw-r--r-- | src/kim/agent/mac/ServerDemux.m | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/src/kim/agent/mac/ServerDemux.m b/src/kim/agent/mac/ServerDemux.m index 00b13c9c5..595da0656 100644 --- a/src/kim/agent/mac/ServerDemux.m +++ b/src/kim/agent/mac/ServerDemux.m @@ -458,6 +458,11 @@ static int32_t kim_handle_request_handle_error (mach_port_t in_client_port, if (!err) { err = k5_ipc_stream_read_string (in_request_stream, &identity_string); + /* Can be empty string "" if there is no identity */ + if (!err && identity_string[0]) { + k5_ipc_stream_free_string (identity_string); + identity_string = KIM_IDENTITY_ANY; + } } if (!err) { @@ -475,11 +480,11 @@ static int32_t kim_handle_request_handle_error (mach_port_t in_client_port, if (!err) { // performs selector on main thread [KerberosAgentListener handleErrorWithClientPort:in_client_port - replyPort:in_reply_port - identity:identity_string - error:error - message:message - description:description]; + replyPort:in_reply_port + identity:identity_string + error:error + message:message + description:description]; } k5_ipc_stream_free_string (identity_string); |