Beispiel #1
0
void HAL_OTA_Add_System_Info(hal_system_info_t* info, bool create, void* reserved)
{
	const int additional = 2;
	int count = add_system_properties(info, create, additional);
    if (create) {
        info->key_value_count = count + additional;

        CellularDevice device;
        memset(&device, 0, sizeof(device));
        device.size = sizeof(device);
        cellular_device_info(&device, NULL);
        set_key_value(info->key_values+count, "imei", device.imei);
        set_key_value(info->key_values+count+1, "iccid", device.iccid);
    }
}
Beispiel #2
0
void HAL_OTA_Add_System_Info(hal_system_info_t* info, bool create, void* reserved)
{
    add_system_properties(info, create, 0);
    platform_ncp_fetch_module_info(info, create);
}
Beispiel #3
0
/* Event handler for tool 'configuration-manager' */
ATerm configuration_manager_handler(int conn, ATerm term)
{
  ATerm in, out;
  /* We need some temporary variables during matching */
  char *s0;
  ATerm t0, t1, t2;

  if(ATmatch(term, "rec-eval(get-text-categories)")) {
    return get_text_categories(conn);
  }
  if(ATmatch(term, "rec-do(change-workspace(<str>))", &s0)) {
    change_workspace(conn, s0);
    return NULL;
  }
  if(ATmatch(term, "rec-eval(get-language-extension(<str>))", &s0)) {
    return get_language_extension(conn, s0);
  }
  if(ATmatch(term, "rec-eval(get-library-paths)")) {
    return get_library_paths(conn);
  }
  if(ATmatch(term, "rec-eval(get-subtype-action(<term>,<term>,<term>))", &t0, &t1, &t2)) {
    return get_subtype_action(conn, t0, t1, t2);
  }
  if(ATmatch(term, "rec-do(add-system-property(<term>))", &t0)) {
    add_system_property(conn, t0);
    return NULL;
  }
  if(ATmatch(term, "rec-eval(get-action(<term>,<term>))", &t0, &t1)) {
    return get_action(conn, t0, t1);
  }
  if(ATmatch(term, "rec-do(add-system-properties(<str>))", &s0)) {
    add_system_properties(conn, s0);
    return NULL;
  }
  if(ATmatch(term, "rec-eval(get-module-paths)")) {
    return get_module_paths(conn);
  }
  if(ATmatch(term, "rec-do(remove-system-property(<term>))", &t0)) {
    remove_system_property(conn, t0);
    return NULL;
  }
  if(ATmatch(term, "rec-eval(get-subtype-events(<term>,<term>))", &t0, &t1)) {
    return get_subtype_events(conn, t0, t1);
  }
  if(ATmatch(term, "rec-eval(get-extension-editor(<str>))", &s0)) {
    return get_extension_editor(conn, s0);
  }
  if(ATmatch(term, "rec-terminate(<term>)", &t0)) {
    rec_terminate(conn, t0);
    return NULL;
  }
  if(ATmatch(term, "rec-eval(get-events(<term>))", &t0)) {
    return get_events(conn, t0);
  }
  if(ATmatch(term, "rec-do(signature(<term>,<term>))", &in, &out)) {
    ATerm result = configuration_manager_checker(conn, in);
    if(!ATmatch(result, "[]"))
      ATfprintf(stderr, "warning: not in input signature:\n\t%\n\tl\n", result);
    return NULL;
  }

  ATerror("tool configuration-manager cannot handle term %t", term);
  return NULL; /* Silence the compiler */
}