#ifndef __VMM_EXECVE_HOOK_H__
 #define __VMM_EXECVE_HOOK_H__
 
+#ifdef __V3VEE__
+
 
 struct v3_exec_hooks {
     struct list_head hook_list;
 
 
 #endif
+
+
+#endif
 
 #ifndef __VMM_LINUX_SYSCALL_MAP_H__
 #define __VMM_LINUX_SYSCALL_MAP_H__
 
+#ifdef __V3VEE__
+
 #include <palacios/vmm_types.h>
 
-char * get_linux_syscall_name32(uint_t syscall_nr);
-char * get_linux_syscall_name64(uint_t syscall_nr);
+char * get_linux_syscall_name32 (uint_t syscall_nr);
+char * get_linux_syscall_name64 (uint_t syscall_nr);
 
+#endif
 
 #endif
 
 #ifndef __VMM_PROCESS_ENVIRONMENT_H__
 #define __VMM_PROCESS_ENVIRONMENT_H__
 
+#ifdef __V3VEE__
+
 
 #include <palacios/vmm.h>
 #include <palacios/vmm_types.h>
 
 addr_t v3_prepare_guest_stack (struct guest_info * core, uint_t bytes_needed);
 
+#endif
+
 #endif 
 
 
                core);
 
 #ifdef CONFIG_HIJACK_MSR
-    /* KCH: for syscall hijacking */
+    /* KCH: for SYSCALL and SYSENTER interception */
     v3_hook_msr(core->vm_info, STAR_MSR,
         &v3_handle_star_read,
         &v3_handle_star_write,
 
     void * priv_data) 
 {
     struct v3_syscall_hook * hook = (struct v3_syscall_hook *)V3_Malloc(sizeof(struct v3_syscall_hook));
+
+    // TODO: ensure that software interrupts & SYSENTER are hooked
     
     if (hook == NULL) {
         return -1;