dafc026f87a6bd8284b75f3fa0a9a64f93ff72bb
[openafs.git] / src / platform / DARWIN / AFSPreference / PListManager.h
1 //
2 //  PListManager.h
3 //  OpenAFS
4 //
5 //  Created by Claudio Bisegni LNF - INFN on 25/04/08.
6 //  Copyright 2008 Infn. All rights reserved.
7 //
8
9 #import <Cocoa/Cocoa.h>
10
11 #define DELETE_IN_10_4  @"authinternal"
12 #define DELETE_IN_10_5  @"builtin:authenticate,privileged"
13 #define ADD_IN_PLIST    @"builtin:krb5authnoverify,privileged"
14
15 #define AUTH_FILE_DIR   @"/etc"
16 #define AUTH_FILE               @"/etc/authorization"
17 #define AUTH_FILE_BK    @"/etc/authorization_bk"
18 #define TMP_FILE                @"/tmp/authorization"
19
20 #define HOME_LAUNCHD_AGENT_FOLDER               @"~/Library/LaunchAgents"
21 #define AKLOG_LAUNCHD_CONTROL_FILE              @"~/Library/LaunchAgents/it.infn.lnf.afslogintimedaemon.plist"
22 #define AKLOG_LAUNCHD_TMP_CONTROL_FILE  @"/tmp/it.infn.lnf.afslogintimedaemon.plist"
23 #define LOGIN_TIME_DAEMON_NAME                  @"LoginTimeDaemon"
24
25 #define LAUNCHD_DAEMON_FOLDER                   @"/Library/LaunchDaemons"
26 #define AFS_STARTUP_TMP_CONTROL_FILE    @"/tmp/it.infn.lnf.afsstartup.plist"
27 #define AFS_STARTUP_CONTROL_FILE                @"/Library/LaunchDaemons/it.infn.lnf.afsstartup.plist"
28
29 /*!
30     @class               PListManager
31     @abstract    Utility class for modify the plist used by sistem for make login
32     @discussion  <#(comprehensive description)#>
33 */
34
35 @interface PListManager : NSObject {
36
37 }
38 /*!
39  @method     krb5TiketAtLoginTime
40  @abstract   Enable or disable the system to get kerberos ticket at login time
41  @discussion <#(comprehensive description)#>
42  */
43 +(void) krb5TiketAtLoginTime:(BOOL)enable;
44
45 /*!
46  @method     checkKrb5AtLoginTimeLaunchdEnable
47  @abstract   check if the system is configured to ket krb5 ticket at login
48  @discussion <#(comprehensive description)#>
49  */
50 +(BOOL) checkKrb5AtLoginTimeLaunchdEnable;
51
52 /*!
53  @method     installLaunchdFile
54  @abstract   Install the afs agent launchd config file
55  @discussion <#(comprehensive description)#>
56  */
57 +(void) installLaunchdFile:(BOOL)install resourcePath:(NSString*) rsrcPath;
58 /*!
59  @method     checkAklogAtLoginTimeLaunchdEnable
60  @abstract   check if the user has installed  or enabled the afs agent
61  @discussion <#(comprehensive description)#>
62  */
63 +(BOOL) checkAklogAtLoginTimeLaunchdEnable;
64
65 /*!
66  @method     installAfsStartupLaunchdFile
67  @abstract   Install the afs daemon launchd config file for startup afs at boot
68  @discussion <#(comprehensive description)#>
69  */
70 +(void) manageAfsStartupLaunchdFile:(BOOL)enable afsStartupScript:(NSString*)afsStartupScript afsBasePath:(NSString*)afsBasePath  afsdPath:(NSString*)afsdPath;
71 @end