From b0818fcdb227c8b291eb7b23e504fd1d2240eea6 Mon Sep 17 00:00:00 2001 From: Claudio Bisegni Date: Mon, 3 Aug 2009 16:40:05 +0200 Subject: [PATCH] Cleaned most warning OSX OpenAFS preference and completed the AFSBackgrounder implementation At startup the preference pane check for the presence in ~/Library/LaunchAgents of the file it.infn.lnf.network.AFSBackgrounder.plist that. The agent could be started in OpenAFS preference pane view. AFSBackgrounder has replaced the NSMenuExtra, when it doesn't quit well launchd restart it. AFSBackgrounder can be used also for other work, for now, at login it check the user preference for get token. Has been made some refactoring in code for remove most warning. The unused think are been delete from project. Reviewed-on: http://gerrit.openafs.org/263 Reviewed-by: Derrick Brashear Tested-by: Derrick Brashear --- .../AFSBackgrounder/AFSBackgrounderDelegate.h | 8 +- .../AFSBackgrounder/AFSBackgrounderDelegate.m | 68 +- .../AFSBackgrounder/AFSMenuExtraView.m | 7 + .../resource/AFSBackounderMainMenu.xib | 4 +- .../AFSBackgrounder/resource/Info.plist | 6 +- .../DARWIN/AFSPreference/AFSCommanderPref.h | 5 +- .../DARWIN/AFSPreference/AFSCommanderPref.m | 84 +- .../DARWIN/AFSPreference/AFSPropertyManager.m | 6 +- .../DARWIN/AFSPreference/DialogUtility.m | 1 + .../AFSPreference/English.lproj/IpPanel.xib | 382 +++-- .../English.lproj/OpenAFSPreference.xib | 229 ++- .../AFSPreference/IpConfiguratorCommander.m | 10 +- .../OpenAFS.xcodeproj/bisegni.perspectivev3 | 1468 +++++++++++++++++ .../OpenAFS.xcodeproj/project.pbxproj | 160 +- .../DARWIN/AFSPreference/PListManager.h | 16 +- .../DARWIN/AFSPreference/PListManager.m | 61 +- src/platform/DARWIN/AFSPreference/TaskUtil.m | 1 - .../DARWIN/AFSPreference/ViewUtility.m | 7 +- src/platform/DARWIN/AFSPreference/afshlp.m | 3 +- 19 files changed, 2074 insertions(+), 452 deletions(-) create mode 100644 src/platform/DARWIN/AFSPreference/OpenAFS.xcodeproj/bisegni.perspectivev3 diff --git a/src/platform/DARWIN/AFSPreference/AFSBackgrounder/AFSBackgrounderDelegate.h b/src/platform/DARWIN/AFSPreference/AFSBackgrounder/AFSBackgrounderDelegate.h index d42e52a8b..3670fcb40 100644 --- a/src/platform/DARWIN/AFSPreference/AFSBackgrounder/AFSBackgrounderDelegate.h +++ b/src/platform/DARWIN/AFSPreference/AFSBackgrounder/AFSBackgrounderDelegate.h @@ -21,12 +21,14 @@ BOOL gotToken; //0-no 1-one o more token @protected + AFSPropertyManager *afsMngr; NSString *afsSysPath; NSNumber *useAklogPrefValue; NSNumber *showStatusMenu; + NSNumber *aklogTokenAtLogin; //Icon for state visualization - NSImage *hasTokenImage; - NSImage *noTokenImage; + NSImage *hasTokenImage; + NSImage *noTokenImage; //credential windows mainWindow AFSMenuCredentialContoller *credentialMenuController; @@ -47,7 +49,7 @@ - (void)chageMenuVisibility:(NSNotification *)notification; - (NSImage*)getImageFromBundle:(NSString*)fileName fileExt:(NSString*)ext; - (NSImage*)imageToRender; -- (void)updateMenu; +- (void)menuNeedsUpdate:(NSMenu *)menu; - (void)repairHelperTool; - (void) afsVolumeMountChange:(NSNotification *)notification; diff --git a/src/platform/DARWIN/AFSPreference/AFSBackgrounder/AFSBackgrounderDelegate.m b/src/platform/DARWIN/AFSPreference/AFSBackgrounder/AFSBackgrounderDelegate.m index 73051ca82..9b5d996ff 100644 --- a/src/platform/DARWIN/AFSPreference/AFSBackgrounder/AFSBackgrounderDelegate.m +++ b/src/platform/DARWIN/AFSPreference/AFSBackgrounder/AFSBackgrounderDelegate.m @@ -24,13 +24,13 @@ @implementation AFSBackgrounderDelegate #pragma mark NSApp Delegate - (void)applicationDidFinishLaunching:(NSNotification *)aNotification { - NSLog(@"applicationDidFinishLaunching"); - //Create the NSStatusBar and set its length - statusItem = [[[NSStatusBar systemStatusBar] statusItemWithLength:NSSquareStatusItemLength] retain]; - - //Used to detect where our files are - //NSBundle *bundle = [NSBundle mainBundle]; - + NSLog(@"Init the afs manager"); + afsMngr = [[AFSPropertyManager alloc] initWithAfsPath:afsSysPath]; + // allocate the lock for concurent afs check state + tokensLock = [[NSLock alloc] init]; + + //remove the auto eanble on menu item + [backgrounderMenu setAutoenablesItems:NO]; //Sets the images in our NSStatusItem statusItem = nil; @@ -71,9 +71,15 @@ name:NSWorkspaceDidUnmountNotification object:nil]; //try to see if we need tho show the menu at startup - NSLog(@"showStatusMenu %d", [showStatusMenu intValue]); + [self setStatusItem:[showStatusMenu boolValue]]; - + + NSLog(@"Check if we need to get token at login time %d", [aklogTokenAtLogin intValue]); + if([aklogTokenAtLogin boolValue] && afsState && !gotToken) { + NSLog(@"Proceed to get token"); + //check if we must get the aklog at logint(first run of backgrounder + [self getToken:nil]; + } } - (NSApplicationTerminateReply)applicationShouldTerminate:(NSApplication *)sender { @@ -96,6 +102,8 @@ // send notify that menuextra has closed [[NSDistributedNotificationCenter defaultCenter] postNotificationName:kAfsCommanderID object:kPrefChangeNotification]; + if(tokensLock) [tokensLock release]; + if(afsMngr) [afsMngr release]; return NSTerminateNow; } // ------------------------------------------------------------------------------- @@ -108,6 +116,8 @@ [afsSysPath release]; afsSysPath = nil; } + CFPreferencesSynchronize((CFStringRef)kAfsCommanderID, kCFPreferencesAnyUser, kCFPreferencesAnyHost); + CFPreferencesSynchronize((CFStringRef)kAfsCommanderID, kCFPreferencesCurrentUser, kCFPreferencesAnyHost); afsSysPath = PREFERENCE_AFS_SYS_PAT_STATIC; @@ -121,13 +131,18 @@ (CFStringRef)kAfsCommanderID, kCFPreferencesCurrentUser, kCFPreferencesAnyHost); + + aklogTokenAtLogin = (NSNumber*)CFPreferencesCopyValue((CFStringRef)PREFERENCE_AKLOG_TOKEN_AT_LOGIN, (CFStringRef)kAfsCommanderID, + kCFPreferencesCurrentUser, kCFPreferencesAnyHost); + //set the menu name [self updateAfsStatus:nil]; } // ------------------------------------------------------------------------------- -// -(void) readPreferenceFile +// - (void)chageMenuVisibility:(NSNotification *)notification // ------------------------------------------------------------------------------- +/**/ - (void)chageMenuVisibility:(NSNotification *)notification { NSLog(@"chageMenuVisibility"); [self readPreferenceFile:nil]; @@ -150,10 +165,7 @@ @try { if(afsdPath == nil) return; - AFSPropertyManager *afsMngr = [[AFSPropertyManager alloc] initWithAfsPath:afsSysPath]; currentAfsState = [afsMngr checkAfsStatus]; - [afsMngr release]; - rootHelperApp = [[NSBundle mainBundle] pathForResource:@"afshlp" ofType:@""]; //[startStopScript setString: resourcePath]; @@ -162,8 +174,6 @@ [self repairHelperTool]; // make the parameter to call the root helper app - //NSLog(@"Path installazione afs: %s",[afsSysPath UTF8String]); - //NSLog(@"Path installazione afsd: %s", [afsdPath UTF8String]); status = [[AuthUtil shared] autorize]; if(status == noErr){ if(currentAfsState){ @@ -212,7 +222,7 @@ [afsPropMngr loadConfiguration]; - if([useAklogPrefValue intValue]==NSOnState ) { + if([useAklogPrefValue boolValue]) { NSLog(@"Use Aklog"); [afsPropMngr getTokens:false usr:nil @@ -240,9 +250,7 @@ // ------------------------------------------------------------------------------- - (void)releaseToken:(id)sender { - AFSPropertyManager *afsMngr = [[AFSPropertyManager alloc] initWithAfsPath:afsSysPath]; [afsMngr unlog:nil]; - [afsMngr release]; [self updateAfsStatus:nil]; } @@ -263,14 +271,11 @@ if(![tokensLock tryLock]) return; // check the afs state in esclusive mode - AFSPropertyManager *afsMngr = [[AFSPropertyManager alloc] initWithAfsPath:afsSysPath]; afsState = [afsMngr checkAfsStatus]; NSArray *tokens = [afsMngr getTokenList]; - [afsMngr release]; gotToken = [tokens count] > 0; [tokens release]; - [self updateMenu]; //unlock [tokensLock unlock]; @@ -325,16 +330,18 @@ } - - // ------------------------------------------------------------------------------- -// -(void) updateMenu +// - (void)menuNeedsUpdate:(NSMenu *)menu // ------------------------------------------------------------------------------- -- (void)updateMenu{ - [getReleaseTokenMenuItem setEnabled:afsState]; - [startStopMenuItem setTitle:afsState?kAfsButtonShutdown:kAfsButtonStartup]; - [[statusItem view] setNeedsDisplay:YES]; - +- (void)menuNeedsUpdate:(NSMenu *)menu { + if (menu == backgrounderMenu) + { + [startStopMenuItem setTitle:afsState?@"Shutdown AFS":@"Startup AFS"]; + [getReleaseTokenMenuItem setTitle:gotToken?@"Release token":@"Get New Token"]; + [getReleaseTokenMenuItem setEnabled:afsState]; + [[statusItem view] setNeedsDisplay:YES]; + + } } @@ -426,7 +433,8 @@ [statusItem setImage:noTokenImage]; } else { if(!statusItem) return; - [statusItem release]; + [[NSStatusBar systemStatusBar] removeStatusItem:statusItem]; + [statusItem autorelease]; statusItem = nil; } } diff --git a/src/platform/DARWIN/AFSPreference/AFSBackgrounder/AFSMenuExtraView.m b/src/platform/DARWIN/AFSPreference/AFSBackgrounder/AFSMenuExtraView.m index 30cb910eb..41e4cb6bc 100644 --- a/src/platform/DARWIN/AFSPreference/AFSBackgrounder/AFSMenuExtraView.m +++ b/src/platform/DARWIN/AFSPreference/AFSBackgrounder/AFSMenuExtraView.m @@ -95,4 +95,11 @@ [statusItemMenu setDelegate:nil]; [self setNeedsDisplay:YES]; } + +// ------------------------------------------------------------------------------- +// - (void)menuNeedsUpdate:(NSMenu *)menu +// ------------------------------------------------------------------------------- +- (void)menuNeedsUpdate:(NSMenu *)menu { + [backgrounderDelegator menuNeedsUpdate:menu]; +} @end diff --git a/src/platform/DARWIN/AFSPreference/AFSBackgrounder/resource/AFSBackounderMainMenu.xib b/src/platform/DARWIN/AFSPreference/AFSBackgrounder/resource/AFSBackounderMainMenu.xib index 3780fc7f5..6d0be7d5f 100644 --- a/src/platform/DARWIN/AFSPreference/AFSBackgrounder/resource/AFSBackounderMainMenu.xib +++ b/src/platform/DARWIN/AFSPreference/AFSBackgrounder/resource/AFSBackounderMainMenu.xib @@ -212,7 +212,7 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilderKit com.apple.InterfaceBuilderKit - {{113, 626}, {125, 53}} + {{120, 603}, {125, 53}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -240,7 +240,7 @@ - 18 + 19 diff --git a/src/platform/DARWIN/AFSPreference/AFSBackgrounder/resource/Info.plist b/src/platform/DARWIN/AFSPreference/AFSBackgrounder/resource/Info.plist index 8755bbade..fbf3b7e59 100644 --- a/src/platform/DARWIN/AFSPreference/AFSBackgrounder/resource/Info.plist +++ b/src/platform/DARWIN/AFSPreference/AFSBackgrounder/resource/Info.plist @@ -2,8 +2,6 @@ - LSUIElement - CFBundleDevelopmentRegion English CFBundleExecutable @@ -17,7 +15,9 @@ CFBundleSignature ???? CFBundleVersion - 1.0 + 1.0b + LSUIElement + NSMainNibFile AFSBackounderMainMenu NSPrincipalClass diff --git a/src/platform/DARWIN/AFSPreference/AFSCommanderPref.h b/src/platform/DARWIN/AFSPreference/AFSCommanderPref.h index 7280d407e..df6737289 100644 --- a/src/platform/DARWIN/AFSPreference/AFSCommanderPref.h +++ b/src/platform/DARWIN/AFSPreference/AFSCommanderPref.h @@ -46,6 +46,7 @@ int CoreMenuExtraRemoveMenuExtra(void *menuExtra, int whoCares); IBOutlet NSButton *dynRoot; IBOutlet NSButton *afsDB; IBOutlet NSButton *verbose; + IBOutlet NSButton *backgrounderActivationCheck; IBOutlet NSBox *groupsBox; //id installationPathTextField; @@ -117,9 +118,10 @@ int CoreMenuExtraRemoveMenuExtra(void *menuExtra, int whoCares); - (IBAction) aklogSwitchEvent:(id) sender; - (IBAction) credentialAtLoginTimeEvent:(id) sender; - (IBAction) afsStartupSwitchEvent:(id) sender; -- (void) credentialAtLoginTimeEventCreationLaunchAgentDir:(NSWindow*)alert returnCode:(int)returnCode contextInfo:(void *)contextInfo; - (IBAction) krb5KredentialAtLoginTimeEvent:(id) sender; - (IBAction) searchCellTextEvent:(id) sender; +- (IBAction) manageBackgrounderActivation:(id)sender; +- (void) credentialAtLoginTimeEventCreationLaunchAgentDir:(NSWindow*)alert returnCode:(int)returnCode contextInfo:(void *)contextInfo; - (void) clearCellServDBFiltering; - (void) filterCellServDB:(NSString*)textToFilter; - (DBCellElement*) getCurrentCellInDB; @@ -135,6 +137,7 @@ int CoreMenuExtraRemoveMenuExtra(void *menuExtra, int whoCares); - (void) readPreferenceFile; - (void) refreshGui:(NSNotification *)notification; - (void) afsVolumeMountChange:(NSNotification *)notification; +- (void)tabView:(NSTabView *)tabView willSelectTabViewItem: (NSTabViewItem *)tabViewItem; @end @interface AFSCommanderPref (NSTableDataSource) diff --git a/src/platform/DARWIN/AFSPreference/AFSCommanderPref.m b/src/platform/DARWIN/AFSPreference/AFSCommanderPref.m index 96fd0fa49..90389bb81 100644 --- a/src/platform/DARWIN/AFSPreference/AFSCommanderPref.m +++ b/src/platform/DARWIN/AFSPreference/AFSCommanderPref.m @@ -35,7 +35,7 @@ #define TAB_TOKENS 1 #define TAB_CELL_SERV_DB 2 #define TAB_CACHE 3 -#define TAB_GROUP 4 +#define TAB_LINK 4 //CellServDB table id #define CELLSRVDB_TABLE_USR_DFLT_CHECK_COLUMN 0 @@ -259,26 +259,18 @@ - (void) readPreferenceFile { - // read the preference for afs path - //NSString *afsSysPath = PREFERENCE_AFS_SYS_PAT_STATIC;/*(NSString*)CFPreferencesCopyValue((CFStringRef)PREFERENCE_AFS_SYS_PAT, (CFStringRef)kAfsCommanderID, - // kCFPreferencesAnyUser, kCFPreferencesAnyHost);*/ - /*if(afsSysPath){ - [((NSTextField*) installationPathTextField ) setStringValue:afsSysPath]; - }*/ - // read the preference for aklog use NSNumber *useAklogPrefValue = (NSNumber*)CFPreferencesCopyValue((CFStringRef)PREFERENCE_USE_AKLOG, (CFStringRef)kAfsCommanderID, kCFPreferencesCurrentUser, kCFPreferencesAnyHost); NSNumber *aklogTokenAtLogin = (NSNumber*)CFPreferencesCopyValue((CFStringRef)PREFERENCE_AKLOG_TOKEN_AT_LOGIN, (CFStringRef)kAfsCommanderID, kCFPreferencesCurrentUser, kCFPreferencesAnyHost); [useAklogCheck setState:[useAklogPrefValue intValue]]; - if(useAklogPrefValue){ - [aklogCredentialAtLoginTime setEnabled:[aklogTokenAtLogin boolValue]]; - } else { - [aklogCredentialAtLoginTime setEnabled:NSOffState]; - [aklogCredentialAtLoginTime setState:NSOffState]; - } - + [aklogCredentialAtLoginTime setEnabled:useAklogPrefValue && [useAklogPrefValue boolValue]]; + [aklogCredentialAtLoginTime setState:aklogTokenAtLogin && [aklogTokenAtLogin boolValue]]; + + //check krb5 at login time + [installKRB5AuthAtLoginButton setState:[PListManager checkKrb5AtLoginTimeLaunchdEnable]]; + //check for AFS enable at startup NSNumber *afsEnableStartupTime = (NSNumber*)CFPreferencesCopyValue((CFStringRef)PREFERENCE_START_AFS_AT_STARTUP, (CFStringRef)kAfsCommanderID, kCFPreferencesAnyUser, kCFPreferencesAnyHost); @@ -289,8 +281,11 @@ //set the check button state [checkButtonAfsAtBootTime setState:startAFSAtLogin]; - NSNumber *showStatusMenu = (NSNumber*)CFPreferencesCopyValue((CFStringRef)PREFERENCE_SHOW_STATUS_MENU, (CFStringRef)kAfsCommanderID, kCFPreferencesAnyUser, kCFPreferencesAnyHost); + NSNumber *showStatusMenu = (NSNumber*)CFPreferencesCopyValue((CFStringRef)PREFERENCE_SHOW_STATUS_MENU, (CFStringRef)kAfsCommanderID, kCFPreferencesCurrentUser, kCFPreferencesAnyHost); [(NSButton*)afsMenucheckBox setState: [showStatusMenu boolValue]]; + + //backgrounder state + [backgrounderActivationCheck setState:[PListManager launchdJobState:BACKGROUNDER_P_FILE]]; } // ------------------------------------------------------------------------------- @@ -316,12 +311,12 @@ //set aklog at login CFPreferencesSetValue((CFStringRef)PREFERENCE_AKLOG_TOKEN_AT_LOGIN, (CFNumberRef)[NSNumber numberWithBool:[aklogCredentialAtLoginTime state]], - (CFStringRef)kAfsCommanderID, kCFPreferencesAnyUser, kCFPreferencesAnyHost); + (CFStringRef)kAfsCommanderID, kCFPreferencesCurrentUser, kCFPreferencesAnyHost); //set aklog at login CFPreferencesSetValue((CFStringRef)PREFERENCE_SHOW_STATUS_MENU, (CFNumberRef)[NSNumber numberWithBool:[afsMenucheckBox state]], - (CFStringRef)kAfsCommanderID, kCFPreferencesAnyUser, kCFPreferencesAnyHost); + (CFStringRef)kAfsCommanderID, kCFPreferencesCurrentUser, kCFPreferencesAnyHost); CFPreferencesSynchronize((CFStringRef)kAfsCommanderID, kCFPreferencesAnyUser, kCFPreferencesAnyHost); CFPreferencesSynchronize((CFStringRef)kAfsCommanderID, kCFPreferencesCurrentUser, kCFPreferencesAnyHost); @@ -760,7 +755,6 @@ } - // ------------------------------------------------------------------------------- // credentialAtLoginTimeEvent: // ------------------------------------------------------------------------------- @@ -1002,6 +996,36 @@ - (IBAction) enableLink:(id) sender { } + +// ------------------------------------------------------------------------------- +// removeExtra: +// ------------------------------------------------------------------------------- +- (IBAction) manageBackgrounderActivation:(id)sender { + [PListManager launchctlCommand:[(NSButton*)sender state] + userDomain:YES + option:[NSArray arrayWithObjects:@"-S", @"Aqua", nil] + plistName:[NSString stringWithFormat:@"%@.plist", BACKGROUNDER_P_FILE]]; + //re ad the status to check taht all is gone well + [backgrounderActivationCheck setState:[PListManager launchdJobState:BACKGROUNDER_P_FILE]]; +} + + +// ------------------------------------------------------------------------------- +// - (void)tabView:(NSTabView *)tabView willSelectTabViewItem: (NSTabViewItem *)tabViewItem +// ------------------------------------------------------------------------------- +- (void)tabView:(NSTabView *)tabView willSelectTabViewItem: (NSTabViewItem *)tabViewItem +{ + //check to see if the cache param tab is the tab that will be selected + if([((NSString*)[tabViewItem identifier]) intValue] == TAB_LINK) + { + + // [groupsBox setHidden:YES]; + NSLog([tabViewItem label]); + [ViewUtility enbleDisableControlView:[tabViewItem view] + controlState:NO]; + } +} + @end @implementation AFSCommanderPref (NSTableDataSource) @@ -1131,8 +1155,6 @@ } return rowCount; } - - @end @@ -1210,23 +1232,3 @@ [lyncCreationSheet orderOut:self]; } @end - -// ------------------------------------------------------------------------------- -// AFSCommanderPref(NSTabViewDelegator) - delegate for nstabview in -// main preference view -// ------------------------------------------------------------------------------- -@implementation AFSCommanderPref(NSTabViewDelegator) -- (void)tabView:(NSTabView *)tabView willSelectTabViewItem: (NSTabViewItem *)tabViewItem -{ - //check to see if the cache param tab is the tab that will be selected - if([((NSString*)[tabViewItem identifier]) intValue] == TAB_GROUP) - { - //get - NSLog(@"cache param tab"); - // [groupsBox setHidden:YES]; - NSLog([groupsBox title]); - [ViewUtility enbleDisableControlView:[groupsBox contentView] - controlState:NO]; - } -} -@end \ No newline at end of file diff --git a/src/platform/DARWIN/AFSPreference/AFSPropertyManager.m b/src/platform/DARWIN/AFSPreference/AFSPropertyManager.m index aaefbd517..21e53d5cc 100644 --- a/src/platform/DARWIN/AFSPreference/AFSPropertyManager.m +++ b/src/platform/DARWIN/AFSPreference/AFSPropertyManager.m @@ -318,7 +318,7 @@ reason:kThisCellFOError userInfo:nil]; } - NSLog(@"Cell found: %s", [cellName cString]); + NSLog(@"Cell found: %@", cellName); //read TheseCell file [filePath setString: installationPath]; @@ -671,7 +671,7 @@ { NSString *tmpString = nil; NSString *result = [TaskUtil executeTaskSearchingPath:@"fs" args:[NSArray arrayWithObjects:@"-version", nil]]; - if(result) NSLog(@"fs -version return: %s", [result cString]); + if(result) NSLog(@"fs -version return: %@", result); NSCharacterSet *endVersionCS = [NSCharacterSet characterSetWithCharactersInString:@"qwertyuiopasdfghjklzxcvbnmMNBVCXZLKJHGFDSAPOIUYTREWQ"]; @@ -832,7 +832,7 @@ NSError *error = nil; NSString *tmpStr = nil; - NSLog(@"Try to opening file: %s",[configFile cString] ); + NSLog(@"Try to opening file: %@",configFile); NSString * result = [NSString stringWithContentsOfFile:configFile encoding:NSASCIIStringEncoding error:&error]; diff --git a/src/platform/DARWIN/AFSPreference/DialogUtility.m b/src/platform/DARWIN/AFSPreference/DialogUtility.m index 77feb2c79..1754cab01 100644 --- a/src/platform/DARWIN/AFSPreference/DialogUtility.m +++ b/src/platform/DARWIN/AFSPreference/DialogUtility.m @@ -22,5 +22,6 @@ modalDelegate:delegator didEndSelector:fSelector contextInfo:nil]; + return YES; } @end diff --git a/src/platform/DARWIN/AFSPreference/English.lproj/IpPanel.xib b/src/platform/DARWIN/AFSPreference/English.lproj/IpPanel.xib index 269b673ec..956ef57c2 100644 --- a/src/platform/DARWIN/AFSPreference/English.lproj/IpPanel.xib +++ b/src/platform/DARWIN/AFSPreference/English.lproj/IpPanel.xib @@ -1,18 +1,28 @@ - + 1050 - 9C31 - 648 - 949.26 - 352.00 + 9J61 + 680 + 949.46 + 353.00 YES + YES com.apple.InterfaceBuilder.CocoaPlugin + + YES + + YES + + + YES + + YES @@ -27,7 +37,7 @@ 11 2 - {{622, 526}, {525, 370}} + {{622, 551}, {525, 345}} 813170688 Panel @@ -36,16 +46,17 @@ View + {3.40282e+38, 3.40282e+38} {525, 345} - + 256 YES 289 - {{430, 13}, {80, 28}} + {{428, 12}, {80, 28}} YES @@ -76,7 +87,7 @@ 289 - {{348, 13}, {80, 28}} + {{346, 12}, {80, 28}} YES @@ -99,7 +110,7 @@ 268 - {{51, 344}, {54, 16}} + {{51, 319}, {54, 16}} YES @@ -151,7 +162,7 @@ 256 - {453, 190} + {453, 165} YES @@ -260,7 +271,7 @@ YES - {{1, 17}, {453, 190}} + {{1, 17}, {453, 165}} @@ -303,7 +314,7 @@ - {{16, 30}, {455, 208}} + {{16, 30}, {455, 183}} 562 @@ -311,14 +322,69 @@ + QSAAAEEgAABBmAAAQZgAAA + + + 289 + {{315, 6}, {75, 16}} + + YES + + 604110336 + 134479872 + Delete + + LucidaGrande + 9.000000e+00 + 3614 + + + -2038284033 + 1 + + LucidaGrande + 9.000000e+00 + 16 + + + + + + 200 + 25 + + + + + 289 + {{396, 6}, {75, 16}} + + YES + + 67239424 + 134479872 + Add + + + -2038284033 + 1 + + + + + + 200 + 25 + + - {{2, 2}, {487, 249}} + {{2, 2}, {487, 224}} - {{17, 41}, {491, 266}} + {{17, 41}, {491, 241}} {0, 0} @@ -343,64 +409,10 @@ 2 NO - - - 289 - {{331, 52}, {75, 16}} - - YES - - 604110336 - 134479872 - Delete - - LucidaGrande - 9.000000e+00 - 3614 - - - -2038284033 - 1 - - LucidaGrande - 9.000000e+00 - 16 - - - - - - 200 - 25 - - - - - 289 - {{412, 52}, {75, 16}} - - YES - - 67239424 - 134479872 - Add - - - -2038284033 - 1 - - - - - - 200 - 25 - - 268 - {{44, 314}, {61, 16}} + {{44, 289}, {61, 16}} YES @@ -416,7 +428,7 @@ 266 - {{110, 344}, {389, 19}} + {{110, 319}, {389, 19}} YES @@ -439,7 +451,7 @@ 266 - {{110, 315}, {389, 19}} + {{110, 290}, {389, 19}} YES @@ -455,7 +467,8 @@ - {525, 370} + {525, 345} + {{0, 0}, {1920, 1178}} {525, 367} @@ -628,15 +641,13 @@ YES - - - - + + @@ -673,24 +684,8 @@ YES - - - - - 38 - - - YES - - - - - - 39 - - - YES - + + @@ -748,16 +743,6 @@ - - 65 - - - - - 66 - - - 67 @@ -838,6 +823,34 @@ + + 38 + + + YES + + + + + + 65 + + + + + 39 + + + YES + + + + + + 66 + + + @@ -868,7 +881,10 @@ 38.ImportedFromIB2 39.IBPluginDependency 39.ImportedFromIB2 - 5.IBPluginDependency + 5.IBEditorWindowLastContentRect + 5.IBViewEditorWindowController.showingBoundsRectangles + 5.IBViewEditorWindowController.showingLayoutRectangles + 5.IBWindowTemplateEditedContentRect 5.ImportedFromIB2 5.windowTemplate.hasMinSize 5.windowTemplate.minSize @@ -880,12 +896,25 @@ 56.ImportedFromIB2 6.IBPluginDependency 6.ImportedFromIB2 + 62.IBPluginDependency + 63.IBPluginDependency + 64.IBPluginDependency + 65.IBPluginDependency + 66.IBPluginDependency + 67.IBPluginDependency + 68.IBPluginDependency + 69.IBPluginDependency 7.IBPluginDependency 7.ImportedFromIB2 + 70.IBPluginDependency 70.IBShouldRemoveOnLegacySave + 71.IBPluginDependency 71.IBShouldRemoveOnLegacySave + 72.IBPluginDependency 72.IBShouldRemoveOnLegacySave + 73.IBPluginDependency 73.IBShouldRemoveOnLegacySave + 74.IBPluginDependency 74.IBShouldRemoveOnLegacySave 8.IBPluginDependency 8.ImportedFromIB2 @@ -895,48 +924,64 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin + + {{76, 288}, {525, 345}} + - + {{76, 288}, {525, 345}} + + {525, 345} com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin - - - - - - com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + @@ -971,12 +1016,19 @@ YES YES + addLink: addRemoveCell: afsMenuActivationEvent: + afsStartupSwitchEvent: aklogSwitchEvent: + credentialAtLoginTimeEvent: + enableLink: getNewToken: info: + krb5KredentialAtLoginTimeEvent: + manageBackgrounderActivation: refreshConfiguration: + removeLink: saveCacheManagerParam: saveConfiguration: searchCellTextEvent: @@ -1000,6 +1052,13 @@ id id id + id + id + id + id + id + id + id @@ -1013,9 +1072,15 @@ afsMenucheckBox afsRootMountPoint afsVersionLabel + aklogCredentialAtLoginTime + backgrounderActivationCheck + buttonAddLink + buttonRemoveLink cacheDimension cellIpButton cellList + checkButtonAfsAtBootTime + checkEnableLink credentialCommander credentialSheet dCacheDim @@ -1024,16 +1089,18 @@ groupsBox infoController infoSheet - installationPathTextField + installKRB5AuthAtLoginButton ipConfControllerCommander ipConfigurationSheet labelSaveResult + lyncCreationSheet + lynkCreationController nVolEntry - refreshConfigurationButton removeCellButton saveConfigurationButton startStopButton statCacheEntry + textFieldDevInfoLabel textSearchField tokensButton tokensTable @@ -1050,9 +1117,15 @@ id NSTextField NSTextField + NSButton + NSButton + NSButton + NSButton NSTextField id id + NSButton + NSButton id id NSTextField @@ -1061,15 +1134,17 @@ NSBox id id + NSButton id id id id + LynkCreationController NSTextField id id id - id + NSTextField NSTextField NSSearchField NSButton @@ -1102,6 +1177,7 @@ FirstResponder + NSObject IBUserSource @@ -1165,6 +1241,44 @@ + + LynkCreationController + NSObject + + YES + + YES + cancell: + save: + selectLinkDest: + + + YES + id + id + id + + + + YES + + YES + lynkCreationSheet + textFieldLinkDestPath + textfieldLinkName + + + YES + NSPanel + NSTextField + NSTextField + + + + IBProjectSource + LynkCreationController.h + + NSPreferencePane NSObject @@ -1193,7 +1307,7 @@ 0 - ../../AFSCommander.xcodeproj + ../OpenAFS.xcodeproj 3 diff --git a/src/platform/DARWIN/AFSPreference/English.lproj/OpenAFSPreference.xib b/src/platform/DARWIN/AFSPreference/English.lproj/OpenAFSPreference.xib index 3e8098df7..15a6313aa 100644 --- a/src/platform/DARWIN/AFSPreference/English.lproj/OpenAFSPreference.xib +++ b/src/platform/DARWIN/AFSPreference/English.lproj/OpenAFSPreference.xib @@ -8,7 +8,7 @@ 353.00 YES - + YES @@ -53,7 +53,7 @@ 256 - {{17, 0}, {488, 17}} + {{17, 1}, {304, 14}} YES @@ -99,7 +99,7 @@ 268 - {{13, 9}, {109, 28}} + {{13, 7}, {109, 28}} YES @@ -126,7 +126,7 @@ 265 - {{526, 12}, {21, 23}} + {{526, 9}, {21, 23}} YES @@ -150,41 +150,10 @@ 25 - - - 268 - {{273, 15}, {170, 18}} - - YES - - 67239424 - 0 - Get Krb5 credential at login - - LucidaGrande - 1.100000e+01 - 16 - - - 1211912703 - 130 - - NSImage - NSSwitch - - - NSSwitch - - - - 200 - 25 - - -2147483380 - {{138, 15}, {117, 18}} + {{138, 13}, {117, 18}} YES @@ -195,8 +164,13 @@ 1211912703 130 - - + + NSImage + NSSwitch + + + NSSwitch + 200 @@ -204,11 +178,11 @@ - {{1, 1}, {562, 49}} + {{1, 1}, {562, 43}} - {{17, 417}, {564, 51}} + {{17, 423}, {564, 45}} {0, 0} @@ -405,7 +379,7 @@ 265 - {{322, 167}, {80, 28}} + {{329, 164}, {80, 28}} YES @@ -428,7 +402,7 @@ 265 - {{407, 167}, {133, 28}} + {{407, 164}, {133, 28}} YES @@ -451,7 +425,7 @@ 268 - {{14, 163}, {86, 18}} + {{14, 172}, {86, 18}} YES @@ -462,7 +436,7 @@ 1211912703 2 - + @@ -483,7 +457,7 @@ 268 - {{5, 31}, {75, 18}} + {{5, 32}, {75, 18}} YES @@ -494,7 +468,7 @@ 1211912703 130 - + @@ -505,7 +479,7 @@ 268 - {{5, 11}, {167, 18}} + {{5, 12}, {167, 18}} YES @@ -516,7 +490,29 @@ 1211912703 130 - + + + + + 200 + 25 + + + + + 268 + {{5, 52}, {170, 18}} + + YES + + 67239424 + 131072 + Get Krb5 credential at login + + + 1211912703 + 130 + @@ -525,17 +521,17 @@ - {{1, 1}, {195, 57}} + {{1, 1}, {193, 78}} - {{103, 130}, {197, 73}} + {{113, 97}, {195, 94}} {0, 0} 67239424 0 - + Kerberos Setting @@ -549,6 +545,28 @@ 2 NO + + + 268 + {{14, 152}, {96, 18}} + + YES + + 67239424 + 131072 + Backgrounder + + + 1211912703 + 130 + + + + + 200 + 25 + + {{10, 25}, {552, 363}} @@ -659,7 +677,11 @@ -2038021889 35 - + + LucidaGrande + 1.100000e+01 + 16 + 400 @@ -791,7 +813,7 @@ 1215582719 130 - + @@ -824,7 +846,7 @@ 1212436991 130 - + @@ -1284,7 +1306,7 @@ 1211912703 2 - + @@ -1558,7 +1580,7 @@ 1211912703 2 - + @@ -1580,7 +1602,7 @@ 1211912703 130 - + @@ -1602,7 +1624,7 @@ 1211912703 130 - + @@ -1857,7 +1879,7 @@ 1211912703 130 - + @@ -1886,7 +1908,7 @@ 289 - {{229, 6}, {349, 11}} + {{323, 3}, {258, 11}} YES @@ -2539,6 +2561,22 @@ 2053 + + + backgrounderActivationCheck + + + + 2056 + + + + manageBackgrounderActivation: + + + + 2057 + @@ -2584,10 +2622,10 @@ YES - - + + @@ -2618,10 +2656,11 @@ YES - + + @@ -2901,7 +2940,6 @@ - @@ -3415,6 +3453,7 @@ YES + @@ -3448,20 +3487,6 @@ - - 2018 - - - YES - - - - - - 2019 - - - 2022 @@ -3604,6 +3629,34 @@ + + 2054 + + + YES + + + + + + 2055 + + + + + 2018 + + + YES + + + + + + 2019 + + + @@ -3631,6 +3684,8 @@ 1199.IBPluginDependency 1199.ImportedFromIB2 12.IBEditorWindowLastContentRect + 12.IBViewEditorWindowController.showingBoundsRectangles + 12.IBViewEditorWindowController.showingLayoutRectangles 12.IBWindowTemplateEditedContentRect 12.ImportedFromIB2 12.windowTemplate.hasMinSize @@ -3766,6 +3821,8 @@ 2038.IBPluginDependency 2049.IBPluginDependency 2050.IBPluginDependency + 2054.IBPluginDependency + 2055.IBPluginDependency 207.IBPluginDependency 207.ImportedFromIB2 208.IBEditorWindowLastContentRect @@ -3864,10 +3921,12 @@ com.apple.InterfaceBuilder.CocoaPlugin - {{50, 153}, {595, 486}} - {{50, 153}, {595, 486}} - + {{70, 135}, {595, 486}} + + {{70, 135}, {595, 486}} + + {3.40282e+38, 3.40282e+38} {0, 0} com.apple.InterfaceBuilder.CocoaPlugin @@ -4016,6 +4075,8 @@ Zm9yIGRlYnVnZ2luZyBhcyBpdCBwcmludHMgYSBMT1Qgb2YgaW5mb3JtYXRpb24uCg com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin {{0, 510}, {715, 485}} {{0, 510}, {715, 485}} @@ -4147,7 +4208,7 @@ Zm9yIGRlYnVnZ2luZyBhcyBpdCBwcmludHMgYSBMT1Qgb2YgaW5mb3JtYXRpb24uCg - 2053 + 2057 @@ -4169,6 +4230,7 @@ Zm9yIGRlYnVnZ2luZyBhcyBpdCBwcmludHMgYSBMT1Qgb2YgaW5mb3JtYXRpb24uCg getNewToken: info: krb5KredentialAtLoginTimeEvent: + manageBackgrounderActivation: refreshConfiguration: removeLink: saveCacheManagerParam: @@ -4200,6 +4262,7 @@ Zm9yIGRlYnVnZ2luZyBhcyBpdCBwcmludHMgYSBMT1Qgb2YgaW5mb3JtYXRpb24uCg id id id + id @@ -4214,6 +4277,7 @@ Zm9yIGRlYnVnZ2luZyBhcyBpdCBwcmludHMgYSBMT1Qgb2YgaW5mb3JtYXRpb24uCg afsRootMountPoint afsVersionLabel aklogCredentialAtLoginTime + backgrounderActivationCheck buttonAddLink buttonRemoveLink cacheDimension @@ -4260,6 +4324,7 @@ Zm9yIGRlYnVnZ2luZyBhcyBpdCBwcmludHMgYSBMT1Qgb2YgaW5mb3JtYXRpb24uCg NSButton NSButton NSButton + NSButton NSTextField id id diff --git a/src/platform/DARWIN/AFSPreference/IpConfiguratorCommander.m b/src/platform/DARWIN/AFSPreference/IpConfiguratorCommander.m index 668f7eb0e..8ff39851e 100644 --- a/src/platform/DARWIN/AFSPreference/IpConfiguratorCommander.m +++ b/src/platform/DARWIN/AFSPreference/IpConfiguratorCommander.m @@ -48,15 +48,15 @@ [cellElement setCellName:[((NSControl*) textFieldCellName) stringValue]]; [cellElement setCellComment:[((NSControl*) textFieldComment) stringValue]]; - NSLog(@"Deleting:\n%s",[[bkIPArray description] cString]); + NSLog(@"Deleting:\n%@",[bkIPArray description]); [bkIPArray removeAllObjects]; NSLog(@"deleted:\n"); - NSLog(@"Coping:\n%s",[[workIPArray description] cString]); + NSLog(@"Coping:\n%@",[workIPArray description]); [bkIPArray setArray:workIPArray]; - NSLog(@"Copied:\n%s",[[workIPArray description] cString]); - NSLog(@"Releasing:\n%s",[[workIPArray description] cString]); + NSLog(@"Copied:\n%@",[workIPArray description]); + NSLog(@"Releasing:\n%@",[workIPArray description]); [workIPArray release]; - NSLog(@"Released:\n%s",[[workIPArray description] cString]); + NSLog(@"Released:\n%@",[workIPArray description]); } // ------------------------------------------------------------------------------- diff --git a/src/platform/DARWIN/AFSPreference/OpenAFS.xcodeproj/bisegni.perspectivev3 b/src/platform/DARWIN/AFSPreference/OpenAFS.xcodeproj/bisegni.perspectivev3 new file mode 100644 index 000000000..9dd7ec339 --- /dev/null +++ b/src/platform/DARWIN/AFSPreference/OpenAFS.xcodeproj/bisegni.perspectivev3 @@ -0,0 +1,1468 @@ + + + + + ActivePerspectiveName + Project + AllowedModules + + + BundleLoadPath + + MaxInstances + n + Module + PBXSmartGroupTreeModule + Name + Groups and Files Outline View + + + BundleLoadPath + + MaxInstances + n + Module + PBXNavigatorGroup + Name + Editor + + + BundleLoadPath + + MaxInstances + n + Module + XCTaskListModule + Name + Task List + + + BundleLoadPath + + MaxInstances + n + Module + XCDetailModule + Name + File and Smart Group Detail Viewer + + + BundleLoadPath + + MaxInstances + 1 + Module + PBXBuildResultsModule + Name + Detailed Build Results Viewer + + + BundleLoadPath + + MaxInstances + 1 + Module + PBXProjectFindModule + Name + Project Batch Find Tool + + + BundleLoadPath + + MaxInstances + n + Module + XCProjectFormatConflictsModule + Name + Project Format Conflicts List + + + BundleLoadPath + + MaxInstances + n + Module + PBXBookmarksModule + Name + Bookmarks Tool + + + BundleLoadPath + + MaxInstances + n + Module + PBXClassBrowserModule + Name + Class Browser + + + BundleLoadPath + + MaxInstances + n + Module + PBXCVSModule + Name + Source Code Control Tool + + + BundleLoadPath + + MaxInstances + n + Module + PBXDebugBreakpointsModule + Name + Debug Breakpoints Tool + + + BundleLoadPath + + MaxInstances + n + Module + XCDockableInspector + Name + Inspector + + + BundleLoadPath + + MaxInstances + n + Module + PBXOpenQuicklyModule + Name + Open Quickly Tool + + + BundleLoadPath + + MaxInstances + 1 + Module + PBXDebugSessionModule + Name + Debugger + + + BundleLoadPath + + MaxInstances + 1 + Module + PBXDebugCLIModule + Name + Debug Console + + + BundleLoadPath + + MaxInstances + n + Module + XCSnapshotModule + Name + Snapshots Tool + + + BundlePath + /Developer/Library/PrivateFrameworks/DevToolsInterface.framework/Resources + Description + AIODescriptionKey + DockingSystemVisible + + Extension + perspectivev3 + FavBarConfig + + PBXProjectModuleGUID + 320DBA1B10270A3300A18A89 + XCBarModuleItemNames + + XCBarModuleItems + + + FirstTimeWindowDisplayed + + Identifier + com.apple.perspectives.project.defaultV3 + MajorVersion + 34 + MinorVersion + 0 + Name + All-In-One + Notifications + + OpenEditors + + PerspectiveWidths + + -1 + -1 + + Perspectives + + + ChosenToolbarItems + + XCToolbarPerspectiveControl + NSToolbarSeparatorItem + active-combo-popup + action + NSToolbarFlexibleSpaceItem + clean-target + clean + buildOrClean + build-and-go + go-debug + com.apple.ide.PBXToolbarStopButton + servicesModuledebug + debugger-enable-breakpoints + NSToolbarFlexibleSpaceItem + researchAssistant + get-info + com.apple.pbx.toolbar.searchfield + + ControllerClassBaseName + + IconName + WindowOfProject + Identifier + perspective.project + IsVertical + + Layout + + + BecomeActive + + ContentConfiguration + + PBXBottomSmartGroupGIDs + + 1C37FBAC04509CD000000102 + 1C37FAAC04509CD000000102 + 1C08E77C0454961000C914BD + 1C37FABC05509CD000000102 + 1C37FABC05539CD112110102 + E2644B35053B69B200211256 + 1C37FABC04509CD000100104 + 1CC0EA4004350EF90044410B + 1CC0EA4004350EF90041110B + 1C77FABC04509CD000000102 + + PBXProjectModuleGUID + 1CA23ED40692098700951B8B + PBXProjectModuleLabel + Files + PBXProjectStructureProvided + yes + PBXSmartGroupTreeModuleColumnData + + PBXSmartGroupTreeModuleColumnWidthsKey + + 231 + + PBXSmartGroupTreeModuleColumnsKey_v4 + + MainColumn + + + PBXSmartGroupTreeModuleOutlineStateKey_v7 + + PBXSmartGroupTreeModuleOutlineStateExpansionKey + + 089C166AFE841209C02AAC07 + 08FB77AFFE84173DC02AAC07 + 3276591010204DB4004CA418 + 19C28FB8FE9D52D311CA2CBB + + PBXSmartGroupTreeModuleOutlineStateSelectionKey + + + 27 + 26 + 0 + + + PBXSmartGroupTreeModuleOutlineStateVisibleRectKey + {{0, 0}, {231, 1090}} + + PBXTopSmartGroupGIDs + + XCIncludePerspectivesSwitch + + + GeometryConfiguration + + Frame + {{0, 0}, {248, 1108}} + GroupTreeTableConfiguration + + MainColumn + 231 + + RubberWindowFrame + -1920 -126 1018 1149 -1920 -176 1920 1200 + + Module + PBXSmartGroupTreeModule + Proportion + 248pt + + + Dock + + + ContentConfiguration + + PBXProjectModuleGUID + 320DBA1610270A3300A18A89 + PBXProjectModuleLabel + AFSBackgrounderDelegate.m + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 320DBA1710270A3300A18A89 + PBXProjectModuleLabel + AFSBackgrounderDelegate.m + _historyCapacity + 0 + bookmark + 320DBACD10272E1000A18A89 + history + + 320DBA3E102725AA00A18A89 + 320DBAAD10272D2100A18A89 + 320DBACC10272E1000A18A89 + + prevStack + + 320DBA40102725AA00A18A89 + 320DBAAF10272D2100A18A89 + + + SplitCount + 1 + + StatusBarVisibility + + XCSharingToken + com.apple.Xcode.CommonNavigatorGroupSharingToken + + GeometryConfiguration + + Frame + {{0, 0}, {765, 1103}} + RubberWindowFrame + -1920 -126 1018 1149 -1920 -176 1920 1200 + + Module + PBXNavigatorGroup + Proportion + 1103pt + + + Proportion + 0pt + Tabs + + + ContentConfiguration + + PBXProjectModuleGUID + 1CA23EDF0692099D00951B8B + PBXProjectModuleLabel + Detail + + GeometryConfiguration + + Frame + {{10, 27}, {765, -27}} + RubberWindowFrame + -1920 -126 1018 1149 -1920 -176 1920 1200 + + Module + XCDetailModule + + + ContentConfiguration + + PBXProjectModuleGUID + 1CA23EE00692099D00951B8B + PBXProjectModuleLabel + Project Find + + GeometryConfiguration + + Frame + {{10, 31}, {603, 297}} + + Module + PBXProjectFindModule + + + ContentConfiguration + + PBXCVSModuleFilterTypeKey + 1032 + PBXProjectModuleGUID + 1CA23EE10692099D00951B8B + PBXProjectModuleLabel + SCM Results + + GeometryConfiguration + + Frame + {{10, 31}, {603, 297}} + + Module + PBXCVSModule + + + ContentConfiguration + + PBXProjectModuleGUID + XCMainBuildResultsModuleGUID + PBXProjectModuleLabel + Build + XCBuildResultsTrigger_Collapse + 1021 + XCBuildResultsTrigger_Open + 1011 + + GeometryConfiguration + + Frame + {{10, 31}, {603, 297}} + + Module + PBXBuildResultsModule + + + + + Proportion + 765pt + + + Name + Project + ServiceClasses + + XCModuleDock + PBXSmartGroupTreeModule + XCModuleDock + PBXNavigatorGroup + XCDockableTabModule + XCDetailModule + PBXProjectFindModule + PBXCVSModule + PBXBuildResultsModule + + TableOfContents + + 320DBAB110272D2100A18A89 + 1CA23ED40692098700951B8B + 320DBAB210272D2100A18A89 + 320DBA1610270A3300A18A89 + 320DBAB310272D2100A18A89 + 1CA23EDF0692099D00951B8B + 1CA23EE00692099D00951B8B + 1CA23EE10692099D00951B8B + XCMainBuildResultsModuleGUID + + ToolbarConfiguration + xcode.toolbar.config.defaultV3 + + + ChosenToolbarItems + + XCToolbarPerspectiveControl + NSToolbarSeparatorItem + active-combo-popup + NSToolbarFlexibleSpaceItem + build-and-go + com.apple.ide.PBXToolbarStopButton + debugger-restart-executable + debugger-pause + debugger-step-over + debugger-step-into + debugger-step-out + debugger-enable-breakpoints + NSToolbarFlexibleSpaceItem + com.apple.ide.XCBreakpointsToolbarItem + clear-log + + ControllerClassBaseName + PBXDebugSessionModule + IconName + DebugTabIcon + Identifier + perspective.debug + IsVertical + 1 + Layout + + + ContentConfiguration + + PBXProjectModuleGUID + 1CCC7628064C1048000F2A68 + PBXProjectModuleLabel + Debugger Console + + GeometryConfiguration + + Frame + {{0, 0}, {810, 0}} + + Module + PBXDebugCLIModule + Proportion + 0% + + + ContentConfiguration + + Debugger + + HorizontalSplitView + + _collapsingFrameDimension + 0.0 + _indexOfCollapsedView + 0 + _percentageOfCollapsedView + 0.0 + isCollapsed + yes + sizes + + {{0, 0}, {395, 213}} + {{395, 0}, {415, 213}} + + + VerticalSplitView + + _collapsingFrameDimension + 0.0 + _indexOfCollapsedView + 0 + _percentageOfCollapsedView + 0.0 + isCollapsed + yes + sizes + + {{0, 0}, {810, 213}} + {{0, 213}, {810, 225}} + + + + LauncherConfigVersion + 8 + PBXProjectModuleGUID + 1CCC7629064C1048000F2A68 + PBXProjectModuleLabel + Debug + + GeometryConfiguration + + DebugConsoleDrawerSize + {100, 120} + DebugConsoleVisible + None + DebugConsoleWindowFrame + {{200, 200}, {500, 300}} + DebugSTDIOWindowFrame + {{200, 200}, {500, 300}} + Frame + {{0, 7}, {810, 438}} + + Module + PBXDebugSessionModule + Proportion + 443pt + + + Name + Debug + ServiceClasses + + XCModuleDock + XCModuleDock + PBXDebugCLIModule + PBXDebugSessionModule + XCConsole + + TableOfContents + + 1CC8E6A5069209BD00BB180A + 1CC8E6A6069209BD00BB180A + 1CCC7628064C1048000F2A68 + 1CCC7629064C1048000F2A68 + 1CC8E6A7069209BD00BB180A + + ToolbarConfiguration + xcode.toolbar.config.debugV3 + + + PerspectivesBarVisible + + ShelfIsVisible + + SourceDescription + file at '/Developer/Library/PrivateFrameworks/DevToolsInterface.framework/Resources/XCPerspectivesSpecification.xcperspec' + StatusbarIsVisible + + TimeStamp + 0.0 + ToolbarDisplayMode + 1 + ToolbarIsVisible + + ToolbarSizeMode + 2 + Type + Perspectives + UpdateMessage + + WindowJustification + 5 + WindowOrderList + + /Volumes/DeepData/Sorgenti/gitrepo/openafs/src/platform/DARWIN/AFSPreference/OpenAFS.xcodeproj + + WindowString + -1920 -126 1018 1149 -1920 -176 1920 1200 + WindowToolsV3 + + + Identifier + windowTool.debugger + Layout + + + Dock + + + ContentConfiguration + + Debugger + + HorizontalSplitView + + _collapsingFrameDimension + 0.0 + _indexOfCollapsedView + 0 + _percentageOfCollapsedView + 0.0 + isCollapsed + yes + sizes + + {{0, 0}, {317, 164}} + {{317, 0}, {377, 164}} + + + VerticalSplitView + + _collapsingFrameDimension + 0.0 + _indexOfCollapsedView + 0 + _percentageOfCollapsedView + 0.0 + isCollapsed + yes + sizes + + {{0, 0}, {694, 164}} + {{0, 164}, {694, 216}} + + + + LauncherConfigVersion + 8 + PBXProjectModuleGUID + 1C162984064C10D400B95A72 + PBXProjectModuleLabel + Debug - GLUTExamples (Underwater) + + GeometryConfiguration + + DebugConsoleDrawerSize + {100, 120} + DebugConsoleVisible + None + DebugConsoleWindowFrame + {{200, 200}, {500, 300}} + DebugSTDIOWindowFrame + {{200, 200}, {500, 300}} + Frame + {{0, 0}, {694, 380}} + RubberWindowFrame + 321 238 694 422 0 0 1440 878 + + Module + PBXDebugSessionModule + Proportion + 100% + + + Proportion + 100% + + + Name + Debugger + ServiceClasses + + PBXDebugSessionModule + + StatusbarIsVisible + 1 + TableOfContents + + 1CD10A99069EF8BA00B06720 + 1C0AD2AB069F1E9B00FABCE6 + 1C162984064C10D400B95A72 + 1C0AD2AC069F1E9B00FABCE6 + + ToolbarConfiguration + xcode.toolbar.config.debugV3 + WindowString + 321 238 694 422 0 0 1440 878 + WindowToolGUID + 1CD10A99069EF8BA00B06720 + WindowToolIsVisible + 0 + + + Identifier + windowTool.build + Layout + + + Dock + + + ContentConfiguration + + PBXProjectModuleGUID + 1CD0528F0623707200166675 + PBXProjectModuleLabel + <No Editor> + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 1CD052900623707200166675 + + SplitCount + 1 + + StatusBarVisibility + 1 + + GeometryConfiguration + + Frame + {{0, 0}, {500, 215}} + RubberWindowFrame + 192 257 500 500 0 0 1280 1002 + + Module + PBXNavigatorGroup + Proportion + 218pt + + + BecomeActive + 1 + ContentConfiguration + + PBXProjectModuleGUID + XCMainBuildResultsModuleGUID + PBXProjectModuleLabel + Build + + GeometryConfiguration + + Frame + {{0, 222}, {500, 236}} + RubberWindowFrame + 192 257 500 500 0 0 1280 1002 + + Module + PBXBuildResultsModule + Proportion + 236pt + + + Proportion + 458pt + + + Name + Build Results + ServiceClasses + + PBXBuildResultsModule + + StatusbarIsVisible + 1 + TableOfContents + + 1C78EAA5065D492600B07095 + 1C78EAA6065D492600B07095 + 1CD0528F0623707200166675 + XCMainBuildResultsModuleGUID + + ToolbarConfiguration + xcode.toolbar.config.buildV3 + WindowString + 192 257 500 500 0 0 1280 1002 + + + Identifier + windowTool.find + Layout + + + Dock + + + Dock + + + ContentConfiguration + + PBXProjectModuleGUID + 1CDD528C0622207200134675 + PBXProjectModuleLabel + <No Editor> + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 1CD0528D0623707200166675 + + SplitCount + 1 + + StatusBarVisibility + 1 + + GeometryConfiguration + + Frame + {{0, 0}, {781, 167}} + RubberWindowFrame + 62 385 781 470 0 0 1440 878 + + Module + PBXNavigatorGroup + Proportion + 781pt + + + Proportion + 50% + + + BecomeActive + 1 + ContentConfiguration + + PBXProjectModuleGUID + 1CD0528E0623707200166675 + PBXProjectModuleLabel + Project Find + + GeometryConfiguration + + Frame + {{8, 0}, {773, 254}} + RubberWindowFrame + 62 385 781 470 0 0 1440 878 + + Module + PBXProjectFindModule + Proportion + 50% + + + Proportion + 428pt + + + Name + Project Find + ServiceClasses + + PBXProjectFindModule + + StatusbarIsVisible + 1 + TableOfContents + + 1C530D57069F1CE1000CFCEE + 1C530D58069F1CE1000CFCEE + 1C530D59069F1CE1000CFCEE + 1CDD528C0622207200134675 + 1C530D5A069F1CE1000CFCEE + 1CE0B1FE06471DED0097A5F4 + 1CD0528E0623707200166675 + + WindowString + 62 385 781 470 0 0 1440 878 + WindowToolGUID + 1C530D57069F1CE1000CFCEE + WindowToolIsVisible + 0 + + + Identifier + windowTool.snapshots + Layout + + + Dock + + + Module + XCSnapshotModule + Proportion + 100% + + + Proportion + 100% + + + Name + Snapshots + ServiceClasses + + XCSnapshotModule + + StatusbarIsVisible + Yes + ToolbarConfiguration + xcode.toolbar.config.snapshots + WindowString + 315 824 300 550 0 0 1440 878 + WindowToolIsVisible + Yes + + + Identifier + windowTool.debuggerConsole + Layout + + + Dock + + + BecomeActive + 1 + ContentConfiguration + + PBXProjectModuleGUID + 1C78EAAC065D492600B07095 + PBXProjectModuleLabel + Debugger Console + + GeometryConfiguration + + Frame + {{0, 0}, {700, 358}} + RubberWindowFrame + 149 87 700 400 0 0 1440 878 + + Module + PBXDebugCLIModule + Proportion + 358pt + + + Proportion + 358pt + + + Name + Debugger Console + ServiceClasses + + PBXDebugCLIModule + + StatusbarIsVisible + 1 + TableOfContents + + 1C530D5B069F1CE1000CFCEE + 1C530D5C069F1CE1000CFCEE + 1C78EAAC065D492600B07095 + + ToolbarConfiguration + xcode.toolbar.config.consoleV3 + WindowString + 149 87 440 400 0 0 1440 878 + WindowToolGUID + 1C530D5B069F1CE1000CFCEE + WindowToolIsVisible + 0 + + + Identifier + windowTool.scm + Layout + + + Dock + + + ContentConfiguration + + PBXProjectModuleGUID + 1C78EAB2065D492600B07095 + PBXProjectModuleLabel + <No Editor> + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 1C78EAB3065D492600B07095 + + SplitCount + 1 + + StatusBarVisibility + 1 + + GeometryConfiguration + + Frame + {{0, 0}, {452, 0}} + RubberWindowFrame + 743 379 452 308 0 0 1280 1002 + + Module + PBXNavigatorGroup + Proportion + 0pt + + + BecomeActive + 1 + ContentConfiguration + + PBXProjectModuleGUID + 1CD052920623707200166675 + PBXProjectModuleLabel + SCM + + GeometryConfiguration + + ConsoleFrame + {{0, 259}, {452, 0}} + Frame + {{0, 7}, {452, 259}} + RubberWindowFrame + 743 379 452 308 0 0 1280 1002 + TableConfiguration + + Status + 30 + FileName + 199 + Path + 197.09500122070312 + + TableFrame + {{0, 0}, {452, 250}} + + Module + PBXCVSModule + Proportion + 262pt + + + Proportion + 266pt + + + Name + SCM + ServiceClasses + + PBXCVSModule + + StatusbarIsVisible + 1 + TableOfContents + + 1C78EAB4065D492600B07095 + 1C78EAB5065D492600B07095 + 1C78EAB2065D492600B07095 + 1CD052920623707200166675 + + ToolbarConfiguration + xcode.toolbar.config.scmV3 + WindowString + 743 379 452 308 0 0 1280 1002 + + + Identifier + windowTool.breakpoints + IsVertical + 0 + Layout + + + Dock + + + BecomeActive + 1 + ContentConfiguration + + PBXBottomSmartGroupGIDs + + 1C77FABC04509CD000000102 + + PBXProjectModuleGUID + 1CE0B1FE06471DED0097A5F4 + PBXProjectModuleLabel + Files + PBXProjectStructureProvided + no + PBXSmartGroupTreeModuleColumnData + + PBXSmartGroupTreeModuleColumnWidthsKey + + 168 + + PBXSmartGroupTreeModuleColumnsKey_v4 + + MainColumn + + + PBXSmartGroupTreeModuleOutlineStateKey_v7 + + PBXSmartGroupTreeModuleOutlineStateExpansionKey + + 1C77FABC04509CD000000102 + + PBXSmartGroupTreeModuleOutlineStateSelectionKey + + + 0 + + + PBXSmartGroupTreeModuleOutlineStateVisibleRectKey + {{0, 0}, {168, 350}} + + PBXTopSmartGroupGIDs + + XCIncludePerspectivesSwitch + 0 + + GeometryConfiguration + + Frame + {{0, 0}, {185, 368}} + GroupTreeTableConfiguration + + MainColumn + 168 + + RubberWindowFrame + 315 424 744 409 0 0 1440 878 + + Module + PBXSmartGroupTreeModule + Proportion + 185pt + + + ContentConfiguration + + PBXProjectModuleGUID + 1CA1AED706398EBD00589147 + PBXProjectModuleLabel + Detail + + GeometryConfiguration + + Frame + {{190, 0}, {554, 368}} + RubberWindowFrame + 315 424 744 409 0 0 1440 878 + + Module + XCDetailModule + Proportion + 554pt + + + Proportion + 368pt + + + MajorVersion + 3 + MinorVersion + 0 + Name + Breakpoints + ServiceClasses + + PBXSmartGroupTreeModule + XCDetailModule + + StatusbarIsVisible + 1 + TableOfContents + + 1CDDB66807F98D9800BB5817 + 1CDDB66907F98D9800BB5817 + 1CE0B1FE06471DED0097A5F4 + 1CA1AED706398EBD00589147 + + ToolbarConfiguration + xcode.toolbar.config.breakpointsV3 + WindowString + 315 424 744 409 0 0 1440 878 + WindowToolGUID + 1CDDB66807F98D9800BB5817 + WindowToolIsVisible + 1 + + + Identifier + windowTool.debugAnimator + Layout + + + Dock + + + Module + PBXNavigatorGroup + Proportion + 100% + + + Proportion + 100% + + + Name + Debug Visualizer + ServiceClasses + + PBXNavigatorGroup + + StatusbarIsVisible + 1 + ToolbarConfiguration + xcode.toolbar.config.debugAnimatorV3 + WindowString + 100 100 700 500 0 0 1280 1002 + + + Identifier + windowTool.bookmarks + Layout + + + Dock + + + Module + PBXBookmarksModule + Proportion + 166pt + + + Proportion + 166pt + + + Name + Bookmarks + ServiceClasses + + PBXBookmarksModule + + StatusbarIsVisible + 0 + WindowString + 538 42 401 187 0 0 1280 1002 + + + Identifier + windowTool.projectFormatConflicts + Layout + + + Dock + + + Module + XCProjectFormatConflictsModule + Proportion + 100% + + + Proportion + 100% + + + Name + Project Format Conflicts + ServiceClasses + + XCProjectFormatConflictsModule + + StatusbarIsVisible + 0 + WindowContentMinSize + 450 300 + WindowString + 50 850 472 307 0 0 1440 877 + + + Identifier + windowTool.classBrowser + Layout + + + Dock + + + BecomeActive + 1 + ContentConfiguration + + OptionsSetName + Hierarchy, all classes + PBXProjectModuleGUID + 1CA6456E063B45B4001379D8 + PBXProjectModuleLabel + Class Browser - NSObject + + GeometryConfiguration + + ClassesFrame + {{0, 0}, {369, 96}} + ClassesTreeTableConfiguration + + PBXClassNameColumnIdentifier + 208 + PBXClassBookColumnIdentifier + 22 + + Frame + {{0, 0}, {616, 353}} + MembersFrame + {{0, 105}, {369, 395}} + MembersTreeTableConfiguration + + PBXMemberTypeIconColumnIdentifier + 22 + PBXMemberNameColumnIdentifier + 216 + PBXMemberTypeColumnIdentifier + 94 + PBXMemberBookColumnIdentifier + 22 + + PBXModuleWindowStatusBarHidden2 + 1 + RubberWindowFrame + 597 125 616 374 0 0 1280 1002 + + Module + PBXClassBrowserModule + Proportion + 354pt + + + Proportion + 354pt + + + Name + Class Browser + ServiceClasses + + PBXClassBrowserModule + + StatusbarIsVisible + 0 + TableOfContents + + 1C78EABA065D492600B07095 + 1C78EABB065D492600B07095 + 1CA6456E063B45B4001379D8 + + ToolbarConfiguration + xcode.toolbar.config.classbrowser + WindowString + 597 125 616 374 0 0 1280 1002 + + + Identifier + windowTool.refactoring + IncludeInToolsMenu + 0 + Layout + + + Dock + + + BecomeActive + 1 + GeometryConfiguration + + Frame + {0, 0}, {500, 335} + RubberWindowFrame + {0, 0}, {500, 335} + + Module + XCRefactoringModule + Proportion + 100% + + + Proportion + 100% + + + Name + Refactoring + ServiceClasses + + XCRefactoringModule + + WindowString + 200 200 500 356 0 0 1920 1200 + + + + diff --git a/src/platform/DARWIN/AFSPreference/OpenAFS.xcodeproj/project.pbxproj b/src/platform/DARWIN/AFSPreference/OpenAFS.xcodeproj/project.pbxproj index c78cfd02c..d62b81243 100644 --- a/src/platform/DARWIN/AFSPreference/OpenAFS.xcodeproj/project.pbxproj +++ b/src/platform/DARWIN/AFSPreference/OpenAFS.xcodeproj/project.pbxproj @@ -17,7 +17,6 @@ 3228B9B01020526900DF98DA /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 3228B9AF1020526900DF98DA /* main.m */; }; 3228B9B4102052A900DF98DA /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 327309620C2AB433008C322B /* Security.framework */; }; 3228B9BE102052BE00DF98DA /* version.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3228B9BD102052BE00DF98DA /* version.plist */; }; - 3228B9D5102070A200DF98DA /* Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3276591D10204E08004CA418 /* Info.plist */; }; 322B90450C2F0A2D0068F99A /* start_afs.sh in Resources */ = {isa = PBXBuildFile; fileRef = 322B90430C2F0A2D0068F99A /* start_afs.sh */; }; 322B90460C2F0A2D0068F99A /* stop_afs.sh in Resources */ = {isa = PBXBuildFile; fileRef = 322B90440C2F0A2D0068F99A /* stop_afs.sh */; }; 322CEF600C211D220060D66D /* DBCellElement.m in Sources */ = {isa = PBXBuildFile; fileRef = 322CEF5F0C211D220060D66D /* DBCellElement.m */; }; @@ -58,6 +57,9 @@ 327756270C3053A100C15D11 /* TaskUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 327756260C3053A100C15D11 /* TaskUtil.m */; }; 327756280C3053A100C15D11 /* TaskUtil.h in Headers */ = {isa = PBXBuildFile; fileRef = 327756250C3053A100C15D11 /* TaskUtil.h */; }; 327756290C3053A100C15D11 /* TaskUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 327756260C3053A100C15D11 /* TaskUtil.m */; }; + 328014501025F503008E1060 /* afshlp in Resources */ = {isa = PBXBuildFile; fileRef = 49683EE40C3446380093C7C8 /* afshlp */; }; + 328014A71025FB2B008E1060 /* start_afs.sh in Resources */ = {isa = PBXBuildFile; fileRef = 322B90430C2F0A2D0068F99A /* start_afs.sh */; }; + 328014A81025FB2C008E1060 /* stop_afs.sh in Resources */ = {isa = PBXBuildFile; fileRef = 322B90440C2F0A2D0068F99A /* stop_afs.sh */; }; 32B0AFDF0C01729400272348 /* AFSPropertyManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 32B0AFDD0C01729400272348 /* AFSPropertyManager.h */; }; 32B0AFE00C01729400272348 /* AFSPropertyManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 32B0AFDE0C01729400272348 /* AFSPropertyManager.m */; }; 32B565740D8FAF62005255F2 /* NSString+search.h in Headers */ = {isa = PBXBuildFile; fileRef = 32B565720D8FAF62005255F2 /* NSString+search.h */; }; @@ -101,22 +103,6 @@ 499716940C23E36F001339E3 /* CellIp.h in Headers */ = {isa = PBXBuildFile; fileRef = 322CEF6C0C211DCC0060D66D /* CellIp.h */; }; 499716950C23E370001339E3 /* DBCellElement.m in Sources */ = {isa = PBXBuildFile; fileRef = 322CEF5F0C211D220060D66D /* DBCellElement.m */; }; 499716960C23E370001339E3 /* DBCellElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 322CEF5E0C211D220060D66D /* DBCellElement.h */; }; - 4998A6A40DC33C9300146652 /* afsltd.m in Sources */ = {isa = PBXBuildFile; fileRef = 4998A6A30DC33C9300146652 /* afsltd.m */; }; - 4998A6A50DC33CD800146652 /* AFSPropertyManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 32B0AFDE0C01729400272348 /* AFSPropertyManager.m */; }; - 4998A6A60DC33CDB00146652 /* DBCellElement.m in Sources */ = {isa = PBXBuildFile; fileRef = 322CEF5F0C211D220060D66D /* DBCellElement.m */; }; - 4998A6A70DC33CDB00146652 /* CellIp.m in Sources */ = {isa = PBXBuildFile; fileRef = 322CEF6D0C211DCC0060D66D /* CellIp.m */; }; - 4998A6A80DC33CE600146652 /* FileUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 3273088C0C2A9B05008C322B /* FileUtil.m */; }; - 4998A6A90DC33CE700146652 /* AuthUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 3213E9400C2ABFD200D3D2F6 /* AuthUtil.m */; }; - 4998A6AA0DC33CE800146652 /* TaskUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 327756260C3053A100C15D11 /* TaskUtil.m */; }; - 4998A6AB0DC33CE900146652 /* ViewUtility.m in Sources */ = {isa = PBXBuildFile; fileRef = 495B043F0D219A2900F1E328 /* ViewUtility.m */; }; - 4998A6AC0DC33CEA00146652 /* NSString+search.m in Sources */ = {isa = PBXBuildFile; fileRef = 32B565730D8FAF62005255F2 /* NSString+search.m */; }; - 4998A6AD0DC33CEB00146652 /* PListManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 498DCB420DC2240B00D143C8 /* PListManager.m */; }; - 4998A6F00DC3415600146652 /* SecurityFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 327308D20C2AA364008C322B /* SecurityFoundation.framework */; }; - 4998A6F10DC3415700146652 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 327309620C2AB433008C322B /* Security.framework */; }; - 4998A6F20DC3415800146652 /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 495C39460D81EA3C003426FC /* Kerberos.framework */; }; - 4998A6F30DC3415900146652 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 493564E70CE711F300699A24 /* Carbon.framework */; }; - 4998A6F40DC3415900146652 /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4940075A0CE62EB500F40D0A /* CoreServices.framework */; }; - 4998A6F50DC3415A00146652 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */; }; 49AF1F480C25B52A006A046E /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 49AF1F470C25B52A006A046E /* InfoPlist.strings */; }; 49B766450DCA47A50014A80F /* DialogUtility.h in Headers */ = {isa = PBXBuildFile; fileRef = 49B766430DCA47A50014A80F /* DialogUtility.h */; }; 49B766460DCA47A50014A80F /* DialogUtility.m in Sources */ = {isa = PBXBuildFile; fileRef = 49B766440DCA47A50014A80F /* DialogUtility.m */; }; @@ -132,18 +118,25 @@ /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ + 328014511025F52A008E1060 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 089C1669FE841209C02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 49683EE30C3446380093C7C8; + remoteInfo = afshlp; + }; 32E29A9810249A1200D2C2E5 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 089C1669FE841209C02AAC07 /* Project object */; proxyType = 1; - remoteGlobalIDString = 49683EE30C3446380093C7C8 /* afshlp */; + remoteGlobalIDString = 49683EE30C3446380093C7C8; remoteInfo = afshlp; }; 32E29A9A10249A1600D2C2E5 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 089C1669FE841209C02AAC07 /* Project object */; proxyType = 1; - remoteGlobalIDString = 3276591A10204E08004CA418 /* AFSBackgrounder */; + remoteGlobalIDString = 3276591A10204E08004CA418; remoteInfo = AFSBackgrounder; }; /* End PBXContainerItemProxy section */ @@ -216,12 +209,10 @@ 49683EEB0C3446600093C7C8 /* afshlp.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = afshlp.m; sourceTree = ""; }; 498DCB410DC2240B00D143C8 /* PListManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PListManager.h; sourceTree = ""; }; 498DCB420DC2240B00D143C8 /* PListManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PListManager.m; sourceTree = ""; }; - 4998A6860DC33BEC00146652 /* LoginTimeDaemon */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = LoginTimeDaemon; sourceTree = BUILT_PRODUCTS_DIR; }; - 4998A6A30DC33C9300146652 /* afsltd.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = afsltd.m; sourceTree = ""; }; 49B766430DCA47A50014A80F /* DialogUtility.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DialogUtility.h; sourceTree = ""; }; 49B766440DCA47A50014A80F /* DialogUtility.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DialogUtility.m; sourceTree = ""; }; 49E43BE60C47D9EE00084436 /* global.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = global.h; sourceTree = ""; }; - 8D202CF70486D31800D8A456 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 8D202CF70486D31800D8A456 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = AFSBackgrounder/resource/Info.plist; sourceTree = ""; }; 8D202CF80486D31800D8A456 /* OpenAFS.prefPane */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = OpenAFS.prefPane; sourceTree = BUILT_PRODUCTS_DIR; }; F506C035013D953901CA16C8 /* PreferencePanes.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = PreferencePanes.framework; path = /System/Library/Frameworks/PreferencePanes.framework; sourceTree = ""; }; F506C03C013D9D7901CA16C8 /* AFSCommanderPref.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AFSCommanderPref.h; sourceTree = ""; }; @@ -264,19 +255,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 4998A6840DC33BEC00146652 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 4998A6F00DC3415600146652 /* SecurityFoundation.framework in Frameworks */, - 4998A6F10DC3415700146652 /* Security.framework in Frameworks */, - 4998A6F20DC3415800146652 /* Kerberos.framework in Frameworks */, - 4998A6F30DC3415900146652 /* Carbon.framework in Frameworks */, - 4998A6F40DC3415900146652 /* CoreServices.framework in Frameworks */, - 4998A6F50DC3415A00146652 /* Cocoa.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; 8D202CF20486D31800D8A456 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; @@ -379,7 +357,6 @@ 8D202CF80486D31800D8A456 /* OpenAFS.prefPane */, 32CF01390C203C1800A8DC58 /* Test */, 49683EE40C3446380093C7C8 /* afshlp */, - 4998A6860DC33BEC00146652 /* LoginTimeDaemon */, 3276591B10204E08004CA418 /* AFSBackgrounder.app */, ); name = Products; @@ -416,11 +393,12 @@ 3228B9B21020527000DF98DA /* resource */ = { isa = PBXGroup; children = ( + 3276591D10204E08004CA418 /* Info.plist */, + 3228B9BD102052BE00DF98DA /* version.plist */, + 3231521910243E09005901AA /* AFSMenuCredentialContoller.h */, 3231522910243E2C005901AA /* hasToken.png */, 3231522A10243E2C005901AA /* noToken.png */, 3231522710243E21005901AA /* CredentialWindow.nib */, - 3276591D10204E08004CA418 /* Info.plist */, - 3228B9BD102052BE00DF98DA /* version.plist */, 3276592D10204F8D004CA418 /* AFSBackounderMainMenu.xib */, ); name = resource; @@ -479,7 +457,6 @@ 3231521E10243E09005901AA /* AFSMenuExtraView.m */, 3231521D10243E09005901AA /* AFSMenuExtraView.h */, 3231521A10243E09005901AA /* AFSMenuCredentialContoller.m */, - 3231521910243E09005901AA /* AFSMenuCredentialContoller.h */, 3231522310243E10005901AA /* CredentialWindow */, 3228B9B21020527000DF98DA /* resource */, ); @@ -509,7 +486,6 @@ children = ( 32CFFEFD0C20316B00A8DC58 /* TestLib.m */, 49683EEB0C3446600093C7C8 /* afshlp.m */, - 4998A6A30DC33C9300146652 /* afsltd.m */, ); name = "Stand Alone Program"; sourceTree = ""; @@ -573,6 +549,7 @@ buildRules = ( ); dependencies = ( + 328014521025F52A008E1060 /* PBXTargetDependency */, ); name = AFSBackgrounder; productName = AFSBackgrounder; @@ -611,22 +588,6 @@ productReference = 49683EE40C3446380093C7C8 /* afshlp */; productType = "com.apple.product-type.tool"; }; - 4998A6850DC33BEC00146652 /* LoginTimeDaemon */ = { - isa = PBXNativeTarget; - buildConfigurationList = 4998A6A10DC33C2000146652 /* Build configuration list for PBXNativeTarget "LoginTimeDaemon" */; - buildPhases = ( - 4998A6830DC33BEC00146652 /* Sources */, - 4998A6840DC33BEC00146652 /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = LoginTimeDaemon; - productName = LoginTimeDaemon; - productReference = 4998A6860DC33BEC00146652 /* LoginTimeDaemon */; - productType = "com.apple.product-type.tool"; - }; 8D202CE80486D31800D8A456 /* OpenAFS */ = { isa = PBXNativeTarget; buildConfigurationList = 1DBD214808BA80EA00186707 /* Build configuration list for PBXNativeTarget "OpenAFS" */; @@ -671,7 +632,6 @@ 8D202CE80486D31800D8A456 /* OpenAFS */, 32CF01380C203C1800A8DC58 /* Test */, 49683EE30C3446380093C7C8 /* afshlp */, - 4998A6850DC33BEC00146652 /* LoginTimeDaemon */, 3276591A10204E08004CA418 /* AFSBackgrounder */, ); }; @@ -684,10 +644,12 @@ files = ( 3276592E10204F8D004CA418 /* AFSBackounderMainMenu.xib in Resources */, 3228B9BE102052BE00DF98DA /* version.plist in Resources */, - 3228B9D5102070A200DF98DA /* Info.plist in Resources */, 3231522810243E21005901AA /* CredentialWindow.nib in Resources */, 3231522B10243E2C005901AA /* hasToken.png in Resources */, 3231522C10243E2C005901AA /* noToken.png in Resources */, + 328014501025F503008E1060 /* afshlp in Resources */, + 328014A71025FB2B008E1060 /* start_afs.sh in Resources */, + 328014A81025FB2C008E1060 /* stop_afs.sh in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -779,23 +741,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 4998A6830DC33BEC00146652 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 4998A6A40DC33C9300146652 /* afsltd.m in Sources */, - 4998A6A50DC33CD800146652 /* AFSPropertyManager.m in Sources */, - 4998A6A60DC33CDB00146652 /* DBCellElement.m in Sources */, - 4998A6A70DC33CDB00146652 /* CellIp.m in Sources */, - 4998A6A80DC33CE600146652 /* FileUtil.m in Sources */, - 4998A6A90DC33CE700146652 /* AuthUtil.m in Sources */, - 4998A6AA0DC33CE800146652 /* TaskUtil.m in Sources */, - 4998A6AB0DC33CE900146652 /* ViewUtility.m in Sources */, - 4998A6AC0DC33CEA00146652 /* NSString+search.m in Sources */, - 4998A6AD0DC33CEB00146652 /* PListManager.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; 8D202CF00486D31800D8A456 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -821,6 +766,11 @@ /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ + 328014521025F52A008E1060 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 49683EE30C3446380093C7C8 /* afshlp */; + targetProxy = 328014511025F52A008E1060 /* PBXContainerItemProxy */; + }; 32E29A9910249A1200D2C2E5 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 49683EE30C3446380093C7C8 /* afshlp */; @@ -1093,57 +1043,6 @@ }; name = Release; }; - 4998A6880DC33BED00146652 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ARCHS = "$(ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1)"; - ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1 = "ppc i386"; - COPY_PHASE_STRIP = NO; - GCC_DYNAMIC_NO_PIC = NO; - GCC_ENABLE_FIX_AND_CONTINUE = YES; - GCC_MODEL_TUNING = G5; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = "$(SYSTEM_LIBRARY_DIR)/Frameworks/AppKit.framework/Headers/AppKit.h"; - INSTALL_PATH = /usr/local/bin; - OTHER_LDFLAGS = ( - "-framework", - Foundation, - "-framework", - AppKit, - ); - PREBINDING = NO; - PRODUCT_NAME = LoginTimeDaemon; - }; - name = Debug; - }; - 4998A6890DC33BED00146652 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ARCHS = "$(ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1)"; - ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1 = "ppc i386"; - COPY_PHASE_STRIP = YES; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - GCC_ENABLE_FIX_AND_CONTINUE = NO; - GCC_MODEL_TUNING = G5; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = "$(SYSTEM_LIBRARY_DIR)/Frameworks/AppKit.framework/Headers/AppKit.h"; - GCC_WARN_UNUSED_PARAMETER = NO; - INSTALL_PATH = /usr/local/bin; - OTHER_LDFLAGS = ( - "-framework", - Foundation, - "-framework", - AppKit, - ); - PREBINDING = NO; - PRODUCT_NAME = LoginTimeDaemon; - ZERO_LINK = NO; - }; - name = Release; - }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ @@ -1192,15 +1091,6 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 4998A6A10DC33C2000146652 /* Build configuration list for PBXNativeTarget "LoginTimeDaemon" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 4998A6880DC33BED00146652 /* Debug */, - 4998A6890DC33BED00146652 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; /* End XCConfigurationList section */ }; rootObject = 089C1669FE841209C02AAC07 /* Project object */; diff --git a/src/platform/DARWIN/AFSPreference/PListManager.h b/src/platform/DARWIN/AFSPreference/PListManager.h index 0acdfe485..a59829487 100644 --- a/src/platform/DARWIN/AFSPreference/PListManager.h +++ b/src/platform/DARWIN/AFSPreference/PListManager.h @@ -17,10 +17,10 @@ #define AUTH_FILE_BK @"/etc/authorization_bk" #define TMP_FILE @"/tmp/authorization" +#define BACKGROUNDER_P_FILE @"it.infn.lnf.network.AFSBackgrounder" #define HOME_LAUNCHD_AGENT_FOLDER @"~/Library/LaunchAgents" #define BACKGROUNDER_LAUNCHD_CONTROL_FILE @"~/Library/LaunchAgents/it.infn.lnf.network.AFSBackgrounder.plist" #define BACKGROUNDER_LAUNCHD_TMP_CONTROL_FILE @"/tmp/it.infn.lnf.network.AFSBackgrounder.plist" -#define BACKGROUNDER_AGENT_NAME @"AFSBackgrounder.app/Contents/MacOS/AFSBackgrounder" #define LAUNCHD_DAEMON_FOLDER @"/Library/LaunchDaemons" #define AFS_STARTUP_TMP_CONTROL_FILE @"/tmp/it.infn.lnf.network.afsstartup.plist" @@ -68,4 +68,18 @@ @discussion <#(comprehensive description)#> */ +(void) manageAfsStartupLaunchdFile:(BOOL)enable afsStartupScript:(NSString*)afsStartupScript afsBasePath:(NSString*)afsBasePath afsdPath:(NSString*)afsdPath; + +/*! + @method launchctlCommand + @abstract exec the launchctl command on a particular plist job + @discussion <#(comprehensive description)#> +*/ ++(void) launchctlCommand:(BOOL)enable userDomain:(BOOL)userDomain option:(NSArray*)option plistName:(NSString*)plistName; + +/*! + @method launchdJobState + @abstract check is a job has been submitted to launchd + @discussion <#(comprehensive description)#> + */ ++(BOOL) launchdJobState:(NSString*)jobName; @end diff --git a/src/platform/DARWIN/AFSPreference/PListManager.m b/src/platform/DARWIN/AFSPreference/PListManager.m index ef94a6411..fac3772d6 100644 --- a/src/platform/DARWIN/AFSPreference/PListManager.m +++ b/src/platform/DARWIN/AFSPreference/PListManager.m @@ -10,6 +10,8 @@ #import "FileUtil.h" #import "TaskUtil.h" +#define BACKGROUNDER_AGENT_NAME @"AFSBackgrounder.app/Contents/MacOS/AFSBackgrounder" + @implementation PListManager // ------------------------------------------------------------------------------- // krb5TiketAtLoginTime: @@ -131,7 +133,8 @@ // ------------------------------------------------------------------------------- +(void) installBackgrounderLaunchdFile:(BOOL)install resourcePath:(NSString*) rsrcPath { NSData *plistData = nil; - NSMutableDictionary *launchdDic = nil; + NSMutableDictionary *launchdDic = nil; + NSMutableDictionary *keepAliveDic = nil; NSString *error = nil; NSString *backgrounderPath = [[rsrcPath stringByAppendingString:@"/"] stringByAppendingString:BACKGROUNDER_AGENT_NAME]; @@ -145,11 +148,18 @@ if(install) { if(![[NSFileManager defaultManager] fileExistsAtPath:[BACKGROUNDER_LAUNCHD_CONTROL_FILE stringByExpandingTildeInPath]]) { - launchdDic = [[NSMutableDictionary alloc] init]; + launchdDic = [[[NSMutableDictionary alloc] init] autorelease]; + keepAliveDic = [[[NSMutableDictionary alloc] init] autorelease]; [launchdDic setObject:@"it.infn.lnf.network.AFSBackgrounder" forKey:@"Label"]; + [keepAliveDic setObject:[NSNumber numberWithBool:NO] + forKey:@"SuccessfulExit"]; + + [launchdDic setObject:keepAliveDic + forKey:@"KeepAlive"]; + [launchdDic setObject:@"Aqua" forKey:@"LimitLoadToSessionType"]; @@ -222,15 +232,12 @@ if(enable) { //Check first if the launchd configuration file for startup is present if(![[NSFileManager defaultManager] fileExistsAtPath:[AFS_STARTUP_CONTROL_FILE stringByExpandingTildeInPath]]) { - launchdDic = [[NSMutableDictionary alloc] init]; + launchdDic = [[[NSMutableDictionary alloc] init] autorelease]; //argDic = [[NSMutableArray alloc] init]; [launchdDic setObject:@"it.infn.lnf.afsstartup" forKey:@"Label"]; - //[argDic addObject:afsStartupScript]; - //[argDic addObject:afsBasePath/*"/var/db/openafs"*/]; - //[argDic addObject:afsdPath/*"/usr/sbin/afsd"*/]; [launchdDic setObject:[NSArray arrayWithObjects:afsStartupScript, afsBasePath, afsdPath, nil] forKey:@"ProgramArguments"]; @@ -263,4 +270,46 @@ } +// ------------------------------------------------------------------------------- +// launchctlCommand: +// ------------------------------------------------------------------------------- ++(void) launchctlCommand:(BOOL)enable + userDomain:(BOOL)userDomain + option:(NSArray*)option + plistName:(NSString*)plistName { + NSMutableArray *argument = [NSMutableArray array]; + NSMutableString *commandPath = [NSMutableString stringWithCapacity:0]; + NSUInteger searchDomain = userDomain?NSUserDomainMask:NSSystemDomainMask; + // + NSArray *libraryPath = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, searchDomain, YES); + //set the load unload + [argument addObject:enable?@"load":@"unload"]; + + //if there are load the user custo option + if(option) [argument addObjectsFromArray:option]; + + //construct the path + [commandPath appendString:[libraryPath objectAtIndex:0]]; + [commandPath appendFormat:@"/LaunchAgents/%@", plistName]; + + [argument addObject:commandPath]; + //exec the command + [TaskUtil executeTaskSearchingPath:@"launchctl" + args:argument]; +} + +// ------------------------------------------------------------------------------- +// launchdJobState: +// ------------------------------------------------------------------------------- ++(BOOL) launchdJobState:(NSString*)jobName { + NSMutableArray *argument = [NSMutableArray array]; + + //set the load unload + [argument addObject:@"list"]; + [argument addObject:jobName]; + //exec the command + NSString *taskResult =[TaskUtil executeTaskSearchingPath:@"launchctl" + args:argument]; + return taskResult && [taskResult rangeOfString:jobName].location != NSNotFound; +} @end diff --git a/src/platform/DARWIN/AFSPreference/TaskUtil.m b/src/platform/DARWIN/AFSPreference/TaskUtil.m index abc79c93e..e325accac 100644 --- a/src/platform/DARWIN/AFSPreference/TaskUtil.m +++ b/src/platform/DARWIN/AFSPreference/TaskUtil.m @@ -122,5 +122,4 @@ return status; } - @end diff --git a/src/platform/DARWIN/AFSPreference/ViewUtility.m b/src/platform/DARWIN/AFSPreference/ViewUtility.m index 00291a187..09e73fad2 100644 --- a/src/platform/DARWIN/AFSPreference/ViewUtility.m +++ b/src/platform/DARWIN/AFSPreference/ViewUtility.m @@ -15,14 +15,13 @@ { if(!parentView) return; NSArray *views = [parentView subviews]; - for(int idx = 0; idx < [views count]; idx++) { NSObject *obj = [views objectAtIndex:idx]; - if([obj respondsToSelector:@selector(setEnabled:)]) + if([obj isKindOfClass:[NSButton class]]) { - //[obj setEnabled:controlState]; - [obj performSelector:@selector(setEnabled:) withObject:controlState]; + [(NSButton*)obj setEnabled:controlState]; + //[obj performSelector:@selector(setEnabled:) withObject:controlState]; } } diff --git a/src/platform/DARWIN/AFSPreference/afshlp.m b/src/platform/DARWIN/AFSPreference/afshlp.m index 809274b79..5860844ac 100644 --- a/src/platform/DARWIN/AFSPreference/afshlp.m +++ b/src/platform/DARWIN/AFSPreference/afshlp.m @@ -21,6 +21,7 @@ #include #include #include +#include #import "TaskUtil.h" #import "AuthUtil.h" #import "PListManager.h" @@ -179,7 +180,7 @@ void runWithSelfRepair(char *selfPath, int argc, char *argv[]) // Make the qargs array for passing to child the same args of father - const char *arguments = {argv[1], argv[2], argv[3], "--self-repair", 0L}; + const char *arguments[] = {argv[1], argv[2], argv[3], "--self-repair", 0L}; // Get the privileged AuthorizationRef [[AuthUtil shared] autorize]; -- 2.39.5