Common
- Updated libs: network, wmic, satan, firewall.
- Replaced userrun.exe binary with safexec.exe, written in C and without the dependency of the CronSVC process.
- Replaced the .Net based cronsvc.exe with a lighter C-based alternative: ExSVC. Much better handling of restarts.
- Updated autowc.exe binary, and fixed the Windows reconnect() function which uses it.
Agent
- Fixed running.stat check on agent/cli. Don't confuse pidfile write EPERM error with other user owning the process.
- Fixed process.stdout writing in agent/cli, to ensure Win users do see the status output.
- Fixes in hardware provider, active_network_interface getter.
- Windows Wi-Fi netsh parser: Check if we actually got access points.
- Better logging in agent/cli, log errors when gathering report data.
Plugins
- Control Panel: More informative error handling on API errors (422 / network errors).
- Control Panel: Fixed config reload after GUI configuration.
Config
- Better warnings in install logic so 'npm install prey' process works as expected.
- Config logger: Fallback to config-log.log if stream is not writable.
- Don't stop on tasks.activate if this version is already current. This ensures that post_install won't get stopped by it in the middle.
- Don't call plugins.disable_all if we're just updating (--updating param in pre_uninstall task).
- Fixed --force argument to GUI (to bypass key verification).
- Fixed post-install logic for *nix, impersonated activate command.
- Fixed daemon removal in Windows. Unlink service_run_path when daemon.remove, and handle EBUSY errors when copying service bin.
- If the Windows Firewall Service is down, don't bail out.
Tools, Tests
- Fixes so tests pass 100% in Win8.1 and yes, XP.
- Added specs: post_install, prey_user, daemon.
- Make sure changes done by build.sh are reset when cancelled halfway through.
- Build tool: Fixes. Make sure /bin in Windows ZIPs do not contain *nix stuff.
- Build tool: Pass BUNDLE_ONLY to run_specs' npm install.