Open-Source-Software-Entwicklung und Downloads

Browse Subversion Repository

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

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

revision 5498 by kumaneko, Wed Sep 28 13:32:18 2011 UTC revision 5888 by kumaneko, Tue Feb 28 10:25:58 2012 UTC
# Line 2979  Fix 2011/09/25 Line 2979  Fix 2011/09/25
2979        collector when certain pattern of entries are queued. Thus, I replaced it        collector when certain pattern of entries are queued. Thus, I replaced it
2980        with sequential processing.        with sequential processing.
2981    
2982  Version 1.8.3   2011/XX/XX   Usability enhancement release.  Version 1.8.3   2011/09/29   Usability enhancement release.
2983    
2984    Fix 2011/10/24
2985    
2986        @ Fix incomplete read after seek.
2987    
2988          ccs_flush() tries to flush data to be read as soon as possible.
2989          ccs_select_domain() (which is called by write()) enqueues data which
2990          meant to be read by next read(), but previous read()'s read buffer's
2991          size was not cleared. As a result, since 1.8.0, sequence like
2992    
2993            char *cp = "select global-pid=1\n";
2994            read(fd, buf1, sizeof(buf1));
2995            write(fd, cp, strlen(cp));
2996            read(fd, buf2, sizeof(buf2));
2997    
2998          causes enqueued data to be flushed to buf1 rather than buf2.
2999    
3000        @ Use query id for reaching target process's domain policy.
3001    
3002          Use query id for reaching target process's domain policy rather than
3003          target process's global PID. This is for synchronizing with TOMOYO 2.x,
3004          but this change makes /usr/sbin/ccs-queryd more reliable because the
3005          kernel will return empty domain policy when the query has expired before
3006          ccs-queryd reaches target process's domain policy.
3007    
3008        @ Fix quota counting.
3009    
3010          "task manual_domain_transition" should not be counted for quota as with
3011          "task auto_domain_transition"/"task auto_execute_handler"/
3012          "task denied_execute_handler" because these are not appended by learning
3013          mode.
3014    
3015    Fix 2011/11/11
3016    
3017        @ Optimize for object's size.
3018    
3019          I rearranged functions/variables into three groups in order to reduce
3020          object's filesize. Also, I added kernel config options for reducing more
3021          by excluding unnecessary functionality.
3022    
3023    Fix 2011/11/18
3024    
3025        @ Fix kernel config mapping error.
3026    
3027          Due to a typo in ccs_p2mac definition, mode for CONFIG::file::execute was
3028          by error used when checking "file getattr" permission. Most users will
3029          not be affected by this error because CONFIG::file::execute and
3030          CONFIG::file::getattr are by default configured to use CONFIG::file or
3031          CONFIG settings.
3032    
3033    Fix 2011/12/13
3034    
3035        @ Follow __d_path() behavior change. (Only 2.6.36 and later)
3036    
3037          The behavior of __d_path() has changed in 3.2-rc5. __d_path() now returns
3038          NULL when the pathname cannot be calculated. You must update to this
3039          version when using with 3.2-rc5 and later kernels, or the kernel will
3040          panic because ccs_get_absolute_path() triggers NULL pointer dereference.
3041    
3042          The patch that changed the behavior of __d_path() might be backported to
3043          2.6.36 to 3.1 kernels. You must update to this version if the patch was
3044          backported, or you will experience the kernel panic as with 3.2-rc5.
3045    
3046          The patch that changed the behavior of __d_path() also changed the way of
3047          handling pathnames under lazy-unmounted directory. Until now, TOMOYO was
3048          using incomplete pathnames returned by __d_path() when the pathname is
3049          under lazy-unmounted directory. But from now on, TOMOYO uses different
3050          pathnames returned by ccs_get_local_path() when the pathname is under
3051          lazy-unmounted directory (because __d_path() no longer returns it).
3052    
3053          Since applications unlikely do lazy unmounts, requesting pathnames under
3054          lazy-unmounted directory should not happen unless the administrator
3055          explicitly does lazy unmounts. But pathnames which is defined for such
3056          conditions in the policy file (if any) will need to be rewritten.
3057    
3058    Fix 2012/01/20
3059    
3060        @ Follow changes in 3.3-rc1.
3061    
3062          Use umode_t rather than mode_t.
3063          Remove ipv6_addr_copy() usage.
3064    
3065    Fix 2012/02/25
3066    
3067        @ Follow changes in linux-next.
3068    
3069          UMH_WAIT_PROC constant (currently 1) is scheduled for renumbering in 3.4.
3070    
3071          Use UMH_WAIT_PROC constant instead of hardcoded constant in preparation
3072          for backporting call_usermodehelper() related changes. If renumbering was
3073          backported, you will start experiencing the kernel panic upon execution
3074          of external policy loader (i.e. /sbin/ccs-init), for the kernel will no
3075          longer wait for completion of external policy loader process.
3076    
3077          Although I changed to use UMH_WAIT_PROC constant, this change could fail
3078          to detect renumbering in 2.6.22 and earlier kernels, for UMH_WAIT_PROC
3079          constant is currently available to only 2.6.23 and later kernels. If you
3080          started to experience the kernel panic, please check whether renumbering
3081          was backported or not.
3082    
3083    Fix 2012/02/28
3084    
3085        @ Fix mount flags checking order.
3086    
3087          Userspace can pass in arbitrary combinations of MS_* flags to mount().
3088    
3089          If both MS_BIND and one of MS_SHARED/MS_PRIVATE/MS_SLAVE/MS_UNBINDABLE
3090          are passed, device name which should be checked for MS_BIND was not
3091          checked because MS_SHARED/MS_PRIVATE/MS_SLAVE/MS_UNBINDABLE had higher
3092          priority than MS_BIND.
3093    
3094          If both one of MS_BIND/MS_MOVE and MS_REMOUNT are passed, device name
3095          which should not be checked for MS_REMOUNT was checked because MS_BIND/
3096          MS_MOVE had higher priority than MS_REMOUNT.
3097    
3098          Fix these bugs by changing priority to MS_REMOUNT -> MS_BIND -> MS_SHARED
3099          -> MS_PRIVATE -> MS_SLAVE -> MS_UNBINDABLE -> MS_MOVE as with do_mount()
3100          does.

Legend:
Removed from v.5498  
changed lines
  Added in v.5888

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