1// Copyright 2015-present 650 Industries. All rights reserved. 2#import "EXScopedFilePermissionModule.h" 3#import <EXFileSystemInterface/EXFileSystemInterface.h> 4#import <EXConstantsInterface/EXConstantsInterface.h> 5 6@implementation EXScopedFilePermissionModule 7 8- (EXFileSystemPermissionFlags)getExternalPathPermissions:(NSString *)path 9{ 10 // may block access to external paths which contain "ExponentExperienceData" 11 if (![self shouldForbidAccessToExternalDirectories] || (![path containsString:@"ExponentExperienceData"])) { 12 return [super getExternalPathPermissions:path]; 13 } 14 return EXFileSystemPermissionNone; 15} 16 17- (BOOL)shouldForbidAccessToExternalDirectories { 18 id<EXConstantsInterface> constantsModule = [[self moduleRegistry] getModuleImplementingProtocol:@protocol(EXConstantsInterface)]; 19 return [@"expo" isEqualToString:constantsModule.appOwnership]; 20} 21 22@end 23