Just a sample of the Echomail archive
Cooperative anarchy at its finest, still active today. Darkrealms is the Zone 1 Hub.
|    BINKD    |    Support for the Internet BinKD mailer    |    8,958 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 7,782 of 8,958    |
|    James Coyle to Oli    |
|    Re: Problem with filenames containing sp    |
|    14 Jan 22 14:25:25    |
   
   TID: Mystic BBS 1.12 A48   
   MSGID: 1:129/215 a45b6c98   
   REPLY: 2:280/464.47 61e1c88a   
   TZUTC: -0500   
    Ol> JC> method was already in the wild and implemented. That change doesn't   
    Ol> JC> magically make legacy software work differently.   
    Ol>    
    Ol> sure ;-P   
    Ol>    
    Ol> Ol> Ol> Ol> Ol> Ol> Ol> Ol> Ol> Ol> Ol> Ol> Ol> Ol> Ol>    
   Ol> https://github.com/pgul/binkd/blob/45986b77161a366ea3d258a01dad442d3d21d81   
      
   I can't figure out what you're trying to show there, but I don't think you   
   know either. Thats not the escaping code if that is what you're going for.   
   This is:   
      
   char *strquote (char *s, int flags)   
   {   
    ... (cut some stuff) ...   
    sprintf (r + i, "\\x%02x", *(unsigned char *) s);   
   }   
      
   And at least in the version you're showing me, BINKD does not implement the   
   per-connection option for legacy escaping as per the FTS update. If it did,   
   then Paul would not have the issue he's having and thus why I sent him in this   
   direction.   
      
   Paul's issue cannot be solved unless BINKD is updated or his downlink changes   
   software versions. There is literally nothing I can do to help him. I don't   
   care if BINKD wants to support escaping in legacy mode as per FTS or not   
   personally.   
      
   And for the record. Here's Mystic's code for this. It more closely follows   
   FTS in comparison to the link I just looked at which you sent, so I don't know   
   what you're complaining about:   
      
   Function TBinkP.EscapeFileName (Const Str: String) : String;   
   { Replace illegal characters with \## escaped sequences }   
   Const   
    SafeChars = ['!', '"', '#', '$', '%', '&', '''', '(', ')', '*', '+', ',',   
    '-', '.', '/', ':', ';', '<', '=', '>', '?', '@', '[', ']',   
    '^', '_', '`', '{', '}', '~'];   
    AlphaChars = ['0'..'9','A'..'Z','a'..'z'];   
   Var   
    Count : Byte;   
   Begin   
    Result := '';   
      
    For Count := 1 to Length(Str) Do   
    If (Str[Count] in SafeChars) or (Str[Count] in AlphaChars) Then   
    Result := Result + Str[Count]   
    Else   
    { 0=Original BINKP (Argus, IREX, Amiga) }   
    { 1=Updated (Post 2010+ FTS updates ie BINKD uses this) }   
    Case EscapeMode of   
    1 : Result := Result + '\x' + strI2H(Byte(Str[Count]), 2);   
    Else   
    Result := Result + '\' + strI2H(Byte(Str[Count]), 2);   
    End;   
   End;   
      
   ... One tequila, two tequila, three tequila, floor.   
      
   --- Mystic BBS v1.12 A48 2022/01/14 (Windows/64)   
    * Origin: Sector 7 * Mystic WHQ (1:129/215)   
   SEEN-BY: 1/123 14/0 15/0 90/1 105/81 106/201 114/705 709 120/340 616   
   SEEN-BY: 123/10 120 131 129/215 305 153/250 757 7715 154/10 30 40   
   SEEN-BY: 154/50 700 203/0 218/700 840 220/70 80 90 221/6 226/17 18   
   SEEN-BY: 226/30 227/114 201 229/110 200 307 310 424 426 550 664 700   
   SEEN-BY: 240/5832 249/206 317 250/5 8 266/512 267/800 280/464 282/1038   
   SEEN-BY: 292/854 298/25 301/1 305/3 317/3 320/219 322/757 342/200   
   SEEN-BY: 396/45 633/280 712/848 770/1 2320/105 3634/12   
   PATH: 129/215 154/10 221/6 218/840 770/1 317/3 229/426   
      
|
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca