self.authController = [[[AuthenticationController alloc] init] autorelease];
self.selectController.associatedClient = self;
self.authController.associatedClient = self;
+ self.currentInfo = [NSMutableDictionary dictionary];
}
return self;
}
{
[self.selectController close];
[self.authController close];
+ self.selectController = nil;
+ self.authController = nil;
+ self.currentInfo = nil;
}
- (void) didCancel
- (kim_error) selectIdentity: (NSDictionary *) info
{
- self.currentInfo = [[info mutableCopy] autorelease];
+ [self.currentInfo addEntriesFromDictionary:info];
self.state = ipc_client_state_select;
[self.selectController setContent:self.currentInfo];
[KerberosAgentListener didSelectIdentity:self.currentInfo error:0];
// clean up state
- self.currentInfo = nil;
self.state = ipc_client_state_idle;
}
- (kim_error) enterIdentity: (NSDictionary *) info
{
- self.currentInfo = [[info mutableCopy] autorelease];
+ [self.currentInfo addEntriesFromDictionary:info];
self.state = ipc_client_state_enter;
[self.authController setContent:self.currentInfo];
- (kim_error) promptForAuth: (NSDictionary *) info
{
- self.currentInfo = [[info mutableCopy] autorelease];
+ [self.currentInfo addEntriesFromDictionary:info];
self.state = ipc_client_state_auth_prompt;
[self.authController setContent:self.currentInfo];
- (kim_error) changePassword: (NSDictionary *) info
{
- self.currentInfo = [[info mutableCopy] autorelease];
+ [self.currentInfo addEntriesFromDictionary:info];
self.state = ipc_client_state_change_password;
[self.authController setContent:self.currentInfo];
- (kim_error) handleError: (NSDictionary *) info
{
- self.currentInfo = [[info mutableCopy] autorelease];
+ [self.currentInfo addEntriesFromDictionary:info];
self.state = ipc_client_state_handle_error;
[self.authController setContent:self.currentInfo];