void mtk_audit_hook(char *data)
{
    char scontext[AEE_FILTER_LEN] = {'\0'};
    char *pname = scontext;
    char printBuf[AEE_FILTER_LEN]  = {'\0'};

    	
    int ret = 0;
    
	/*get scontext from avc warning*/
    ret = mtk_get_scontext(data,scontext);
	if(!ret)
	    return ;
    /*check scontext is in warning list*/
	ret = mtk_check_filter(scontext);
    if(ret >= 0)
    {                          
		pname = mtk_get_process(scontext);
		if(pname !=0)
		{
			printk("[selinux]Enforce: %d, In AEE Warning List scontext: %s\n",selinux_enforcing ,pname); 
			sprintf(printBuf,"Selinux Enforce violation: %s ",pname);
			#ifdef CONFIG_MTK_AEE_FEATURE
			if(selinux_enforcing)
				aee_kernel_warning(printBuf, "\nCR_DISPATCH_PROCESSNAME:%s\n%s",pname,data);
			#endif
		}
    }
}
Beispiel #2
0
void mtk_audit_hook(char *data)
{
	char scontext[AEE_FILTER_LEN] = { '\0' };
	char printBuf[PRINT_BUF_LEN] = { '\0' };
	char *pname = scontext;

	int ret = 0;

	/*get scontext from avc warning */
	ret = mtk_get_scontext(data, scontext);
	if (!ret)
		return;

	/*check scontext is in warning list */
	ret = mtk_check_filter(scontext);
	if (ret >= 0) {
		pr_warn("[selinux]Enforce: %d, In AEE Warning List scontext: %s\n",
		selinux_enforcing, scontext);
		pname = mtk_get_process(scontext);
#ifdef CONFIG_MTK_AEE_FEATURE		
		if (pname != 0) {
			sprintf(printBuf, "\nCR_DISPATCH_PROCESSNAME:%s\n", pname);
			if (selinux_enforcing){
				/*
				aee_kernel_warning_api(__FILE__, __LINE__, DB_OPT_DEFAULT|DB_OPT_NATIVE_BACKTRACE, 
					printBuf, data);
				*/
			}
		}
#endif		
	}
}