Ejemplo n.º 1
0
int main(int argc, char *args[])
{
	struct carlfw *fw = NULL;
	int err;

	if (argc < 3 || argc > 4) {
		err = -EINVAL;
		goto err_param;
	}

	switch (args[1][0]) {
	case 'a':
		if (argc != 4)
			goto err_param;

		fw = carlfw_load(args[2]);
		if (IS_ERR_OR_NULL(fw)) {
			err = PTR_ERR(fw);
			goto err_out;
		}

		err = add_mini(fw, args[3]);
		break;
	case 'd':
		if (argc != 3)
			goto err_param;

		fw = carlfw_load(args[2]);
		if (IS_ERR_OR_NULL(fw)) {
			err = PTR_ERR(fw);
			goto err_out;
		}

		err = del_mini(fw);
		break;

	default:
		goto err_param;
		break;
	}

	carlfw_release(fw);
	return EXIT_SUCCESS;

err_out:
	carlfw_release(fw);
	fprintf(stderr, "miniboot action failed (%d).\n", err);
	return EXIT_FAILURE;

err_param:
	carlfw_release(fw);
	mini_help();
	return EXIT_FAILURE;
}
Ejemplo n.º 2
0
int ft_printf(const char *format, ...)
{
  va_list myva;
  t_main *main;

  main = (t_main *)malloc(sizeof(t_main) * 1); 
  main->sizeword = 0;
  main->i = 0;
  main->totalsize = 0;
  main->chaine = format;
  //initializzzzzze VA  
  va_start(myva, format); 
  while(format[main->i] != '\0')
    {
      if(format[main->i] != '%')
	{
	  ft_putchar(format[main->i]);
	  main->sizeword++;
	  //  main->i++;
	}      
      else if(format[main->i + 1] != '\0')
	{
	  init_main(main);
	  if(main->chaine[main->i + 1] != '%')
	    main->elem = va_arg(myva, void *); 
	  flag_fiel(main);
	  my_width(main, &myva);
	  my_accurate(main, &myva);
	  lenght_fiel(main);
	  manage_arg(main);
	  add_mini(main);
	  ft_putstr(main->print);
	  main->totalsize += main->size;
	}
      main->i++;
    }