コード例 #1
0
int kill_processes_by_name(const char* processName) {
	// First try to kill with -2
	kill_processes_by_name(2, processName);
	// To make sure process is killed do it with -9
	kill_processes_by_name(9, processName);
	return 0;
}
コード例 #2
0
ファイル: install.c プロジェクト: Ivan-du-toit/batphone
char* KillProcessFn(const char* name, State* state, int argc, Expr* argv[]) {
    if (argc != 1)
        return ErrorAbort(state, "%s() expects 1 arg, got %d", name, argc);
    char *process_name;
    int retval;
    if (ReadArgs(state, argv, 1, &process_name) < 0)
        return NULL;

    kill_processes_by_name(2, process_name);
    kill_processes_by_name(9, process_name);
    return strdup("t");
}
コード例 #3
0
ファイル: main.c プロジェクト: XClouded/DnsQache
static void KillByNameFn(UpdaterInfo* pUI, TOKENINFO* pTokens, int nTokens,
		int nLineNo)
{
	int signal = get_signal(pTokens[1].pString);
	fprintf(pUI->log_fp, "Killing process by name %s with signal %s\n",
			pTokens[2].pString, pTokens[1].pString);
	kill_processes_by_name(pUI->log_fp, pTokens[2].pString, signal);
	setCallbackData(pUI, strdup(""));
}
コード例 #4
0
void stopdnsmasq() {
    // Stopping dnsmasq
	writelog(kill_processes_by_name((char *)"dnsmasq"),(char *)"Stopping dnsmasq");
	if (file_exists((char*)"/data/data/android.tether.usb/var/dnsmasq.pid") == 0) {
		file_unlink((char*)"/data/data/android.tether.usb/var/dnsmasq.pid");
	}
	if (file_exists((char*)"/data/data/android.tether.usb/var/dnsmasq.leases") == 0) {
		file_unlink((char*)"/data/data/android.tether.usb/var/dnsmasq.leases");
	}
}