オープンソース・ソフトウェアの開発とダウンロード

Subversion リポジトリの参照

Diff of /trunk/1.7.x/ccs-patch/README.ccs

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3014 by kumaneko, Fri Sep 11 01:01:43 2009 UTC revision 3131 by kumaneko, Tue Nov 3 03:51:07 2009 UTC
# Line 2085  Fix 2009/09/01 Line 2085  Fix 2009/09/01
2085    
2086        Thus, I added global PID in audit logs.        Thus, I added global PID in audit logs.
2087                
2088      @ Transit to new domain before do_execve() suceeds.      @ Transit to new domain before do_execve() succeeds.
2089    
2090        Permission checks for interpreters and environment variables are        Permission checks for interpreters and environment variables are
2091        done using new domain. In order to be allow ccs-queryd to reach the new        done using new domain. In order to be allow ccs-queryd to reach the new
# Line 2132  Fix 2009/09/11 Line 2132  Fix 2009/09/11
2132        To ensure consistency with TOMOYO's '/'-tokenized pattern matching rules        To ensure consistency with TOMOYO's '/'-tokenized pattern matching rules
2133        and "\-" operator, only "/\{dir\}/" sequences (where dir does not contain        and "\-" operator, only "/\{dir\}/" sequences (where dir does not contain
2134        '/') is permitted.        '/') is permitted.
2135    
2136    Fix 2009/09/24
2137    
2138        @ Don't check chmod/chown capability for requests from kernel.
2139    
2140          Until now, ccs_setattr_permission() was inserted in notify_change().
2141          But notify_change() is also called by requests from kernel (e.g. UnionFS)
2142          and it made difficult to use TOMOYO on UnionFS.
2143    
2144          Thus, I moved ccs_capable() checks from ccs_setattr_permission() to
2145          ccs_chmod_permission() and ccs_chown_permission(), and removed
2146          ccs_setattr_permission().
2147    
2148    Fix 2009/09/25
2149    
2150        @ Embed more information into audit logs.
2151    
2152          Until now, /proc/ccs/grant_log /proc/ccs/reject_log /proc/ccs/query were
2153          not printing file's information (e.g. file's uid/gid/mode).
2154    
2155          Recently, users who started using "if" clause expect that the learning
2156          mode automatically adds various conditions like "if task.uid=path1.uid".
2157    
2158          But the profile will become too complicated if I support all possible
2159          conditions. Thus, I added all information which is enough to generate
2160          "if" clause with all possible conditions from audit logs.
2161    
2162          Now, the learning mode got different usage. Users can specify
2163          "CONFIG::learning={ max_entry=0 }" in the profile. All requests which
2164          are not permitted by policy will be sent to /proc/ccs/reject_log with
2165          "mode=learning" header lines. Users can selectively append conditions
2166          and append to the policy using "/usr/sbin/ccs-loadpolicy -d".
2167          The learning mode with "CONFIG::learning={ max_entry=0 }" is almost
2168          the same with the permissive mode, only difference is "mode=learning"
2169          and "mode=permissive".
2170    
2171    Fix 2009/10/05
2172    
2173        @ Fix size truncation bug at ccs_memcmp().
2174    
2175          ccs_memcmp() was using "u8" for size parameter by error. Therefore, when
2176          size >= 256 was passed to ccs_memcmp(), it was doing partial comarison
2177          (incorrect result) or read overrun (CPU stall).
2178    
2179          ccs_memcmp() should use "size_t" for size parameter because size of
2180          "struct ccs_condition" may exceed 256 bytes if complicated condition was
2181          given.
2182    
2183    Fix 2009/10/08
2184    
2185        @ Add CONFIG_CCSECURITY_DEFAULT_LOADER option.
2186    
2187          I made the default policy loader's pathname ( /sbin/ccs-init )
2188          configurable.
2189    
2190        @ Add CONFIG_CCSECURITY_ALTERNATIVE_TRIGGER option.
2191    
2192          Some environments do not have /sbin/init . In such environments, we need
2193          to use different program's pathname (e.g. /init or /linuxrc ) as
2194          activation trigger.
2195    
2196          Thus, I made the alternative trigger ( /sbin/ccs-start ) configurable.
2197    
2198    Fix 2009/11/02
2199    
2200        @ Fix buffer contention.
2201    
2202          A permission like
2203    
2204            allow_env PATH if exec.envp["PATH"]="/"
2205    
2206          was not working since I was using the same buffer for both environment
2207          variable's name and value.
2208    
2209    Fix 2009/11/03
2210    
2211        @ Fix memory leak in ccs_write_address_group_policy().
2212    
2213          I forgot to call kfree() if same entry was added.
2214    
2215        @ Reduce mutexes.
2216    
2217          I was using mutex_lock()/mutex_unlock() so that I can use
2218          atomic_dec_and_test() for removing an element from a list.
2219          I moved that operation to garbage collector in order to reduce frequency
2220          of mutex_lock()/mutex_unlock() calls.

Legend:
Removed from v.3014  
changed lines
  Added in v.3131

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26