Skip to content

Commit

Permalink
Read credential files using dataWithContentsOfFile
Browse files Browse the repository at this point in the history
Again, to cope with older gnusteps which don't have
stringWithContentsOfFile:encoding:error:
  • Loading branch information
Jean Raby committed Jan 31, 2013
1 parent e01b190 commit 225a282
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 14 deletions.
18 changes: 10 additions & 8 deletions Tools/SOGoToolExpireAutoReply.m
Expand Up @@ -180,7 +180,7 @@ - (void) expireAutoReplyWithUsername: (NSString *) theUsername

- (BOOL) run
{
NSError *err;
NSData *credsData;
NSRange r;
NSString *creds, *credsFile, *authname, *authpwd;
BOOL rc;
Expand All @@ -195,15 +195,17 @@ - (BOOL) run
credsFile = [[NSUserDefaults standardUserDefaults] stringForKey: @"p"];
if (credsFile)
{
creds = [NSString stringWithContentsOfFile: credsFile
encoding: NSUTF8StringEncoding
error: &err];
if (!creds)
credsData = [NSData dataWithContentsOfFile: credsFile];
if (credsData == nil)
{
NSLog(@"Error reading credential file '%@': %@", credsFile, err);
NSLog(@"Error reading credential file '%@'", credsFile);
return NO;
}
creds = [creds stringByTrimmingCharactersInSet:
[NSCharacterSet newlineCharacterSet]];
creds = [[NSString alloc] initWithData: credsData
encoding: NSUTF8StringEncoding];
[creds autorelease];
creds = [creds stringByTrimmingCharactersInSet:
[NSCharacterSet characterSetWithCharactersInString: @"\r\n"]];
}

if (max > 0)
Expand Down
17 changes: 11 additions & 6 deletions Tools/SOGoToolUserPreferences.m
Expand Up @@ -109,25 +109,30 @@ - (BOOL) _updateSieveScripsForkey: (NSString *) theKey
[theKey caseInsensitiveCompare: @"Vacation"] == NSOrderedSame)
{
/* credentials file handling */
NSData *credsData;
NSRange r;
NSString *credsFile, *creds, *authname, *authpwd;
authname = nil;
authpwd = nil;


credsFile = [[NSUserDefaults standardUserDefaults] stringForKey: @"p"];
if (credsFile)
{
/* TODO: add back support for user:pwd here? */
creds = [NSString stringWithContentsOfFile: credsFile
encoding: NSUTF8StringEncoding
error: NULL];
if (creds == nil)
credsData = [NSData dataWithContentsOfFile: credsFile];
if (credsData == nil)
{
NSLog(@"Error reading credential file '%@'", credsFile);
return NO;
}
creds = [creds stringByTrimmingCharactersInSet:
[NSCharacterSet newlineCharacterSet]];

creds = [[NSString alloc] initWithData: credsData
encoding: NSUTF8StringEncoding];
[creds autorelease];
creds = [creds stringByTrimmingCharactersInSet:
[NSCharacterSet characterSetWithCharactersInString: @"\r\n"]];

r = [creds rangeOfString: @":"];
authname = [creds substringToIndex: r.location];
authpwd = [creds substringFromIndex: r.location+1];
Expand Down

0 comments on commit 225a282

Please sign in to comment.