Exemplo n.º 1
0
int main(int argc, char const *argv[])
{
	int choice_of_your_life;
	
	system("clear");
	ipswDownloader();
	system("clear");
	printf("Choose what you want to do\n");
	printf(" 1) Decrypt Root Filesystem\n");
	printf(" 2) Decrypt Ramdisk\n");
	printf(" 3) Decrypt IMG3 File\n");
	printf(" 4) Decrypt DFU File\n");
	printf(" 5) Decrypt Kernelcache\n");
	printf(" 6) Patch iBEC/iBSS\n");
	printf(" 7) Save SHSHs blobs\n");
	printf("Command : ");
	choice_of_your_life = fgetn();

	switch (choice_of_your_life)
	{
		case 1 : rootfs(); break;
		case 2 : Ramdisk(); break;
		case 3 : IMG3(); break;
		case 4 : DFU_file(); break;
		case 5 : kernelcache(); break;
		case 6 : patcher(); break;
		case 7 : save_blobs(); break;
		case 8 : joker(); break;
		default : printf("No option available yet\n"); 
	}
	return 0;	
}
Exemplo n.º 2
0
Arquivo: main.c Projeto: mytchel/bom
int
main(int argc, char *argv[])
{
  char root[NAMEMAX * 5];
  int r, fd;

  if (rootfs() < 0) {
    return ERR;
  }
  
  fd = open("/dev", O_RDONLY|O_CREATE,
	    ATTR_wr|ATTR_rd|ATTR_dir);

  if (fd < 0) {
    return ERR;
  }

  close(fd);

  fd = open("/mnt", O_RDONLY|O_CREATE,
	    ATTR_rd|ATTR_dir);

  if (fd < 0) {
    return ERR;
  }

  close(fd);

  fd = open("/bin", O_RDONLY|O_CREATE,
	    ATTR_rd|ATTR_dir);

  if (fd < 0) {
    return ERR;
  }

  close(fd);

  r = machinit();
  if (r != OK) {
    return ERR;
  }

  /*
  matrix(1000, 1, 1000);
  */
  
  while (true) {
    printf("root: ");

    r = readline(root, sizeof(root));
    if (r < 0) {
      printf("error reading!\n");
      return ERR;
    }

    printf("mountfat %s /mnt\n", root);
    r = mountfat(root, "/mnt");
    if (r == OK) {
      break;
    } else {
      printf("error mounting root!\n");
    }
  }

  printf("bind /mnt/bin /bin\n");
  bind("/mnt/bin", "/bin");
  
  printf("exec /bin/init\n");
  r = exec("/bin/init", argc, argv);

  printf("error exec /bin/init: %i\n", r);
  
  return r;
}