I modified the patch to display bandwidth in bits for --bits option not the
length.
I attached change log and diff file
Thanks
Sasi
On Sun, Jan 15, 2012 at 2:14 AM, Sasikanth sasikanth@gmail.com wrote:
No one asked. i had just thought it will be good to display all the output
in either bits or bytes to avoid confusion to the user (I had confused).
Anyhow thanks I will modify the patch.
Thanks
Sasi
On Thu, Jan 12, 2012 at 3:11 PM, Hrvoje Niksic hnik...@xemacs.org wrote:
Sasikanth sasikanth@gmail.com writes:
I added a new option --bits as requested in
https://savannah.gnu.org/bugs/?33210.
This patch will display all data length in bits format for --bits
option.
I don't think anyone requested data *length* being displayed in bits.
Measuring bandwidth in bits per second is useful for compatibility with
units used by network equipment (which at the lowest level does deal
with individual bits). On the other hand, measuring downloaded data in
bits is not widely used and adds no new information nor convenience.
The --bits option, if implemented, should only affect bandwidth display.
diff -ur orig/wget-1.13/src/init.c wget-1.13/src/init.c
--- orig/wget-1.13/src/init.c 2011-08-07 01:57:37.0 +0530
+++ wget-1.13/src/init.c2012-01-15 02:25:48.838638001 +0530
@@ -126,6 +126,7 @@
{ backups, opt.backups, cmd_number },
{ base, opt.base_href, cmd_string },
{ bindaddress, opt.bind_address, cmd_string },
+ { bits, opt.bits_fmt, cmd_boolean},
#ifdef HAVE_SSL
{ cacertificate,opt.ca_cert, cmd_file },
#endif
diff -ur orig/wget-1.13/src/main.c wget-1.13/src/main.c
--- orig/wget-1.13/src/main.c 2011-08-07 05:49:48.0 +0530
+++ wget-1.13/src/main.c2012-01-15 02:29:13.818638001 +0530
@@ -166,6 +166,7 @@
{ backups, 0, OPT_BOOLEAN, backups, -1 },
{ base, 'B', OPT_VALUE, base, -1 },
{ bind-address, 0, OPT_VALUE, bindaddress, -1 },
+{ bits, 0, OPT_BOOLEAN, bits, -1 },
{ IF_SSL (ca-certificate), 0, OPT_VALUE, cacertificate, -1 },
{ IF_SSL (ca-directory), 0, OPT_VALUE, cadirectory, -1 },
{ cache, 0, OPT_BOOLEAN, cache, -1 },
@@ -704,6 +705,11 @@
-np, --no-parent don't ascend to the parent directory.\n),
\n,
+N_(\
+Output format:\n),
+N_(\
+ --bits Output bandwidth in bits.\n),
+\n,
N_(Mail bug reports and suggestions to bug-wget@gnu.org.\n)
};
diff -ur orig/wget-1.13/src/options.h wget-1.13/src/options.h
--- orig/wget-1.13/src/options.h2011-08-06 15:54:32.0 +0530
+++ wget-1.13/src/options.h 2012-01-15 02:23:57.845638003 +0530
@@ -255,6 +255,7 @@
bool show_all_dns_entries; /* Show all the DNS entries when resolving a
name. */
+ bool bits_fmt; /*Output bandwidth in bits format*/
};
extern struct options opt;
diff -ur orig/wget-1.13/src/progress.c wget-1.13/src/progress.c
--- orig/wget-1.13/src/progress.c 2011-01-01 17:42:35.0 +0530
+++ wget-1.13/src/progress.c2012-01-15 02:54:53.115637998 +0530
@@ -861,7 +861,7 @@
struct bar_progress_hist *hist = bp-hist;
/* The progress bar should look like this:
- xx% [=== ] nn,nnn 12.34K/s eta 36m 51s
+ xx% [=== ] nn,nnn 12.34KB/s eta 36m 51s
Calculate the geometry. The idea is to assign as much room as
possible to the progress bar. The other idea is to never let
@@ -873,7 +873,7 @@
xx% or 100% - percentage - 4 chars
[] - progress bar decorations - 2 chars
nnn,nnn,nnn- downloaded bytes - 12 chars or very rarely
more
- 12.5K/s- download rate - 8 chars
+ 12.5KB/s- download rate - 9 chars
eta 36m 51s - ETA - 14 chars
=... - progress bar - the rest
@@ -977,10 +977,11 @@
*p++ = ' ';
}
- /* 12.52K/s */
+ /* 12.52Kb/s or 12.52KB/s */
if (hist-total_time 0 hist-total_bytes)
{
- static const char *short_units[] = { B/s, K/s, M/s, G/s };
+ static const char *short_units[] = { B/s, KB/s, MB/s, GB/s };
+ static const char *short_units_bits[] = { b/s, Kb/s, Mb/s, Gb/s
};
int units = 0;
/* Calculate the download speed using the history ring and
recent data that hasn't made it to the ring yet. */
@@ -988,7 +989,7 @@
double dltime = hist-total_time + (dl_total_time - bp-recent_start);
double dlspeed = calc_rate (dlquant, dltime, units);
sprintf (p, %4.*f%s, dlspeed = 99.95 ? 0 : dlspeed = 9.995 ? 1 : 2,
- dlspeed, short_units[units]);
+ dlspeed,
!opt.bits_fmt?short_units[units]:short_units_bits[units]);
move_to_end (p);
}
else
diff -ur orig/wget-1.13/src/retr.c