Ejemplo n.º 1
0
int main() {
    ssize_t r;
    const int in = 0;
    char buf[MAX_CMD_LEN];
    long flags = fcntl(in, F_GETFL, 0);
    if (flags < 0) {
        fprintf(stderr, "Unable to get flags for stdin: %s\n", strerror(errno));
        exit(1);
    }
    if (fcntl(in, F_SETFL, flags | O_NONBLOCK) != 0) {
        fprintf(stderr, "Unable to set non-blocking flag for stdin: %s\n", strerror(errno));
        exit(1);
    }
     
    strcpy(command, "sync");
    banner();
    printf("Connecting...");
    fflush(NULL);
    ltServerInit();
    int t = 0;
    while (!ltServerIsReady()) {
        ltServerStep();
        usleep(DELAY);
        if (t % 30 == 0) {
            printf(".");
            fflush(NULL);
        }
        t++;
    }
    printf("\nConnection established.\n");

    prompt();
    while (true) {
        r = read(in, buf, MAX_CMD_LEN);
        if (r < 0) {
            if (errno != EAGAIN) {
                fprintf(stderr, "Error reading from stdin: %s\n", strerror(errno));
                exit(1);
            }
        }
        if (r > 0) {
            buf[r] = '\0';
            if (buf[r - 1] == '\n') {
                buf[r - 1] = '\0';
                need_nl_before_logs = false;
            }
            if (buf[0] != '\0') {
                strcpy(command, buf);
            }
            execute_command();
        }
        ltServerStep();
        print_logs();
        usleep(DELAY);
        prompt();
    }
}
Ejemplo n.º 2
0
int main(int argc, char **argv)
{
	char offset_file[MAX_FILE_NAME];
	char *file_name, *prog;
	ino_t inode;
	off_t offset;

	prog = argv[0];

	if (argc != 2) {
		fprintf(stderr, "no filename specified\n");
		usage(prog);
		return 1;
	}

	file_name = argv[1];

	if (strlen(OFFSET_EXT) + strlen(file_name) + 1 > MAX_FILE_NAME) {
		fprintf(stderr, "%s: filename too long (max is %ld)\n",
			prog, MAX_FILE_NAME - strlen(OFFSET_EXT) - 1);
		return 1;
	}
	strncat(offset_file, file_name,
		sizeof(offset_file) - strlen(offset_file) - 1);
	strncat(offset_file, OFFSET_EXT,
		sizeof(offset_file) - strlen(offset_file) - 1);

	if (read_offset(offset_file, &inode, &offset) != 0) {
		fprintf(stderr, "%s: can't open offset file: %s\n",
			prog, strerror(errno));
		return 1;
	}

	if (print_logs(file_name, &inode, &offset) != 0) {
		fprintf(stderr, "%s: can't read '%s': %s\n",
			prog, file_name, strerror(errno));
		return 1;
	}

	if (write_offset(offset_file, inode, offset) != 0) {
		fprintf(stderr, "%s: can't write offset file: %s\n",
			prog, strerror(errno));
		return 1;
	}

	return 0;
}
Ejemplo n.º 3
0
int main(int argc_m, char *argv_m[])
{

   int ret,argc=0;
   char argstr[200];
   int total_cases,cur_case=0,fail=0;
   char **argv=NULL;
   char openssltestnum[20];
   FILE *arg_fp;


  if(openssl_init())
  {
    return 1;
  }



    if(argc_m > 1)
    	arg_fp = fopen(argv_m[1],"r+");
    else
    	return 1; // filename needed as argument.


    if(!arg_fp)
    {
      return 1;
    }

    while(!feof(arg_fp)&&!fail)
    {
  	  memset(argstr,0,200);
      fgets(argstr, 200, arg_fp);
      strip(argstr);
      argv = create_params(argstr,&argc);
	  strcpy(openssltestnum,argv[1]);

	  if(!strcmp(argv[2],"test_log"))
      {
        print_logs(argc,argv);
      }
      else if(!strcmp(argv[2],"compare"))
      {
        ret = compare_files(argv[3],argv[4]);
        if(ret)
        {
        testResultXml(openssltestnum, ret);
        fail=1;
        }

      }
      else if(!strcmp(argv[2],"append"))
      {
        ret = append(argv[3],argv[4],argv[5]);
        if(ret)
        {
         testResultXml(openssltestnum, ret);
         fail=1;
        }

      }
       else if(!strcmp(argv[2],"delete"))
      {
        delete_file(argv[3]);

      }
      else
      {
        ret = openssl_main(argc-2,argv+2);
        if(ret)
        {
        testResultXml(openssltestnum, ret);
        fail=1;
        }

      }

     //delete_params(argv,argc);
   }//while

   if(!fail&&!ret)
   testResultXml(openssltestnum, fail);
   fclose(arg_fp);


 openssl_deinit();
 return ret;
}