265 lines
5.3 KiB
C
265 lines
5.3 KiB
C
//
|
|
// file: consts.h
|
|
// project: OverSight (shared)
|
|
// description: #defines and what not
|
|
//
|
|
// created by Patrick Wardle
|
|
// copyright (c) 2020 Objective-See. All rights reserved.
|
|
//
|
|
|
|
#ifndef consts_h
|
|
#define consts_h
|
|
|
|
//start at login
|
|
#define PREF_AUTOSTART_MODE @"startAtLogin"
|
|
|
|
//disable 'inactive' alerts
|
|
#define PREF_DISABLE_INACTIVE @"disableInactive"
|
|
|
|
//pref
|
|
// execute action
|
|
#define PREF_EXECUTE_ACTION @"executeAction"
|
|
|
|
//pref
|
|
// execution path
|
|
#define PREF_EXECUTE_PATH @"executePath"
|
|
|
|
//pref
|
|
// execute action
|
|
#define PREF_EXECUTE_ACTION_ARGS @"executeActionArgs"
|
|
|
|
//cs consts
|
|
// from: cs_blobs.h
|
|
#define CS_VALID 0x00000001
|
|
#define CS_ADHOC 0x0000002
|
|
#define CS_RUNTIME 0x00010000
|
|
|
|
//patreon url
|
|
#define PATREON_URL @"https://www.patreon.com/join/objective_see"
|
|
|
|
//sentry crash reporting URL
|
|
#define SENTRY_DSN @"https://729ac84fd0014ea1aa48ca46386546b6@o130950.ingest.sentry.io/5745525"
|
|
|
|
//app name
|
|
#define PRODUCT_NAME @"OverSight"
|
|
|
|
//bundle ID
|
|
#define BUNDLE_ID "com.objective-see.oversight"
|
|
|
|
//main app bundle id
|
|
#define MAIN_APP_ID @"com.objective-see.oversight"
|
|
|
|
//helper (login item) ID
|
|
#define HELPER_ID @"com.objective-see.oversight.helper"
|
|
|
|
//installer (app) ID
|
|
#define INSTALLER_ID @"com.objective-see.oversight.installer"
|
|
|
|
//installer (helper) ID
|
|
#define CONFIG_HELPER_ID @"com.objective-see.oversight.uninstallHelper"
|
|
|
|
//signing auth
|
|
#define SIGNING_AUTH @"Developer ID Application: Objective-See, LLC (VBG97UB4TA)"
|
|
|
|
//product version url
|
|
#define PRODUCT_VERSIONS_URL @"https://objective-see.org/products.json"
|
|
|
|
//product url
|
|
#define PRODUCT_URL @"https://objective-see.org/products/oversight.html"
|
|
|
|
//error(s) url
|
|
#define ERRORS_URL @"https://objective-see.org/errors.html"
|
|
|
|
//os major
|
|
#define SUPPORTED_OS_MAJOR @"OSMajor"
|
|
|
|
//os minor
|
|
#define SUPPORTED_OS_MINOR @"OSMinor"
|
|
|
|
//latest version
|
|
#define LATEST_VERSION @"version"
|
|
|
|
//close category
|
|
#define CATEGORY_CLOSE @"close"
|
|
|
|
//action category
|
|
#define CATEGORY_ACTION @"action"
|
|
|
|
//support us button tag
|
|
#define BUTTON_SUPPORT_US 100
|
|
|
|
//more info button tag
|
|
#define BUTTON_MORE_INFO 101
|
|
|
|
//install cmd
|
|
#define CMD_INSTALL @"-install"
|
|
|
|
//uninstall cmd
|
|
#define CMD_UNINSTALL @"-uninstall"
|
|
|
|
//install cmd
|
|
#define CMD_UPGRADE @"-upgrade"
|
|
|
|
//flag to uninstall
|
|
#define ACTION_UNINSTALL_FLAG 0
|
|
|
|
//flag to install
|
|
#define ACTION_INSTALL_FLAG 1
|
|
|
|
//flag for partial uninstall
|
|
// leave preferences file, etc.
|
|
#define UNINSTALL_PARTIAL 0
|
|
|
|
//flag for full uninstall
|
|
#define UNINSTALL_FULL 1
|
|
|
|
//add rule, block
|
|
#define BUTTON_BLOCK 0
|
|
|
|
//add rule, allow
|
|
#define BUTTON_ALLOW 1
|
|
|
|
//preferences file
|
|
#define PREFERENCES @"/Library/Preferences/com.objective-see.oversight.plist"
|
|
|
|
//prefs
|
|
// disabled status
|
|
#define PREF_IS_DISABLED @"disabled"
|
|
|
|
//prefs
|
|
// icon mode
|
|
#define PREF_NO_ICON_MODE @"noIconMode"
|
|
|
|
//prefs
|
|
// no external devices mode
|
|
#define PREF_NO_EXTERNAL_DEVICES_MODE @"noExternalDevicesMode"
|
|
|
|
//prefs
|
|
// update mode
|
|
#define PREF_NO_UPDATE_MODE @"noupdateMode"
|
|
|
|
//allowed items (key)
|
|
#define PREFS_ALLOWED_ITEMS @"allowedItems"
|
|
|
|
//general error URL
|
|
#define FATAL_ERROR_URL @"https://objective-see.org/errors.html"
|
|
|
|
//key for exit code
|
|
#define EXIT_CODE @"exitCode"
|
|
|
|
//rules changed
|
|
#define RULES_CHANGED @"com.objective-see.oversight.rulesChanged"
|
|
|
|
//first time flag
|
|
#define INITIAL_LAUNCH @"-initialLaunch"
|
|
|
|
/* INSTALLER */
|
|
|
|
//menu: 'about'
|
|
#define MENU_ITEM_ABOUT 0
|
|
|
|
//menu: 'quit'
|
|
#define MENU_ITEM_QUIT 1
|
|
|
|
//app name
|
|
#define APP_NAME @"OverSight.app"
|
|
|
|
//apps folder
|
|
#define APPS_FOLDER @"/Applications"
|
|
|
|
//frame shift
|
|
// for status msg to avoid activity indicator
|
|
#define FRAME_SHIFT 45
|
|
|
|
//flag to close
|
|
#define ACTION_CLOSE_FLAG -1
|
|
|
|
//cmdline flag to uninstall
|
|
#define ACTION_UNINSTALL @"-uninstall"
|
|
|
|
//uninstall via UI
|
|
#define CMD_UNINSTALL_VIA_UI @"-uninstallViaUI"
|
|
|
|
//flag to uninstall
|
|
#define ACTION_UNINSTALL_FLAG 0
|
|
|
|
//cmdline flag to uninstall
|
|
#define ACTION_INSTALL @"-install"
|
|
|
|
//flag to install
|
|
#define ACTION_INSTALL_FLAG 1
|
|
|
|
//button title: upgrade
|
|
#define ACTION_UPGRADE @"Upgrade"
|
|
|
|
//button title: close
|
|
#define ACTION_CLOSE @"Close"
|
|
|
|
//button title: next
|
|
#define ACTION_NEXT @"Next »"
|
|
|
|
//show info about notifications
|
|
#define ACTION_SHOW_NOTIFICATIONS 2
|
|
|
|
//show friends
|
|
#define ACTION_SHOW_SUPPORT 3
|
|
|
|
//support us
|
|
#define ACTION_SUPPORT 4
|
|
|
|
//path to chmod
|
|
#define CHMOD @"/bin/chmod"
|
|
|
|
//path to xattr
|
|
#define XATTR @"/usr/bin/xattr"
|
|
|
|
//path to open
|
|
#define OPEN @"/usr/bin/open"
|
|
|
|
//path to launchctl
|
|
#define LAUNCHCTL @"/bin/launchctl"
|
|
|
|
//path to kill all
|
|
#define KILL_ALL @"/usr/bin/killall"
|
|
|
|
//path to facetime
|
|
#define FACE_TIME @"/System/Applications/FaceTime.app/Contents/MacOS/FaceTime"
|
|
|
|
//rules window
|
|
#define WINDOW_RULES 0
|
|
|
|
//preferences window
|
|
#define WINDOW_PREFERENCES 1
|
|
|
|
//key for stdout output
|
|
#define STDOUT @"stdOutput"
|
|
|
|
//key for stderr output
|
|
#define STDERR @"stdError"
|
|
|
|
//key for exit code
|
|
#define EXIT_CODE @"exitCode"
|
|
|
|
//event keys
|
|
#define EVENT_DEVICE @"device"
|
|
#define EVENT_TIMESTAMP @"timeStamp"
|
|
#define EVENT_DEVICE_STATUS @"status"
|
|
#define EVENT_PROCESS_ID @"processID"
|
|
#define EVENT_PROCESS_PATH @"processPath"
|
|
|
|
#define NOTIFICATION_ERROR -1
|
|
#define NOTIFICATION_SPURIOUS 0
|
|
#define NOTIFICATION_SKIPPED 1
|
|
#define NOTIFICATION_DELIVER 2
|
|
|
|
//av devices
|
|
typedef enum {Device_Camera, Device_Microphone} AVDevice;
|
|
|
|
//updates
|
|
typedef enum {Update_Error, Update_None, Update_NotSupported, Update_Available} UpdateStatus;
|
|
|
|
//log levels
|
|
typedef enum {Log_Level_Default, Log_Level_Info, Log_Level_Debug} LogLevels;
|
|
|
|
#endif
|