Additional code for KerberosAgent. Checking in so Justin can work on it
authorAlexandra Ellwood <lxs@mit.edu>
Thu, 28 Aug 2008 16:37:34 +0000 (16:37 +0000)
committerAlexandra Ellwood <lxs@mit.edu>
Thu, 28 Aug 2008 16:37:34 +0000 (16:37 +0000)
ticket: 6055

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@20700 dc483132-0cff-0310-8789-dd5450dbe970

src/kim/agent/mac/Identities.h
src/kim/agent/mac/Identities.m
src/kim/agent/mac/resources/English.lproj/Authentication.xib
src/kim/agent/mac/resources/English.lproj/SelectIdentity.xib

index 0d3cdd4e2168a2da6804213233e748a0d3a0218a..556d0b07500b64411c2c35967046962b355a97a3 100644 (file)
 @interface Identity : NSObject {
     kim_identity kimIdentity;
     int state;
-    cc_time_t *expirationTime;
+    cc_time_t expirationTime;
+    int favorite;
     
 }
+@property           int       state;
+@property           cc_time_t expirationTime;
+@property(readonly) int       favorite;
+
+- (id) initWithIdentity: (kim_identity) identity;
+- (id) initWithFavoriteIdentity: (kim_identity) identity;
+
+- (BOOL) isEqualToKIMIdentity: (kim_identity) identity;
 
 @end
 
 
 @interface Identities : NSObject {
-    NSArray *identitiesArray;
-    NSMutableArray *favoriteIdentitiesArray;
-    NSMutableArray *ccacheIdentitiesArray;
+    NSArray *favoriteIdentities;
+    NSArray *identities;
     NSConnection *threadConnection;
 
 }
+@property(readonly) NSArray *identities;
 
 - (int) update;
-- (NSArray *) identities;
 
 @end
index 82b926d0968e839204d212b7f8c5f8dc4d1cbedb..a3c0707317e0560fecfcdb29e5784cb84db0eff7 100644 (file)
 
 @implementation Identity
 
+@synthesize state;
+@synthesize expirationTime;
+@synthesize favorite;
+
+// ---------------------------------------------------------------------------
+
 - (id) initWithIdentity: (kim_identity) identity
 {
     if ((self = [super init])) {
         kimIdentity = identity;
         state = kim_credentials_state_not_yet_valid;
         expirationTime = 0;
+        favorite = FALSE;
+    }
+    
+    return self;
+}
+
+// ---------------------------------------------------------------------------
+
+- (id) initWithFavoriteIdentity: (kim_identity) identity
+{
+    if ((self = [self initWithIdentity: identity])) {
+        favorite = TRUE;
     }
     
     return self;
 }
 
+// ---------------------------------------------------------------------------
+
+- (BOOL) isEqualToKIMIdentity: (kim_identity) identity
+{
+    kim_error err = KIM_NO_ERROR;
+    kim_comparison comparison;
+    
+    err = kim_identity_compare (kimIdentity, identity, &comparison);
+    
+    return (!err && kim_comparison_is_equal_to (comparison));
+}
+
 @end
 
 @implementation Identities
 
+@synthesize identities;
+
 // ---------------------------------------------------------------------------
 
 + (void) waitForChange: (NSArray *) portArray
 
 - (id) init
 {
-    int err = 0;
-
-    threadConnection = NULL;
-    favoriteIdentitiesArray = NULL;
-    ccacheIdentitiesArray = NULL;
-    
-    if (!err) {
-        self = [super init];
-        if (!self) { err = ENOMEM; }
-    }
-    
-    if (!err) {
-        favoriteIdentitiesArray = [[NSMutableArray alloc] init];
-        if (!favoriteIdentitiesArray) { err = ENOMEM; }
-    }
-    
-    if (!err) {
-        kim_favorite_identities favoriteIdentities = NULL;
-        kim_count i;
-        kim_count count = 0;
-        
-        err = kim_favorite_identities_create (&favoriteIdentities);
+    if ((self = [super init])) {
+        int err = 0;
+        NSMutableArray *newFavoriteIdentities = NULL;
         
+        threadConnection = NULL;
+        identities = NULL;
+        favoriteIdentities = NULL;
+    
         if (!err) {
-            err = kim_favorite_identities_get_number_of_identities (favoriteIdentities,
-                                                                    &count);
+            newFavoriteIdentities = [[[NSMutableArray alloc] init] autorelease];
+            if (!newFavoriteIdentities) { err = ENOMEM; }
         }
         
-        for (i = 0; !err && i < count; i++) {
-            kim_identity kimIdentity = NULL;
-            Identity *identity = NULL;
+        if (!err) {
+            kim_favorite_identities kimFavoriteIdentities = NULL;
+            kim_count i;
+            kim_count count = 0;
             
-            err = kim_favorite_identities_get_identity_at_index (favoriteIdentities, 
-                                                                 i, &kimIdentity);
+            err = kim_favorite_identities_create (&kimFavoriteIdentities);
             
             if (!err) {
-                identity = [[[Identity alloc] initWithIdentity: kimIdentity] autorelease];
-                if (!identity) { err = ENOMEM; }
-            }
-             
-            if (!err) {
-                kimIdentity = NULL; /* take ownership */ 
-                [favoriteIdentitiesArray addObject: identity];
+                err = kim_favorite_identities_get_number_of_identities (kimFavoriteIdentities,
+                                                                        &count);
             }
             
-            kim_identity_free (&kimIdentity);
-        }
+            for (i = 0; !err && i < count; i++) {
+                kim_identity kimIdentity = NULL;
+                Identity *identity = NULL;
+                
+                err = kim_favorite_identities_get_identity_at_index (kimFavoriteIdentities, 
+                                                                     i, &kimIdentity);
+                
+                if (!err) {
+                    identity = [[[Identity alloc] initWithFavoriteIdentity: kimIdentity] autorelease];
+                    if (!identity) { err = ENOMEM; }
+                }
+                
+                if (!err) {
+                    kimIdentity = NULL; /* take ownership */ 
+                    [newFavoriteIdentities addObject: identity];
+                }
+                
+                kim_identity_free (&kimIdentity);
+            }
         
-        kim_favorite_identities_free (&favoriteIdentities);
-    }
-    
-    if (!err) {
-        err = [self update];
-    }
-    
-    if (!err) {
-       NSPort *port1 = [NSPort port];
-       NSPort *port2 = [NSPort port];
-        if (!port1 || !port2) { err = ENOMEM; }
+            kim_favorite_identities_free (&kimFavoriteIdentities);
+        }
         
         if (!err) {
-            threadConnection = [[NSConnection alloc] initWithReceivePort: port1
-                                                                sendPort: port2];
-            if (!threadConnection) { err = ENOMEM; }
+            favoriteIdentities = [[NSArray alloc] initWithArray: newFavoriteIdentities];
+            if (!favoriteIdentities) { err = ENOMEM; }            
+        }
+
+        if (!err) {
+            err = [self update];
         }
         
         if (!err) {
-            [threadConnection setRootObject: self];
+            NSPort *port1 = [NSPort port];
+            NSPort *port2 = [NSPort port];
+            if (!port1 || !port2) { err = ENOMEM; }
+            
+            if (!err) {
+                threadConnection = [[NSConnection alloc] initWithReceivePort: port1
+                                                                    sendPort: port2];
+                if (!threadConnection) { err = ENOMEM; }
+            }
             
-            [NSThread detachNewThreadSelector: @selector(waitForChange:) 
-                                     toTarget: [self class] 
-                                   withObject: [NSArray arrayWithObjects: port2, port1, NULL]];            
+            if (!err) {
+                [threadConnection setRootObject: self];
+                
+                [NSThread detachNewThreadSelector: @selector(waitForChange:) 
+                                         toTarget: [self class] 
+                                       withObject: [NSArray arrayWithObjects: port2, port1, NULL]];            
+            }
+        }
+        
+        if (err) {
+            [self release];
+            return NULL;
         }
     }
-    
-    return err ? NULL : self;
+        
+    return self;
 }
 
 // ---------------------------------------------------------------------------
 
 - (void) dealloc
 {
-    if (identitiesArray ) { [identitiesArray release]; }
-    if (threadConnection) { [threadConnection release]; }
+    if (identities        ) { [identities release]; }
+    if (favoriteIdentities) { [favoriteIdentities release]; }
+    if (threadConnection  ) { [threadConnection release]; }
     
     [super dealloc];
 }
 
 // ---------------------------------------------------------------------------
 
-- (NSArray *) identities
-{
-    return identitiesArray;
-}
-
-// ---------------------------------------------------------------------------
-
 - (int) update
 {
     kim_error err = KIM_NO_ERROR;
+    NSMutableArray *newIdentities = NULL;
     kim_ccache_iterator iterator = NULL;
     
-    err = kim_ccache_iterator_create (&iterator);
+    if (!err) {
+        newIdentities = [NSMutableArray arrayWithArray: favoriteIdentities];
+        if (!newIdentities) { err = ENOMEM; }            
+    }
+
+    if (!err) {
+        err = kim_ccache_iterator_create (&iterator);
+    }
     
     while (!err) {
         kim_ccache ccache = NULL;
         if (!err) {
             Identity *identity = NULL;
             
-            identity = [self findIdentity: kimIdentity];
-            if (identity) {
-                [identity updateWithState: state
-                           expirationTime: expirationTime];
-            } else {
-                identity = [[Identity alloc] initWithIdentity: kimIdentity
-                                                        state: state
-                                               expirationTime: expirationTime];
+            for (Identity *i in newIdentities) {
+                if ([i isEqualToKIMIdentity: kimIdentity]) { identity = i; }
             }
-            
-            if (identity) {
+
+            if (!identity) {
+                identity = [[[Identity alloc] initWithIdentity: kimIdentity] autorelease];
+                if (!identity) { err = ENOMEM; }
                 
+                if (!err) {
+                    kimIdentity = NULL; /* take ownership */ 
+                    [newIdentities addObject: identity];
+                }
+            }
+            
+            if (!err) {
+                [identity setState: state];
+                [identity setExpirationTime: expirationTime];
             }
         }
         
         kim_identity_free (&kimIdentity);
         kim_ccache_free (&ccache);
     }
+
+    if (!err) {
+        if (identities) { [identities release]; }
+        
+        identities = [[NSArray alloc] initWithArray: newIdentities];
+        if (!identities) { err = ENOMEM; }            
+    }
+    
     
     kim_ccache_iterator_free (&iterator);
     
index 4665e183df8216215db45695404dc7d517ea8adb..67d1b41a75774c190620635512b2093bc7b768c3 100644 (file)
@@ -9,6 +9,7 @@
                <object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
                        <bool key="EncodedWithXMLCoder">YES</bool>
                        <integer value="20"/>
+                       <integer value="300157"/>
                </object>
                <object class="NSArray" key="IBDocument.PluginDependencies">
                        <bool key="EncodedWithXMLCoder">YES</bool>
@@ -26,7 +27,7 @@
                                <string key="NSClassName">NSApplication</string>
                        </object>
                        <object class="NSCustomView" id="92892041">
-                               <nil key="NSNextResponder"/>
+                               <reference key="NSNextResponder"/>
                                <int key="NSvFlags">274</int>
                                <object class="NSMutableArray" key="NSSubviews">
                                        <bool key="EncodedWithXMLCoder">YES</bool>
@@ -35,7 +36,6 @@
                                                <int key="NSvFlags">282</int>
                                                <string key="NSFrame">{{101, 126}, {382, 40}}</string>
                                                <reference key="NSSuperview" ref="92892041"/>
-                                               <reference key="NSNextKeyView" ref="930407441"/>
                                                <bool key="NSEnabled">YES</bool>
                                                <object class="NSTextFieldCell" key="NSCell" id="645367368">
                                                        <int key="NSCellFlags">67239424</int>
@@ -72,7 +72,6 @@
                                                <int key="NSvFlags">290</int>
                                                <string key="NSFrame">{{104, 88}, {376, 22}}</string>
                                                <reference key="NSSuperview" ref="92892041"/>
-                                               <reference key="NSNextKeyView" ref="238778309"/>
                                                <bool key="NSEnabled">YES</bool>
                                                <object class="NSTextFieldCell" key="NSCell" id="951097344">
                                                        <int key="NSCellFlags">-1804468671</int>
                                                <int key="NSvFlags">292</int>
                                                <string key="NSFrame">{{17, 90}, {82, 17}}</string>
                                                <reference key="NSSuperview" ref="92892041"/>
-                                               <reference key="NSNextKeyView" ref="409092758"/>
                                                <bool key="NSEnabled">YES</bool>
                                                <object class="NSTextFieldCell" key="NSCell" id="990670119">
                                                        <int key="NSCellFlags">67239424</int>
                                                <int key="NSvFlags">292</int>
                                                <string key="NSFrame">{{17, 61}, {82, 17}}</string>
                                                <reference key="NSSuperview" ref="92892041"/>
-                                               <reference key="NSNextKeyView" ref="529434335"/>
                                                <bool key="NSEnabled">YES</bool>
                                                <object class="NSTextFieldCell" key="NSCell" id="1073582594">
                                                        <int key="NSCellFlags">67239424</int>
                                                        <int key="NSCellFlags">67239424</int>
                                                        <int key="NSCellFlags2">134217728</int>
                                                        <string key="NSContents"/>
-                                                       <object class="NSFont" key="NSSupport" id="24">
+                                                       <object class="NSFont" key="NSSupport">
                                                                <string key="NSName">LucidaGrande</string>
                                                                <double key="NSSize">1.000000e+01</double>
                                                                <int key="NSfFlags">16</int>
                                                        <reference key="NSControlView" ref="980345926"/>
                                                        <int key="NSButtonFlags">-2033434369</int>
                                                        <int key="NSButtonFlags2">2</int>
-                                                       <object class="NSCustomResource" key="NSNormalImage" id="23425037">
+                                                       <object class="NSCustomResource" key="NSNormalImage">
                                                                <string key="NSClassName">NSImage</string>
                                                                <string key="NSResourceName">Gear</string>
                                                        </object>
                                        </object>
                                </object>
                                <string key="NSFrameSize">{500, 210}</string>
+                               <reference key="NSSuperview"/>
                                <string key="NSClassName">NSView</string>
                        </object>
                        <object class="NSCustomView" id="866582848">
                                                        <reference key="NSTextColor" ref="883746258"/>
                                                </object>
                                        </object>
-                                       <object class="NSButton" id="72039560">
-                                               <reference key="NSNextResponder" ref="866582848"/>
-                                               <int key="NSvFlags">292</int>
-                                               <string key="NSFrame">{{18, 16}, {51, 26}}</string>
-                                               <reference key="NSSuperview" ref="866582848"/>
-                                               <bool key="NSEnabled">YES</bool>
-                                               <object class="NSButtonCell" key="NSCell" id="675542259">
-                                                       <int key="NSCellFlags">67239424</int>
-                                                       <int key="NSCellFlags2">134217728</int>
-                                                       <string key="NSContents"/>
-                                                       <reference key="NSSupport" ref="24"/>
-                                                       <reference key="NSControlView" ref="72039560"/>
-                                                       <int key="NSButtonFlags">-2033958657</int>
-                                                       <int key="NSButtonFlags2">2</int>
-                                                       <reference key="NSNormalImage" ref="23425037"/>
-                                                       <string key="NSAlternateContents"/>
-                                                       <string key="NSKeyEquivalent"/>
-                                                       <int key="NSPeriodicDelay">400</int>
-                                                       <int key="NSPeriodicInterval">75</int>
-                                               </object>
-                                       </object>
                                        <object class="NSTextField" id="427167925">
                                                <reference key="NSNextResponder" ref="866582848"/>
                                                <int key="NSvFlags">292</int>
                                                        <int key="NSPeriodicInterval">25</int>
                                                </object>
                                        </object>
-                                       <object class="NSButton" id="813921123">
-                                               <reference key="NSNextResponder" ref="898191415"/>
-                                               <int key="NSvFlags">292</int>
-                                               <string key="NSFrame">{{18, 16}, {51, 26}}</string>
-                                               <reference key="NSSuperview" ref="898191415"/>
-                                               <bool key="NSEnabled">YES</bool>
-                                               <object class="NSButtonCell" key="NSCell" id="581348187">
-                                                       <int key="NSCellFlags">67239424</int>
-                                                       <int key="NSCellFlags2">134217728</int>
-                                                       <string key="NSContents"/>
-                                                       <reference key="NSSupport" ref="24"/>
-                                                       <reference key="NSControlView" ref="813921123"/>
-                                                       <int key="NSButtonFlags">-2033958657</int>
-                                                       <int key="NSButtonFlags2">2</int>
-                                                       <reference key="NSNormalImage" ref="23425037"/>
-                                                       <string key="NSAlternateContents"/>
-                                                       <string key="NSKeyEquivalent"/>
-                                                       <int key="NSPeriodicDelay">400</int>
-                                                       <int key="NSPeriodicInterval">75</int>
-                                               </object>
-                                       </object>
                                        <object class="NSTextField" id="1041175973">
                                                <reference key="NSNextResponder" ref="898191415"/>
                                                <int key="NSvFlags">292</int>
                                        </object>
                                        <int key="connectionID">300261</int>
                                </object>
-                               <object class="IBConnectionRecord">
-                                       <object class="IBOutletConnection" key="connection">
-                                               <string key="label">menu</string>
-                                               <reference key="source" ref="72039560"/>
-                                               <reference key="destination" ref="161772700"/>
-                                       </object>
-                                       <int key="connectionID">300270</int>
-                               </object>
-                               <object class="IBConnectionRecord">
-                                       <object class="IBOutletConnection" key="connection">
-                                               <string key="label">menu</string>
-                                               <reference key="source" ref="813921123"/>
-                                               <reference key="destination" ref="161772700"/>
-                                       </object>
-                                       <int key="connectionID">300271</int>
-                               </object>
                        </object>
                        <object class="IBMutableOrderedSet" key="objectRecords">
                                <object class="NSArray" key="orderedObjects">
                                                        <reference ref="775546934"/>
                                                        <reference ref="427167925"/>
                                                        <reference ref="133507311"/>
-                                                       <reference ref="72039560"/>
                                                        <reference ref="645528597"/>
                                                        <reference ref="464070473"/>
                                                        <reference ref="225475172"/>
                                                </object>
                                                <reference key="parent" ref="866582848"/>
                                        </object>
-                                       <object class="IBObjectRecord">
-                                               <int key="objectID">300181</int>
-                                               <reference key="object" ref="72039560"/>
-                                               <object class="NSMutableArray" key="children">
-                                                       <bool key="EncodedWithXMLCoder">YES</bool>
-                                                       <reference ref="675542259"/>
-                                               </object>
-                                               <reference key="parent" ref="866582848"/>
-                                       </object>
                                        <object class="IBObjectRecord">
                                                <int key="objectID">300183</int>
                                                <reference key="object" ref="645528597"/>
                                                <reference key="object" ref="883697888"/>
                                                <reference key="parent" ref="645528597"/>
                                        </object>
-                                       <object class="IBObjectRecord">
-                                               <int key="objectID">300186</int>
-                                               <reference key="object" ref="675542259"/>
-                                               <reference key="parent" ref="72039560"/>
-                                       </object>
                                        <object class="IBObjectRecord">
                                                <int key="objectID">300189</int>
                                                <reference key="object" ref="200893597"/>
                                                <object class="NSMutableArray" key="children">
                                                        <bool key="EncodedWithXMLCoder">YES</bool>
                                                        <reference ref="944021079"/>
-                                                       <reference ref="813921123"/>
                                                        <reference ref="798767897"/>
                                                        <reference ref="1018438662"/>
                                                        <reference ref="270897371"/>
                                                <reference key="object" ref="944021079"/>
                                                <reference key="parent" ref="898191415"/>
                                        </object>
-                                       <object class="IBObjectRecord">
-                                               <int key="objectID">300199</int>
-                                               <reference key="object" ref="813921123"/>
-                                               <object class="NSMutableArray" key="children">
-                                                       <bool key="EncodedWithXMLCoder">YES</bool>
-                                                       <reference ref="581348187"/>
-                                               </object>
-                                               <reference key="parent" ref="898191415"/>
-                                       </object>
                                        <object class="IBObjectRecord">
                                                <int key="objectID">300201</int>
                                                <reference key="object" ref="798767897"/>
                                                <reference key="object" ref="840858923"/>
                                                <reference key="parent" ref="798767897"/>
                                        </object>
-                                       <object class="IBObjectRecord">
-                                               <int key="objectID">300204</int>
-                                               <reference key="object" ref="581348187"/>
-                                               <reference key="parent" ref="813921123"/>
-                                       </object>
                                        <object class="IBObjectRecord">
                                                <int key="objectID">300274</int>
                                                <reference key="object" ref="60326189"/>
                                        <string>300179.ImportedFromIB2</string>
                                        <string>300180.IBPluginDependency</string>
                                        <string>300180.ImportedFromIB2</string>
-                                       <string>300181.CustomClassName</string>
-                                       <string>300181.IBPluginDependency</string>
-                                       <string>300181.ImportedFromIB2</string>
                                        <string>300182.IBPluginDependency</string>
                                        <string>300183.IBPluginDependency</string>
                                        <string>300184.IBPluginDependency</string>
                                        <string>300196.ImportedFromIB2</string>
                                        <string>300197.IBPluginDependency</string>
                                        <string>300197.ImportedFromIB2</string>
-                                       <string>300199.CustomClassName</string>
-                                       <string>300199.IBPluginDependency</string>
-                                       <string>300199.ImportedFromIB2</string>
                                        <string>300200.IBPluginDependency</string>
                                        <string>300201.IBPluginDependency</string>
                                        <string>300201.ImportedFromIB2</string>
                                        <bool key="EncodedWithXMLCoder">YES</bool>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-                                       <string>{{546, 698}, {500, 210}}</string>
+                                       <string>{{696, 646}, {500, 210}}</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-                                       <string>{{546, 698}, {500, 210}}</string>
+                                       <string>{{696, 646}, {500, 210}}</string>
                                        <integer value="1" id="5"/>
                                        <reference ref="5"/>
                                        <string>{{932, 664}, {484, 199}}</string>
                                        <string>{484, 199}</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <reference ref="5"/>
-                                       <string>{{492, 1049}, {203, 73}}</string>
+                                       <string>{{557, 1049}, {203, 73}}</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <reference ref="5"/>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <reference ref="5"/>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <reference ref="5"/>
-                                       <string>{{139, 469}, {500, 210}}</string>
+                                       <string>{{602, 364}, {500, 210}}</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <reference ref="5"/>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <reference ref="5"/>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-                                       <string>{{223, 184}, {500, 210}}</string>
+                                       <string>{{547, 453}, {500, 210}}</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <string>NSSecureTextField</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <reference ref="5"/>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <reference ref="5"/>
-                                       <string>PopupButton</string>
-                                       <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-                                       <reference ref="5"/>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-                                       <string>{{136, 743}, {500, 210}}</string>
+                                       <string>{{557, 743}, {500, 210}}</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <reference ref="5"/>
                                        <reference ref="5"/>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <reference ref="5"/>
-                                       <string>PopupButton</string>
-                                       <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-                                       <reference ref="5"/>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <reference ref="5"/>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-                                       <string>{{467, 111}, {500, 210}}</string>
+                                       <string>{{546, 628}, {500, 210}}</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                                <string key="minorKey"/>
                                        </object>
                                </object>
+                               <object class="IBPartialClassDescription">
+                                       <string key="className">PopupButton</string>
+                                       <string key="superclassName">NSButton</string>
+                                       <object class="IBClassDescriptionSource" key="sourceIdentifier">
+                                               <string key="majorKey">IBProjectSource</string>
+                                               <string key="minorKey">../Sources/kim/agent/mac/PopupButton.h</string>
+                                       </object>
+                               </object>
                                <object class="IBPartialClassDescription">
                                        <string key="className">PopupButton</string>
                                        <string key="superclassName">NSButton</string>
index 365d3fca836e036947140368812bbf5b72daaf2f..938c633622850c684976dbccb4ebf3e5abab73c0 100644 (file)
                                <string key="NSMinSize">{419, 320}</string>
                                <string key="NSMaxSize">{600, 622}</string>
                        </object>
-                       <object class="NSObjectController" id="597809582">
-                               <object class="NSMutableArray" key="NSDeclaredKeys">
-                                       <bool key="EncodedWithXMLCoder">YES</bool>
-                                       <string>cachesArray</string>
-                               </object>
-                               <string key="NSObjectClassName">KerberosCacheCollection</string>
-                               <object class="_NSManagedProxy" key="_NSManagedProxy"/>
-                       </object>
-                       <object class="NSCustomObject" id="692063328">
-                               <string key="NSClassName">KerberosCacheCollection</string>
-                       </object>
-                       <object class="NSArrayController" id="950399944">
-                               <object class="NSMutableArray" key="NSDeclaredKeys">
-                                       <bool key="EncodedWithXMLCoder">YES</bool>
-                                       <string>credentialsArray</string>
-                                       <string>principalString</string>
-                                       <string>shortTimeRemainingString</string>
-                               </object>
-                               <string key="NSObjectClassName">KerberosCache</string>
-                               <object class="_NSManagedProxy" key="_NSManagedProxy"/>
-                               <bool key="NSAvoidsEmptySelection">YES</bool>
-                               <bool key="NSPreservesSelection">YES</bool>
-                               <bool key="NSSelectsInsertedObjects">YES</bool>
-                               <bool key="NSFilterRestrictsInsertion">YES</bool>
-                               <bool key="NSClearsFilterPredicateOnInsertion">YES</bool>
-                       </object>
-                       <object class="NSArrayController" id="297584252">
-                               <object class="NSMutableArray" key="NSDeclaredKeys">
-                                       <bool key="EncodedWithXMLCoder">YES</bool>
-                                       <string>servicePrincipalString</string>
-                                       <string>shortTimeRemainingString</string>
-                               </object>
-                               <string key="NSObjectClassName">KerberosCredential</string>
-                               <bool key="NSEditable">YES</bool>
-                               <object class="_NSManagedProxy" key="_NSManagedProxy"/>
-                               <bool key="NSAvoidsEmptySelection">YES</bool>
-                               <bool key="NSPreservesSelection">YES</bool>
-                               <bool key="NSSelectsInsertedObjects">YES</bool>
-                               <bool key="NSFilterRestrictsInsertion">YES</bool>
-                               <bool key="NSClearsFilterPredicateOnInsertion">YES</bool>
-                       </object>
                </object>
                <object class="IBObjectContainer" key="IBDocument.Objects">
                        <object class="NSMutableArray" key="connectionRecords">
                                <bool key="EncodedWithXMLCoder">YES</bool>
-                               <object class="IBConnectionRecord">
-                                       <object class="IBOutletConnection" key="connection">
-                                               <string key="label">content</string>
-                                               <reference key="source" ref="297584252"/>
-                                               <reference key="destination" ref="950399944"/>
-                                       </object>
-                                       <int key="connectionID">300042</int>
-                               </object>
-                               <object class="IBConnectionRecord">
-                                       <object class="IBOutletConnection" key="connection">
-                                               <string key="label">content</string>
-                                               <reference key="source" ref="597809582"/>
-                                               <reference key="destination" ref="692063328"/>
-                                       </object>
-                                       <int key="connectionID">300043</int>
-                               </object>
-                               <object class="IBConnectionRecord">
-                                       <object class="IBOutletConnection" key="connection">
-                                               <string key="label">content</string>
-                                               <reference key="source" ref="950399944"/>
-                                               <reference key="destination" ref="597809582"/>
-                                       </object>
-                                       <int key="connectionID">300044</int>
-                               </object>
                                <object class="IBConnectionRecord">
                                        <object class="IBOutletConnection" key="connection">
                                                <string key="label">identityTableColumn</string>
                                                <reference key="object" ref="700535463"/>
                                                <reference key="parent" ref="928852707"/>
                                        </object>
-                                       <object class="IBObjectRecord">
-                                               <int key="objectID">300024</int>
-                                               <reference key="object" ref="597809582"/>
-                                               <reference key="parent" ref="0"/>
-                                               <string key="objectName">CacheCollectionController</string>
-                                       </object>
-                                       <object class="IBObjectRecord">
-                                               <int key="objectID">300023</int>
-                                               <reference key="object" ref="692063328"/>
-                                               <reference key="parent" ref="0"/>
-                                               <string key="objectName">KerberosCacheCollection</string>
-                                       </object>
-                                       <object class="IBObjectRecord">
-                                               <int key="objectID">300022</int>
-                                               <reference key="object" ref="950399944"/>
-                                               <reference key="parent" ref="0"/>
-                                               <string key="objectName">CachesController</string>
-                                       </object>
-                                       <object class="IBObjectRecord">
-                                               <int key="objectID">300021</int>
-                                               <reference key="object" ref="297584252"/>
-                                               <reference key="parent" ref="0"/>
-                                               <string key="objectName">CredentialsController</string>
-                                       </object>
                                </object>
                        </object>
                        <object class="NSMutableDictionary" key="flattenedProperties">
                                        <string>300009.IBShouldRemoveOnLegacySave</string>
                                        <string>300018.IBPluginDependency</string>
                                        <string>300019.IBPluginDependency</string>
-                                       <string>300021.IBPluginDependency</string>
-                                       <string>300021.ImportedFromIB2</string>
-                                       <string>300022.IBPluginDependency</string>
-                                       <string>300022.ImportedFromIB2</string>
-                                       <string>300023.IBPluginDependency</string>
-                                       <string>300023.ImportedFromIB2</string>
-                                       <string>300024.IBPluginDependency</string>
-                                       <string>300024.ImportedFromIB2</string>
                                        <string>300118.IBPluginDependency</string>
                                        <string>300118.ImportedFromIB2</string>
                                        <string>300152.IBPluginDependency</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <reference ref="5"/>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-                                       <reference ref="5"/>
-                                       <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-                                       <reference ref="5"/>
-                                       <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-                                       <reference ref="5"/>
-                                       <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-                                       <reference ref="5"/>
-                                       <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-                                       <string>{{623, 643}, {491, 315}}</string>
+                                       <string>{{606, 810}, {491, 315}}</string>
                                        <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-                                       <string>{{623, 643}, {491, 315}}</string>
+                                       <string>{{606, 810}, {491, 315}}</string>
                                        <reference ref="5"/>
                                        <reference ref="5"/>
                                        <string>{{503, 256}, {419, 465}}</string>
                                                <string key="minorKey"/>
                                        </object>
                                </object>
-                               <object class="IBPartialClassDescription">
-                                       <string key="className">KerberosCacheCollection</string>
-                                       <string key="superclassName">NSObject</string>
-                                       <object class="IBClassDescriptionSource" key="sourceIdentifier">
-                                               <string key="majorKey">IBProjectSource</string>
-                                               <string key="minorKey">../../../Common/Headers/KerberosCacheCollection.h</string>
-                                       </object>
-                               </object>
                                <object class="IBPartialClassDescription">
                                        <string key="className">SelectIdentityController</string>
                                        <string key="superclassName">NSWindowController</string>