Exemplo n.º 1
0
void cmd_parse(char *cmd)
{
    U8 argc, i = 0;
    char *argv[30];

    fflush(stdout);

    argv[i] = strtok(cmd, " ");
    do
    {
        argv[++i] = strtok(NULL, " ");
    } while ((i < 30) && (argv[i] != NULL));
    
    argc = i;
    for (i=0; cmd_tbl[i].cmd != NULL; i++)
    {
        if (!strcmp(argv[0], cmd_tbl[i].cmd))
        {
            cmd_tbl[i].func(argc, argv);
            cmd_menu();
            return;
        }
    }
    printf_P("CMD: Command not recognized: ");
    printf_P(cmd);
    printf_P("\n");

    cmd_menu();
}
Exemplo n.º 2
0
static bool cmd_list_action(menu_type *m, const ui_event *event, int oid)
{
	if (event->type == EVT_SELECT)
		return cmd_menu(&cmds_all[oid], menu_priv(m));
	else
		return FALSE;
}
Exemplo n.º 3
0
/*------------------------------------------------------------------------------
	Preconditions:
	Postconditions:
 *----------------------------------------------------------------------------*/
void kbd_atca_cmds( void )
/*----------------------------------------------------------------------------*/
{
	int user_input;

	while( 1 )
	{
	printf(
		"\n"
		" ATCA COMMANDS MENU        \n"
		" =====================================\n" );
		current_settings();
		cmd_menu( atca_str );
		scanf( "%d", &user_input );
		fflush( stdin );
		switch( user_input )
		{
			case ATCA_CMD_GET_PICMG_PROPERTIES:
				atca_cmd_get_picmg_properties();
				break;
			case ATCA_CMD_GET_ADDRESS_INFO:
			case ATCA_CMD_GET_SHELF_ADDRESS_INFO:
			case ATCA_CMD_SET_SHELF_ADDRESS_INFO:
			case ATCA_CMD_FRU_CONTROL:
			case ATCA_CMD_GET_FRU_LED_PROPERTIES:
			case ATCA_CMD_GET_LED_COLOR:
			case ATCA_CMD_SET_FRU_LED_STATE:
			case ATCA_CMD_GET_FRU_LED_STATE:
			case ATCA_CMD_SET_IPMB_STATE:
			case ATCA_CMD_SET_FRU_ACTIVATION_POLICY:
			case ATCA_CMD_GET_FRU_ACTIVATION_POLICY:
			case ATCA_CMD_SET_FRU_ACTIVATION:
			case ATCA_CMD_GET_DEVICE_LOCATOR_REC_ID:
			case ATCA_CMD_SET_PORT_STATE:
			case ATCA_CMD_GET_PORT_STATE:
			case ATCA_CMD_COMPUTE_POWER_PROPERTIES:
			case ATCA_CMD_SET_POWER_LEVEL:
			case ATCA_CMD_GET_POWER_LEVEL:
			case ATCA_CMD_RENEGOTIATE_POWER:
			case ATCA_CMD_GET_FAN_SPEED_PROPERTIES:
			case ATCA_CMD_SET_FAN_LEVEL:
			case ATCA_CMD_GET_FAN_LEVEL:
			case ATCA_CMD_BUSED_RESOURCE_CONTROL:
			case ATCA_CMD_GET_IPMB_LINK_INFO:
				break;
			case KBD_QUIT:
				return;
			default:
				printf( "Invalid Entry\n" );
		}
		ws_process_work_list();
	}
}
Exemplo n.º 4
0
/*------------------------------------------------------------------------------
	Preconditions:
	Postconditions:
 *----------------------------------------------------------------------------*/
void kbd_app_cmds( void )
/*----------------------------------------------------------------------------*/
{
	int user_input;

	while( 1 )
	{
		printf(
			"\n"
			" APP COMMANDS MENU        \n"
			" =====================================\n" );
		current_settings();
		cmd_menu( app_str );
		scanf( "%d", &user_input );
		fflush( stdin );
		switch( user_input )
		{
			case IPMI_CMD_GET_DEVICE_ID:
				app_cmd_get_device_id();
				break;
			case IPMI_CMD_GET_SELF_TEST_RESULTS:
				app_cmd_get_self_test_results();
				break;
			case IPMI_CMD_RESET_WATCHDOG_TIMER:
				app_cmd_reset_watchdog_timer();
				break;
			case IPMI_CMD_SET_WATCHDOG_TIMER:
			case IPMI_CMD_GET_WATCHDOG_TIMER:
			case IPMI_CMD_SEND_MESSAGE:
				break;
			case KBD_SETTINGS:
				kbd_settings();
				break;
			case KBD_QUIT:
				return;
			default:
				printf( "Invalid Entry\n" );
		}
		ws_process_work_list();
	}
}
Exemplo n.º 5
0
/*------------------------------------------------------------------------------
	Preconditions:
	Postconditions:
 *----------------------------------------------------------------------------*/
void kbd_media_specific_cmds( void )
/*----------------------------------------------------------------------------*/
{
	int user_input;

	printf(
		"\n"
		" MEDIA SPECIFIC COMMANDS MENU        \n"
		" =====================================\n" );
	while( 1 )
	{
		current_settings();
		cmd_menu( media_specific_str );
		scanf( "%d", &user_input );
		fflush( stdin );
		switch( user_input )
		{
			case KBD_QUIT:
				return;
			default:
				printf( "Invalid Entry\n" );
		}
	}
}
Exemplo n.º 6
0
/*------------------------------------------------------------------------------
	Preconditions:
	Postconditions:
 *----------------------------------------------------------------------------*/
void kbd_nvstore_cmds( void )
/*----------------------------------------------------------------------------*/
{
	int user_input;

	printf(
		"\n"
		" NVSTORE COMMANDS MENU        \n"
		" =====================================\n" );
	while( 1 )
	{
		current_settings();
		cmd_menu( nvstore_str );
		scanf( "%d", &user_input );
		fflush( stdin );
		switch( user_input )
		{
			case KBD_QUIT:
				return;
			default:
				printf( "Invalid Entry\n" );
		}
	}
}