/* Mongoose HTTPD Extensions */ #if defined(USE_MONGOOSE_HTTPD) #include #include #include #include #include #include #define START_HTML_BODY \ "HTTP/1.1 200 OK\r\n" \ "Content-Type: text/html\r\n\r\n" \ "\r\n" #define END_HTML_BODY \ "\r\n" void example_mongoose_callback( struct mg_connection *conn, const struct mg_request_info *request_info, void *user_data ) { const char *query; query = mg_get_var(conn, "action" ); if ( !query ) query = ""; /* fprintf( stderr, "RTEMS Request -%s-\n", query ); */ mg_printf( conn, START_HTML_BODY "
" );
  if ( !strcmp( query, "cpuuse_report" ) ) {
    rtems_cpu_usage_report_with_plugin(
      conn,
      (rtems_printk_plugin_t) mg_printf
    );
  } else if ( !strcmp( query, "cpuuse_reset" ) ) {
    rtems_cpu_usage_reset();
    mg_printf(
      conn,
      " 

CPU Usage data reset -- return to the previous page

" ); } else if ( !strcmp( query, "stackuse_report" ) ) { rtems_stack_checker_report_usage_with_plugin( conn, (rtems_printk_plugin_t) mg_printf ); } else { mg_printf( conn, START_HTML_BODY "

Unknown Request

" "

URI: %s
" " Arguments: %s

", mg_get_var(conn, "REQUEST_URI"), query ); } mg_printf( conn, "
" END_HTML_BODY ); /*arg->flags |= SHTTPD_END_OF_OUTPUT; */ } void example_mongoose_addpages( struct mg_context *server ) { mg_set_uri_callback( server, "/queries*", example_mongoose_callback, NULL ); } #endif