コード例 #1
0
ファイル: TaintEngine.cpp プロジェクト: 0xr0ot/NDroid
int getTaint(int addr){
	taint_iterator it = taintMap.find(addr);
	if(it != taintMap.end()){
		return it->second;
	}else{
		return (0);
	}
}
コード例 #2
0
ファイル: TaintEngine.cpp プロジェクト: 0xr0ot/NDroid
int clearTaint(int addr){
	taint_iterator it = taintMap.find(addr);
	if(it != taintMap.end()){
		taintMap.erase(it);
		return (1);
	}else{
		return (0);
	}
}
コード例 #3
0
ファイル: TaintEngine.cpp プロジェクト: 0xr0ot/NDroid
int setTaint(int addr, int tValue){
	DEFENSIVE_CHECK_TAINT(tValue);
	taint_iterator it = taintMap.find(addr);	
	if(it != taintMap.end()){
		it->second = tValue;
		return (1);
	}else{
		taint_pair newTaint (addr, tValue);
		taintMap.insert(newTaint);
		return (0);
	}
}
コード例 #4
0
ファイル: TaintEngine.cpp プロジェクト: 0-14N/NDroid
int clearTaint(int addr){
#ifdef WITH_MEM_PROTECT
	CHECK_ON_DVM_STACK(addr);
	CHECK_ON_DVM_HEAP(addr);
	CHECK_ON_DVM_LINEAR_ALLOC(addr);
#endif
	taint_iterator it = taintMap.find(addr);
	if(it != taintMap.end()){
		taintMap.erase(it);
		return (1);
	}else{
		return (0);
	}
}
コード例 #5
0
ファイル: TaintEngine.cpp プロジェクト: 0-14N/NDroid
int setTaint(int addr, int tValue){
#ifdef WITH_MEM_PROTECT
	CHECK_ON_DVM_STACK(addr);
	CHECK_ON_DVM_HEAP(addr);
	CHECK_ON_DVM_LINEAR_ALLOC(addr);
#endif
	DEFENSIVE_CHECK_TAINT(tValue);
	taint_iterator it = taintMap.find(addr);	
	if(it != taintMap.end()){
		it->second = tValue;
		return (1);
	}else{
		taint_pair newTaint (addr, tValue);
		taintMap.insert(newTaint);
		return (0);
	}
}