----------------------------------------------------------------------------------
@REPLY: 2:5034/10.1 f7fb5005
@MSGID: 2:5030/1997@fidonet 6ab79aff
@CHRS: CP866 2
@TZUTC: 0300
@TID: FastEcho 1.46.1 43272
Hello Sergey!
On Sat, 06 Jan 2024 12:35, you wrote to me:
AF>> Но тут не достаточно будет просто починить этот баг, нужно ещё
AF>> научить RNtrack работать с флагом Dir в JAM нормально, т.к. он
AF>> этого никогда не умел, как выяснилось.
SA> Для этого нужны дяди-программисты, их дефицит, но может кто-то сумеет
Дяди-программисты так и не нашлись, поэтому пофиксил сам с помощью
ИИ. Заодно пофиксил парсинг pkt - теперь нормально читаются слишком
длинные имена и сабжи, и просто обрезаются до стандарта при упаковке.
ChangeLog:
! fix Dir flag set spuriously on rewritten messages (native Direct attribute
in JAM, bit 0x0400 in *.MSG, Squish and packets); the bug appeared in 2.0.55
# JAM: use the native Direct and Immediate attributes instead of
^AFLAGS DIR and IMM. The +d and +m masks now match the native attributes
set by other programs (e.g. GoldED); ^AFLAGS DIR and IMM written by previous
versions are converted to the native attributes when a message is rewritten
# JAM, Squish: do not duplicate the native Locked attribute as ^AFLAGS LOK
! PKT: toUserName, fromUserName and subject are read up to the terminating
null as FTS-0001 requires. Before, reading stopped after 36, 36 or 72 bytes,
so a too long string shifted the next fields, the message text was lost and
the rest of the packet was dropped. Too long strings are truncated to 35, 35
or 71 characters now and a warning is written to the log
! PKT: fix heap overflow when a packet with too long strings is rebuilt after
deleting or moving some of its messages
! fix unpacking outbound packets with too long strings (the neighbouring
field was overwritten) and cut packets (read past the end of the data);
a packet with garbage after the last message is reported as destroyed
! FromName, ToName and Subject read from *.MSG and Squish bases, set by
Action masks, templates or Perl scripts are truncated to 35, 35 and 71
characters with a warning; before, they could be left without the
terminating null or overflow a buffer by one byte
! fix memory leaks in smapi when JAM messages are rewritten or deleted
Подробности:
-
https://github.com/shadowlmd/rntrack/pull/1
-
https://github.com/shadowlmd/rntrack/pull/3
... Music Station BBS |
https://bbs.bsrealm.net | telnet://bbs.bsrealm.net
--- GoldED+/W32-MSVC 1.1.5-b20180707
* Origin: Music Station |
https://ms.bsrealm.net (2:5030/1997)
SEEN-BY: 203/910 469/122 5001/100 5015/46 5020/290
570 715 1146 4096 4441
SEEN-BY: 5022/2 5023/24 5030/1081 1997 5034/13
5051/44 5053/58 5055/73 5057/19
SEEN-BY: 5061/15 5075/128
@PATH: 5030/1997 5001/100 5020/715