home bbs files messages ]

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,661 of 8,958   
   andrew clarke to Dallas Hinton   
   Blocking   
   12 Nov 21 15:37:09   
   
   REPLY: 1:153/7715.0 18d89740   
   MSGID: 3:633/267 618df19c   
   CHRS: LATIN-1 2   
   TZUTC: 1100   
   TID: hpt/fbsd 1.9.0-cur 2021-04-15   
   On 2021-11-11 16:19:30, Dallas Hinton (1:153/7715) wrote to all:   
      
    DH> Binkd on Windows 10 32-bit. Is there a way to block a particular node   
    DH> from doing a file request? I've one node who keeps requesting a packet   
    DH> (that doesn't exist) and that causes Binkd to crash! :-(   
      
    DH> + 11 Nov 15:20:41 [1980] pwd protected session (MD5)   
    DH> + 11 Nov 15:20:41 [1980] sending c:\OUTBOUND\000f1d91.th0 as   
    DH> 000f1d91.th0 (165816) - 11 Nov 15:20:41 [1980] receiving 61e1ed3d.pkt   
    DH> (186 byte(s), off 0) ? 11 Nov 15:20:41 [1980] GET: remote requests   
    DH> seeking 000f1d91.th0 to 180224, file size I64u   
      
   I suspect turning off logging temporarily will prevent the crash.   
      
   ...   
      
   I don't have time to send a pull request, but for other developers reading   
   this:   
      
   "I64u" is a printf-formatting bug. It should be "%I64u", which gets converted   
   to the file size at runtime.   
      
   diff for protocol.c:   
      
   -        Log (1, "GET: remote requests seeking %s to %" PRIuMAX ", file size "   
   PRIuMAX,   
   +        Log (1, "GET: remote requests seeking %s to %" PRIuMAX ", file size   
   %" PRIuMAX,   
                 argv[0], (uintmax_t) offset, (uintmax_t) state->out.size);   
   -        msg_sendf(state, M_ERR, "Invalid M_GET violates binkp: offset "   
   PRIuMAX " after end of file, file %s size " PRIuMAX,   
   +        msg_sendf(state, M_ERR, "Invalid M_GET violates binkp: offset %"   
   PRIuMAX " after end of file, file %s size %" PRIuMAX,   
      
   Though this isn't the only place in the binkd code where this bug exists.   
      
   Obviously checking whether PRIuMAX is prefixed with "%" in every call to Log()   
   or msg_sendf() etc is visually difficult and error-prone.   
      
   This should instead be fixed at the source, in sys.h:   
      
   -  #define PRIdMAX "I64i"   
   -  #define PRIuMAX "I64u"   
   +  #define PRIdMAX "%I64i"   
   +  #define PRIuMAX "%I64u"   
      
   Then change the .c files that reference these macros accordingly.   
      
   --- GoldED+/BSD 1.1.5-b20180707   
    * Origin: Blizzard of Ozz, Melbourne, Victoria, Australia (3:633/267)   
   SEEN-BY: 1/123 3/50 14/0 90/1 103/705 105/81 114/709 120/340 123/131   
   SEEN-BY: 124/5016 129/305 153/757 154/10 203/0 221/0 226/30 227/114   
   SEEN-BY: 229/200 424 426 550 664 700 240/2100 5138 5411 5824 5832   
   SEEN-BY: 240/5853 6309 249/109 206 307 317 261/38 280/464 5003 5555   
   SEEN-BY: 282/1038 292/854 8125 301/1 310/31 320/219 322/757 341/234   
   SEEN-BY: 342/200 396/45 423/120 460/58 633/267 280 640/1384 712/620   
   SEEN-BY: 712/848 770/1 2432/390 2452/250 2454/119   
   PATH: 633/267 712/848 280/464 240/5832 229/426   
      

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca