Make sure HandleWrite() is run as root.
[apple-ir-control.git] / apple-ir-control.cc
index c92eb8054dc4100245afb9e05417507dad7b54e9..1a7186ef2bd5086e0410a956ea7e0e3367ded4ca 100644 (file)
@@ -168,6 +168,11 @@ int HandleRead() {
 }
 
 int HandleWrite(bool enable) {
+  if (geteuid() != 0) {
+    ERROR("This operation must be performed as root");
+    return EXIT_FAILURE;
+  }
+
   const CFBooleanRef enabled_value = enable ? kCFBooleanTrue : kCFBooleanFalse;
 
   CFPreferencesSetValue(kPrefEnabled, enabled_value, kPrefDomain,