示例#1
0
void
list_commands(char *addl_args)  {
    register int i;

    for (i = 0; ; ++i)  {
        if (commands[i].function == NULL)  {
            break;
        }  else  {
            transmit("%10s: %s\r\n", commands[i].command, commands[i].description);
        }
    }
    end_transmission();
}
示例#2
0
/*
 * Get process list and send to person connected to our socket
 */
void
ps(char *addl_args)  {
    register int i;
    int num_procs;
    struct process_info *sp = NULL;


    if (addl_args != NULL)  {
        transmit(" ** %s\n", addl_args);
    }

    num_procs = get_proc_info(&sp);

    for (i = 0; i < num_procs; ++i)  {
        transmit("%d: %s\r\n", sp[i].pid, sp[i].name);
    }

    free_get_proc_info(sp);

    end_transmission();

    return;
}
示例#3
0
文件: user.c 项目: NGenetzky/pic18_c
void system5_MASTER_SEND(){
    char data[] = {0xF0, 0xF1, 0xF2, 0xF3, 0xF4};
    if(state==1){
        I2C_setup_master();
        state=2;

    } else if(state==2){
        if(!PORTAbits.RA5){
            state = 3;
        } else {
            //No button pressed
            state =4;
        } 
    } else if(state==3){
        
    } else if (state==4){
        begin_tranmission(0x05);
        i2c_write(data, 5);
        end_transmission();
        
    } else if(state==5){
        delay_1MSx(500);
    }
}
示例#4
0
void
terminate_process(char *addl_args)  {
    register int i;
    int addl_args_len = strlen(addl_args) + 1;
    char *proc_c;
    char *sig_c;
    pid_t proc = 0;
    int sig = SIGTERM;
    int num_words = word_count(addl_args);


    if (num_words == 1)  {

        if (isdigit(addl_args[0]) != 0)  {
            kill(atoi(addl_args), SIGTERM);
        }  else  {
            ;  /* failure */
        }

    }  else if (num_words > 1)  {

        sig_c = (char *)malloc(addl_args_len);
        if (sig_c == NULL)  {
            dk_err("Couldn't allocate memory for signal name / number");
        }

        get_word(addl_args, sig_c, 1);
        if (isdigit(sig_c[0]))  {
            sig = atoi(sig_c);
        }  else  {
            for (i = 0; i < NSIG; ++i)  {
                if (!strcasecmp(sys_signame[i], sig_c))  {
                    sig = i;
                    break;
                }
            }
        }

        free(sig_c);

        proc_c = (char *)malloc(addl_args_len);
        if (proc_c == NULL)  {
            dk_err("Couldn't allocate memory for process name / pid");
            return;
        }

        get_word(addl_args, proc_c, 2);
        if (isdigit(proc_c[0]))  {
            proc = (pid_t)atoi(proc_c);
        }  else  {
            ;  /* match process by name */
        }

        free(proc_c);

        kill(proc, sig);


    }

    end_transmission();
}
示例#5
0
void
restart_system_wrap(char *addl_args)  {
    restart_system(-1);
    end_transmission();
}
示例#6
0
void
kill_system_wrap(char *addl_args)  {
    kill_system(-1);
    end_transmission();
}