lkml.org 
[lkml]   [1999]   [Feb]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: PPP bug
From
Date
>>>>> "Dick" == Richard B Johnson <root@chaos.analogic.com> writes:

Dick> The +++ sequence in a packet can't affect the modem because
Dick> you need at least 500ms (lowest you can set it) of quiet after
Dick> the sequence to change its mode. The data strings will never
Dick> be the last thing sent, so you can't get 500ms between
Dick> characters no matter how hard you try.

This is partially true. Unfortunately (I believe) Hayes patented the
idea of there having to be a pause before and after the +++ sequence,
and some manufacturers (namely Rockwell) simply look for any +++
sequence as a break sequence regardless of timing. Experience is that
roughly 40% of people on IRC are susceptible to this problem, so these
modems are fairly wide-spread. To test a host (with permission,
of-course:) use:

% ping -p 2b2b2b415448300d <hostname>

If it replies, the host is fine. If it doesn't, it's got a faulty
modem. This was all covered in depth a while back on the Bugtraq
mailing lists (search the geek-girl archives... I think "Old school
DoS" was the subject). The only solution if you've got one of these
modems is to change break character from + to something else, or
(preferably) disable it entirely with AT S2=255. An interesting
side-effect of the bug is that you can "patch" people's modems for
them if they're buggy with something like (untested):

% ping -p 2b2b2b415453323d323535204f300d

- Andrew
--
#!/usr/bin/env python
print(lambda s:s+"("+`s`+")")\
('#!/usr/bin/env python\012print(lambda s:s+"("+`s`+")")\\\012')
print(lambda x:x%`x`)('print(lambda x:x%%`x`)(%s)')
[unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2005-03-22 13:50    [from the cache]
©2003-2011 Jasper Spaans