home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 2 / Apprentice-Release2.iso / Source Code / Peter Lewis / Chat 1.1.0 / source / PNL Libraries / MyStripTelnetCodes.unit < prev    next >
Encoding:
Text File  |  1992-05-16  |  673 b   |  43 lines  |  [TEXT/PJMM]

  1. unit MyStripTelnetCodes;
  2.  
  3. interface
  4.  
  5.     procedure StripTelnetCodes (var s: string);
  6.  
  7. implementation
  8.  
  9.     const
  10.         T_will = chr(251);
  11.         T_wont = chr(252);
  12.         T_Do = chr(253);
  13.         T_Dont = chr(254);
  14.         T_IAC = chr(255);
  15.  
  16.     procedure StripTelnetCodes (var s: string);
  17.         var
  18.             i: integer;
  19.     begin
  20.         i := 1;
  21.         while i < length(s) do begin
  22.             if s[i] <> T_IAC then
  23.                 i := i + 1
  24.             else begin
  25.                 case s[i + 1] of
  26.                     T_IAC:  begin
  27.                         Delete(s, i, 1);
  28.                         i := i + 1;
  29.                     end;
  30.                     T_will, T_wont, T_do, T_dont:  begin
  31.                         if i < length(s) - 1 then
  32.                             Delete(s, i, 3)
  33.                         else
  34.                             leave;
  35.                     end;
  36.                     otherwise
  37.                         Delete(s, i, 2);
  38.                 end;
  39.             end;
  40.         end;
  41.     end;
  42.  
  43. end.