forked from evs38/qico
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Changes
537 lines (498 loc) · 27.8 KB
/
Changes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
Version 0.59.1
~~~~~~~~~~~~~~
- Correct ';' to ':' in the src/outbound.c file.
- Update copyright years for Robert James Clay in LICENSE.
- Rename configure.in as configure.ac in 'Makefile.in' file in sub-directories.
Version 0.59
~~~~~~~~~~~~~~
- Renamed configure.in as configure.ac, closing Bug #18.
- Add case for ' ' in floflist() in file src/outbound.c. Reference also
https://sourceforge.net/p/qico/feature-requests/8/. Thanks to Markus Reschke,
2:240/1661.
Version 0.58
~~~~~~~~~~~~~~
- Update/correct copyright information in the LICENSE file.
- Save Russian version as README.ru. Create initial English version of README.
- Correct format string for printing TCP/IP connection information.
Version 0.57.3
~~~~~~~~~~~~~~
- Change 'qicosi' or 'qicoxe' references in the current documentation and
code to be to just "qico".
- The debian directory and its contents are separately versioned, so removing
from the mainline branch and moving it to its own separate branch in the
code repository.
- Update the support information in the man pages.
Version 0.57.2xe
~~~~~~~~~~~~~~~~
- Apply IPv6 related changes from patch file qico-0.57.1xe-ipv6.patch,
as downloaded from http://andre.grueneberg.de/binkd/.
Version 0.57.1xe
~~~~~~~~~~~~~~~~
- changed: cvs address
- теперь демон сам компилирует нодлисты, если это необходимо.
- bugfix: исправлено распознавание старого индекса нодлистов.
- bugfix: исправлен орррррригинальный парсинг строк subst :)
- bugfix: исправлена проверка времени работы по флагу Txy.
- bugfix: починен needalllisted, сломанный в 0.56.2.
- bugfix: при получении SIGTERM демон падал в корку.
- known bug: чат с kittenmail приводит к зависанию.
- cvs tag: xe-0_57-r1
Version 0.57xe
~~~~~~~~~~~~~~
- new: теперь в мейлере используется только неблокируемые операции ввода/вывода.
- Новая буква в loglevels: N - работа с нодлистом.
- changed: переделана работа с нодлистами.
ВНИМАНИЕ! Перекомпилируйте нодлисты!
- changed: во время mailhour или zmh будем звонить на узел не только при наличии
нетмейла, но и при наличии пустого ?lo файла на него (с учетом callonflavors).
- changed: код binkp полностью переписан, добавлена поддержка входящих freq-ов
при соединении по binkp/1.0 (проверялось на bforce и argus).
- configure: --enable-dlmalloc, позволяет использовать неродную библиотеку
распределения памяти (malloc/free etc) by Doug Lea.
- Новое слово: HydraRH1 yes/no - позволяет отключить RH1 режим на гидре
- Новое слово: ModemCheckDSR yes/no - проверять или нет наличие сигнала
DSR/CTS перед звонком по модему.
- bugfix: если у вас имя файла устройства для com порта превышал 8 символов
(без /dev/), qcc вел себя не адекватно (попытка 2, удачная :).
- bugfix: несколько уменьшилась падучесть демона.
- bugfix: qcc неверно показывал скорость удаленного узла, если она превышала 64K.
- bugfix: если нам выставили HAT - ничего не отсылаем (пытались отослать freq).
- bugfix: при обрыве сессии на входящих звонках могли долго висеть (попытка 2).
- bugfix: игнорируем чат на гидре, если чат у нас запрещен.
- bugfix: при ip соединении не занимаем весь процессор, если не получается
присоединиться к серверу.
- Новый ключ qico: -f - не закрываем управляющий терминал и не демонизируемся
(thanks to tony feldman).
- cvs tag: xe-0_57
Version 0.56.4xe
~~~~~~~~~~~~~~~~
- bugfix: если не был прописан bso - падали в корку.
- bugfix: при обрыве сессии на входящих звонках могли долго висеть.
- bugfix: если у вас имя файла устройства для com порта превышал 7 символов
(без /dev/), qcc вел себя не адекватно.
- bugfix: могли позвонить на узел по нескольким линиям сразу.
- Hydra4/8/16k и чат вернулись в код.
- cvs tag: xe-0_56-r3
Version 0.56.3xe
~~~~~~~~~~~~~~~~
- bugfix: Hydra теперь должна работать со всеми мейлерами.
- bugfix: Переписан ASO и BSO рескан.
- Новое слово: HydraLogVerbose yes/no
- known bug: на гидре не работает чат! надеюсь, временно.
- regression: Hydra4/8/16k планируется убрать из кода.
- qcc: теперь переход в основную консоль можно делать не по '0', а как
в quake - по обратной кавычке (или тильда (~) без шифта).
- cvs tag: xe-0_56-r3
Version 0.56.2xe
~~~~~~~~~~~~~~~~
- Новое слово: 'hydrahdx yes/no' - работать на one-way (yes) или two-way (no)
гидре. Полезно при сильно асимметричных коннектах, например HST.
- Новое слово: 'hydracrc16 yes/no' - если yes, то не говорим удаленной стороне,
что умеем crc32, no - говорим.
- Новое слово: 'loginscript pathname' - запускать указанную программу сразу
после дозвона, но до EMSI. В зависимости от возвращенного кода устанавливаем
или обрываем сессию.
- cvs tag: xe-0_56-r2
!!! Обращаю ваше внимание, что старое внимание в силе !!!
Version 0.56.1xe
~~~~~~~~~~~~~~~~
- bugfix: Hydra теперь более соответствует последней спецификации (на мой
взгляд разумеется).
!!! Внимание. В версии 0.56.1xe НЕ работает Hydra4/8/16k !!!
Впрочем, обычная может тоже не работать.
Не пользуйтеcь параметром --enable-hydra8k для configure.
Version 0.55xe
~~~~~~~~~~~~~~
- Добавлена обработка переменных окружения в конфиге.
- Новое слово: 'resolvehostname yes/no' - показывать при входящем tcp звонке
не только ip адрес, но и имя хоста (может вызывать задержку сессии при
плохо работающем DNS).
- bugfix: при сборке на FreeBSD 4.X с помощью gcc 2.95.4 qico 0.55si с cvs
выпадала в Segmentation Fault.
- bugfix: вернулась на место прежняя обработка EMSI.
- cvs tag: xe-0_55-qicoxe
Version 0.55si
~~~~~~~~~~~~~~
- В процессе разработки находится поддержка перла на уровне хуков.
в связи с этим добавлен ключ --enable-perl у configure и слово 'perlfile'
в конфиг. пример скрипта и уже реализованные возможности можно посмотреть
в stuff/test.pl.
Version 0.54si
~~~~~~~~~~~~~~
- Стабильная версия.
- bugfix: не работала докачка файлов.
- bugfix: имена файлов, отдаваемых по фреку, иногда содержали путь.
- bugfix: по qctl -K или kill в qcc не прибивались файлы со статусом hold.
- bugfix: многие таймауты срезались до одной секунды.
- bugfix: в лог выводилось локальное время, вместо ремотного.
- тэг на CVS: stbl54.
Version 0.53si
~~~~~~~~~~~~~~
- Добавлено слово `runoncall' - данный скрипт будет запускаться сразу перед
началом набора номера или коннекта к ремоте. в качестве аргументов скрипт
получает адрес и телефон или хост системы с которой будет сессия.
- qcc: по нажатию 'ctrl+l' перерисовываем экран.
- Новое условие: 'line' - номер хидден-линии или 0, если линия только одна.
- Теперь даты в собственном логе qcc тоже пишутся в соответствии с локалью.
- Новая буква 'r' у слов `mapin' и `mapout' - перекодировывать или нет имена
из *.req файлов в транспортную кодировку. раньше перекодировывались всегда.
- Новое слово: 'recodepkts yes/no' - создавать pkt отчёты (чат и фреки) в
транспортной кодировке. раньше были всегда в транспортной.
- Новые слова: 'remotecp' и 'localcp' - таблицы перекодировки. формат
таблиц и слов смотрите в примере конфига. раньше всегда использовались
внутренние таблицы. пример таблицы, аналогичной внутренней, есть в stuff.
В связи с этим удалено слово 'remoterecode'.
- Пишем в лог ремотную дату, если она отличается от нашей.
- Слова `lockdir', `modem*', `phonetr' и `port' больше не являются
обязательными (для ip-only станций).
- Теперь из qcc можно запрашивать одновременно несколько файлов, разделяя
их пробелом. если имя содержит пробелы, то его нужно взять в двойные кавычки.
- Теперь binkp можно запретить при компиляции, указав --disable-binkp.
- Теперь у qcc и qctl можно указать не только порт, но и хост, к которому
нужно коннектится. ip-адрес или хост задаются ключом `-a'.
- Новое слово: 'serverpwd' - пароль для клиентов. так же добавлен ключ `-w',
у qcc и qctl, для указания пароля к серверу. если указан ключ '-w-', то
пароль запрашивается с клавиатуры.
- Теперь в файле конфигурации допустимы вложенные блоки 'if-endif'.
- Новое условие: 'mailer' - строка названия/версии мэйлера удалённой стороны.
- Новое условие: 'exec' - условие выполняется, если программа возвращает 0
(true). пробелы в строке запуска программы надо заменять запятыми.
- Добавлены порт для FreeBSD от Andey Slusar <vasallia@ukr.net> и qico.spec.
- bugfix: qcc неверно обрабатывал изменение размера терминала.
- bugfix: команда `h' в qcc неверно работала с числами больше 255.
- bugfix: на binkp имена файлов не перекодировывались и не нормализовались.
- тэг на CVS: qico53
Version 0.52si
~~~~~~~~~~~~~~
- Стабильная версия.
- bugfix: не собирались на системах со старым интерфейсом recv().
- bugfix: при связи с TheBrake самопроизвольно открывался чат.
- bugfix: если демона небыло, то всё равно пытались с ним обмениваться.
- bugfix: дефолтная скорость всегда была 300, а не из --with-default-speed.
- bugfix: qcc неверно работал с окном ввода строк на коротких терминалах.
- bugfix: падали при попытке установить размер блока для (dir|zed)zap.
- bugfix: qctl работал некорректно.
- bugfix: на *BSD демон зависал и жрал ресурсы.
- bugfix: не работали многие if-условия.
- тэг на CVS: stbl52.
Version 0.51si-cvs
~~~~~~~~~~~~~~~~~~
- IPC заменено на IP. соответственно было убрано слово `ipcperm' и добавлено
`server' - порт для демона, по умолчанию 60178. используются, как tcp - для
клиентов, так и udp - для линий. добавлен логлевел 'I' для дебага ip.
- В связи с этим у qcc и qctl появился новый ключ: `-P <port>' - порт,
к которому они будут коннектиться. в качестве порта можно использовать его
номер или название из /etc/services, как и в слове `server'.
- Добавлен протокол '4' - Hydra4K. требует --enable-hydra8k при configure.
- Теперь если ваша система имеет DNOTIFY (проверятся configure'ом) и вы
используете ASO, то можно ставить `rescanperiod' например на час (3600),
т.к. демон будет делать рескан сам при изменениях в `asooutbound' и при
необходимости. также добавлена опция `--disable-notify' у configure.
- Добавлен чат в BinkP и опция 'T' в `binkpopt'. Для совместимости со
стандартами binkp 1.0 и 1.1, чат разрешён только если обе стороны
предъявили 'OPT CHAT'.
- Добавлена поддержка socks(4,5)-proxy, слово `socks' в конфиг. не тестировано.
- Новое условие: 'host' - хост удалённой стороны.
- Новое условие: 'sfree' - свободное место на указанном пути.
- В qcc максимальное количество окон увеличено до 16.
- Теперь в qcc история ввода строк/адресов разделена по типам.
- Добавлена поддержка однострочных условий в конфиге. примеры в conf.sample.
- Теперь понимаем двух-буквенные дни недели и слова 'not','xor','or','and'.
Так-же понимаем 'addr' вместо 'address' и разбиение на несколько строк.
- bugfix: условие 'connstr' проверяло точное совпадение строки, а не вхождение.
- bugfix: qcc неправильно работал с несколькими ip линиями.
- bugfix: binkp "зависал" с binkd младше 0.9.6 (из-за потери NR).
- bugfix: binkp падал на входящих, если не мог залочить аутбаунд.
- bugfix: на исходящих с демона телефон всегда транслировался,
независимо от значения слова `translatesubst'.
- bugfix: не всегда корректно работал ключ 'f' в `mapout'.
иногда имя передаваемого файла сообщалось вместе с путём.
- bugfix: содержимое лонгбоксов не всегда добавлялось в очередь.
- bugfix: если условие было описано с ошибками, то оно просто игнорировалось.
- bugfix: qcc зависал, если терминал был шире 127 символов на строку.
- bugfix: терялась доменная часть адреса.
- bugfix: не работало автосоздание каталогов.
- bugfix: количество aka-адресов было ограничено из-за маленького буффера.
- тэг на CVS: qico51
Version 0.50si-cvs
~~~~~~~~~~~~~~~~~~
- Последняя версия с ipc.
- Новое условие: 'connstr'.
- Теперь демон умеет делать "звонки" на ip узлы. Для звонка должно подходить
время (из нодлиста или сабста), отсутствовать флаг nodial.tcpip и узел должен
быть описан в сабстах с ip протоколом или в нодлисте иметь pvt статус
и один из флагов IBN или IFC. если хост в сабстах не указан, то он создаётся
из адреса в виде [p.]f.n.z.fidonet.net.
- В связи с этим немного изменён формат слова subst. Подробности в конфиге.
- Теперь домен для binkp берём из доменной части адреса. если таковой нет,
то из слова 'domain'. если и его нет - используем @fidonet.org.
- Добавлена поддержка BinkP расширений NR, MB и CRYPT.
- Добавлен файл TodayFixes: самые свежие фиксы, которые ещё не попали
в ChangeLog (туда попадает с опозданием на один коммит).
- У всех программ добавлен ключ `-v' - показывает полную версию.
- Добавлено слово `failpolls yes/no' - создавать пулы после неудачной сессии.
- Добавлено слово `rmboxes yes/no' - удалять или нет пустые файлбоксы.
- Добавлена поддержка http(s)-proxy, слово `proxy' в конфиг. не тестировано.
- bugfix: получали липовую ошибку M_GET for unknown file.
- bugfix: падали в корку, если логлевел Y был больше 1.
- bugfix: теперь BinkP нормально передаёт файлы с пробелом в имени.
- bugfix: опция `binkpopt' работала неверно.
- bugfix: целая толпа прочих фиксов в BinkP.
- note: перекомпилируйте нодлисты!
- тэг на CVS: qico50.
Version 0.49.12si
~~~~~~~~~~~~~~~~~
- Первая "стабильная" версия в ветке si. без binkp.
- тэг на CVS: stbl12.
Version 0.49.10si
~~~~~~~~~~~~~~~~~
- qcc теперь умеет выполнять различные команды. Жмите `F1' в qcc, всё узнаете.
Ещё рекомендую прочитать пункт о qcc в README, для большего понимания.
- Сделано вырезание ненужной информации из лог-части экрана qcc. Сами экраны
теперь переключаются более корректно, без глюков.
- qcc теперь корректно закрывается по сигналам sighup/sigterm/sigint, либо
при завершении работы демона (по `qctl -q').
- qcc теперь парсит командную строку. делайте `qcc -h' для получения помощи.
- и вообще: qcc переделан почти полностью, и изменения сюда писать не буду!
- Чат. В конфиг добавлены переменные `chatlog', протокол `C' в `protorder',
`chatlognetmail', 'chattoemail', `runonchat' и `chathallostr'.
- Ручной skip и suspend принимаемых файлов.
- Теперь, если наш или ремотный мылер скипает/рефузит файл, а следующий файл
tic, то он тоже скипается/рефузится. Включается переменной `autoticskip'.
- Убран показ размера в мегабайтах, по причине неинформативности.
- Добавлена переменная `modemnodial <string>', в которую заносится ответ
модема, после получения которого все узлы ставятся в холд на `holdonnodial'
минут. Это что-б модем не ломился часто, когда разговариваешь по телефону.
- Добавлены переменные `fails_hold_div' и `fails_hold_time'. Вообщем, если
число неудачных попыток без остатка делится на `fails_hold_div', то узел
ставится в холд на `fails_hold_time' минут.
- Сделана перекодировка русских имён файлов. Включается добавлением ключей
в маппинг. новые ключи: `k' - конвертирует имя из cp866 в koi8-r, и `c' -
конвертирует из koi8-r в cp866. Вообщем смотрите qico.conf.sample, там
много нового и интересного. ;)
- Сделана обработка escape-последовательностей в EMSI - теперь корректно
понимаются русские буквы и псевдографика (коды>=128) во всех полях EMSI.
- Сделана перекодировка koi8-r<>cp866 везде, где это необходимо. При желании
отключается, установкой `remoterecode' в `no' (влияет на маппинг тоже!).
- Добавлена переменная `emsifreqtime' - время файловых запросов для EMSI.
Если не определена, то используется `freqtime' или "Never", если фреков нет.
- Добавлена переменная `ignorenrq'. Если включена, то файловые запросы (.req
файл) будет посылаться, даже если ремота не поддерживает фреки (NRQ в EMSI).
- Добавлена переменная `qstoutbound'. Если определена, то вся иерархия с
.qst файлами будет создаваться не в основном аутбаунде, а в этом каталоге.
- Добавлена поддержка файловых запросов в S.R.I.F. формате (fsc-0086).
- При создании пула или файл-реквеста с узла снимается флаг Imm, если был.
- Теперь, если `realmincps off', то значит `mincpsin' и `mincpsout' указаны
в процентах от скорости коннекта: mincps=connectspeed/1000*mincps.
- Новый параметр `autosuspend' - автоматически задерживать при приёме файлы,
подходящие под маску (можно указать несколько).
- Новый параметр `alwaysoverwrite' - всегда перезаписывать при приёме файлы,
подходящие под маску (можно указать несколько).
- Если реальное имя ремотного мылера не совпадает с указанным в EMSI, то
выводятся оба названия (только на гидре). Так-же появилась некоторая
"намагниченность" собственного названия. ;)
- Если переменная окружения CALLER_ID не определена, или определена, но
содержит менее 4х знаков или строку "none", то она игнорируется.
- Новый параметр `hstimeout' - задаёт максимальное время, для осуществления
emsi-handshake.
- Новый ключ к qico: `-f' - запуск после падения демона (вместо ipcs и ipcrm)
(только при компиляции без --disable-debug)
- Добавлена переменная `longrescan' - по дефолту всегда использовалось
по возможности "быстрое" пересканирование очереди. т.е. если время изменения
lo'шки не изменилось, то размер самих файлов не перепроверялся. Теперь,
если определена эта переменная, то каждое указанное пересканирование
будет "долгим" (полным). Если указать 1, то все ресканы будут долгими.
- Добавлена переменная `runonemsi' - указывает на программу, которая
запускается сразу после установки EMSI-сессии. после команды добавляется
адрес ремоты в качестве аргумента. Завершение работы программы не ожидается.
- Добавлена переменная `autohold' - файлы, попадающие под маску этого слова,
не будут отдаваться удалённой стороне. Полезно для того, что-б, скажем,
отдавать в какое-то время только почту, а всё остальное задерживать.
- Теперь в словах `autoskip', `autosuspend', `alwaysoverwrite' и `autohold'
можно использовать символ '!' и макросы. '!' указывает, на то, что надо
что-то сделать с файлами, НЕ попадающими под маску. и макросы: %N - мыло,
%E - бандлы с эхами, %F - все остальные файлы.
- Новое слово: `killbadpkt yes/no' - убивать недокаченные *.pkt.
- Новое слово: `holdout yes/no' - задерживать файлы со статусом 'hold' при
исходящих звонках.
- Новая буква для loglevels: X. Означает будет-ли виден отладочный лог qcc.
- Реализована поддержка .csy флагов занятости. Изменена работа с .bsy флагами.
- Больше не посылаем и не принимаем мейл-полы (pkt'шки по 60 байт).
- Если логлевел 'E' больше 1, то пишем в `emsilog' свою emsi тоже.
- Новое слово: `sendonly yes/no' - если включено, то в эмси ставим флаг HAT.
- Реализована поддержка протокола BinkP. Пока все в стадии доработок и
тестирования. Пока не рекомендуется к использованию. Соответственно
новые слова: `domain' - доменное имя сети и `binkpopt' - опции BinkP,
экспрешн `binkp' - выполняется, если установлена binkp сессия,
логлевел `B', ключи `-b' и протокол `-a binkp'.
- Теперь понимаем флавор файлбоксов (напр. 2.5093.56.7.d - direct).
- Новое слово: `defboxflv' - определяет флавор для боксов, не имеющих
оного. Может принимать одно из значений: d h n i c.
- bugfix: не удаляем каталог основного аутбаунда после сессии. ???
- bugfix: теперь не "зависает" при переводе системного времени назад.
- bugfix: невозможно было сконнектиться двумя киками на zmodem и dirzap.
- bugfix: теперь .pkt, с отчётом о файловых запросах, отдаётся в конце сессии
и создаётся более корректно.
- bugfix: корректно работаем с переходом на летнее время (daylight saving).
- bugfix: теперь адекватно реагируем на несовпадение/отсутствие паролей.
- bugfix: нельзя было определить protorder в условии if address.
- bugfix: иногда терялось расширение, если был ключ 'b' в `mapout'.
- bugfix: не сбрасывался счётчик ожидания звонка после busy/nodialtone.
- bugfix: если у ремоты был HRQ, то после неудачной сессии узел ставился в холд.
- bugfix: считалось, что все исходящие сессии были на неизвестные узлы.
- bugfix: при некоторых условиях EMSI сессия не устанавливалась.
- Напоминаю, что изменения, вносимые и в оригинальную версию, или не мной,
заносятся ниже, в лог изменений 0.49.10.
- Косметика.
Version 0.49.10
~~~~~~~~~~~~~~~
- Добавлена возможность одновременной работы AmigaStyle и BinkleyStyle outbound.
Убран флаг `outbound' и добавлены соответственно `asooutbound' и `bsooutbound'.
Убран флаг конфигуратора `--enable-aso'. Добавлены баги. :) Ищите.. :)
- Новый ключ к qico: `-t' - проверка файла конфигурации на валидность.
- Произведён переход на autotools (autoconf-2.53, automake-1.5)
- Добавлена переменная useproctitle [yes|no]. По умолчанию: yes
Данная переменная управляет выводом команды `ps'. В случае если стоит "no" то выводиться
путь к qico иначе - как и раньше, статус программы.
- Добавлен флаг "translatesubst yes|no", по умолчанию "no". Если указан, то
номера телефонов в подстановках транслируются как и нодлистовые (в качестве
телефонов необходимо прописывать полный номер 7-095-123-4567).
- Debug Log работы с модемом. (by Pavel Levshin)
- Команда сбора статистики работы модема. (by Pavel Levshin)
- Нодлисты при поиске по маске (nodelist.999) ищутся без учёта регистра.
- функция basename взята из FreeBSD libc
- change: расшифровка конфиг-файла теперь ведётся в логи. (Не удобно, когда надо
Enter нажимать)
- bugfix: В случае если у пользователя нет возможности читать файл, файл в очередь отправки
не добавляется. В случае если у пользователя нет возможности писать в файл - файл нельзя
удалить после отправки. Если указанный путь не regular файл (каталог, сокет, пайп и тп),
то он также не попадает в очередь отправки.
- bugfix: Исправлена работа чтения конфигурационного файла, для изменения
номеров (флаг "phonetr") в зависимости от имени порта.
- bugfix: Исправлена работа с ASO при работе с нодой номер которой длиннее 4 цифр.
- bugfix: Исправлена работа с модемом (не дёргалась DTR, запрещалась
работа с tty после sighup даже после tty_local, что-то ещё... не помню)
(by Pavel Levshin)
- bugfix: Поправлен configure в районе определения возможностей syslog'а.
- bugfix: В qico.conf.sample закрыто условие tcp/ip
- bugfix: Поправлена затычка для ломанных basename(). Предыдущий вариант
ошибался при простом имени (без '/'), из-за чего возникали серьёзные проблемы.
- bugfix: Если стояло `needalllisted yes', то статус узла определялся
неправильно.
- bugfix: исправлена ошибка обработки нодлиста в случае если попадаются Down
станции.
Version 0.49.9
~~~~~~~~~~~~~~
- Так как Hydra8K и Hydra16K могут легко заблокироваться, если в ядре
недостаточно большие буфера у драйвера последовательного порта, то они
теперь запрещены по умолчанию. Для разрешения надо configure сказать
`--enable-hydra8k', после чего обозначения протоколов `8' и `6' станут
доступны.
- Новая буква для loglevels: R. Означает file Requests.
- Проведён дополнительный аудит кода, выявлено ещё несколько потенциальных
переполнений буфера и race conditions.
- Удалены все реальные адреса и телефоны из qico.conf.sample.
- Новое слово в конфиге: needalllisted (yes|no). по-умолчанию -- `no'.
Если стоит `no', то, что бы партнёр получил флаг `listed' достаточно
одного найденного адреса в списке предъявленных.
Если стоит `yes', то для получения `listed' необходимо, что бы все адреса
были найдены в нодлистах.
Раньше проверялся только первый адрес.
- Теперь строчка modemhangup посылается в модем не только после исходящих,
но и после входящих сессий.
- Новое слово в конфиге: alwayskillfiles (yes|no). по-умолчанию -- `no'.
Если выставить в `yes', то файлы, прописанные в LO'шках как обнуляемые
после отсылки (`#' в начале строки) будут удаляться, как если бы строка
начиналась с `^'.
- Новое слово в конфиге: rootdir. Если оно задано, то первое, что делает
демон или отвечающая копия -- это chdir в этот каталог.
Результат не проверяется.
- Умеем собираться с Electric Fence (libefence, отладчик памяти). Это
определяется перед компиляцией ключом к configure `--enable-efence'.
- собирается и запускается на NetBSD/i386 1.5
- basename() проверяется на глючность (в некоторых системах
basename() возвращает указатель на последний символ '/', а не
на символ после него).
- Добавлена реализация strcspn() для систем, где оно отсутствует.
- Проверено, что собираемся на FreeBSD 2.1.0 (gcc 2.6.3).
(Thnx to Alex Semenyaka <alexs@snark.rinet.ru>).
- Теперь параметр конфига defperm влияет не только на файлы в инбаунде,
но и на файлы, создаваемые в аутбаунде (*.?lo) при полах и аттачах.
Причём, только при создании таких файлов (права на существующие файлы,
в которые производиться запись, не меняются).
- Теперь при компиляции gcc (а кто-то компилирует чем-то другим?) все проверки
на loglevels происходят в месте вызова, что экономит один вызов функции
на каждое отключенное через loglevels отладочное сообщение (но несколько
раздувает код, конечно).
- Новая буква в loglevels: Y. Это разбор и проверка условий в конфиге.
- Собираемся на системах без EIDRM в <errno.h>. На таких системах определяем
EIDRM в EINVAL (может быть неверно). Так же, проверяем errno на EINVAL в тех
же случаях, что и на EIDRM.
- Собираемся на системах без getsid(). На таких системах всегда считаем себя
лидером сессии.
- Теперь во всех строках команд для модемов понимаются символы '^' и 'v'.
Поднять и опустить DTR соответственно.
Таким образом, в командах для модемов понимаются спец-символы:
| -- ^M, он же <Enter>, он же '\r'
~ -- Пауза в 1 секунду.
' -- Пауза в 0.2 секунды.
^ -- Установка DTR.
v -- Сброс DTR.
- Теперь индекс нодлистов сортируется и из него удаляются одинаковые узлы
из разных листов. Приоритет имеют нодлисты, указанные в конфиге первыми,
то есть локальный сегмент лучше указывать раньше мирового нодлиста.
Поиск по нодлисту теперь бинарный.
ВНИМАНИЕ! Перекомпилируйте нодлисты!
(Thnx to Yuriy Kaminskiy, 2:5020/517.21).
- Новая переменная в конфиге: holdonsuccess. Определяет на сколько минут
задерживать прозвонку на узел после успешной сессии. 0 -- не задерживать
вообще (старое поведение). По-умолчанию -- 0.
Если есть повод задержать файлы и/или файловые запросы, то задержка
происходит на максимум из waithrq и holdonsuccess.
Работает как на входящих, так и на выходящих сессиях, но на входящих не
учитывает флаги задержки файлов и/или файловых запросов (так как на входящих
и исходящих эти флаги могут различаться).
- Теперь configure проверяет параметры для всех своих аргументов.
- bugfix: Закрываем pkt-файл с отчётом о файловом запросе перед отсылкой.
Очень часто не-закрытие файла приводило к пустому пакету.
- bugfix: Не портим окружение (environment) при установке названия процесса.
Такая порча могла приводить к искажению вывода времени в логе и другим
странным эффектам.
- bugfix: Работает immonflavors. И как никто не заметил, что оно вообще не
работало?
- bugfix: При неопределённой скорости коннекта не падаем при выводе в лог
ожидаемого времени передачи файла.
- bugfix: Поправлена грубая ошибка при работе с Txy-флагом. Эта ошибка могла
приводить к звонкам на станции не вовремя на некоторых системах.
(Thnx to Artem Afanasiev, 2:5030/1600).
- bugfix: Поправлены отладочные сообщения для Y.
- bugfix: Работает условие listed в конфиге для большего числа параметров --
флаг выставляется до посылки EMSI_DAT на входящих сессиях.
- bugfix: При loglevel C>0 теперь действительно дампится конфиг, а не только
сабсты.
- bugfix: Теперь условие date в конфиге должно работать правильно в случае
диапазона дней.
- bugfix: Теперь файлы вида NN.NN.NN.NN.some (где NN -- числа) в каталоге
для файлбоксов (longfileboxes) не пытаются рассматриваться как файл-боксы,
и вообще не обращается внимание ни на что, кроме каталогов и символических
ссылок (так что, появление таких файлов не будет приводить к переполнению
мастер-лога сообщениями о невозможности открыть каталог).
(Thnx to Maxi Rovnich, 2:5030/872.0).
- bugfix: configure проверяет, можно ли одновременно включать <syslog.h>
и <sys/syslog.h>. На некоторых системах двойное включение приводило
к ошибке компиляции и, в результате, не находились facilitynames и
prioritynames.
- bugfix: В qcc поправлен разбор пакета о посылке файлов. Может быть поможет...
(Thnx to Sir Raorn <raorn@binec.ru>).
- bugfix: Пароль в пакете с ответом на файловый реквест дополняется нулями,
а не пробелами. Так же, исправлена возможная ошибка при использовании паролей
длиннее 8 символов.
- bugfix: На не-интел процессорах делаем правильный заголовок пакета с отчётом
о файловом запросе.
- bugfix: В mail-only время не пытаемся звонить, если на узел нет нетмейла.
- bugfix: Поиск ioctl(TIOCSCTTY) опять поправлен.
- bugfix: Теперь ASO точно работает -- глупая опечатка поправлена.
Version 0.49.8
~~~~~~~~~~~~~~
truncated.
/* $Id: Changes,v 1.26 2005/08/23 11:21:17 mitry Exp $ */