File: ChangeLog.txt

package info (click to toggle)
xmail 1.22-5
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 2,840 kB
  • ctags: 3,857
  • sloc: cpp: 33,585; sh: 625; makefile: 102; perl: 56; sql: 31
file content (1680 lines) | stat: -rw-r--r-- 57,489 bytes parent folder | download
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
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
NAME

    XMail Change Log as of Version 1.22

    [top]

CHANGE LOG

  Oct 12, 2005 v 1.22

    *   The POP3 before SMTP authentication is now correctly interpreted as
        real SMTP authentication, by the mean of @@USERAUTH.

    *   'ATTENTION': Fixed a possible cause of buffer overflow in the
        XMail's sendmail binary.

    *   Changed the DNS MX resolution to allow better handling of partially
        broken DNS servers configuations.

  Jan 9, 2005 v 1.21

    *   Added a fix for 64 bits porting compatibility.

    *   Added the ability to exclude filters from execution in case of
        authenticated user. By pre-pending the filter command token with a
        token containing "!aex", the filters won't be run if the user
        authenticated himself.

    *   Added @@USERAUTH macro even to standard in/out filters (before it
        was only defined for SMTP ones).

    *   Added a new "NoSenderBounce" variable inside the SERVER.TAB file, to
        enable XMail generated bounce messages to have the empty SMTP sender
        ('MAIL FROM:<>').

    *   Added a new "SMTP-MaxErrors" variable inside the SERVER.TAB file to
        set the maximum errors allowed in a single SMTP session (default
        zero, unlimited).

    *   Added a "LastLoginTimeDate" variable to the "userstat" CTRL command.

    *   Added external aliases support in the CTRL protocol.

    *   The MESSAGE.ID file is now automatically created, if missing.

    *   Changed the logic used to treat domain and user MAILPROC.TAB files.
        Before, a user's MAILPROC.TAB was overriding the domain one, while
        now the rules are merged together, with domain's ones first,
        followed by user's ones.

    *   The maximum mailbox size of zero is now interpreted as unlimited.

    *   Fixed XMail's sendmail to detect non-RFC822 data and handle it
        correctly.

    *   The IP:PORT addresses emission in spool files (and Received: lines)
        has been changed to the form [IP]:PORT.

    *   Added filter logging, that is enabled with the new -Qg command line
        option.

    *   Fixed an error message in the SMTP server, that was triggered by the
        remote client not using the proper syntax for the "MAIL FROM:" and
        "RCPT TO:" commands.

    *   Fixed explicit routing through SMTPGW.TAB file.

    *   Fixed a possible problem with file locking that might be triggered
        from CTRL commands cfgfileget/cfgfileset.

    *   Added a check to avoid the CTRL server to give an error when a
        domain created with older versions of XMail does not have the domain
        directory inside cmdaliases.

    *   The SMTP server FQDN variable should be set to the value of
        "SmtpServerDomain", when this is used inside the SERVER.TAB file.

  May 30, 2004 v 1.20

    *   Fixed a possible memory leak and a possible source of crashes.

  May 29, 2004 v 1.19

    *   Implemented the "filter" command for custom mail processing
        (MAILPROC.TAB, cmdaliases and custom domains).

    *   If "RemoveSpoolErrors" is set inside the SERVER.TAB file, messages
        are never frozen. Before there was a special case (delivery failure
        and delivery notification failure) that could have lead to frozen
        messages.

    *   Made "aliasdomainadd" to check for the existence of the alias domain
        (and reject the command if existing).

    *   Introduced a new environment variable recognized by XMail
        (XMAIL_PID_DIR), to let the user to specify a custom PID file
        directory (this is for Unix ports only).

    *   Implemented ability to stop custom mail processing upon certain exit
        codes from external commands execution.

    *   The SPAMMERS.TAB check is now bypassable (see doc for details).

    *   'ATTENTION': Changed the "aliasdomainlist" syntax and output format
        (see doc for details).

    *   Made (on Unix setups) the PID file name to be dependent on the
        daemon file name.

    *   Implemeted a domain-wise MAILPROC.TAB and extended its "redirect"
        and "lredirect" commands to support account specific (USER@DOMAIN)
        and domain targets (DOMAIN).

    *   Implemented SMTP filters to allow users to reject the SMTP session
        before and after the remote client data has been received.

  Mar 27, 2004 v 1.18

    *   Restructured the external program execution environment on Unix
        ports. Simplified, as a consequence of this, the system dependent
        portion of XMail (SysDep*).

    *   Fixed a bug in the address range parsing (x.y.w.z/s).

    *   Fixed the alias lookup to perform a better "best match" wildcard
        selection.

    *   Fixed a bug in the DNS resolved that made XMail to not correctly
        handle domain CNAMEs.

  Sep 14, 2003 v 1.17

    *   Added Bcc: removal from message headers in XMail's sendmail.

    *   Added PSYNC logging (-Yl).

    *   Added domain completion to XMail's sendmail when the specified
        sender address (-f or -F) does not contain one. The environment
        variable (or registry in Windows) DEFAULT_DOMAIN is looked up to try
        to complete the address.

    *   Fixed a bug in the return code of SysAccept() in all Unix versions.

    *   Fixed a bug that was triggered by external command and filter
        exiting soon. XMail was not able to correctly sync with the child
        process by losing it. This apply only to Unix versions of XMail.

    *   A notification message is now sent to the sender if the message is
        handled with "smtp" or "smtprelay" commands and a permanent error
        happen when sending to the remote SMTP server.

  Jul 8, 2003 v 1.16

    *   Added a new configuration file "smtp.ipprop.tab" to be able to
        specify peer IP based configuration option, like for example IP
        white listing against IP checks.

    *   'ATTENTION': The filter return code has been changed and new return
        codes are expected to be returned by filters. Please che the
        documentation and update your filters before starting to use the new
        version.

    *   Added the ability to specify a custom error message for filters.

    *   Fixed a bug in the string quoting function that showed up when the
        string was empty ("").

    *   Changed the order used by XMail to check the mailer domain. Now MX
        check is performed first, then A record check. This caused a slow
        down for domains having MX records but not A records.

    *   Added two new Received: types to give the ability to hide client
        information if the SMTP client does authenticate with the server.

    *   Added the rejection map name inside the SMTP log file in case of
        SNDRIP=EIPMAP error.

    *   Modified XMail's sendmail to add the RFC822 Date: header if missing.

    *   XMail now uses the name of the executable ( without .exe ) to both
        register the service name and fetch registry variables.

    *   The POP3 server now picks up messages even from the Maildir's "cur"
        subdirectory.

  May 3, 2003 v 1.15

    *   Implemented a new filters feature that enable the user to stop the
        selected filters list processing upon receival of certain exit
        codes.

    *   Fixed the wrong log file name generation when the daylight time is
        active.

    *   Fixed a bug inside the DNS MX resolver.

    *   Fixed a bug ( Windows OS bug ) that made XMail unable to create
        domains starting with reserved device names ( COM#, LPT, PRN, CON,
        ... ). So, for example, a domain named "com4.domain.org" couldn't be
        created because of this naming conflict.

    *   Fixed a bug that made XMail to not apply filters for local mailing
        list.

    *   Fixed a bug that made XMail to crash under certain conditions.

  April 2, 2003 v 1.14

    *   Added a "Server:" field to the notification message. It'll report
        the remote SMTP server host name and IP that issued the error. It
        will not be present if the error does not originate from a remote
        SMTP server.

    *   Added a new command line parameter -MD to set the number of
        subdirectories allocated for the DNS cache files storage.

    *   Messages with non RFC822 conforming headers are now handled by the
        PSYNC code.

    *   'ATTENTION': The filter architecture has been completely changed. To
        correctly update to this version you have to create two empty files
        "filters.in.tab" and "filters.out.tab" inside the $MAIL_ROOT
        directory. Please refer to the documentation for more information
        about the new filter architecture. If you are not currently using
        filters, the simple creation of the two files listed above will be
        sufficent.

    *   'ATTENTION': The internal spool file format is changed with the new
        line added ( the 1st one ) that contain various message information.
        Filters that rely on the internal spool file format must be changed
        to match the new structure.

    *   Fixed a bug that made XMail to not correctly report zero sized files
        inside the mailbox.

    *   Added file size to CTRL's "filelist" command.

    *   Fixed a connect-error reporting bug on Windows platform.

  January 25, 2003 v 1.12

    *   Better check for user/domain names.

    *   Changed search pattern for filters. Now a domain name is scanned for
        all sub-domains.

    *   Fixed a boundary check inside the Base64 decoder.

    *   Added the client FQDN inside the SMTP log file in case the RDNS
        check is enabled.

    *   Added a new SERVER.TAB variable "SmtpMsgIPBanSpammers" to set the
        message that is sent to the SMTP client when the client IP is listed
        inside the file SPAMMER.TAB.

        = item *

        Added a new SERVER.TAB variable "SmtpMsgIPBanMaps" to set the
        message that is sent to the SMTP client when the client IP is listed
        inside one of the "CustMapsList".

    *   Added a new SERVER.TAB variable "SmtpMsgIPBanSpamAddress" to set the
        message that is sent to the SMTP client when the client IP is listed
        inside the file SPAM-ADDRESS.TAB.

    *   Fixed a bug inside the custom account handling that made XMail to
        pass the old password instead of the new one.

    *   Added OpenBSD support.

  November 9, 2002 v 1.11

    *   Added a new command line parameter -QT to enable a configurable
        timeout for filter commands.

    *   Fixed a bug that made XMail to ignore cmdalias accounts when a
        wildcard alias was matching the account itself.

    *   Added the 'smtprelay' command to the MAILPROC.TAB processing.

    *   Removed the 'wait' command from all custom processing.

    *   Added a new macro @@RRCPT to filters commands to extract the real
        local recipient.

    *   Changed the way the EXTALIASES.TAB mapping modify the return path.
        It now change the "Reply-To:" instead of the "From:" to avoid
        problems with signature verification software.

    *   Implemented logging on SMTP transactions rejected because of mapped
        IP or failing RDNS check.

    *   Added a new SERVER.TAB variable "SmtpServerDomain" to force the SMTP
        domain used by XMail in its banner string ( for CRAM-MD5 ESMTP
        authentication ).

    *   Improved DNS resolution for not existing domains.

    [top]

  July 27, 2002 v 1.10

    *   Added a variable 'CustomSMTPMessage' inside the server's
        configuration file SERVER.TAB to enable the postmaster to set a
        custom message that is appended to the standard XMail error
        response.

    *   Added log entries in case of relay lists mapped IPs.

    *   Fixed a build error on FreeBSD.

    *   Added a new SERVER.TAB variable 'DisableEmitAuthUser' to block the
        emission the the header 'X-Auth-User:' for authenticated user.

    *   Added a new USER.TAB variable 'DisableEmitAuthUser' to block the
        emission the the header 'X-Auth-User:' for authenticated users (this
        variable overrides the SERVER.TAB one).

    *   Added command line driven mailbox delivery mode (-MM = Maildir , -Mm
        = mailbox).

    *   Added sysv_inst.sh shell script to help creating SysV boot scripts
        for XMail.

    [top]

  June 15, 2002 v 1.9

    *   Fixed a bug in HOSTNAME:PORT handing code inside the PSYNC server.

    *   Fixed a bug introduced in 1.8 in the Windows version that made XMail
        to have bad behaviour when used with external programs.

    *   Fixed a bug that resulted in XMail generating frozen messages even
        if the SERVER.TAB variable was set to not create them.

    *   Fixed a bug that made it possible to send a 'MAIL
        FROM:<@localdomain:remoteaddress>' and to have the message relayed
        if the IP of the current machine was inside the smtprelay.tab of the
        machine handling the MX of @localdomain.

    *   Implemented internal mail loop checking (internal redirects).

    *   Added a new MLUSERS.TAB permissions flags 'A', that is similar to
        'W' by instead of checking the 'MAIL FROM:<...>' address check the
        SMTP authentication address (this will prevent malicious users to
        forge the address to gain write permissions on the list).

    [top]

  May 19, 2002 v 1.8

    *   Changed XMail's behaviour upon receival on long (RFC compared) data
        lines on SMTP and POP3 fetch inbound doors. Before the operation was
        aborted while now data is accepted without truncation, that might
        make XMail to behave non conforming the RFC.

    *   Added @@RRCPT macro to the 'external' MAILPROC.TAB command to emit
        the real recipient of the message (@@RCPT could be an alias).

    *   Added HOSTNAME:PORT capability to POP3LINKS.TAB entries.

    *   Added Linux/PowerPC port.

    *   Added 'filelist' CTRL protocol command.

    *   Added SMTP HELP command.

    *   Changed bounce message format to add the last SMTP error and to make
        it works with Ecartis mail bounce processing.

    *   Changed the XMail's sendmail implementation to accept '-f FROM' and
        '-F FROM' non standard sendmail paramenter specification.

    *   Fixed a bug inside the PSYNC server code that made XMail to fail to
        resolve POP3 server addresses.

    *   Various code cleanups.

    [top]

  March 03, 2002 v 1.7

    *   Fixed a bug inside the POP3 server that caused bad responses to UIDL
        and LIST commands in case of certain command patterns.

    *   Added support for HOSTNAME:PORT (or IP:PORT) for the
        DefaultSMTPGateways SERVER.TAB variable.

    *   Added domain aliases cleanup upon main domain removal.

    *   Added 'MaxMessageSize' inside USER.TAB files to override the global
        (SERVER.TAB) one.

    [top]

  March 03, 2002 v 1.6

    *   Added a new USER.TAB variable 'UseReplyTo' (default 1) to make it
        possible to disable the emission of the Reply-To: header for mailing
        lists.

    *   Fixed a bug that caused XMail to uncorrectly deliver POP3 fetched
        messages when used togheter with domain masquerading.

    *   Changed index file structure to use an hash table for faster lookups
        and index rebuilding.

    *   New files inside the tabindex directory now have the extension .hdx
        and old .idx files can be removed.

    *   Added X-Deliver-To: header to messages redirected with MAILPROC.TAB
        file.

    *   Added configurable Received: tag option in SERVER.TAB by using the
        variable 'ReceivedHdrType'.

    *   Added a configurable list of header tags to be used to extract
        addresses for POP3 fetched messages by using the SERVER.TAB variable
        'FetchHdrTags'.

    *   History (change log) entries have been moved from the main
        documentation file and a new file (ChangeLog.txt) has been created
        to store change-log entries.

    *   Removed RBL-MAPSCheck (currently blackholes.mail-abuse.org.),
        RSS-MAPSCheck (currently relays.mail-abuse.org.) and DUL-MAPSCheck
        (currently dialups.mail-abuse.org.) specific variables and now
        everything must be handled with CustMapsList (please look at the
        documentation).

    *   Added NotifyMsgLinesExtra SERVER.TAB variable to specify the number
        of lines of the bounced message to include inside the notify reply
        (default zero, that means only header).

    *   The message log file is now listed inside the notification message
        sent to ErrorsAdmin (or PostMaster ).

    *   Added NotifySendLogToSender SERVER.TAB variable to enable/disable
        the send of the message log file inside the notify message to the
        sender (default is off).

    *   Added TempErrorsAdmin SERVER.TAB variable to specify an account that
        will receive temporary delivery failures notifications (default is
        empty).

    *   Added a new SERVER.TAB variable NotifyTryPattern to specify at which
        delivery attempt failure the system has to send the notification
        message.

    *   Fixed a bug that caused alias domains to have higher priority lookup
        compared to standard domains.

    [top]

  February 05, 2002 v 1.5

    *   Fixed a bug in wildcard aliases domain lookup.

    *   Fixed a bug in CTRL command 'aliasdel' that failed to remove aliases
        with wildcard domains.

    *   Fixed a bug that caused XMail to timeout on very slow network
        connections.

    [top]

  January 18, 2002 v 1.4

    *   Fixed a bug that made XMail fail to parse custom maps lists in
        SERVER.TAB.

    *   Fixed a bug that prevented XMail to add wildcard-domain aliases.

    *   Added a filter feature to the CTRL commands 'domainlist' and
        'aliasdomainlist'.

    *   Added an extra message header field 'X-AuthUser:' to log the
        username used by the account to send the message.

    *   Added Reply-To: RFC822 header for mailing lists sends.

    *   Fixed a Win32 subsystem API to let XMail to correctly handle network
        shared MAIL_ROOTs.

    [top]

  December 19, 2001 v 1.3

    *   ORBS maps test removed due old ORBS dead, the SERVER.TAB variable
        'CustMapsList' can be used to setup new ORBS (and other) maps.

    *   Fixed a bug in XMail's sendmail that was introduced in version 1.2
        and made it to incorrectly interpret command line parameters.

    *   Fixed a bug that made XMail not correctly recognize user type
        characters when lowercase.

    *   Fixed a bug that caused XMail to not start is the MAIL_ROOT
        environment variable had a final slash on Windows.

    *   Added a new filter return code (97) to reject messages without
        notification and without frozen processing.

    *   Added two new command line options -MR and -MS to set the I/O socket
        buffers sizes in bytes (do not use them if You don't know what
        You're doing).

    *   Changed system library to have a better performace, expecially on
        the Windows platform.

    *   Users that are using XMail mainly inside their local LAN are
        strongly encouraged to switch to this version.

    *   Fixed a bug that enabled insertion of aliases that overlapped real
        accounts.

    [top]

  November 12, 2001 v 1.2

    *   A problem with log file names generation has been fixed.

    *   Added a new CTRL command 'userstat'.

    *   Implemented Linux/SPARC port and relative makefile (Makefile.slx).

    *   Extended the XMail version of sendmail to support a filename as
        input (both XMail format that raw email format) and to accept a
        filename as recipient list.

    *   Added a new kind of aliases named 'cmdaliases' that implements a
        sort of custom domains commands on a per-user basis (look at the
        CmdAliases section).

    *
         ********************************************************************
         * You must create the directory 'cmdaliases' inside $MAIL_ROOT
         * to have 1.2 work correctly
         ********************************************************************    

    *   Fixed a bug that had XMail not check for the user variable SmtpPerms
        with CRAM-MD5 authetication.

    *   Fixed a bug in the XMail's sendmail implementation that made it
        unable to detect the '.' end of message condition.

    *   Fixed a bug in the XMail's sendmail implementation that made it to
        skip cascaded command line parameters (-Ooet).

    *   Implemented a new XMail's sendmail switch -i to relax the
        <CR><LF>.<CR><LF> ond of message indicator.

    [top]

  October 09, 2001 v 1.1

    *   Fixed a bug in the XMail version of sendmail that made messages to
        be double sent.

    *   The macro @@TMPFILE has been removed from filters coz it's useless.

    *   The command line parameter -Lt NSEC has been added to set the sleep
        timeout of LMAIL threads.

    *   Added domain aliasing (see ALIASDOMAIN.TAB section).

    *
         ********************************************************************    
         * You must create the file ALIASDOMAIN.TAB inside $MAIL_ROOT
         * (even if empty)
         ********************************************************************    

    *   Added CTRL commands 'aliasdomainadd', 'aliasdomaindel' and
        'aliasdomainlist' to handle domain aliases through the CTRL
        protocol.

    [top]

  September 04, 2001 v 1.0

    *   Added wildcard matching in the domain part of ALIASES.TAB (see
        ALIASES.TAB section).

    *   Changed the PSYNC scheduling behaviour to allow sync interval equal
        to zero (disabled) and let the file .psync-trigger to schedule
        syncs.

    *   Solaris on Intel support added.

    *   A new filter return code (98) has been added to give the ability to
        reject message without notify the sender.

    [top]

  June 10, 2001 v 0.74

    *   A stack shifting call method has been implemented to make virtually
        impossible for attackers to guess the stack frame pointer.

    *   With this new feature, even if buffer overflows are present, the
        worst thing that could happen is a server crash and not the attacker
        that execute root code on the server machine.

    *   Implemented the SIZE ESMTP extension and introduced a new SERVER.TAB
        variable 'MaxMessageSize' that set the maximum message size that the
        server will accept (in Kb).

    *   If this variable is not set or if it's zero, any message will be
        accepted.

    *   A new SMTP authentication permission ('Z') has been added to allow
        authenticated users to bypass the check.

    *   The SMTP sender now check for the remote support of the SIZE ESMTP
        extension.

    *   A new SERVER.TAB variable has been added 'CustMapsList' to enable
        the user to enter custom maps checking (look at the section
        'SERVER.TAB variables').

    *   Fixed a bug in 'frozdel' CTRL command.

    [top]

  June 08, 2001 v 0.73

    *   Fixed a possible buffer overflow bug inside the DNS resolver.

    [top]

  May 23, 2001 v 0.72

    *   Fixed build errors in MkUsers.cpp and SendMail.cpp (FreeBSD
        version).

    *   Added the ability to specify a list of matching domains when using
        PSYNC with masquerading domains (see POP3LINKS.TAB section).

    *   The auxiliary program sendmail now reads the MAIL_ROOT environment
        from registry (Win32 version) and if it fails it reads from the
        environment.

    *   Fixed a bug that made XMail to crash if the first line of
        ALIASES.TAB was empty.

    *   RPM packaging added.

    *   Added a new feature to the custom domain commands 'redirect' and
        'lredirect' that will accept email addresses as redirection target.

    *   Fixed a bug in MkUsers.

    *   Added system resource checking before accepting SMTP connections
        (see 'SmtpMinDiskSpace' and 'SmtpMinVirtMemSpace' SERVER.TAB
        variables).

    *   Added system resource checking before accepting POP3 connections
        (see 'Pop3MinVirtMemSpace' SERVER.TAB variable).

    *   A new command line param -t has been implemented in sendmail.

    *   A new USER.TAB variable 'SmtpPerms' has been added to enable account
        based SMTP permissions.

    *   If 'SmtpPerms' is not found the SERVER.TAB variable
        'DefaultSmtpPerms' is checked.

    *   A new USER.TAB variable 'ReceiveEnable' has been added to
        enable/disable the account from receiving emails.

    *   A new USER.TAB variable 'PopEnable' has been added to enable/disable
        the account from fetching emails.

    [top]

  April 29, 2001 v 0.71

    *   Removed the SERVER.TAB variable 'HeloUseRootDomain' and introduced a
        new one 'HeloDomain' to specify the name to send as HELO domain
        (look at variable documentation).

    *   If 'HeloDomain' is not specified or if empty then the reverse lookup
        of the local IP is sent as HELO domain.

    *   Added a new SERVER.TAB variable 'DUL-MAPSCheck' to implement the
        'dialups.mail-abuse.org' maps check.

    *   Changed the meaning of the SERVER.TAB variables SMTP-RDNSCheck,
        RBL-MAPSCheck, RSS-MAPSCheck, ORBS-MAPSCheck and DUL-MAPSCheck to
        give XMail the ability to delay SMTP commands for clients that fail
        the check.

    *   The old behaviour (dropped connection) is obtained by setting values
        greater than zero, while You can set the delay (in seconds) by
        specifying negative values.

    *   For SMTP-RDNSCheck and DUL-MAPSCheck variables the connection is no
        more dropped at welcome time but a 'server use forbidden' message is
        given at MAIL_FROM time.

    *   In this way XMail give authenticated users the ability to get in
        from 'mapped' IPs.

    *   Fixed a bug that cause XMail to crash if there is an empty line in a
        MLUSERS.TAB file.

    *   Added a new SERVER.TAB variable 'ErrorsAdmin' that will receive the
        notification message for every message that has had delivery errors.

    *   The feature to force XMail to initiate a PSYNC transfer has been
        added. This is implemented by making XMail to check for a file named
        '.psync-trigger' inside MAIL_ROOT. When this file is found a PSYNC
        tranfer is started and the file is deleted.

    *   Added a new SERVER.TAB variable 'MaxMTAOps' to set the maximum
        number of relay steps before to declare the message as looped.

    *   Added SMTP after POP3 authentication and one new command line switch
        (-Se) to set the expire time of the POP3 IP.

    *   A new SERVER.TAB variable has been added to enable/disable SMTP
        after POP3 authentication (EnableAuthSMTP-POP3).

    *   Added the replacement for sendmail that will use the local mail
        delivery of XMail (look at the sendmail section).

    *   The ESMTP command ETRN has been added has long as a new SMTP perm
        flag 'T' to give access to this feature and a new SERVER.TAB
        variable 'AllowSmtpETRN' to set the default feature access.

    *   Added a new CTRL command 'etrn' to support the same SMTP feature
        through the CTRL protocol.

    *   Fixed a bug in filters selection that made XMail to case-sensitive
        compare user and domain filters.

    *   Changed the name of the default filter to '.tab' instead of
        'defaultfilter.tab'.

    *   Finally, FreeBSD port added !!

    [top]

  April 08, 2001 v 0.70

    *   Added the message ID to the received tag and extended the SMTP log
        file with the username of the authenticated user (if any).

    *   Fixed a bug in external authentication (POP3).

    *   The USERDEF.TAB file is now checked inside $MAIL_ROOT/domains/DOMAIN
        before and then in $MAIL_ROOT.

    *   This permit per domain user default configuration.

    *   Added a new CTRL server command 'frozsubmit' to reschedule a frozen
        message.

    *   Added a new CTRL server command 'frozdel' to delete a frozen
        message.

    *   Added a new CTRL server command 'frozgetlog' to retrieve the frozen
        file log file.

    *   Added a new CTRL server command 'frozgetmsg' to retrieve the frozen
        message file.

    [top]

  February 22, 2001 v 0.69

    *   Fixed a bug that made XMail to grant Read permissions to mailing
        lists users.

    *   Fixed a bug that made XMail to delete SMTP rights granted during
        authentication when sending multiple messages.

    *   Fixed a bug in SMTP CRAM-MD5 authentication.

    *   Fixed a bug that caused XMail to break the header when an headers
        tag is made by 'tag-name:[CR][LF]tag-string'.

    *   Added the delete functionality to the CTRL command 'uservarsset' by
        giving the string value '.|rm' the delete capability.

    [top]

  February 05, 2001 v 0.68

    *   Fixed a buffer overflow vulnerability in CTRL server and added
        command string validation to all servers.

    *   Added 8BITMIME and PIPELINING support (it was already compliant).

    *   Added a new SERVER.TAB option 'HeloUseRootDomain' to make XMail to
        use the 'RootDomain' like HELO domain.

    *   Added FINGER service access control based on the peer IP address. A
        new file FINGER.IPMAP.TAB has been added to MAIL_ROOT with the same
        meaning of the ones used with SMTP, POP3 and CTRL services.

    *   Fixed a bug that caused XMail to drop the first character of the
        headers if there was no space between the colon and the header
        value.

    *   Added extended SMTP log information by adding an extra (last) field
        to the log file.

    *   Added a new SERVER.TAB variable 'AllowSmtpVRFY' (default off) to
        enable the SMTP VRFY command.

    *   Added a new SMTP auth flag 'V' to enable VRFY command (bypassing
        SERVER.TAB settings).

    *   Improved the POP3 sync method to fetch and distribute mail that uses
        an external POP3 mailbox to collect more accounts togheter. Before
        the method failed if the user was not in the first 'To:' address,
        while now all addresses contained in 'To:', 'Cc:' and 'Bcc:' are
        checked. There is also a new SERVER.TAB variable
        'Pop3SyncErrorAccount' whose use is catch all emails that has been
        fetched but has had delivery errors.

    [top]

  January 04, 2001 v 0.67

    *   Fixed a bug in 'poplnkenable' CTRL server command.

    *   Changed the report of 'poplnklist' CTRL server command to include
        the authentication mode and the enabled status.

    *   Fixed a bug in 'poplnkdel' that left around the .disable file.

    *   A new directory 'pop3links' has to be added to store POP3 links
        disable files for non-local links.

    *   This will fix also a bug in multi-account and masquerading POP3
        sync.

    *   A new way to retrieve the POP3 domain has been coded by doing a
        reverse DNS lookup from the server IP. If the result of the lookup
        will be xxxx.yyyy.zzzz then XMail will test if xxxx.yyyy.zzzz is
        handled, then yyyy.zzzz and then zzzz.

    *   The first of these domains that is handled by XMail will be the POP3
        domain.

    *   Added a new SERVER.TAB variable 'CheckMailerDomain' that, if on
        ('1'), force XMail to validate the sender domain ('MAIL
        FROM:<...@xxx>') by looking up DNS/MX entries.

    *   Fixed the bug that made XMail to not accept users to add if a
        wildcard alias were defined.

    [top]

  December 08, 2000 v 0.66

    *   The SMTP command RSET no more clean the authentication status of the
        client.

    *   Improved MX records resolution and fixed a bug in MD5 algo.

    *   A new USER.TAB variable (for Mailing Lists) 'ListSender' has been
        added to hide real senders from SMTP protocol.

    *   If this variable does not exist the 'MAIL FROM:<>' command will
        contain the 'real' sender address.

    *   This variable should be set to the email address of the mailing list
        admin that will receive all the notification and error messages,
        preventing this error to reach real senders.

    *   Fixed an RFC conformance bug in SMTP protocol that made XMail to
        accept the MAIL_FROM command even if the HELO (or EHLO) command was
        not issued.

    *   Fixed a bug in SysExec() in Linux and Solaris versions that made all
        external programs to have a bad behaviour or fail. This bug was
        introduced in 0.65 version.

    *   Fixed a bug in the Windows version that results in a failure to
        resolve MX queries.

    *   This bug was introduced in 0.65.

    [top]

  November 25, 2000 v 0.65

    *   Complete Linux library rewrite, now using PThread library instead of
        forking.

    *   Solaris/SPARC port added (HPUX/PARISC incoming).

    *   Removed the -Ma flags for the maximum number of accounts coz it's no
        more needed due the new Linux system library (now the memory shares
        is given for free instead of having to rely on IPC).

    *   Removed the -Mk parameter due the IPC stuff removal.

    *   Extra domain aliases has been added (see ALIASES.TAB section).

    *   A new feature has been added to XMail to enable XMail users to
        prepare mail files in a given format, put them in /spool/local
        directory and get them delivered by the server (see 'XMail local
        mailer' section).

    *   Two new directories 'local' and 'temp' must be created inside the
        'spool' directory.

    *   The meaning of the command line param '-Mr ...' has changed from
        days to hours.

    [top]

  November 02, 2000 v 0.64

    *   Added permissions to mailing list users (see MLUSERS.TAB section).
        This enable You to have read only users as long as read/write users.

    *   This is implemented by adding a new extra field to MLUSERS.TAB to
        store permissions ('R' or 'RW').

    *   The lack of this extra field (old MLUSERS.TAB files) will be
        interpreted as 'RW'.

    *   The command 'mluseradd' has been extended to hold the new permission
        parameter (see section 'XMail admin protocol').

    *   Added a new CTRL command 'frozlist' to list files that are in frozen
        status (see section 'XMail admin protocol').

    *   Fixed a bug in the new masquerading feature of XMail
        (POP3LINKS.TAB).

    *   Fixed a bug that makes XMail crashes when a mail loop condition is
        detected.

    *   Removed the strict RFC compliant check on messages.

    [top]

  October 27, 2000 v 0.63

    *   Added a feature that makes usable the new POP3LINKS.TAB fetching
        option by masquerading incoming recipient. This can be done by
        replacing the domain part or by adding a constant string to the To:
        address (see POP3LINKS.TAB section).

    [top]

  September 12, 2000 v 0.62

    *   Added a new custom domain processing command 'smtprelay' that can be
        used to route messages to other smtp servers (see section 'Custom
        domain mail processing').

    *   New search method for custdomains/ files : now the test to find out
        if the domain sub1.sub2.domain.net will get a custom domain
        processing is done by looking up sub1.sub2.domain.net.tab ,
        .sub2.domain.net.tab , .domain.net.tab , .net.tab and then .tab.

    *   There is a new POP3 sync method now that enables users that receives
        mail for multiple recipients into a single external POP3 account to
        get all mail to be distributed locally.

    *   You've to be sure, to not create mail loops, that all recipients
        domains are locally handled in a way or another (see section
        POP3LINKS.TAB).

    *   Added the random order option to SMTPFWD.TAB gateways to randomly
        select the order of the try list (see section SMTPFWD.TAB).

    *   Added the random order option to 'smtprelay' custom domain
        processing (see section 'Custom domain mail processing').

    *   The use of realloc() function has been removed to make place for
        free()/malloc() due a glibc bug with such function.

    [top]

  September 12, 2000 v 0.61

    *   Added a new CTRL command 'userauth' that helps to check users
        authentication.

    *   This command can be used by external modules that need to check
        XMail username/password authentication (ex: external IMAP auth
        modules).

    *   A new file SMTPFWD.TAB has been introduced to supply customizable
        mail exchangers for external domains (see section SMTPFWD.TAB).

    *   Not local POP3 sync has been introduced to make it possible to
        download external POP3 accounts without having to setup local
        accounts (see section POP3LINKS.TAB).

    *   This feature can be used, for example, to catch mails from a set of
        remote accounts and redirect these to another SMTP server.

    *   Now it's possible to set per IP server port in command line params
        by specifying bindip[:port] PSYNC flags -Qx has been removed due the
        new queue system.

    *   A new global command line parameter -Mx has been introduced to setup
        the queue split level even if my suggestion is to leave the default
        value (23 , that means that the queue is splitted in 23 * 23 = 529
        subdirectories).

    *
         ********************************************************************    
         * A new spool format has been coded to enable XMail to handle very
         * large sending queues.
         * See section 'XMail spool design' for a description of how the spool
         * works.
         * Due to the new spool format the following directories can be
         * removed:
         *
         * custdomains/spool
         * spool/tmp
         * spool/errors
         * spool/logs
         * spool/locks
         *
         * You've to leave XMail flush its queue (spool) before upgrading
         * to this version.
         * A more complex solution, if You've a lot of file pending into the
         * spool, is :
         *
         * 1) Stop XMail
         * 2) Upgrade to 0.61
         * 3) Start XMail and wait it has created all the queue tree structure
         * 4) Stop XMail
         * 5) Move all old spool/ files into 0/0/mess
         * 6) Rename all spool/logs/ files removing the .log extension
         * 7) Move all spool/logs/ file into 0/0/slog
         * 8) Now You can remove the above directories and restart XMail
         ********************************************************************    

    *   ORBS relays checking has been added and is activated by the new
        SERVER.TAB option 'ORBS-MAPSCheck'.

    *   A new SERVER.TAB variable 'AllowNullSender' (default true) has been
        introduced to change the XMail default behaviour that reject null
        sender messages. Now if You want null sender messages to be rejected
        You've to set this variable to zero.

    *   Fixed a bug in Linux XMail debug startup.

    *   Now SMTP authentication does a previous lookup in mailusers.tab
        using the complete email address as username (@ or : as separators).

    *   Authenticated users will get the permission stored in the new
        'DefaultSmtpPerms' SERVER.TAB variable.

    [top]

  August 31, 2000 v 0.60

    *   The XMail executable filename has been modified to XMail.

    *   A better (even if not perfect) Linux SysV startup script (xmail) has
        been coded.

    *   Fixed a bug in locking procedures (.lock file oriented) and
        introduced a correct SIGPIPE handling.

    *   Improved I/O performance due to a new way of sending files through
        TCP/IP connections, to a more efficent way to copy message files and
        to a reduced number of temporary files that are created by XMail.

    [top]

  July 30, 2000 v 0.59

    *   DNS MX queries caching has been added to lower DNS network traffic
        and to speed up message delivery.

    *   A new directory dnscache must be added to MAIL_ROOT as long as the
        two subdirectories dnscache/mx and dnscache/ns .

    *   A possible buffer overflow error has been fixed.

    *   Some code rewrites.

    [top]

  July 22, 2000 v 0.58

    *   Maildir mailbox format has been introduced as an optional mail
        storage other than the proprietary mailbox structure (You need to
        change CFLAGS definition in Makefile.lnx to build the Maildir
        version of XMail or edit SvrConfig.h defining CONFIG_MAILDIR for
        both Linux and NT version).

    *   If You want to switch to the new Maildir version You MUST convert
        Your accounts and You MUST create a tmp directory inside
        $MAIL_ROOT/spool.

    *   The maximum number of recipients for a single SMTP message has been
        made tunable by a new command line parameter (-Sr ... , default
        100).

    *   Fixed a small memory leak in SMTP server in case of multiple
        recipients.

    *   New POP3 username/domain separator (:) has been introduced other
        than (@) that is not a valid char for Netscape mail system.

    *   A buffer overflow bug has been corrected (the bug outcrop when a
        line is longer than the supplied buffer and a newline char is
        exactly placed at the buffer[sizeof(buffer)-1]).

    *   Mail loop check has been introduced.

    *   Fixed a bug that makes XMail unable to correctly handle SMTP lines
        terminated by <CR><CR><LF>.

    *   SMTP server 'Received:' tag has been changed to suite 'MAIL FROM:<>'
        and 'RCPT TO:<>' addresses.

    [top]

  July 13, 2000 v 0.57

    *   Fixed a SERIOUS bug introduced with the new indexing features of
        XMail that makes names case sensitive. You must also empty the
        tabindex directory to enable XMail to rebuild indexes in a case
        insensitive way. Update SOON to this version.

    *   The maximum number of accounts has been removed due the new locking
        method.

    *   Now the -Ma ... parameter give XMail a way to allocate locking
        resources, but it's not as strict as it was with previous versions.

    *   New CTRL commands has been added (cfgfileget, cfgfileset).

    *   A new command line utility to create user accounts based on a
        formatted text file has been added (watch at MkUsers section).

    [top]

  July 07, 2000 v 0.56

    *
         ********************************************************************    
         *                            WARNING
         * The MAIL_ROOT directory organization has been changed !
         * A new directory  domains  MUST be created inside MAIL_ROOT to get
         * a cleaner configuration for XMail installations that handle
         * several domains.
         * In order to use this new version You MUST move Your domains
         * directories inside the new  domains  directory
         ********************************************************************    

    *   SMAIL scheduling times in sending messages has been changed (see -Qi
        command line option).

    *   The file domains.tab has been put under index.

    *   Completely rewrited lock procedures.

    *   New CTRL commands has been added (usergetmproc, usersetmproc,
        custdomget, custdomset, custdomlist).

    [top]

  July 04, 2000 v 0.55

    *   A syntax bug has been corrected, 'SMTP-RARPCheck' leave place to the
        correct 'SMTP-RDNSCheck'.

    *   Now the files mailusers.tab , aliases.tab and extaliases.tab are
        indexed for a faster lookup in case of having several thousands of
        users and / or aliases. For this need a new directory named tabindex
        __MUST__ be added to MAIL_ROOT path.

    *   As a consequence of this new feature You __CANNOT__ edit files under
        index while XMail is running.

    *   POP3 mailbox locking method is changed to speedup startup time in
        case of thousand of users.

    *   Remember to __ADD__ the directory pop3locks inside MAIL_ROOT path.

    [top]

  June 29, 2000 v 0.54

    *   A user level grained control over incoming POP3 connections based on
        peer IP has been added (see at the section dedicated to
        POP3.IPMAP.TAB).

    *   A new XMail command line parameter has been added to increase the
        maximum number of accounts that can be handled by the server (now
        defaults to 25000 while previous versions defaults to 7500).

    *   Fixed a bug in XMail alias removal.

    *   Some code rewrites.

    [top]

  June 21, 2000 v 0.53

    *   The ability to setup a spammer protection based on sender address
        has been added (see section dedicated to SPAM-ADDRESS.TAB).

    [top]

  June 18, 2000 v 0.52

    *   The ability to disable PSYNC server by setting sync timeout to zero
        (-Yi 0) has been added.

    *   SMTP client authentication has been added (see SMTP Client
        Authentication section).

    *   SMTP server authentication (PLAIN LOGIN CRAM-MD5) has been added
        (see SMTPAUTH.TAB description).

    *   SMTP server custom authentication has been added (see
        SMTPEXTAUTH.TAB description).

    [top]

  June 12, 2000 v 0.51

    *   Added 'aliaslist' command to controller server.

    *   Wildcard matching has been added in 'userlist' and 'aliaslist'
        controller server commands.

    *   Fixed a SERIOUS bug in SysExec() on Linux port - upgrade asap Your
        version.

    [top]

  June 07, 2000 v 0.50

    *   MD5 authentication has been added to CTRL server to enforce server
        security (watch at XMail admin protocol section).

    *   Users of CTRL protocol are ancouraged to use this new authentication
        mode.

    *   POP3 TOP command has been implemented.

    [top]

  June 06, 2000

    *   Fixed a SERIOUS bug in custom (external) POP3 authentication
        procedures, it always give auth :(( APOP POP3 authentication has
        been added to POP3 server as long as to PSYNC server (POP3 client).

    *   PSYNC server configuration file (POP3LINKS.TAB) IS CHANGED to enable
        APOP authentication (watch at POP3LINKS.TAB section).

    *   The command 'poplnkadd' of CTRL server has been extended to another
        parameter that store authentication method to be used.

    [top]

  June 01, 2000

    *   Correct handling of mail routing through 'RCPT TO: <>' has been
        added (see Mail Routing Through Addresses section).

    *   Added wildcard matching and complex mail routing in SMTPGW.TAB.

    *   Fixed a bug in PSYNC server that makes XMail to test for '+OK '
        response instead that for '+OK' (and '-ERR ' for '-ERR').

    *   Added configuration steps in Part 7 of this doc.

    *   The ability to handle custom (external) POP3 authentication
        procedures has been added (see section External Authentication).

    [top]

  May 29, 2000

    *   Bug fixes in controller server and in PSYNC server.

    *   Added --install-auto to install XMail as an autostart service (NT).

    *   Better reliability in custom domain processing has been coded
        (REMEMBER to add the spool directory inside custdomains ).

    *   Improved delivery error logs for a better problem understanding and
        fix.

    *   Some code rewrites.

    [top]

  May 27, 2000

    *   CtrlClnt improved in error control and bug fixes.

    *   Changes in controller protocol for commands that has output.

    *   The command 'userpasswd' has been added in controller server to
        allow user password changes.

    *   Bug fixes in controller server.

    *   Added wildchar (* ?) compare in aliases that allow to give a default
        processing to group of users (ie users that does not have an
        account).

    *   XMail init.d startup script has been added (xmail).

    [top]

  May 26, 2000

    *   Added CtrlClnt to give a access to remote administration of XMail
        (see CtrlClnt section).

    *   This permit You to add, delete, list users as long as many other
        administration procedures (see XMail controller protocol).

    [top]

  May 24, 2000

    *   Closed mailing lists has been added ('ClosedML' variable in
        USER.TAB).

    *   The concept of filtering as message content testing has been
        extended to a message processing (address rewriting, attachment
        purging, etc ...).

    *   Now message filtering can have a 'per user' processing to give a
        more fine grained control.

    [top]

  May 21, 2000

    *   Added the way to specify a default domain filter with the presence
        of the file defaultfilter.tab into the filters subdirectory.

    *   Improved PSYNC error handling.

    *   Improved shutdown condition sensing (read Server Shutdown section).

    [top]

  May 08, 2000

    *   Fixed a bug in SysDepLinux.cpp in function SysMakeDir() - permission
        mask changed to 0700.

    *   Improved external programs execution behaviour under NT (no console
        is displayed).

    *   Added the option to setup domain message filters with external
        programs exection (remember to add the filters subdirectory if
        You're upgrading an existing XMail).

    *   This can help to filter messages based on its content to avoid mail
        worms and viruses that travel in attachments with given dangerous
        extensions.

    [top]

  April 26, 2000

    *
         ********************************************************************    
         *                             WARNING
         * The spool file format is changed !
         * In order to use this new version You MUST flush the spool before
         * starting the new version of XMail.
         ********************************************************************    

    *   Modified SysRename() to MscMoveFile() to avoid errors in all cases
        where files are positioned on differents mount points (Unixes
        versions).

    *   Added log files rotate function as long as a new command line
        parameter (-Mr ndays) to specify the rotate delay.

    *   Added message-id to SMAIL and SMTP log file.

    *   Added @@MSGID macro in custom mail processing (external commands).

    *   Added @@MSGREF macro in custom mail processing (external commands).

    *   Now messages coming from external POP3 links are pushed into the
        spool and not directly into the target user mailbox - this enable
        custom user mail processing also on this kind of messages.

    *   Added 'lredirect' command to MAILPROC.TAB that makes XMail to
        impersonate the local domain when redirect messages.

    *   Added 'lredirect' command to custom domain mail processing that
        makes XMail to impersonate the local domain when redirect messages.

    [top]

  April 04, 2000

    *   A @@TMPFILE macro has been added to MAILPROC.TAB syntax as long as
        to custom domain processing syntax. It will create a temporary file
        which hold the copy of the message.

    *   It's external program resposibility to delete such file when it has
        finished its processing.

    *   Messages generated as response to a delivery failure has target
        address remapped with the meanings of the file EXTALIASES.TAB.

    *   Fixed a bug that makes XMail write a bad 'Received: ...' message
        tag.

    *   This error cause mail readers to display bad message's datetimes.

    *   Added 'uservars' command to the controller protocol to list user
        defined variables.

    *   Added 'uservarsset' command to the controller protocol to set user
        defined variables.

    [top]

  March 21, 2000

    *   IP access control has been added to POP3, SMTP and CTRL servers
        (pop3.ipmap.tab , smtp.ipmap.tab , ctrl.ipmap.tab). I suggest You to
        setup at least ctrl.ipmap.tab.

    *   Permanent SMTP error detect has been added to avoid to send N times
        a message that will be always rejected.

    *   Some code rewrite.

    [top]

  March 18, 2000

    *   Linux daemon startup code has been added.

    *   Modified the means of 'smtprelay.tab' and 'spammers.tab' with the
        introduction of a netmask (MODIFY YOUR FILES EVEN IF FOR NOW THE OLD
        VERSION IS STILL SUPPORTED !).

    *   Service threads limit has been added to POP3 and SMTP servers.

    [top]

  March 16, 2000

    *   Fixed a bug in new Linux semaphore code.

    [top]

  March 13, 2000

    *   Added 'POP3Domain' configuration variable that gives the possibility
        to set the default (primary) POP3 domain.

    *   Users of such domain can log to the server using only the name part
        of their email address.

    *   Enached daemon (or service) mode with no messages printed onto
        console.

    *   A -Md flag has been added to activate the debug mode that will
        restore verbose behaviour.

    *   Error messages, in daemon mode, will be now printed to syslog()
        (Linux) or to EventViewer (NT).

    *   Improved semaphore handling in Linux that prevent from allocation a
        great number of semaphores. SysV semaphore array capability of Linux
        is used to reduce the number of allocated semaphores.

    *   Code rewrite.

    [top]

  March 10, 2000

    *   Fixed other possible points of buffer overflow attacks.

    *   My Co. XMail server has reached 100000 messages exchanged without a
        single crash ! Custom domain mail processing has been added.

    *   MAIL_CMD_LINE environment (or registry) has been added to give XMail
        a way to get a command line even when it's started as service.

    *   Command line option -?I xxx.yyy.zzz.www has been added to bind to
        specified server interfaces.

    [top]

  March 08, 2000

    *   Added UIDL POP3 server command to make XMail work with clients that
        needs that feature.

    *   Fixed a bug that prevent to send mail introduced with the previous
        version.

    [top]

  March 06, 2000

    *   Fixed a bug that can cause XMail to fall in a long CPU eating loop.

    *   Added a delay to bad POP3 logins to prevent POP3 mailboxes attacks.

    *   Added the option to shutdown the connection in a bad POP3 login
        case.

    *   Fixed a bug that makes XMail (as NT service) shutdown at user
        logoff.

    *   Fixed a bug that makes XMail unable to work with machine that are
        unable to RDNS its own socket addresses.

    *   Fixed some possible points of buffer overflow attacks.

    [top]

  March 03, 2000

    *   Added 'poplnkenable' controller command.

    *   Added RSS maps check option (relays.mail-abuse.org).

    [top]

  March 01, 2000

    *   Added VRFY SMTP command.

    *   Coded a better Service exit under Windows NT.

    *   Added MAILPROC.TAB that enable custom processing of user messages.

    [top]

  February 29, 2000

    *   Fixed a compilation bug under certain distributions of Linux.

    *   The ability to make a dynamic DNS registration has been added with
        the 'DynDnsSetup' configuration option in SERVER.TAB.

    [top]

  February 28, 2000

    *   'SmartDNSHost' option added to redirect all DNS queries to a list of
        DNS hosts. This option can be used to avoid MSProxyServer-WS2_32.DLL
        bug that not allow to send UDP packets out of the local net.

    *   User mailbox size check has been added.

    [top]

  February 27, 2000

    *   Added UDP DNS query support when searching MX records.

    *   This fixes a bug that makes XMail unable to send its mails if it
        deals with name servers that works only in UDP.

    [top]

  February 25, 2000

    *   Fixed a bug that prevent XMail POP3 server to handle multiple
        domains if there are more nic-names over a single IP address.

    *   Improved controller protocol.

    *   Added RBL maps check option (rbl.maps.vix.com).

    *   Added 'spammers.tab' file that control SMTP client connections.

    [top]

  February 24, 2000

    *   Added controller login check.

    [top]

  February 23, 2000

    *   Fixed a bug caused by a case sensitive compare in domain and users
        names.

    *   Improved controller protocol for remote admin.

    [top]

  February 22, 2000

    *   Fixed a Linux compilation bug and implemented controller protocol
        for remote admin.

    [top]

  February 18, 2000

    *   Log locking and some code rewrite.

    [top]

  February 16, 2000

    *   Added DNSROOTS file to avoid to repeat queries for roots domains.

    *   Fixed a bug that can lead to a infinite loop under DNS queries.

    [top]

  February 15, 2000

    *   Some code rewrite.

    *   Improved DNS search for MX records (bug fix).

    [top]

  February 07, 2000

    *   Some code rewrite.

    *   Now if there are no MX records for destination domain, it'll be
        tried an SMTP connection to that domain directly.

    [top]

  February 05, 2000

    *   Some code rewrite and SMTP RDNS check added.

    [top]

  January 31, 2000

    *   Bug Fixes, some code rewrite and added NT service startup.

    [top]

  January 26, 2000

    *   Bug Fixes.

    [top]

  January 18, 2000

    *   Bug Fixes.

    [top]

  January 13, 2000

    *   Bug Fixes.

    [top]

  October 11, 1999

    *   Initial Revision.

    [top]