sophos / talpa

Talpa Kernel file access interception modules
GNU General Public License v2.0
17 stars 11 forks source link

Is support for Linux 5 scheduled? #16

Closed Pastim closed 5 years ago

Pastim commented 5 years ago

Talpa fails to compile on linux 5.0 (ubuntu 19.04). Is support being planned?

chrishantha commented 5 years ago

I also tried to compile Talpa following instructions at https://community.sophos.com/kb/en-us/13503

But it fails. Build logs at ./talpa/build/talpa-1.24.3/build.log

<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL_TABLE" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "TALPA_SYSCALL32_TABLE" redefined
<command-line>: note: this is the location of the previous definition
/opt/sophos-av-downloaded/talpa/build/talpa-1.24.3/src/components/intercepts/vfshook_impl/vfshook_interceptor.c: In function ‘prepareFilesystem’:
/opt/sophos-av-downloaded/talpa/build/talpa-1.24.3/src/components/intercepts/vfshook_impl/vfshook_interceptor.c:1445:39: warning: comparison of distinct pointer types lacks a cast
         if (patch->i_ops->atomic_open == talpaAtomicOpen)
                                       ^~
/opt/sophos-av-downloaded/talpa/build/talpa-1.24.3/src/components/intercepts/vfshook_impl/vfshook_interceptor.c:1475:32: error: assignment to ‘int (*)(struct inode *, struct dentry *, struct file *, unsigned int,  umode_t,  int *)’ {aka ‘int (*)(struct inode *, struct dentry *, struct file *, unsigned int,  short unsigned int,  int *)’} from incompatible pointer type ‘int (*)(struct inode *, struct dentry *, struct file *, unsigned int,  umode_t)’ {aka ‘int (*)(struct inode *, struct dentry *, struct file *, unsigned int,  short unsigned int)’} [-Werror=incompatible-pointer-types]
             patch->atomic_open = patch->i_ops->atomic_open;
                                ^
/opt/sophos-av-downloaded/talpa/build/talpa-1.24.3/src/components/intercepts/vfshook_impl/vfshook_interceptor.c: In function ‘patchFilesystem’:
/opt/sophos-av-downloaded/talpa/build/talpa-1.24.3/src/components/intercepts/vfshook_impl/vfshook_interceptor.c:1707:36: warning: comparison of distinct pointer types lacks a cast
     if ( patch->i_ops->atomic_open == talpaAtomicOpen)
                                    ^~
/opt/sophos-av-downloaded/talpa/build/talpa-1.24.3/src/components/intercepts/vfshook_impl/vfshook_interceptor.c:1719:40: warning: comparison of distinct pointer types lacks a cast
         if ( patch->i_ops->atomic_open != talpaAtomicOpen )
                                        ^~
/opt/sophos-av-downloaded/talpa/build/talpa-1.24.3/src/components/intercepts/vfshook_impl/vfshook_interceptor.c: In function ‘restoreFilesystem’:
/opt/sophos-av-downloaded/talpa/build/talpa-1.24.3/src/components/intercepts/vfshook_impl/vfshook_interceptor.c:2100:44: warning: comparison of distinct pointer types lacks a cast
             if ( patch->i_ops->atomic_open == talpaAtomicOpen )
                                            ^~
/opt/sophos-av-downloaded/talpa/build/talpa-1.24.3/src/components/intercepts/vfshook_impl/vfshook_interceptor.c: In function ‘processMount’:
/opt/sophos-av-downloaded/talpa/build/talpa-1.24.3/src/components/intercepts/vfshook_impl/vfshook_interceptor.c:2330:55: error: ‘MS_REMOUNT’ undeclared (first use in this function); did you mean ‘MNT_UMOUNT’?
             if ( shouldinc && !(fromMount && (flags & MS_REMOUNT)) )
                                                       ^~~~~~~~~~
                                                       MNT_UMOUNT
/opt/sophos-av-downloaded/talpa/build/talpa-1.24.3/src/components/intercepts/vfshook_impl/vfshook_interceptor.c:2330:55: note: each undeclared identifier is reported only once for each function it appears in
In file included from ./include/linux/export.h:45,
                 from ./include/linux/linkage.h:7,
                 from ./include/linux/kernel.h:7,
                 from /opt/sophos-av-downloaded/talpa/build/talpa-1.24.3/src/components/intercepts/vfshook_impl/vfshook_interceptor.c:20:
/opt/sophos-av-downloaded/talpa/build/talpa-1.24.3/src/components/intercepts/vfshook_impl/vfshook_interceptor.c: In function ‘talpaPreMount’:
/opt/sophos-av-downloaded/talpa/build/talpa-1.24.3/src/components/intercepts/vfshook_impl/vfshook_interceptor.c:2424:28: error: ‘MS_BIND’ undeclared (first use in this function); did you mean ‘LAST_BIND’?
 #define VFSHOOK_MS_IGNORE (MS_BIND)
                            ^~~~~~~
./include/linux/compiler.h:77:42: note: in definition of macro ‘unlikely’
 # define unlikely(x) __builtin_expect(!!(x), 0)
                                          ^
/opt/sophos-av-downloaded/talpa/build/talpa-1.24.3/src/components/intercepts/vfshook_impl/vfshook_interceptor.c:2464:31: note: in expansion of macro ‘VFSHOOK_MS_IGNORE’
     if ( unlikely( ( (flags & VFSHOOK_MS_IGNORE) != 0 ) ) )
                               ^~~~~~~~~~~~~~~~~
/opt/sophos-av-downloaded/talpa/build/talpa-1.24.3/src/components/intercepts/vfshook_impl/vfshook_interceptor.c: In function ‘talpaPostMount’:
/opt/sophos-av-downloaded/talpa/build/talpa-1.24.3/src/components/intercepts/vfshook_impl/vfshook_interceptor.c:2424:28: error: ‘MS_BIND’ undeclared (first use in this function); did you mean ‘LAST_BIND’?
 #define VFSHOOK_MS_IGNORE (MS_BIND)
                            ^~~~~~~
/opt/sophos-av-downloaded/talpa/build/talpa-1.24.3/src/components/intercepts/vfshook_impl/vfshook_interceptor.c:2823:21: note: in expansion of macro ‘VFSHOOK_MS_IGNORE’
         if (flags & VFSHOOK_MS_IGNORE)
                     ^~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
make[4]: *** [scripts/Makefile.build:286: /opt/sophos-av-downloaded/talpa/build/talpa-1.24.3/src/components/intercepts/vfshook_impl/vfshook_interceptor.o] Error 1
make[3]: *** [Makefile:1584: _module_/opt/sophos-av-downloaded/talpa/build/talpa-1.24.3] Error 2
make[2]: *** [makefile:2014: talpa_core.ko] Error 2
make[1]: *** [makefile:1641: all-recursive] Error 1
make: *** [makefile:723: all] Error 2

OS Details:

# cat /etc/os-release 
NAME="Ubuntu"
VERSION="19.04 (Disco Dingo)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 19.04"
VERSION_ID="19.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=disco
UBUNTU_CODENAME=disco

# uname -a
Linux isurup 5.0.0-13-generic #14-Ubuntu SMP Mon Apr 15 14:59:14 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Pastim commented 5 years ago

All OK now. Thanks for the update.