2003.10.21 (火) 22:56:14 <u*j*2*6*> WhoisでIPが出るときはリモートホスト名も表示します(211123と同じ)
2003.10.21 (火) 22:57:55 <u*j*2*6*> 設定→Other4で同時にチェックするリモートホストの数をかえられるようにしました(標準3, 範囲1〜100)。211127の修正の一部とおなじです
2003.10.21 (火) 22:58:46 <u*j*2*6*> ホスト名が解決できないときはIPをそのまま返すようにしました(211129と同じ)
shuusei24197:リモートホスト表示の改良(24183,211123,211127,211129参照, source by Heracules)

diff --dos -ur 24196/browseform.pas 24197/browseform.pas
--- 24196/browseform.pas	Sat Aug 16 14:12:32 2003
+++ 24197/browseform.pas	Tue Oct 21 22:32:40 2003
@@ -136,15 +136,13 @@
 end;
 
 procedure TUserListReverseDNSThread.Execute;
-const
-  MAX_RESOLVING_COUNT = 3;
 var
   hostname: String;
 begin
   FreeOnTerminate:=True;
   if Self.item=nil then exit;
   if Self.ip=0 then exit;
-  while ResolvingCount>=MAX_RESOLVING_COUNT do
+  while ResolvingCount>=max_resolving_count do
     Sleep(10);
   Inc(ResolvingCount);
   hostname:=GetHostByIP(decode_ip(Self.ip));
@@ -171,7 +169,9 @@
   ulIP:=inet_addr(PChar(IP));
   phe:=gethostbyaddr(@ulIP,4,AF_INET);
   if phe<>nil then
-    Result:=phe^.h_name;
+    Result:=phe^.h_name
+  else
+    Result:=IP;
   WSACleanUp;
 end;
 
diff --dos -ur 24196/constants.pas 24197/constants.pas
--- 24196/constants.pas	Tue Oct 21 19:43:06 2003
+++ 24197/constants.pas	Tue Oct 21 22:47:54 2003
@@ -27,7 +27,7 @@
  SLAVANAP_VERSION             = '2.4.1';
  SLAVANAP_BUILD               = '108';
  SLAVANAP_BUILD_DATE          = '24 January 2003';
- SLAVANAP_SHUUSEI             = '96';
+ SLAVANAP_SHUUSEI             = '97';
  SLAVANAP_SHUUSEI_DATE        = '21 October 2003';
  SLAVANAP_VERSION_SHORT       = SLAVANAP_TITLE+' '+SLAVANAP_VERSION;
  SLAVANAP_FULL                = SLAVANAP_TITLE+' '+SLAVANAP_VERSION+
diff --dos -ur 24196/english.lng 24197/english.lng
--- 24196/english.lng	Mon Oct 20 21:09:28 2003
+++ 24197/english.lng	Tue Oct 21 22:46:26 2003
@@ -7,7 +7,7 @@
 Version=2.4.1
 Comments=Original file by SlavaNap development team
 BUILD=108
-SHUUSEI=94
+SHUUSEI=97
 
 [Log]
 SERVER_INIT=Starting $1
@@ -991,6 +991,7 @@
 S_SHOTHER4_CB_BLOCK_2GET                   =2get
 S_SHOTHER4_CB_BLOCK_REGNESSEM              =Regnessem
 S_SHOTHER4_LABEL163                        =Log folder of server.log:
+S_SHOTHER4_LABEL165                        =resolve this number of remote hosts at a time:
 
 [UserMode]
 CAPTION=Console User Mode
diff --dos -ur 24196/handler.pas 24197/handler.pas
--- 24196/handler.pas	Mon Oct 20 23:09:14 2003
+++ 24197/handler.pas	Tue Oct 21 21:49:20 2003
@@ -63,7 +63,7 @@
 {$I defines.pas}
 
 uses
- lang, vars, share, thread, channels, bans, config, md5, memory_manager;
+ lang, vars, share, thread, channels, bans, config, md5, memory_manager, browseform;
 
 var
  hlist,hlst: TMyStringList;
@@ -5798,7 +5798,7 @@
  tmp_pos:=575;
  if i=1 then
  begin // complete whois reply
-   str:=str+' '+IntToStr(user2^.total_down)+' '+IntToStr(user2^.total_up)+' '+decode_ip(user2^.ip)+' ';
+   str:=str+' '+IntToStr(user2^.total_down)+' '+IntToStr(user2^.total_up)+' '+decode_ip(user2^.ip)+'('+GetHostByIP(decode_ip(user2^.ip))+') ';
    l2:=user2^.local;
    tmp_pos:=1231;
    if (l2<>nil) and (l2.socket<>INVALID_SOCKET) then
diff --dos -ur 24196/japanese.lng 24197/japanese.lng
--- 24196/japanese.lng	Mon Oct 20 21:09:34 2003
+++ 24197/japanese.lng	Tue Oct 21 22:39:30 2003
@@ -7,7 +7,7 @@
 Version=2.4.1.108
 Comments=Translated by usj12262@hotmail.com
 BUILD=108
-SHUUSEI=94
+SHUUSEI=97
 
 [Log]
 SERVER_INIT=$1を起動中…
@@ -991,6 +991,7 @@
 S_SHOTHER4_CB_BLOCK_2GET                  =2get
 S_SHOTHER4_CB_BLOCK_REGNESSEM             =Regnessem
 S_SHOTHER4_LABEL163                       =server.logの保存フォルダ:
+S_SHOTHER4_LABEL165                       =同時にチェックするリモートホストの数:
 
 [UserMode]
 CAPTION=制御端末ユーザーの表示モード
diff --dos -ur 24196/lang.pas 24197/lang.pas
--- 24196/lang.pas	Mon Oct 20 21:04:52 2003
+++ 24197/lang.pas	Tue Oct 21 22:24:14 2003
@@ -1189,6 +1189,7 @@
  LNG_S_SHOTHER4_CB_BLOCK_2GET                  = 1824;
  LNG_S_SHOTHER4_CB_BLOCK_REGNESSEM             = 1825;
  LNG_S_SHOTHER4_LABEL163                       = 1831;
+ LNG_S_SHOTHER4_LABEL165                       = 1832;
  LNG_MAX                                       = 1840;//832;
 
  // strings that shouldn't be translated
@@ -2565,6 +2566,7 @@
   GetIni(ini,LNG_S_SHOTHER4_CB_BLOCK_2GET                   ,'Settings','S_SHOTHER4_CB_BLOCK_2GET');
   GetIni(ini,LNG_S_SHOTHER4_CB_BLOCK_REGNESSEM              ,'Settings','S_SHOTHER4_CB_BLOCK_REGNESSEM');
   GetIni(ini,LNG_S_SHOTHER4_LABEL163                        ,'Settings','S_SHOTHER4_LABEL163');
+  GetIni(ini,LNG_S_SHOTHER4_LABEL165                        ,'Settings','S_SHOTHER4_LABEL165');
   GetIni(ini,LNG_FONT_CHARSET                               ,'Font','FONT_CHARSET');
   GetIni(ini,LNG_FONT_SIZE                                  ,'Font','FONT_SIZE');
   GetIni(ini,LNG_FONT_NAME                                  ,'Font','FONT_NAME');
diff --dos -ur 24196/mainform.pas 24197/mainform.pas
--- 24196/mainform.pas	Mon Oct 20 20:52:26 2003
+++ 24197/mainform.pas	Tue Oct 21 22:29:50 2003
@@ -1502,6 +1502,7 @@
   block_weird_xnapfile:=ini.ReadBool('Other2','BlockWeirdXNapFile',false);
   suggest_dbrowse:=ini.ReadBool('Other2','SuggestDirectBrowse',false);
   log_folder:=ini.ReadString('Other2','LogFolder',ApplicationDir);
+  max_resolving_count:=ini.ReadInteger('Other2','MaxResolvingCount',3);
   // set up console
   LogStartup('mainform::loadconfig: setting up console user');
   cons_channels:=TMyList.Create;
@@ -1977,6 +1978,7 @@
   ini.WriteBool('Other2','BlockWeirdXNapFile',block_weird_xnapfile);
   ini.WriteBool('Other2','SuggestDirectBrowse',suggest_dbrowse);
   ini.WriteString('Other2','LogFolder',log_folder);
+  ini.WriteInteger('Other2','MaxResolvingCount',max_resolving_count);
   finally
   ini.Free;
  end;
diff --dos -ur 24196/settings.dfm 24197/settings.dfm
--- 24196/settings.dfm	Mon Oct 20 21:15:44 2003
+++ 24197/settings.dfm	Tue Oct 21 22:42:46 2003
@@ -6139,6 +6139,13 @@
           Height = 12
           Caption = '和製クライアントのブロック (チェックするとブロックします)'
         end
+        object Label165: TLabel
+          Left = 8
+          Top = 66
+          Width = 196
+          Height = 12
+          Caption = '同時にチェックするリモートホストの数:'
+        end
         object cb_block_napchan: TCheckBox
           Left = 8
           Top = 16
@@ -6187,6 +6194,16 @@
           Height = 17
           Caption = 'Regnessem'
           TabOrder = 5
+        end
+        object edit_max_resolving_count: TSpinEdit
+          Left = 264
+          Top = 62
+          Width = 65
+          Height = 21
+          MaxValue = 100
+          MinValue = 1
+          TabOrder = 6
+          Value = 3
         end
       end
     end
diff --dos -ur 24196/settings.pas 24197/settings.pas
--- 24196/settings.pas	Mon Oct 20 21:03:00 2003
+++ 24197/settings.pas	Tue Oct 21 22:27:12 2003
@@ -616,6 +616,8 @@
     Label163: TLabel;
     Label164: TLabel;
     cb_block_regnessem: TCheckBox;
+    Label165: TLabel;
+    edit_max_resolving_count: TSpinEdit;
     procedure Panel3Resize(Sender: TObject);
     procedure headerPaint(Sender: TObject);
     procedure SetTopText(str: String);
@@ -1608,6 +1610,7 @@
  cb_block_2get.Checked      := blocked_clients[soft2get];
  cb_block_regnessem.Checked := blocked_clients[softRegnessem];
  edit_log_folder.Text:=log_folder;
+ edit_max_resolving_count.Value := max_resolving_count;
 end;
 
 procedure TSlavaNapSettings.sh_reportShow(Sender: TObject);
@@ -2236,6 +2239,7 @@
      end;
    end;
    log_folder:=edit_log_folder.Text;
+   max_resolving_count:=edit_max_resolving_count.Value;
   except
  end;
  btn_restoreClick(nil);
@@ -3098,6 +3102,7 @@
   cb_block_2get.Caption                :=GetLangI(LNG_S_SHOTHER4_CB_BLOCK_2GET);
   cb_block_regnessem.Caption           :=GetLangI(LNG_S_SHOTHER4_CB_BLOCK_REGNESSEM);
   Label163.Caption                     :=GetLangI(LNG_S_SHOTHER4_LABEL163);
+  Label165.Caption                     :=GetLangI(LNG_S_SHOTHER4_LABEL165);
 end;
 
 procedure TSlavaNapSettings.cb_kill_idleuserClick(Sender: TObject);
diff --dos -ur 24196/vars.pas 24197/vars.pas
--- 24196/vars.pas	Mon Oct 20 21:10:40 2003
+++ 24197/vars.pas	Tue Oct 21 22:26:16 2003
@@ -342,6 +342,7 @@
  block_weird_xnapfile: Boolean;
  suggest_dbrowse: Boolean;
  log_folder: String;
+ max_resolving_count: Integer;
 implementation
 
 procedure CheckWindows;