~brianaker/libmemcached/1164440

« back to all changes in this revision

Viewing changes to clients/memaslap.c

  • Committer: Continuous Integration
  • Date: 2013-03-10 13:02:02 UTC
  • mfrom: (1149.1.7 libmemcached-1.0)
  • Revision ID: ci@tangent.org-20130310130202-pbwutqnl3aolmc53
Merge lp:~tangent-org/libmemcached/1.0-build/ Build: jenkins-Libmemcached-235

Show diffs side-by-side

added added

removed removed

Lines of Context:
378
378
  char unit= optarg[strlen(optarg) - 1];
379
379
 
380
380
  optarg[strlen(optarg) - 1]= '\0';
 
381
  errno= 0;
381
382
  ret= strtoll(optarg, (char **)NULL, 10);
 
383
  if (errno != 0)
 
384
  {
 
385
    fprintf(stderr, "strtoll(optarg,..): %s\n", strerror(errno));
 
386
    exit(1);
 
387
  }
382
388
 
383
389
  switch (unit)
384
390
  {
434
440
      break;
435
441
 
436
442
    case OPT_CONCURRENCY:       /* --concurrency or -c */
 
443
      errno= 0;
437
444
      ms_setting.nconns= (uint32_t)strtoul(optarg, (char **) NULL, 10);
438
 
      if (ms_setting.nconns <= 0)
 
445
      if (ms_setting.nconns <= 0 || errno != 0)
439
446
      {
440
447
        fprintf(stderr, "Concurrency must be greater than 0.:-)\n");
441
448
        exit(1);
443
450
      break;
444
451
 
445
452
    case OPT_EXECUTE_NUMBER:        /* --execute_number or -x */
 
453
      errno= 0;
446
454
      ms_setting.exec_num= (int)strtol(optarg, (char **) NULL, 10);
447
 
      if (ms_setting.exec_num <= 0)
 
455
      if (ms_setting.exec_num <= 0 || errno != 0)
448
456
      {
449
457
        fprintf(stderr, "Execute number must be greater than 0.:-)\n");
450
458
        exit(1);
452
460
      break;
453
461
 
454
462
    case OPT_THREAD_NUMBER:     /* --threads or -T */
 
463
      errno= 0;
455
464
      ms_setting.nthreads= (uint32_t)strtoul(optarg, (char **) NULL, 10);
456
 
      if (ms_setting.nthreads <= 0)
 
465
      if (ms_setting.nthreads <= 0 || errno != 0)
457
466
      {
458
467
        fprintf(stderr, "Threads number must be greater than 0.:-)\n");
459
468
        exit(1);
461
470
      break;
462
471
 
463
472
    case OPT_FIXED_LTH:         /* --fixed_size or -X */
 
473
      errno= 0;
464
474
      ms_setting.fixed_value_size= (size_t)strtoull(optarg, (char **) NULL, 10);
465
 
      if ((ms_setting.fixed_value_size <= 0)
 
475
      if ((ms_setting.fixed_value_size <= 0 || errno != 0)
466
476
          || (ms_setting.fixed_value_size > MAX_VALUE_SIZE))
467
477
      {
468
478
        fprintf(stderr, "Value size must be between 0 and 1M.:-)\n");
482
492
      break;
483
493
 
484
494
    case OPT_GETS_DIVISION:         /* --division or -d */
 
495
      errno= 0;
485
496
      ms_setting.mult_key_num= (int)strtol(optarg, (char **) NULL, 10);
486
 
      if (ms_setting.mult_key_num <= 0)
 
497
      if (ms_setting.mult_key_num <= 0 || errno != 0)
487
498
      {
488
499
        fprintf(stderr, "Multi-get key number must be greater than 0.:-)\n");
489
500
        exit(1);
568
579
      break;
569
580
 
570
581
    case OPT_SOCK_PER_CONN:         /* --conn_sock or -n */
 
582
      errno= 0;
571
583
      ms_setting.sock_per_conn= (uint32_t)strtoul(optarg, (char **) NULL, 10);
572
 
      if (ms_setting.sock_per_conn <= 0)
 
584
      if (ms_setting.sock_per_conn <= 0 || errno != 0)
573
585
      {
574
586
        fprintf(stderr, "Number of socks of each concurrency "
575
587
                        "must be greater than 0.:-)\n");
605
617
      break;
606
618
 
607
619
    case OPT_REP_WRITE_SRV:         /* --rep_write or -p */
 
620
      errno= 0;
608
621
      ms_setting.rep_write_srv= (uint32_t)strtoul(optarg, (char **) NULL, 10);
609
 
      if (ms_setting.rep_write_srv <= 0)
 
622
      if (ms_setting.rep_write_srv <= 0 || errno != 0)
610
623
      {
611
624
        fprintf(stderr,
612
625
                "Number of replication writing server must be greater "