Exemple #1
1
int hostnameEdit(const char *option2) {

  struct uci_context *c;
  struct uci_ptr p;

  int length2= strlen("system.@system[0].hostname=")+strlen(option2)+1;
  char *hostname = safe_malloc(length2);
  strcpy(hostname,"system.@system[0].hostname="); 
  strcat(hostname,option2); 

  c = uci_alloc_context();
  if (uci_lookup_ptr (c, &p, hostname, true) != UCI_OK)
    {
      uci_perror (c, "XXX");
      return 1;
    }

  uci_set(c,&p);   
  uci_save(c, p.p);
  uci_commit(c, &p.p, false);
  uci_free_context (c);
 free(hostname);
  return(0); 
}
Exemple #2
0
int ssidEdit(const char *option1) {

  struct uci_context *c;
  struct uci_ptr p;

  int length1= strlen("wireless.@wifi-iface[0].ssid=")+strlen(option1)+1;
  char *ssid = safe_malloc(length1);
  strcpy(ssid,"wireless.@wifi-iface[0].ssid="); 
  strcat(ssid,option1); 


  c = uci_alloc_context();
  if (uci_lookup_ptr (c, &p, ssid, true) != UCI_OK)
    {
      uci_perror (c, "XXX");
      return 1;
    }

  uci_set(c,&p);   
  uci_save(c, p.p);
  uci_commit(c, &p.p, false);
  uci_free_context (c);
 free(ssid);
  return(0); 
}
Exemple #3
0
static void shift_uci_commit(void)
{
	int i;
	struct uci_ptr ptr;
	char str[CONFIG_STR_MAX];

	for (i = 0; i < CONFIG_MAX_ANALOG_PORTS; i++) {
		snprintf(str, CONFIG_STR_MAX, SHIFT_UCI_SET_TPL, i + 1,
		         conf.port[i].shift);
		if (uci_lookup_ptr(conf.uci_ctx, &ptr, str, true) != UCI_OK) {
			uci_perror(conf.uci_ctx, str);
			exit(9);
		}
		uci_set(conf.uci_ctx, &ptr);
		uci_save(conf.uci_ctx, ptr.p);
	}
	if (uci_lookup_ptr(conf.uci_ctx, &ptr, SHIFT_UCI, true) != UCI_OK) {
		uci_perror(conf.uci_ctx, SHIFT_UCI);
		exit(10);
	}
	uci_commit(conf.uci_ctx, &ptr.p, false);
}