[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: |
Wed, 08 Sep 2010 16:26:05 +0000 |
CVSROOT: /sources/mldonkey
Module name: mldonkey
Changes by: spiralvoice <spiralvoice> 10/09/08 16:26:05
Modified files:
distrib : ChangeLog
src/networks/direct_connect: dcClients.ml dcGlobals.ml
dcTypes.ml
Log message:
patch #7306
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/mldonkey/distrib/ChangeLog?cvsroot=mldonkey&r1=1.1470&r2=1.1471
http://cvs.savannah.gnu.org/viewcvs/mldonkey/src/networks/direct_connect/dcClients.ml?cvsroot=mldonkey&r1=1.17&r2=1.18
http://cvs.savannah.gnu.org/viewcvs/mldonkey/src/networks/direct_connect/dcGlobals.ml?cvsroot=mldonkey&r1=1.17&r2=1.18
http://cvs.savannah.gnu.org/viewcvs/mldonkey/src/networks/direct_connect/dcTypes.ml?cvsroot=mldonkey&r1=1.7&r2=1.8
Patches:
Index: distrib/ChangeLog
===================================================================
RCS file: /sources/mldonkey/mldonkey/distrib/ChangeLog,v
retrieving revision 1.1470
retrieving revision 1.1471
diff -u -b -r1.1470 -r1.1471
--- distrib/ChangeLog 7 Sep 2010 18:25:50 -0000 1.1470
+++ distrib/ChangeLog 8 Sep 2010 16:26:04 -0000 1.1471
@@ -14,6 +14,9 @@
ChangeLog
=========
+2010/09/08
+7306: DC: show client brand, session transfer and duration
+
2010/09/07
7302: DC: Fix performance problem with many shared files (ygrek)
7299: configure: abort on unknown options
Index: src/networks/direct_connect/dcClients.ml
===================================================================
RCS file: /sources/mldonkey/mldonkey/src/networks/direct_connect/dcClients.ml,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -b -r1.17 -r1.18
--- src/networks/direct_connect/dcClients.ml 3 Nov 2007 22:04:52 -0000
1.17
+++ src/networks/direct_connect/dcClients.ml 8 Sep 2010 16:26:04 -0000
1.18
@@ -722,8 +722,7 @@
if !verbose_msg_clients then lprintf_nl " Client won the
election...";
(match c.client_state with (* memorize list
loading if that is the case *)
| DcConnectionStyle _ -> (* if file was
tried to download ... *)
- let nc = new_client () in
- copy_client c nc;
+ let nc = new_copy_client c in
nc.client_sock <- NoConnection;
nc.client_addr <- None;
(match c.client_file with
@@ -737,8 +736,7 @@
| None -> () );
remove_client_from_clients_file c
| _ -> (* DcDownloadListConnecting *) (* if filelist
was tried to download *)
- let nc = new_client () in
- copy_client c nc;
+ let nc = new_copy_client c in
nc.client_sock <- NoConnection;
nc.client_addr <- None;
(match c.client_user with
@@ -1326,6 +1324,7 @@
(match c.client_user with
| Some u -> u.user_downloaded <- u.user_downloaded ++ downloaded
| _ -> () );
+ c.client_downloaded <- c.client_downloaded ++ downloaded;
buf_used b b.len;
if c.client_pos > (file_downloaded file) then (* update downloading
state *) (* TODO check tth while loading *)
add_file_downloaded (as_file file.file_file) (c.client_pos --
(file_downloaded file));
@@ -1350,6 +1349,7 @@
(match c.client_user with
| Some u -> u.user_downloaded <- u.user_downloaded ++ len
| _ -> () );
+ c.client_downloaded <- c.client_downloaded ++ len;
c.client_receiving <- c.client_receiving -- len;
buf_used b b.len;
if c.client_receiving = Int64.zero then begin
@@ -1524,6 +1524,7 @@
(match c.client_user with
| Some u -> u.user_uploaded <- u.user_uploaded ++ uploaded
| _ -> () );
+ c.client_uploaded <- c.client_uploaded ++ uploaded;
(match c.client_state with
| DcUpload (dcsh,_,_,_) ->
(try
@@ -1565,7 +1566,7 @@
let _ =
client_ops.op_client_info <- (fun c ->
let name = clients_username c in
- let kind,downloaded,uploaded =
+ let kind,total_downloaded,total_uploaded =
let ip,port =
(match c.client_addr with
| Some (ip,port) -> ip,port
@@ -1582,6 +1583,11 @@
let kind = Indirect_location (empty_string,Md4.null,ip,port) in
kind,Int64.zero,Int64.zero )
in
+ let software, version =
+ match c.client_user with
+ | Some u -> u.user_myinfo.client_brand, u.user_myinfo.version
+ | None -> empty_string, empty_string
+ in
let filename =
(match c.client_file with
| Some file -> file.file_name
@@ -1594,12 +1600,14 @@
P.client_type = client_type c;
P.client_name = name;
P.client_num = (client_num (as_client c.client_client));
- P.client_connect_time = last_time ();
- P.client_software = empty_string;
- P.client_release = empty_string;
+ P.client_connect_time = c.client_connect_time;
+ P.client_software = software;
+ P.client_release = version;
P.client_emulemod = empty_string;
- (*P.client_downloaded = downloaded;*)
- (*P.client_uploaded = uploaded;*)
+ P.client_session_downloaded = c.client_downloaded;
+ P.client_session_uploaded = c.client_uploaded;
+ P.client_total_downloaded = total_downloaded;
+ P.client_total_uploaded = total_uploaded;
P.client_upload = Some filename;
P.client_sui_verified = None; (* new 2.6.5 *)
(* P.client_sock_addr = ""; *)
Index: src/networks/direct_connect/dcGlobals.ml
===================================================================
RCS file: /sources/mldonkey/mldonkey/src/networks/direct_connect/dcGlobals.ml,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -b -r1.17 -r1.18
--- src/networks/direct_connect/dcGlobals.ml 17 Jul 2010 15:24:42 -0000
1.17
+++ src/networks/direct_connect/dcGlobals.ml 8 Sep 2010 16:26:05 -0000
1.18
@@ -596,7 +596,10 @@
client_endpos = Int64.zero; (* atm. upload end position *)
client_receiving = Int64.zero;
client_user = None;
+ client_connect_time = last_time ();
client_connection_control = new_connection_control ();
+ client_downloaded = Int64.zero;
+ client_uploaded = Int64.zero;
} and impl = {
dummy_client_impl with
impl_client_val = c;
@@ -670,20 +673,26 @@
| DcUploadDoneWaitingForMore -> "DcUploadDoneWaitingForMore" )
(* Copy client data to another *)
-let copy_client c nc =
- (*nc.client_sock <- c.client_sock;*)
- nc.client_name <- c.client_name;
- nc.client_addr <- c.client_addr;
- nc.client_supports <- c.client_supports;
- nc.client_lock <- c.client_lock;
- nc.client_file <- c.client_file;
- (*nc.client_state <- c.client_state;*)
- nc.client_pos <- c.client_pos;
- nc.client_receiving <- c.client_receiving;
- nc.client_user <- c.client_user;
- nc.client_error <- c.client_error;
- nc.client_error_count <- c.client_error_count;
- nc.client_endpos <- c.client_endpos
+let new_copy_client c =
+ {
+ (new_client ()) with
+ (*client_sock = c.client_sock;*)
+ client_name = c.client_name;
+ client_addr = c.client_addr;
+ client_supports = c.client_supports;
+ client_lock = c.client_lock;
+ client_file = c.client_file;
+ (*client_state = c.client_state;*)
+ client_pos = c.client_pos;
+ client_receiving = c.client_receiving;
+ client_user = c.client_user;
+ client_error = c.client_error;
+ client_error_count = c.client_error_count;
+ client_endpos = c.client_endpos;
+ client_connect_time = c.client_connect_time;
+ client_downloaded = c.client_downloaded;
+ client_uploaded = c.client_uploaded;
+ }
(* Get clients username *)
let clients_username client =
Index: src/networks/direct_connect/dcTypes.ml
===================================================================
RCS file: /sources/mldonkey/mldonkey/src/networks/direct_connect/dcTypes.ml,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- src/networks/direct_connect/dcTypes.ml 24 May 2010 18:10:49 -0000
1.7
+++ src/networks/direct_connect/dcTypes.ml 8 Sep 2010 16:26:05 -0000
1.8
@@ -154,7 +154,7 @@
mutable dc_shared_chunks : int;
}
-and client = { (* remember DcGlobals.copy_client if add anything *)
+and client = { (* remember DcGlobals.new_copy_client if add anything *)
client_client : client CommonClient.client_impl;
mutable client_name : string option;
mutable client_addr : (Ip.t * int) option;
@@ -171,6 +171,9 @@
mutable client_receiving : int64;
mutable client_user : user option;
mutable client_connection_control : connection_control;
+ client_connect_time : int;
+ mutable client_downloaded : int64;
+ mutable client_uploaded : int64;
}
and dc_result = { (* rst of the info (filename & size) are on
Commonresults.result_info *)