documentation update...


	Hello,

  I'm using iperf for network tests since some months now, it's a very
nice program. I'm often using it on Linux Debian systems, without X nor
internet, where main documentation is iperf's man page automatically
generated from 'iperf --help' output.
  Some time ago (when I was bitten by a bug in 2.0.1 version), I
discovered than some options wasn't documented or without all
configurations (like the '-f a' nice formatting), so I had looked
inside the code and tried to summarize these lacks of doc (see the end
of this e-mail). Could you update the 'iperf --help' output to fill
these missings ? If you prefer, I could submit you a patch, but I think
you have a better knowlegde of options significations.

  with regards,
	Frédéric Boiteux.





uncommented options  :
----------------------

        case '1': // Single Client
            setSingleClient( mExtSettings );
            break;

        case 'o' : // output the report and other messages into the file
            unsetSTDOUT( mExtSettings );
            mExtSettings->mOutputFileName = new char[strlen(optarg)+1];
            strcpy( mExtSettings->mOutputFileName, optarg);
            break;

        case 'x': // Limit Reports
            while ( *optarg != '\0' ) {
                switch ( *optarg ) {
                    case 's':
                    case 'S':
                        setNoSettReport( mExtSettings );
                        break;
                    case 'c':
                    case 'C':
                        setNoConnReport( mExtSettings );
                        break;
                    case 'd':
                    case 'D':
                        setNoDataReport( mExtSettings );
                        break;
                    case 'v':
                    case 'V':
                        setNoServReport( mExtSettings );
                        break;
                    case 'm':
                    case 'M':
                        setNoMultReport( mExtSettings );
                        break;
                    default:
                        fprintf(stderr, warn_invalid_report, *optarg);
                }
                optarg++;
            }
            break;

        case 'y': // Reporting Style
            switch ( *optarg ) {
                case 'c':
                case 'C':
                    mExtSettings->mReportMode = kReport_CSV;
                    break;
                default:
                    fprintf( stderr, warn_invalid_report_style,
optarg ); }
            break;

        case 'R':
            setRemoveService( mExtSettings );
            break;

        case 'S': // IP type-of-service
            // TODO use a function that understands base-2
            // the zero base here allows the user to specify
            // "0x#" hex, "0#" octal, and "#" decimal numbers
            mExtSettings->mTOS = strtol( optarg, NULL, 0 );
            break;




options with incomplete doc :
-----------------------------

       -f, --format
              [kmKM]   format to report: Kbits, Mbits, KBytes, MBytes

 *   B, K, M, G, A for Byte, Kbyte, Mbyte, Gbyte, adaptive byte
 *   b, k, m, g, a for bit,  Kbit,  Mbit,  Gbit,  adaptive bit
 * adaptive picks the "best" one based on the number.



options with incomplete time description (possibility of time fraction) :
-------------------------------------------------------------------------

       -i, --interval
              #        seconds and fraction of seconds (>= 0.5) between
periodic bandwidth reports

       -t, --time
              #        time in seconds to transmit for (default 10 secs)



options with incomplete suffixes description (lacks G suffix) :
---------------------------------------------------------------

       -b, --bandwidth #[KMG]
              for  UDP,  bandwidth to send at in bits/sec (default 1
Mbit/sec, implies -u)

       -l, --len
              #[KMG]   length of buffer to read or write (default 8 KB)

       -n, --num
              #[KMG]    number of bytes to transmit (instead of -t)

       -w, --window
              #[KM]    TCP window size (socket buffer size)


       [KM] Indicates options that support a K or M suffix for kilo- or
mega-



Other Mailing lists | Author Index | Date Index | Subject Index | Thread Index