diff --git a/infection_monitor/__init__.py b/infection_monitor/__init__.py deleted file mode 100644 index db0afd1fc..000000000 --- a/infection_monitor/__init__.py +++ /dev/null @@ -1 +0,0 @@ -__author__ = 'Administrator' diff --git a/infection_monitor/action/__init__.py b/infection_monitor/action/__init__.py deleted file mode 100644 index 43fec0aef..000000000 --- a/infection_monitor/action/__init__.py +++ /dev/null @@ -1,17 +0,0 @@ - -from abc import ABCMeta, abstractmethod - -__author__ = 'itamar' - -class MonitorAction(object): - __metaclass__ = ABCMeta - - @abstractmethod - def do_action(self): - raise NotImplementedError() - - @abstractmethod - def undo_action(self): - raise NotImplementedError() - -from desktop import ChangeDesktopAction diff --git a/infection_monitor/action/desktop.py b/infection_monitor/action/desktop.py deleted file mode 100644 index 7cf279bca..000000000 --- a/infection_monitor/action/desktop.py +++ /dev/null @@ -1,38 +0,0 @@ - -import os -import sys -import ctypes -import shutil -import logging -from data import resource_path - -__author__ = 'itamar' - -LOG = logging.getLogger(__name__) - -SPI_SETDESKWALLPAPER = 20 -SPIF_UPDATEINIFILE = 0x01 -SPIF_SENDCHANGE = 0x02 - -class ChangeDesktopAction(object): - def __init__(self, desktop_image): - self._desktop_image = resource_path(desktop_image) - - assert os.path.exists(self._desktop_image), "desktop image %s is missing" % (self._desktop_image, ) - - def do_action(self): - ctypes_desktop_img = ctypes.c_char_p(self._desktop_image) - - # set the image - if not bool(ctypes.windll.user32.SystemParametersInfoA(SPI_SETDESKWALLPAPER, 0, ctypes_desktop_img, SPIF_SENDCHANGE | SPIF_UPDATEINIFILE)): - LOG.warn("Error setting desktop wallpaper image to '%s' (error %d)", - ctypes_desktop_img.value, ctypes.windll.kernel32.GetLastError()) - else: - LOG.debug("Desktop wallpaper image is set to %r", ctypes_desktop_img.value) - - def undo_action(self): - if not bool(ctypes.windll.user32.SystemParametersInfoA(SPI_SETDESKWALLPAPER, 0, "" , SPIF_SENDCHANGE | SPIF_UPDATEINIFILE)): - LOG.warn("Error resetting desktop wallpaper image (error %d)", - ctypes.windll.kernel32.GetLastError()) - else: - LOG.debug("Desktop wallpaper image reset") \ No newline at end of file diff --git a/infection_monitor/build_py2exe.bat b/infection_monitor/build_py2exe.bat deleted file mode 100644 index 094ef93d4..000000000 --- a/infection_monitor/build_py2exe.bat +++ /dev/null @@ -1,2 +0,0 @@ -c:\Python27\python -m PyInstaller.main -F -y --clean monitor.spec -move /Y dist\monitor32.exe "%allusersprofile%\desktop\monitor32.exe" diff --git a/infection_monitor/condition/__init__.py b/infection_monitor/condition/__init__.py deleted file mode 100644 index bd9559ef7..000000000 --- a/infection_monitor/condition/__init__.py +++ /dev/null @@ -1,13 +0,0 @@ - -from abc import ABCMeta, abstractmethod - -__author__ = 'itamar' - -class MonitorCondition(object): - __metaclass__ = ABCMeta - - @abstractmethod - def check_condition(self): - raise NotImplementedError() - -from files import FilesExistCondition \ No newline at end of file diff --git a/infection_monitor/condition/files.py b/infection_monitor/condition/files.py deleted file mode 100644 index d3e9a5c62..000000000 --- a/infection_monitor/condition/files.py +++ /dev/null @@ -1,12 +0,0 @@ - -import os -from condition import MonitorCondition - -__author__ = 'itamar' - -class FilesExistCondition(MonitorCondition): - def __init__(self, file_name): - self._file_path = os.path.abspath(file_name) - - def check_condition(self): - return os.path.isfile(self._file_path) diff --git a/infection_monitor/config.py b/infection_monitor/config.py deleted file mode 100644 index 7a64727c4..000000000 --- a/infection_monitor/config.py +++ /dev/null @@ -1,16 +0,0 @@ - -import sys -from condition import FilesExistCondition -from action import ChangeDesktopAction - -__author__ = 'itamar' - - -class MonitorConfiguration(object): - conditions = [FilesExistCondition(r"C:\windows\monkey.exe"), - ] - - actions = [ChangeDesktopAction(r"infected.bmp") - ] - - monitor_interval = 5000 # 5 seconds diff --git a/infection_monitor/data/__init__.py b/infection_monitor/data/__init__.py deleted file mode 100644 index 6692d3b5c..000000000 --- a/infection_monitor/data/__init__.py +++ /dev/null @@ -1,15 +0,0 @@ - -import os -import sys - -__author__ = 'itamar' - -def resource_path(relative_path): - """ Get absolute path to resource, works for dev and for PyInstaller """ - try: - # PyInstaller creates a temp folder and stores path in _MEIPASS - base_path = sys._MEIPASS - except Exception: - base_path = os.path.abspath("data") - - return os.path.join(base_path, relative_path) diff --git a/infection_monitor/data/infected.bmp b/infection_monitor/data/infected.bmp deleted file mode 100644 index 19683a34b..000000000 Binary files a/infection_monitor/data/infected.bmp and /dev/null differ diff --git a/infection_monitor/main.py b/infection_monitor/main.py deleted file mode 100644 index 8c157bbc2..000000000 --- a/infection_monitor/main.py +++ /dev/null @@ -1,54 +0,0 @@ - -import time -import logging -from config import MonitorConfiguration - -__author__ = 'itamar' - -logging.basicConfig(format='%(asctime)s [%(process)d:%(levelname)s] %(module)s.%(funcName)s.%(lineno)d: %(message)s', - level=logging.DEBUG) -LOG = logging.getLogger() - -def do_infected(): - LOG.info("Changed state to infected") - - [action.do_action() - for action in MonitorConfiguration.actions] - -def do_not_infected(): - LOG.info("Changed state to not infected") - [action.undo_action() - for action in MonitorConfiguration.actions] - -def main(): - infected = False - - LOG.info("Monitor going up...") - - do_not_infected() - - try: - while True: - if any([condition.check_condition() - for condition in MonitorConfiguration.conditions]): - if not infected: - do_infected() - - infected = True - else: - if infected: - do_not_infected() - - infected = False - - for _ in range(MonitorConfiguration.monitor_interval / 1000): - time.sleep(1.0) - finally: - if infected: - do_not_infected() - - LOG.info("Monitor going down...") - - -if "__main__" == __name__: - main() diff --git a/infection_monitor/monitor.ico b/infection_monitor/monitor.ico deleted file mode 100644 index 87cd6e3b1..000000000 Binary files a/infection_monitor/monitor.ico and /dev/null differ