diff --git a/configure/Configure/Info.plist b/configure/Configure/Info.plist index f305f315..23a135c2 100644 --- a/configure/Configure/Info.plist +++ b/configure/Configure/Info.plist @@ -13,11 +13,11 @@ CFBundlePackageType APPL CFBundleShortVersionString - 1.2.1 + $(MARKETING_VERSION) CFBundleSignature ???? CFBundleVersion - 1.2.1 + $(CURRENT_PROJECT_VERSION) NSHumanReadableCopyright Copyright (c) 2019 Objective-See. All rights reserved. NSMainNibFile @@ -27,7 +27,7 @@ SMPrivilegedExecutables com.objective-see.lulu.configHelper - anchor apple generic and identifier "com.objective-see.lulu.configHelper" and (certificate leaf[field.1.2.840.113635.100.6.1.9] /* exists */ or certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = VBG97UB4TA) + anchor apple generic and identifier "com.objective-see.lulu.configHelper" and (certificate leaf[field.1.2.840.113635.100.6.1.9] /* exists */ or certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = VBG97UB4TA) diff --git a/configure/configure.xcodeproj/project.pbxproj b/configure/configure.xcodeproj/project.pbxproj index 1b50172a..64d55212 100644 --- a/configure/configure.xcodeproj/project.pbxproj +++ b/configure/configure.xcodeproj/project.pbxproj @@ -478,6 +478,7 @@ CODE_SIGN_IDENTITY = "Developer ID Application"; CODE_SIGN_STYLE = Manual; COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1.2.2; DEVELOPMENT_TEAM = VBG97UB4TA; ENABLE_HARDENED_RUNTIME = YES; FRAMEWORK_SEARCH_PATHS = "$(PROJECT_DIR)/../Carthage/Build/Mac"; @@ -485,6 +486,7 @@ INFOPLIST_FILE = configure/Info.plist; LIBRARY_SEARCH_PATHS = ""; MACOSX_DEPLOYMENT_TARGET = 10.12; + MARKETING_VERSION = 1.2.2; OTHER_CODE_SIGN_FLAGS = "-o hard,kill,library"; PRODUCT_BUNDLE_IDENTIFIER = "com.objective-see.lulu.installer"; PRODUCT_NAME = "LuLu Installer"; @@ -503,6 +505,7 @@ CODE_SIGN_IDENTITY = "Developer ID Application"; CODE_SIGN_STYLE = Manual; COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1.2.2; DEVELOPMENT_TEAM = VBG97UB4TA; ENABLE_HARDENED_RUNTIME = YES; FRAMEWORK_SEARCH_PATHS = "$(PROJECT_DIR)/../Carthage/Build/Mac"; @@ -510,6 +513,7 @@ INFOPLIST_FILE = configure/Info.plist; LIBRARY_SEARCH_PATHS = ""; MACOSX_DEPLOYMENT_TARGET = 10.12; + MARKETING_VERSION = 1.2.2; OTHER_CODE_SIGN_FLAGS = "-o hard,kill,library"; PRODUCT_BUNDLE_IDENTIFIER = "com.objective-see.lulu.installer"; PRODUCT_NAME = "LuLu Installer"; diff --git a/kernelExtension/kernelExtension.xcodeproj/project.pbxproj b/kernelExtension/kernelExtension.xcodeproj/project.pbxproj index a7f91381..1ff6c0ab 100644 --- a/kernelExtension/kernelExtension.xcodeproj/project.pbxproj +++ b/kernelExtension/kernelExtension.xcodeproj/project.pbxproj @@ -291,10 +291,11 @@ buildSettings = { CODE_SIGN_IDENTITY = "Developer ID Application"; COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1.0.0; + CURRENT_PROJECT_VERSION = 1.2.2; DEVELOPMENT_TEAM = VBG97UB4TA; INFOPLIST_FILE = kernelExtension/Info.plist; MACOSX_DEPLOYMENT_TARGET = 10.12; + MARKETING_VERSION = 1.2.2; MODULE_NAME = "com.objective-see.lulu"; MODULE_VERSION = 1.2.1; PRODUCT_BUNDLE_IDENTIFIER = "com.objective-see.lulu"; @@ -311,10 +312,11 @@ buildSettings = { CODE_SIGN_IDENTITY = "Developer ID Application"; COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1.0.0; + CURRENT_PROJECT_VERSION = 1.2.2; DEVELOPMENT_TEAM = VBG97UB4TA; INFOPLIST_FILE = kernelExtension/Info.plist; MACOSX_DEPLOYMENT_TARGET = 10.12; + MARKETING_VERSION = 1.2.2; MODULE_NAME = "com.objective-see.lulu"; MODULE_VERSION = 1.2.1; PRODUCT_BUNDLE_IDENTIFIER = "com.objective-see.lulu"; diff --git a/kernelExtension/kernelExtension/Info.plist b/kernelExtension/kernelExtension/Info.plist index 444c1a24..bb3ce1eb 100644 --- a/kernelExtension/kernelExtension/Info.plist +++ b/kernelExtension/kernelExtension/Info.plist @@ -15,9 +15,9 @@ CFBundlePackageType KEXT CFBundleShortVersionString - 1.2.1 + $(MARKETING_VERSION) CFBundleVersion - 1.2.1 + $(CURRENT_PROJECT_VERSION) IOKitPersonalities Firewall diff --git a/launchDaemon/launchDaemon.xcodeproj/project.pbxproj b/launchDaemon/launchDaemon.xcodeproj/project.pbxproj index 739387e4..5ac4838a 100644 --- a/launchDaemon/launchDaemon.xcodeproj/project.pbxproj +++ b/launchDaemon/launchDaemon.xcodeproj/project.pbxproj @@ -497,12 +497,14 @@ CODE_SIGN_IDENTITY = "Developer ID Application"; CODE_SIGN_STYLE = Manual; COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1.2.2; DEVELOPMENT_TEAM = VBG97UB4TA; ENABLE_HARDENED_RUNTIME = YES; GCC_C_LANGUAGE_STANDARD = gnu11; INFOPLIST_FILE = launchDaemonBundle/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles"; MACOSX_DEPLOYMENT_TARGET = 10.12; + MARKETING_VERSION = 1.2.2; OTHER_CFLAGS = "-DLAUNCH_DAEMON=1"; OTHER_CODE_SIGN_FLAGS = "-o hard,kill,library"; PRODUCT_BUNDLE_IDENTIFIER = "com.objective-see.lulu.bundle"; @@ -523,12 +525,14 @@ CODE_SIGN_IDENTITY = "Developer ID Application"; CODE_SIGN_STYLE = Manual; COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1.2.2; DEVELOPMENT_TEAM = VBG97UB4TA; ENABLE_HARDENED_RUNTIME = YES; GCC_C_LANGUAGE_STANDARD = gnu11; INFOPLIST_FILE = launchDaemonBundle/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles"; MACOSX_DEPLOYMENT_TARGET = 10.12; + MARKETING_VERSION = 1.2.2; OTHER_CFLAGS = "-DLAUNCH_DAEMON=1"; OTHER_CODE_SIGN_FLAGS = "-o hard,kill,library"; PRODUCT_BUNDLE_IDENTIFIER = "com.objective-see.lulu.bundle"; diff --git a/launchDaemon/launchDaemonBundle/Info.plist b/launchDaemon/launchDaemonBundle/Info.plist index 7d726277..7bea2e1d 100644 --- a/launchDaemon/launchDaemonBundle/Info.plist +++ b/launchDaemon/launchDaemonBundle/Info.plist @@ -15,9 +15,9 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 1.2.1 + $(MARKETING_VERSION) CFBundleVersion - 1.2.1 + $(CURRENT_PROJECT_VERSION) NSHumanReadableCopyright Copyright (c) 2019 Objective-See. All rights reserved. NSPrincipalClass diff --git a/loginItem/loginItem.xcodeproj/project.pbxproj b/loginItem/loginItem.xcodeproj/project.pbxproj index 0bd48b02..416b42d6 100644 --- a/loginItem/loginItem.xcodeproj/project.pbxproj +++ b/loginItem/loginItem.xcodeproj/project.pbxproj @@ -461,17 +461,22 @@ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CODE_SIGN_IDENTITY = "Developer ID Application"; COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1.2.2; DEVELOPMENT_TEAM = VBG97UB4TA; ENABLE_HARDENED_RUNTIME = YES; FRAMEWORK_SEARCH_PATHS = "$(PROJECT_DIR)/../Carthage/Build/Mac"; INFOPLIST_FILE = loginItem/Info.plist; LIBRARY_SEARCH_PATHS = "$(PROJECT_DIR)/../shared/libs"; + MARKETING_VERSION = 1.2.2; + ONLY_ACTIVE_ARCH = YES; OTHER_CFLAGS = "-DLOGIN_ITEM=1"; OTHER_CODE_SIGN_FLAGS = "-o hard,kill,library"; OTHER_LDFLAGS = "-Wl,-sectcreate,__RESTRICT,__restrict,/dev/null"; PRODUCT_BUNDLE_IDENTIFIER = "com.objective-see.lulu.helper"; PRODUCT_NAME = "LuLu Helper"; + SDKROOT = macosx10.14; SKIP_INSTALL = YES; + VALID_ARCHS = x86_64; }; name = Debug; }; @@ -481,17 +486,22 @@ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CODE_SIGN_IDENTITY = "Developer ID Application"; COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1.2.2; DEVELOPMENT_TEAM = VBG97UB4TA; ENABLE_HARDENED_RUNTIME = YES; FRAMEWORK_SEARCH_PATHS = "$(PROJECT_DIR)/../Carthage/Build/Mac"; INFOPLIST_FILE = loginItem/Info.plist; LIBRARY_SEARCH_PATHS = "$(PROJECT_DIR)/../shared/libs"; + MARKETING_VERSION = 1.2.2; + ONLY_ACTIVE_ARCH = YES; OTHER_CFLAGS = "-DLOGIN_ITEM=1"; OTHER_CODE_SIGN_FLAGS = "-o hard,kill,library"; OTHER_LDFLAGS = "-Wl,-sectcreate,__RESTRICT,__restrict,/dev/null"; PRODUCT_BUNDLE_IDENTIFIER = "com.objective-see.lulu.helper"; PRODUCT_NAME = "LuLu Helper"; + SDKROOT = macosx10.14; SKIP_INSTALL = YES; + VALID_ARCHS = x86_64; }; name = Release; }; diff --git a/loginItem/loginItem/Assets.xcassets/MainAppIcon.imageset/Contents.json b/loginItem/loginItem/Assets.xcassets/MainAppIcon.imageset/Contents.json new file mode 100644 index 00000000..51b2c2a2 --- /dev/null +++ b/loginItem/loginItem/Assets.xcassets/MainAppIcon.imageset/Contents.json @@ -0,0 +1,35 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "luluIcon-1.pdf" + }, + { + "idiom" : "mac", + "filename" : "luluIcon.pdf", + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "light" + } + ] + }, + { + "idiom" : "mac", + "filename" : "luluIcon_dark.pdf", + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "dark" + } + ] + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "preserves-vector-representation" : true + } +} \ No newline at end of file diff --git a/loginItem/loginItem/Assets.xcassets/MainAppIcon.imageset/luluIcon-1.pdf b/loginItem/loginItem/Assets.xcassets/MainAppIcon.imageset/luluIcon-1.pdf new file mode 100644 index 00000000..84728fa2 Binary files /dev/null and b/loginItem/loginItem/Assets.xcassets/MainAppIcon.imageset/luluIcon-1.pdf differ diff --git a/loginItem/loginItem/Assets.xcassets/MainAppIcon.imageset/luluIcon.pdf b/loginItem/loginItem/Assets.xcassets/MainAppIcon.imageset/luluIcon.pdf new file mode 100644 index 00000000..84728fa2 Binary files /dev/null and b/loginItem/loginItem/Assets.xcassets/MainAppIcon.imageset/luluIcon.pdf differ diff --git a/loginItem/loginItem/Assets.xcassets/MainAppIcon.imageset/luluIcon_dark.pdf b/loginItem/loginItem/Assets.xcassets/MainAppIcon.imageset/luluIcon_dark.pdf new file mode 100644 index 00000000..1b8d6669 Binary files /dev/null and b/loginItem/loginItem/Assets.xcassets/MainAppIcon.imageset/luluIcon_dark.pdf differ diff --git a/loginItem/loginItem/Assets.xcassets/MainAppLuLuText.imageset/Contents.json b/loginItem/loginItem/Assets.xcassets/MainAppLuLuText.imageset/Contents.json new file mode 100644 index 00000000..78be079b --- /dev/null +++ b/loginItem/loginItem/Assets.xcassets/MainAppLuLuText.imageset/Contents.json @@ -0,0 +1,35 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "lulu_text.pdf" + }, + { + "idiom" : "mac", + "filename" : "lulu_text-1.pdf", + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "light" + } + ] + }, + { + "idiom" : "mac", + "filename" : "lulu_text-2.pdf", + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "dark" + } + ] + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "preserves-vector-representation" : true + } +} \ No newline at end of file diff --git a/loginItem/loginItem/Assets.xcassets/MainAppLuLuText.imageset/lulu_text-1.pdf b/loginItem/loginItem/Assets.xcassets/MainAppLuLuText.imageset/lulu_text-1.pdf new file mode 100644 index 00000000..ee3f02f4 Binary files /dev/null and b/loginItem/loginItem/Assets.xcassets/MainAppLuLuText.imageset/lulu_text-1.pdf differ diff --git a/loginItem/loginItem/Assets.xcassets/MainAppLuLuText.imageset/lulu_text-2.pdf b/loginItem/loginItem/Assets.xcassets/MainAppLuLuText.imageset/lulu_text-2.pdf new file mode 100644 index 00000000..ee3f02f4 Binary files /dev/null and b/loginItem/loginItem/Assets.xcassets/MainAppLuLuText.imageset/lulu_text-2.pdf differ diff --git a/loginItem/loginItem/Assets.xcassets/MainAppLuLuText.imageset/lulu_text.pdf b/loginItem/loginItem/Assets.xcassets/MainAppLuLuText.imageset/lulu_text.pdf new file mode 100644 index 00000000..ee3f02f4 Binary files /dev/null and b/loginItem/loginItem/Assets.xcassets/MainAppLuLuText.imageset/lulu_text.pdf differ diff --git a/loginItem/loginItem/Info.plist b/loginItem/loginItem/Info.plist index 97e9eda1..0904d8b4 100644 --- a/loginItem/loginItem/Info.plist +++ b/loginItem/loginItem/Info.plist @@ -17,11 +17,11 @@ CFBundlePackageType APPL CFBundleShortVersionString - 1.2.1 + $(MARKETING_VERSION) CFBundleSignature ???? CFBundleVersion - 1.2.1 + $(CURRENT_PROJECT_VERSION) LSMinimumSystemVersion $(MACOSX_DEPLOYMENT_TARGET) LSUIElement diff --git a/mainApp/mainApp.xcodeproj/project.pbxproj b/mainApp/mainApp.xcodeproj/project.pbxproj index 33bcf11a..56cf3445 100644 --- a/mainApp/mainApp.xcodeproj/project.pbxproj +++ b/mainApp/mainApp.xcodeproj/project.pbxproj @@ -491,17 +491,21 @@ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CODE_SIGN_IDENTITY = "Developer ID Application"; COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1.2.2; DEVELOPMENT_TEAM = VBG97UB4TA; ENABLE_HARDENED_RUNTIME = YES; FRAMEWORK_SEARCH_PATHS = "$(PROJECT_DIR)/../Carthage/Build/Mac"; INFOPLIST_FILE = mainApp/Info.plist; MACOSX_DEPLOYMENT_TARGET = 10.12; + MARKETING_VERSION = 1.2.2; + ONLY_ACTIVE_ARCH = YES; OTHER_CODE_SIGN_FLAGS = "-o hard,kill,library"; OTHER_LDFLAGS = "-Wl,-sectcreate,__RESTRICT,__restrict,/dev/null"; PRODUCT_BUNDLE_IDENTIFIER = "com.objective-see.lulu"; PRODUCT_NAME = LuLu; SDKROOT = macosx10.14; SKIP_INSTALL = YES; + VALID_ARCHS = x86_64; }; name = Debug; }; @@ -511,17 +515,21 @@ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CODE_SIGN_IDENTITY = "Developer ID Application"; COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1.2.2; DEVELOPMENT_TEAM = VBG97UB4TA; ENABLE_HARDENED_RUNTIME = YES; FRAMEWORK_SEARCH_PATHS = "$(PROJECT_DIR)/../Carthage/Build/Mac"; INFOPLIST_FILE = mainApp/Info.plist; MACOSX_DEPLOYMENT_TARGET = 10.12; + MARKETING_VERSION = 1.2.2; + ONLY_ACTIVE_ARCH = YES; OTHER_CODE_SIGN_FLAGS = "-o hard,kill,library"; OTHER_LDFLAGS = "-Wl,-sectcreate,__RESTRICT,__restrict,/dev/null"; PRODUCT_BUNDLE_IDENTIFIER = "com.objective-see.lulu"; PRODUCT_NAME = LuLu; SDKROOT = macosx10.14; SKIP_INSTALL = YES; + VALID_ARCHS = x86_64; }; name = Release; }; diff --git a/mainApp/mainApp/Info.plist b/mainApp/mainApp/Info.plist index a1a742ac..18bec2e9 100644 --- a/mainApp/mainApp/Info.plist +++ b/mainApp/mainApp/Info.plist @@ -17,11 +17,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 1.2.1 - CFBundleVersion - 1.2.1 - LSMinimumSystemVersion - $(MACOSX_DEPLOYMENT_TARGET) + $(MARKETING_VERSION) CFBundleURLTypes @@ -35,6 +31,10 @@ + CFBundleVersion + $(CURRENT_PROJECT_VERSION) + LSMinimumSystemVersion + $(MACOSX_DEPLOYMENT_TARGET) NSHumanReadableCopyright Copyright (c) 2019 Objective-See. All rights reserved. NSMainNibFile diff --git a/shared/utilities.m b/shared/utilities.m index 9d3c2aeb..b0df00aa 100644 --- a/shared/utilities.m +++ b/shared/utilities.m @@ -856,33 +856,48 @@ void wait4kext(NSString* kext) return; } -//wait until a window is non nil -// then make it modal +//wait till window non-nil +// then make that window modal void makeModal(NSWindowController* windowController) { - //wait up to 1 second window to be non-nil - // then make modal + //window + __block NSWindow* window = nil; + + //wait till non-nil + // then make window modal for(int i=0; i<20; i++) { - //can make it modal once we have a window - if(nil != windowController.window) + //grab window + dispatch_sync(dispatch_get_main_queue(), ^{ + + //grab + window = windowController.window; + + }); + + //nil? + // nap + if(nil == window) { - //make modal on main thread - dispatch_sync(dispatch_get_main_queue(), ^{ - - //modal - [[NSApplication sharedApplication] runModalForWindow:windowController.window]; - - }); + //nap + [NSThread sleepForTimeInterval:0.05f]; - //all done - break; + //next + continue; } - //nap - [NSThread sleepForTimeInterval:0.05f]; + //have window? + // make it modal + dispatch_sync(dispatch_get_main_queue(), ^{ + + //modal + [[NSApplication sharedApplication] runModalForWindow:windowController.window]; + + }); - }//until 1 second + //done + break; + } return; }