mIRC Home    About    Download    Register    News    Help

Print Thread
R
ronaldst
ronaldst
R
Somehow the hide ping? pong? option in mIRC 6.17 doesnt work. Clean install of mIRC 6.17, option enabled, and they still show up in my status window.

Is it just me or is it a bug in the new version?

Joined: Dec 2002
Posts: 3,840
Hoopy frood
Offline
Hoopy frood
Joined: Dec 2002
Posts: 3,840
The Hide Ping Pong? option works fine for me in 6.17. Have you tested this in a clean install of mIRC? Are you using scripts that may be interfering?

H
heidel
heidel
H
I too have noticed these PONG events occuring since my upgrade to mIRC 6.17. Here are the finds of my investigation:

Normally, the server itself sends PING commands in certain intervals to each of its clients to determine their presence. mIRC properly answers these with the PONG response.

Code:
  <- PING :irc.inet.tele.dk
  -> irc.inet.tele.dk PONG :irc.inet.tele.dk


The problem I experienced is caused by the following PING command, which mIRC occasionally sends to the server:

Code:
  -> irc.inet.tele.dk PING :TIMEOUTCHECK
  <- :irc.inet.tele.dk PONG irc.inet.tele.dk :heidel


Why mIRC sends these I have no idea, I can only speculate. Here's my theory:

I use an IRC bouncer named psyBNC and this bouncer does not forward the server's PING messages to the client but answers them itself.

But since there is constant traffic on my IRC connection from the bouncer, one would assume, mIRC considers the connection "alive". However, every few hours mIRC sends the aforementioned PING command to the server. And the following PONG response is obviously not being affected by the "Hide Ping? Pong! event" option.

Also, I have no idea as to why this has never happened to me with mIRC 6.16.

Here's a scripted workaround to keep mIRC from outputting the default PONG event text:

Code:
  on ^1:PONG:haltdef


Regards,
heidel

Joined: Oct 2005
Posts: 1,671
G
Hoopy frood
Offline
Hoopy frood
G
Joined: Oct 2005
Posts: 1,671
It might have something to do with the fact that your BNC (or the server) isn't replying with the correct PONG data. Typically, the computer sending the PONG is supposed to return the same data that the client is sending in its PING.

In your sample:
-> irc.inet.tele.dk PING :TIMEOUTCHECK
<- :irc.inet.tele.dk PONG irc.inet.tele.dk :heidel

mIRC is sending :TIMEOUTCHECK as its data, however the BNC/server is replying with :heidel (presumably your nickname). I imagine that mIRC sends that PING, and then sets up an internal PONG /halt for a reply that contains :TIMEOUTCHECK. Since the BNC/server isn't replying with that data, the PONG isn't being blocked by mIRC. If I am correct about this, then I doubt that Khaled will alter the behaviour of mIRC since your BNC/server isn't responding in accordance with the IRC protocol.

-genius_at_work

H
heidel
heidel
H
Initially I also thought of this possibility and went to consult RFC 1459 about the PING/PONG commands. I didn't see written anywhere, that the IRC daemon needs to return the exact data given in the PING.

Anyway, the main reason I posted about this problem was my confusion, that it seemingly occurred with mIRC 6.17 out of the blue.

I guess we'll see if Khaled can or even want to take a look at this. I could live with the workaround. And since this mIRC/psyBNC issue is documented on the messageboard now, others can find it easily. smile

Regards,
heidel

Joined: Dec 2002
Posts: 3,840
Hoopy frood
Offline
Hoopy frood
Joined: Dec 2002
Posts: 3,840
Quote:
The problem I experienced is caused by the following PING command, which mIRC occasionally sends to the server:

Code:
  -&gt; irc.inet.tele.dk PING :TIMEOUTCHECK
  &lt;- :irc.inet.tele.dk PONG irc.inet.tele.dk :heidel

Why mIRC sends these I have no idea, I can only speculate.

See item 28 in versions.txt regarding the new connect timeout option in the connection/options dialog.

If mIRC sends a PING with a parameter, it expects a PONG response with that parameter. This is meant to be standard PING/PONG behaviour. If your bouncer is intercepting the message and is not replying correctly, then mIRC will not work.

This also affects the flood protection feature which uses the same method in mIRC 6.17, and explains why users are saying the flood protection is not working.

mIRC only sends a PING timeout check when there has been no activity for some time.

mIRC hides PINGs sent to you from the server, not PONGs that are due to you sending a PING to the server (where you would expect to see a reply). These are different messages entirely.

Joined: Oct 2005
Posts: 1,671
G
Hoopy frood
Offline
Hoopy frood
G
Joined: Oct 2005
Posts: 1,671
Woo! 1 point for me! laugh

-genius_at_work

H
heidel
heidel
H
That explains a lot, d'oh! blush I completely forgot the obvious to check versions.txt on this matter, sorry. So thank you even more for your in-depth explanation.

Regards,
heidel

R
ronaldst
ronaldst
R
Thanks a lot for looking into this!

I'm using psyBNC for all IRC use, and with some testing it does seem like the option in settings does work as long as I'm not connecting through psyBNC.

Joined: Oct 2003
Posts: 214
S
Fjord artisan
Offline
Fjord artisan
S
Joined: Oct 2003
Posts: 214
Is it possible to add a "Fix" for psyBNC to use the old method?


one step closer to world domination

Link Copied to Clipboard