Nп/п : 80 из 100
 От   : Nil A                               2:5015/46         15 окт 24 18:34:54
 К    : Vitaliy Aksyonov                                      15 окт 24 18:43:01
 Тема : Фидософт в real-mode, чтобы работал с >64KB письмами
----------------------------------------------------------------------------------
                                                                                 
@MSGID: 2:5015/46 670e8d6b
@REPLY: 1:104/117 670dfc05
@CHRS: CP866 2
@TZUTC: 0300
@TID: hpt/lnx 1.9
Hello, Vitaliy!

14 Oct 24 23:18, from Vitaliy Aksyonov -> Nil A:

 NA>> HPT тоссеру ваще не нужно ВСЁ сообщение в памяти держать. Ему
 NA>> надо поискать клуджи, поискать origin, seen-by, path, а потом
 NA>> читать байты из исходного pkt, и перекладывать в другие pkt.

 VA> Так-то не надо, но никто не гарантирует, что клуджи будут в
 VA> начале/конце письма (с небольшими исключениями),

 А вот я тоже хотел спросить. Подскажите, люди грамотные, а лучше в
доку ткните. Могут ли клуджи идти уже после первого неклуджа? Вроде
могут, но так делать не хорошо, процесс парсенья усложняют.

 VA> а чтобы прочитать PATH/SEEN-BY - письмо таки придётся полностью
 VA> прочитать.

Origin, path, seen-by - надо искать с конца просто.

 Кстати, много фидософта, написанного не программистами, ищут первый
origin, и ошибаются, потому что это форвард какой-нибудь.

 VA> Конечно, в памяти его держать совсем необязательно.

Спасибо что согласился со мной.

 VA> О. Хочешь свой тоссер написать? ;)

А зачем рынку ещё один тоссер? Рынку надо писать приложки, а я не умею.

 VA> Или может hpt поправить, чтобы он не держал всё в памяти?

 Это интереснее уже, но править надо с smapi api. Кстати, там _уже_
можно вычитывать тело письма не целиком, а сколько байтов тебе надо, со
смещением. Но круче всего получить некий итератор, чтобы по нему елозить по
письму.

 VA> Или так - поговорить? ;)

Стопудово поговорить.

 VA> Ты же видел, как старые фидошные проги "сериализуют" данные на диск.
 VA> Фигак - и записали объект из памяти. А чё, удобно. Только бывают
 VA> всякие Big Endian.

К сожалению, так делали все в начале 90, включая коммерческий софт.

 VA> А ещё никто не гарантирует, что int везде будет 4 байта. Даже то, что
 VA> байт - это 8 бит.

Ну вот тут фидошники многие знали, и часто typedef какой-нибудь торчит.

Best Regards, Nil
--- GoldED+/LNX 1.1.5-b20240306
 * Origin: FidoNet member since 1995 (2:5015/46)
SEEN-BY: 50/109 104/117 221/6 240/1120 301/1 341/66
451/31 452/28 166 455/19
SEEN-BY: 463/68 467/888 4500/1 5000/111 5001/100
5005/49 5015/42 46 120 255
SEEN-BY: 5019/40 400 5020/113 545 620 715 828 830
846 848 1042 2992 4441
SEEN-BY: 5020/12000 5022/128 5030/49 115 1081 1474
5053/51 55 5054/8 89
SEEN-BY: 5058/104 5060/900 5061/133 5066/18 5068/45
5083/1 444 6090/1
@PATH: 5015/46 5020/1042 4441



   GoldED+ VK   │                                                 │   09:55:30    
                                                                                
В этой области больше нет сообщений.

Остаться здесь
Перейти к списку сообщений
Перейти к списку эх