<---- template headericclude ----->
kaspersky compile problem
FedoraForum.org - Fedora Support Forums and Community
Results 1 to 4 of 4
  1. #1
    Join Date
    Mar 2012
    Location
    Colorado
    Posts
    2
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    kaspersky compile problem

    Hey everybody! I've been testing "Kaspersky End Point Security for Linux" for close to a month now and I've been considering purchasing a license. Anyhow the problem is getting the real time protection module to compile. I've found these discussions in my search for an answer and only the first has a relevant answer.
    From Kaspersky Forum:http://forum.kaspersky.com/index.php?showtopic=70766 which states that this module can not be compiled.
    I have tried searching the Fedora forum from inside the forum and using Google specific searches and haven't found anything else that would help me to compile the real time protection module. Can anyone confirm for me that this indeed a known problem in newer kernel versions and that there is no fix for it? Or, if there is a fix could I possibly get directions to it?
    Also here is the error I am recieving when I try to compile the module on Fedora 16 32bit kernel 3.3.0-4.fc16.i686.
    Code:
    >>> Compiling the kernel-level real-time protection module
    Cleaning redirfs
    make[1]: Entering directory `/opt/kaspersky/kes4lwks/src/kernel/redirfs'
    make -C /usr/src/kernels/3.3.0-4.fc16.i686/ SUBDIRS=/opt/kaspersky/kes4lwks/src/kernel/redirfs clean
    make[2]: Entering directory `/usr/src/kernels/3.3.0-4.fc16.i686'
      CLEAN   /opt/kaspersky/kes4lwks/src/kernel/redirfs/.tmp_versions
    make[2]: Leaving directory `/usr/src/kernels/3.3.0-4.fc16.i686'
    rm -f ../bin//redirfs.ko
    make[1]: Leaving directory `/opt/kaspersky/kes4lwks/src/kernel/redirfs'
    Cleaning module.linux
    make[1]: Entering directory `/opt/kaspersky/kes4lwks/src/kernel/module.linux'
    make -C /usr/src/kernels/3.3.0-4.fc16.i686/ SUBDIRS=/opt/kaspersky/kes4lwks/src/kernel/module.linux clean
    make[2]: Entering directory `/usr/src/kernels/3.3.0-4.fc16.i686'
    make[2]: Leaving directory `/usr/src/kernels/3.3.0-4.fc16.i686'
    make[1]: Leaving directory `/opt/kaspersky/kes4lwks/src/kernel/module.linux'
    Making link in redirfs
    make[1]: Entering directory `/opt/kaspersky/kes4lwks/src/kernel/redirfs'
    make -C /usr/src/kernels/3.3.0-4.fc16.i686/ SUBDIRS=/opt/kaspersky/kes4lwks/src/kernel/redirfs modules
    make[2]: Entering directory `/usr/src/kernels/3.3.0-4.fc16.i686'
      CC [M]  /opt/kaspersky/kes4lwks/src/kernel/redirfs/rfs_path.o
    /opt/kaspersky/kes4lwks/src/kernel/redirfs/rfs_path.c: In function ‘redirfs_get_filename’:
    /opt/kaspersky/kes4lwks/src/kernel/redirfs/rfs_path.c:664:13: error: ‘dcache_lock’ undeclared (first use in this function)
    /opt/kaspersky/kes4lwks/src/kernel/redirfs/rfs_path.c:664:13: note: each undeclared identifier is reported only once for each function it appears in
    make[3]: *** [/opt/kaspersky/kes4lwks/src/kernel/redirfs/rfs_path.o] Error 1
    make[2]: *** [_module_/opt/kaspersky/kes4lwks/src/kernel/redirfs] Error 2
    make[2]: Leaving directory `/usr/src/kernels/3.3.0-4.fc16.i686'
    make[1]: *** [redirfs_build] Error 2
    make[1]: Leaving directory `/opt/kaspersky/kes4lwks/src/kernel/redirfs'
    make: *** [all] Error 1

  2. #2
    stevea Guest

    Re: kaspersky compile problem

    The dcache_lock symbol was removed from the kernel at 2.6.38, so you need a newer version of the module source.

    ---------- Post added 29th March 2012 at 12:02 AM ---------- Previous post was 28th March 2012 at 11:37 PM ----------

    You might be able to figure out whihch kind of lock to replace it with ....
    from .../fs/dcache.c:

    Code:
    40 /*
    41  * Usage:
    42  * dcache->d_inode->i_lock protects:
    43  *   - i_dentry, d_alias, d_inode of aliases
    44  * dcache_hash_bucket lock protects:
    45  *   - the dcache hash table
    46  * s_anon bl list spinlock protects:
    47  *   - the s_anon list (see __d_drop)
    48  * dcache_lru_lock protects:
    49  *   - the dcache lru lists and counters
    50  * d_lock protects:
    51  *   - d_flags
    52  *   - d_name
    53  *   - d_lru
    54  *   - d_count
    55  *   - d_unhashed()
    56  *   - d_parent and d_subdirs
    57  *   - childrens' d_child and d_parent
    58  *   - d_alias, d_inode
    59  *
    60  * Ordering:
    61  * dentry->d_inode->i_lock
    62  *   dentry->d_lock
    63  *     dcache_lru_lock
    64  *     dcache_hash_bucket lock
    65  *     s_anon lock
    66  *
    67  * If there is an ancestor relationship:
    68  * dentry->d_parent->...->d_parent->d_lock
    69  *   ...
    70  *     dentry->d_parent->d_lock
    71  *       dentry->d_lock
    72  *
    73  * If no ancestor relationship:
    74  * if (dentry1 < dentry2)
    75  *   dentry1->d_lock
    76  *     dentry2->d_lock
    77  */

  3. #3
    Join Date
    Mar 2012
    Location
    Colorado
    Posts
    2
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Re: kaspersky compile problem

    Thank you for your quick reply stevea! I still consider myself a begginer linux user even though I've experimented with a couple of distros for the last 3 years or so now. Please forgive my ignorance.

    Quote Originally Posted by stevea
    The dcache_lock symbol was removed from the kernel at 2.6.38, so you need a newer version of the module source.
    I've searched high and low for a newer version of the source for the real-time protection module from Kaspersky and I haven't found anything. I would also figure that since I'm downloading the AV protection from the Kaspersky site that the code would be as new and updated as it can get but I may be wrong about that.
    From: /opt/kaspersky/kes4lwks/src/kernel/redirfs/rfs_dcache.c
    Code:
    /*
     * RedirFS: Redirecting File System
     * Written by Frantisek Hrbata <frantisek.hrbata@redirfs.org>
     *
     * Copyright 2008 - 2010 Frantisek Hrbata
     * All rights reserved.
     *
     * This file is part of RedirFS.
     *
     * RedirFS is free software: you can redistribute it and/or modify
     * it under the terms of the GNU General Public License as published by
     * the Free Software Foundation, either version 3 of the License, or
     * (at your option) any later version.
     *
     * RedirFS is distributed in the hope that it will be useful,
     * but WITHOUT ANY WARRANTY; without even the implied warranty of
     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
     * GNU General Public License for more details.
     *
     * You should have received a copy of the GNU General Public License
     * along with RedirFS. If not, see <http://www.gnu.org/licenses/>.
     *
     * 2010-08-20 Changes made by Vasiliy Novikov:
     *   - rfs_dcache_get_subs function modified;
     *   - rfs_dcache_get_subs_atomic function removed;
     *   - rfs_dcache_entry_alloc_locked function removed.
     */
    Quote Originally Posted by stevea
    You might be able to figure out whihch kind of lock to replace it with ....
    from .../fs/dcache.c
    I don't think there is a dcache.c on my system, could this be the problem?
    Code:
    $ locate dcache
    /opt/kaspersky/kes4lwks/src/kernel/redirfs/rfs_dcache.c
    /usr/share/system-config-printer/ppdcache.py
    /usr/share/system-config-printer/ppdcache.pyc
    /usr/share/system-config-printer/ppdcache.pyo
    /usr/src/kernels/3.3.0-4.fc16.i686/include/linux/dcache.h
    I started thinking after pursuing your suggestions of where and what to look for that maybe the problem is in the installation script for the module? I was also beginning to think that the next step might be to contact the Kaspersky support folks and see what their answer is. Still in search of the solution but not in any hurry because the software still works without the real-time protection module, I just have to handle everything manually. Cheers!

    Alright, I think I figured out what the problem is. Any of you expert coders out there that know more than I do please correct me if I am wrong about this!

    Code:
    /opt/kaspersky/kes4lwks/src/kernel/redirfs/rfs_path.c: In function ‘redirfs_get_filename’:
    /opt/kaspersky/kes4lwks/src/kernel/redirfs/rfs_path.c:664:13: error: ‘dcache_lock’ undeclared (first use in this function)
    /opt/kaspersky/kes4lwks/src/kernel/redirfs/rfs_path.c:664:13: note: each undeclared identifier is reported only once for each function it appears in
    This is a piece of the compilation error that I overlooked earlier, which says to me, with my little bit of programming knowledge is that the code is essentially incomplete. I recognized this error from similar errors I would occassionally get when I was doing some programming in college and would forget to declare a variable as whatever type I needed it to be.

    Here is the code from the function in that program:
    Code:
    int redirfs_get_filename(struct vfsmount *mnt, struct dentry *dentry, char *buf,
    		int size)
    {
    	struct dentry *dtmp = NULL;
    	struct dentry *dmnt = NULL;
    	struct vfsmount *mtmp = NULL;
    	struct vfsmount *mmnt = NULL;
    	char *end;
    	int len;
    
    	end = buf + size;
    	len = size;
    
    	if (size < 2)
    		return -ENAMETOOLONG;
    
    	*--end = '\0';
    	size--;
    again:
    	spin_lock(&dcache_lock);
    
    	while (dentry != mnt->mnt_root) {
    		size -= dentry->d_name.len + 1; /* dentry name + slash */
    		if (size < 0) {
    			spin_unlock(&dcache_lock);
    			return -ENAMETOOLONG;
    		}
    
    		end -= dentry->d_name.len;
    		memcpy(end, dentry->d_name.name, dentry->d_name.len);
    		*--end = '/';
    		dentry = dentry->d_parent;
    	}
    
    	dtmp = dmnt;
    	mtmp = mmnt;
    	dmnt = dget(dentry);
    	mmnt = mntget(mnt);
    	spin_unlock(&dcache_lock);
    	dput(dtmp);
    	mntput(mtmp);
    
    	if (rfs_follow_up(&mmnt, &dmnt)) {
    		dentry = dmnt;
    		mnt = mmnt;
    		goto again;
    	}
    
    	dput(dmnt);
    	mntput(mmnt);
    	
    	if (*end != '/') {
    		*--end = '/';
    		size--;
    	}
    
    	memmove(buf, end, len - size);
    	return 0;
    }
    Last edited by I7IZI; 31st March 2012 at 10:00 PM. Reason: Just noticed something in my first post, LOL!

  4. #4
    Join Date
    Dec 2006
    Posts
    2,088
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Re: kaspersky compile problem

    redirfs-0.11-experimental has support for 2.6.38+ kernels
    See http://www.redirfs.org/gitweb/?p=fhr...3f683a930c2221

Similar Threads

  1. Replies: 0
    Last Post: 28th August 2008, 04:35 PM
  2. ika compile problem
    By Mystinar in forum Programming & Packaging
    Replies: 8
    Last Post: 18th April 2007, 07:45 PM
  3. Compile Problem
    By HMSS013 in forum Using Fedora
    Replies: 3
    Last Post: 3rd December 2006, 08:31 PM
  4. Replies: 2
    Last Post: 24th November 2006, 02:32 PM

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
[[template footer(Guest)]]