Problem building LIDS 1.0.0pre1 on 2.4.18

From: Valdis.Kletnieksat_private
Date: Wed Mar 06 2002 - 09:04:29 PST

  • Next message: Huagang Xie: "Re: Problem building LIDS 1.0.0pre1 on 2.4.18"

    Building 2.4.18, with the lsm-full-2002_02_25-2.4.18.patch.gz, and this
    morning's lids-1.0.0pre1-lsm.tar.gz dropped on top of that.
    
    OK.. Maybe I'm doing something stupid, but looking at the code, I'm not
    surprised, as line 68 dereferences 'current->security->lids_cap', and I
    don't see where 'lids_cap' is defined as a member of the 'security' structure.
    
    (In the "doesn't make me feel warm-and-fuzzy" category, in file
    security/lids/include/linux/lidsif.h, we have a 'struct lids_cap' on
    line 123, and lines 131 and 144 have 'unsigned long lids_cap'.  Perfectly
    legal, but the name re-use made me have to dig through more code to see if
    it was actually a long/bitfield value, or a pointer to a struct that was
    being stored in a 'unsigned long' for some reason....)
    
    gcc -D__KERNEL__ -I/usr/src/linux-2.4.18/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686   -DMODULE -DMODVERSIONS -include /usr/src/linux-2.4.18/include/linux/modversions.h -Iinclude -DKBUILD_BASENAME=lids_cap  -c -o lids_cap.o lids_cap.c
    lids_cap.c:68:175: warning: pasting "": "" and "":lids_cap =%lx, cap_effective=%x,cap=%d,lids_load=%d,lids_local_load=%d\n"" does not give a valid preprocessing token
    lids_cap.c: In function `lids_cap_log':
    lids_cap.c:68: warning: concatenation of string literals with __FUNCTION__ is deprecated.  This feature will be removed in future
    lids_cap.c:68: warning: dereferencing `void *' pointer
    lids_cap.c:68: request for member `lids_cap' in something not a structure or union
    make[2]: *** [lids_cap.o] Error 1
    
    Here's the line as it appears in the source tree:
    
    LIDS_DBG(":lids_cap =%lx, cap_effective=%x,cap=%d,lids_load=%d,lids_local_load=%d\n",current->security->lids_cap, current->cap_effective,cap,lids_load,lids_local_load);
    
    Here's the line as output by 'gcc -E' (in case there's a preprocessor botch):
    
            printk_R1b7d4074("<7>" "LIDS." __FUNCTION__ ".l" "68" ": "":lids_cap =%lx, cap_effective=%x,cap=%d,lids_load=%d,lids_local_load=%d\n",get_current()->security->lids_cap, get_current()->cap_effective,cap,lids_load,( lids_local_on || (!lids_local_off()) ));
    
    LIDS-relevant config flags:
    
    [/usr/src/linux-2.4.18]3 grep -i LIDS .config
    CONFIG_LIDS=m
    # LIDS features
    CONFIG_LIDS_MAX_INODE=1024
    CONFIG_LIDS_MAX_SACL=1024
    CONFIG_LIDS_MAX_OACL=1024
    CONFIG_LIDS_MAX_PROTECTED_PID=1024
    CONFIG_LIDS_HANGUP=y
    CONFIG_LIDS_SA_EXEC_UP=y
    CONFIG_LIDS_NO_EXEC_UP=y
    CONFIG_LIDS_NO_FLOOD_LOG=y
    CONFIG_LIDS_TIMEOUT_AFTER_FLOOD=60
    CONFIG_LIDS_ALLOW_SWITCH=y
    CONFIG_LIDS_RESTRICT_MODE_SWITCH=y
    CONFIG_LIDS_MODE_SWITCH_CONSOLE=y
    CONFIG_LIDS_MODE_SWITCH_SERIAL=y
    # CONFIG_LIDS_MODE_SWITCH_PTY is not set
    CONFIG_LIDS_MAX_TRY=3
    CONFIG_LIDS_TTW_FAIL=3
    # CONFIG_LIDS_ALLOW_ANY_PROG_SWITCH is not set
    CONFIG_LIDS_RELOAD_CONF=y
    CONFIG_LIDS_PORT_SCAN_DETECTOR=y
    # CONFIG_LIDS_SA_THROUGH_NET is not set
    CONFIG_LIDS_DEBUG=y
    
    Any ideas? (Yes, I know it's a module - if this isn't OK, a fix to Config.in
    is probably called for...)
    
    /Valdis
    
    
    

    _______________________________________________ linux-security-module mailing list linux-security-moduleat_private http://mail.wirex.com/mailman/listinfo/linux-security-module



    This archive was generated by hypermail 2b30 : Wed Mar 06 2002 - 09:05:47 PST