[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Mldonkey-commits] mldonkey distrib/ChangeLog src/networks/direct_...
From: |
mldonkey-commits |
Subject: |
[Mldonkey-commits] mldonkey distrib/ChangeLog src/networks/direct_... |
Date: |
Tue, 25 Oct 2011 18:01:30 +0000 |
CVSROOT: /sources/mldonkey
Module name: mldonkey
Changes by: spiralvoice <spiralvoice> 11/10/25 18:01:30
Modified files:
distrib : ChangeLog
src/networks/direct_connect: dcGlobals.ml dcInteractive.ml
dcShared.ml
Log message:
patch #7645
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/mldonkey/distrib/ChangeLog?cvsroot=mldonkey&r1=1.1538&r2=1.1539
http://cvs.savannah.gnu.org/viewcvs/mldonkey/src/networks/direct_connect/dcGlobals.ml?cvsroot=mldonkey&r1=1.21&r2=1.22
http://cvs.savannah.gnu.org/viewcvs/mldonkey/src/networks/direct_connect/dcInteractive.ml?cvsroot=mldonkey&r1=1.46&r2=1.47
http://cvs.savannah.gnu.org/viewcvs/mldonkey/src/networks/direct_connect/dcShared.ml?cvsroot=mldonkey&r1=1.10&r2=1.11
Patches:
Index: distrib/ChangeLog
===================================================================
RCS file: /sources/mldonkey/mldonkey/distrib/ChangeLog,v
retrieving revision 1.1538
retrieving revision 1.1539
diff -u -b -r1.1538 -r1.1539
--- distrib/ChangeLog 25 Oct 2011 17:52:45 -0000 1.1538
+++ distrib/ChangeLog 25 Oct 2011 18:00:54 -0000 1.1539
@@ -15,6 +15,7 @@
=========
2011/10/25
+7645: DC: show hashing progress in dcinfo (ygrek)
7644: Fix broken target release.utils.static
7642: Update GNU config.guess and config.sub to version 2011/10
7641: DC: fix ownership for downloads by non-admin users (ygrek)
Index: src/networks/direct_connect/dcGlobals.ml
===================================================================
RCS file: /sources/mldonkey/mldonkey/src/networks/direct_connect/dcGlobals.ml,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -b -r1.21 -r1.22
--- src/networks/direct_connect/dcGlobals.ml 25 Oct 2011 17:40:46 -0000
1.21
+++ src/networks/direct_connect/dcGlobals.ml 25 Oct 2011 18:01:04 -0000
1.22
@@ -95,7 +95,7 @@
let current_files = ref ([]: file list)
let dc_files_by_unchecked_hash : (string , file) Hashtbl.t = Hashtbl.create 47
let dc_files_by_key = Hashtbl.create 47
-let dc_tiger_computing = ref false
+let dc_tiger_computing = ref (None : dc_shared_file option)
let dc_get_nchunks size = Int64.to_int (size //
CommonUploads.tiger_block_size) + 1
let dc_shared_files_by_fullname : (string , dc_shared_file) Hashtbl.t =
Hashtbl.create 30
let dc_shared_files_by_codedname : (string , dc_shared_file) Hashtbl.t =
Hashtbl.create 30
Index: src/networks/direct_connect/dcInteractive.ml
===================================================================
RCS file:
/sources/mldonkey/mldonkey/src/networks/direct_connect/dcInteractive.ml,v
retrieving revision 1.46
retrieving revision 1.47
diff -u -b -r1.46 -r1.47
--- src/networks/direct_connect/dcInteractive.ml 25 Oct 2011 17:40:46
-0000 1.46
+++ src/networks/direct_connect/dcInteractive.ml 25 Oct 2011 18:01:06
-0000 1.47
@@ -1145,6 +1145,15 @@
html_mods_cntr_init ();
if use_html_mods o then dc_info_html_header buf;
let nservers = List.length !connected_servers in
+ let hashed =
+ [ Printf.sprintf "%d files" (Hashtbl.length dc_shared_files_by_hash) ] @
+ match !dc_files_to_hash with [] -> [] | l -> [ Printf.sprintf "%d
queued" (List.length l) ] @
+ match !dc_tiger_computing with
+ | Some dcsh when dcsh.dc_shared_size > 0L ->
+ let progress = Int64.to_float dcsh.dc_shared_pos /. Int64.to_float
dcsh.dc_shared_size *. 100. in
+ [ Printf.sprintf "hashing: %s (%3.0f%%)" (Filename.basename
dcsh.dc_shared_fullname) progress ]
+ | _ -> []
+ in
let list = [
("Hub supports", (DcProtocol.Supports.create_supports_string
(HubSupports mldonkey_dc_hub_supports)) );
("Client supports", (DcProtocol.Supports.create_supports_string
(ClientSupports mldonkey_dc_client_supports)) );
@@ -1153,8 +1162,9 @@
("Connected servers", (if nservers > 0 then string_of_int nservers else
""));
(" Server list:", empty_string ); ]
@ server_list @ [
- ("Hubs", (Printf.sprintf "Normal:%d Vipped:%d Opped:%d" norm_hubs
reg_hubs opped_hubs) ); ]
- in
+ ("Hubs", (Printf.sprintf "Normal:%d Vipped:%d Opped:%d" norm_hubs
reg_hubs opped_hubs) );
+ ("Hashed", String.concat ", " hashed);
+ ] in
let counter = ref 0 in
List.iter (fun (info,data) ->
dc_info_print info data line o;
Index: src/networks/direct_connect/dcShared.ml
===================================================================
RCS file: /sources/mldonkey/mldonkey/src/networks/direct_connect/dcShared.ml,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -b -r1.10 -r1.11
--- src/networks/direct_connect/dcShared.ml 19 Dec 2010 10:04:58 -0000
1.10
+++ src/networks/direct_connect/dcShared.ml 25 Oct 2011 18:01:24 -0000
1.11
@@ -258,16 +258,15 @@
(* Compute (at most) one TigerTree chunk from unhashed shared files *)
let dc_check_hashed_files () =
let module M = CommonHasher in
- if not !dc_tiger_computing then begin
- (match !dc_files_to_hash with
- | [] -> ()
- | dcsh :: files ->
- (try
+ match !dc_tiger_computing, !dc_files_to_hash with
+ | _, [] | Some _, _ -> ()
+ | None, dcsh :: files ->
+ try
if not (Sys.file_exists dcsh.dc_shared_fullname) then raise
Not_found;
if Unix32.getsize dcsh.dc_shared_fullname <> dcsh.dc_shared_size then
raise (Wrong_file_size ((Unix32.getsize dcsh.dc_shared_fullname),
dcsh.dc_shared_size));
- dc_tiger_computing := true;
+ dc_tiger_computing := Some dcsh;
let end_pos = dcsh.dc_shared_pos ++ CommonUploads.tiger_block_size in
let end_pos = min end_pos dcsh.dc_shared_size in
let len = end_pos -- dcsh.dc_shared_pos in
@@ -298,7 +297,7 @@
DcComplexOptions.dc_saved_shared_files =:= dcsh ::
!!DcComplexOptions.dc_saved_shared_files;
end
end;
- dc_tiger_computing := false
+ dc_tiger_computing := None
)
with
| Wrong_file_size (real,computed) ->
@@ -308,11 +307,10 @@
computed real dcsh.dc_shared_fullname
| e ->
dc_files_to_hash := files;
- dc_tiger_computing := false;
+ dc_tiger_computing := None;
if !verbose_upload || !verbose_unexpected_messages then
lprintf_nl "Exception %s prevents sharing of %s"
- (Printexc2.to_string e) dcsh.dc_shared_fullname ) )
- end
+ (Printexc2.to_string e) dcsh.dc_shared_fullname
let dc_updatesharesize () =
let dc_sharesize = ref Int64.zero in
@@ -320,7 +318,7 @@
dc_sharesize := !dc_sharesize ++ dcsh.dc_shared_size)
dc_shared_files_by_codedname;
!dc_sharesize
-let _ =
+let () =
network.op_network_share <- (fun fullname codedname size -> (* this is
called once/60s with all shared files *)
(* file path in DC network should use '/' as separator, convert local path
accordingly *)
let codedname =