summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMarshall Vale <mjv@mit.edu>2000-02-08 23:02:47 +0000
committerMarshall Vale <mjv@mit.edu>2000-02-08 23:02:47 +0000
commitecb1dc32351e091f5c359ecc3f905d5b71118e9c (patch)
tree56f7499e6e3395c2f6a2d3538e1484fb2d6ef72f /src
parent3fbf0ebdc509c29e221f6ba2f6db9c8cdb7eaf88 (diff)
downloadkrb5-ecb1dc32351e091f5c359ecc3f905d5b71118e9c.tar.gz
krb5-ecb1dc32351e091f5c359ecc3f905d5b71118e9c.tar.xz
krb5-ecb1dc32351e091f5c359ecc3f905d5b71118e9c.zip
Limited support for Applicaiton Support folder as location for krb5.ini on the Mac added
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@12026 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
-rw-r--r--src/lib/krb5/os/init_os_ctx.c32
1 files changed, 24 insertions, 8 deletions
diff --git a/src/lib/krb5/os/init_os_ctx.c b/src/lib/krb5/os/init_os_ctx.c
index 0afef471d..0297a7b7a 100644
--- a/src/lib/krb5/os/init_os_ctx.c
+++ b/src/lib/krb5/os/init_os_ctx.c
@@ -31,11 +31,13 @@
#ifdef macintosh
OSErr
-GetMacProfileFileSpec (FSSpec* outFileSpec, StringPtr inName)
+GetMacProfileFileSpec (FSSpec* outFileSpec, StringPtr inName, UInt32 whichFolder)
{
OSErr err;
- err = FindFolder (kOnSystemDisk, kPreferencesFolderType, kCreateFolder,
+
+
+ err = FindFolder (kOnSystemDisk, whichFolder, kCreateFolder,
&(outFileSpec -> vRefNum) , &(outFileSpec -> parID));
if (err == noErr) {
@@ -202,15 +204,29 @@ os_get_default_config_files(pfiles, secure)
{
profile_filespec_t* files;
#ifdef macintosh
- files = malloc(3 * sizeof(FSSpec));
+ files = malloc(5 * sizeof(FSSpec));
+
if (files != 0) {
- OSErr err = GetMacProfileFileSpec(&(files [0]), "\pKerberos5 Configuration");
+ OSErr err = GetMacProfileFileSpec(&(files [2]), "\pKerberos5 Configuration", kApplicationSupportFolderType);
+ if (err == noErr) {
+ err = GetMacProfileFileSpec( &(files [3]), "\pkrb5.ini", kApplicationSupportFolderType);
+ }
+
+ if (err == noErr) {
+ files[4].vRefNum = 0;
+ files[4].parID = 0;
+ files[4].name[0] = '\0';
+ } else {
+ files[2].vRefNum = 0;
+ files[2].parID = 0;
+ files[2].name[0] = '\0';
+ }
+
+ err = GetMacProfileFileSpec(&(files [0]), "\pKerberos5 Configuration", kPreferencesFolderType);
if (err == noErr) {
- err = GetMacProfileFileSpec( &(files [1]), "\pkrb5.ini");
+ err = GetMacProfileFileSpec( &(files [1]), "\pkrb5.ini", kPreferencesFolderType);
}
- files[2].vRefNum = 0;
- files[2].parID = 0;
- files[2].name[0] = '\0';
+
if (err != noErr) {
free (files);
return ENFILE;