* XXX XXX XX XXXX XX:XX:XX +0000 Manvendra Bhangui <indimail-virtualdomains@indimail.org> @version@-@release@%{?dist}
Release @version@-@release@ Start 01/01/2025 End XX/XX/XXXX
- 01/01/2025
01. remove VIRTUAL_PKG_LIB env variable on package removal
02. added libindimail, libmysql control file to control files list in
    controlfiles.i
- 22/01/2025
03. fix gcc14 errors
- 07/06/2025
04. islocalif.c: fixed possible memory leak by calling freeaddrinfo
05. crc.c: added -t option to tag files/directories
06. crcdiff.c: display file name when file has error in data input
07. proxylogin.c: fixed gcc14 warning/error

* Tue Aug 06 2024 13:36:48 +0000 Manvendra Bhangui <indimail-virtualdomains@indimail.org> 3.4.7-1.1%{?dist}
Release 3.4.7-1.1 Start 02/05/2024 End 06/08/2024
- 02/05/2024
01. crc.c: fixed bug with -d option
02. crc.c: fixed bug with printing group permissions
03. crcdiff.c: display L1, L2 changes
04. crcdiff.c: added -s, -c option
- 06/05/2024
05. indisrvr.c: added -l option for running under tcpserver
- 22/05/2024
06. dbload.c: fixed setting of (*ptr)->fd
07. dbinfoSelect.c: fix SIGSEGV when mysql is down
08. mgmtpass.c: fixed handling of command line arguments
09. mgmtpassfuncs.c: added missing new line
10. indisrvr.c: Fixed typos
- 23/05/2024
11. adminclient.c, indisrvr.c: added paranoid check for command mismatch
12. checkPerm.c: added feature to match command line args using
    regex/wildmatch
- 24/05/2024
13. vsetuserquota.c: print current usage in bytes on stdout
14. setuserquota.c: changed return type of setuserquota to 64bit int
- 28/05/2024
15.  ProcessInFifo.c, VlimitInLookup.c, authindi.c, authpgsql.c, iauth.c,
     sql_getpw.c, vadduser.c, vchkpass.c, vlimit.c, vmoduser.c,
     vsetuserquota.c: initialize struct vlimits
16. limits.c: fix data types to fix stack smashing
17. vlimits.h: changed data types to long
18. vlimit.c: added -T option to toggle bit field
19. vlimit.c: fixed data types
20. inquerytest: change data type to long
21. vadduser.c: fix .domain_limits path
22. vmoddomain.c: added -H method to configure hash method for domain
23. authindi.c, authpgsql.c, iauth.c, vchkpass.c, sql_getpw.c, vadduser.c,
	vmoduser.c: handle -1 return code for vget_limits()
24. indimail.h: re-arranged gid bit field masks
25. added print_limits() common function for inquerytest.c, vlimit.c
26. inquery.c, tcplookup.c, ProcessInFifo: Use INFIFODIR #define from inquery.h for infifo
27. inquery.h: define INFIFODIR for infifo
28. limits.c: fetch entry for domain when entry not found for user
29. vadduser.c, vmoduser.c, vsetuserquota.c: removed check for perms_defaultquota
30. vlimit.c: use print_limits() from print_limits.c to print domain limits
    information
31. vlimit.c: handle both domain and user level records
32. VlimitInLookup.c: return domain level record of user level record not found
33. vlimits.h: added limit_type member to vlimits sructure
34. ProcessInFifo.c: use vget_limits when argument is domain instead of email
- 29/05/2024
35. iadddomain.c, vmoddomain.c: fixed perms for .qmail-default,
    .domain_limits, hash_method
- 30/05/2024
36. sql_passwd.c: BUG: fixed wrong condition for sql query
37. ipasswd.c: fixed typo
38. vlimit.c: refactored code
- 31/05/2024
39. indimail.spec, debian/*.dsc: updated libqmail-devel minimum version
    requirement
- 18/07/2024
40. crc.c: removed ignoring of errors
41. crcdiff.c: added -C option to display checksum

* Mon Jan 01 2024 09:24:41 +0000 Manvendra Bhangui <indimail-virtualdomains@indimail.org> 3.4.6-1.1%{?dist}
Release 3.4.6-1.1 Start 09/09/2023 End 01/01/2024
======= Release Highlights ================================================
o bug fixes
o ETRN/ATRN code bug fixes
===========================================================================
- 09/09/2023
01. vfilter_display: removed row separator for raw display
- 11/09/2023
02. get_local_ip.c, islocalif.c, LoadDbInfo.c: incorrect use of localiphost
    instead of hostip
- 17/09/2023
03. qmailmrtg.c: removed leading white space to correct current concurrency
- 22/09/2023
04. ilocal_upgrade: remove MYSQL_OPT_RECONNECT for mysql version > 8.0.34
- 30/09/2023
05. parseAddress.c: fixed verbosity
- 06/10/2023
06. indimail-x/configure.ac: Removed --enable-logging option
- 23/10/2023
07. ismaildup.c: Refactored code
08. added test case for duplicate eliminator
09. deliver_mail.c: rewind descriptor 0 regardless of MAKE_SEEKABLE setting
- 26/11/2023
10. iadddomain.c: fix .qmail-default for etrn, atrn domains
11. vadddomain.c: do post handle when creating etrn, atrn domains
12. vadddomain_handle.in: handle etrn/atrn domain creation
- 03/12/2023
13. add_domain_assign.c, del_control.c, deldomain.c, iadddomain.c: use same
    logic for ETRN, ATRN domains
14. vadddomain.c: exit early for post_handle for ETRN, ATRN domains
15. vadddomain_handle.in: fix for ETRN, ATRN domains
16. vdeldomain.c: use entry for autoturn in users/assign for ETRN, ATRN
    domains
17. remove_line.c: Added function remove_line_p() to remove line on partial
    match
- 13/12/2023
18. add_domain_assign.c: fixed dir, uid, gid for autoturn entry in assign file
19. iadddomain.c: call add_domain_assign for etrn/atrn domains
- 23/12/2023
20. renamed cronlist.i to indimail.cron
- 01/01/2024 - indimail-3.4.6

* Fri Sep 08 2023 12:47:55 +0000 Manvendra Bhangui <indimail-virtualdomains@indimail.org> 3.4.5-1.1%{?dist}
Release 3.4.5-1.1 Start 25/04/2023 End 08/09/2023
- 25/04/2023
01. vadddomain: null terminate argument passed to post_handle
02. indimail.te: updated selinux rules for roundcubemail
03. roundcubemail.te: selinux module for roundcubemail
- 11/05/2023
04. crc.c: define SYS_OPEN on the basis of openat is present or not
- 12/05/2023
05. indimail.spec: updated for copr builds
- 08/06/2023
06. ilocal_upgrade.sh, indimail.spec: adjust to use nssd.sock, inlookup fifo
    in /run/indimail
07. inquery.c, inquerytest.c, ProessInFifo.c, tcplookup.c: renamed fifo
    directory from FIFODIR to INFIFODIR
08. indimail.spec.in, debian/*: added timestamps to installation logs
- 16/07/2023
09. iadduser.c, ipasswd.c, proxylogin.c, vmoduser.c, vsetpass.c: check
    mkpasswd for error
10. userinfo.c: display more encryption methods
11. incrypt.c, vadddomain.c, vadduser.c, vgroup.c, vmoduser.c, vpasswd.c:
    added YESCRYPT hash
- 17/07/2023
12. get_hashmethod.h, get_hashmethod.c
13. iadduser.c, ipasswd.c, vmoduser.c, vadddomain.c: set hash method from hash_method
    control file in controldir, domaindir
14. incrypt.c, mgmtpassfuncs.c, vsetpass.c: set hash method from hash_method
    control file in controldir
15. vmodinfo.c: display hash method set for a domain
- 26/07/2023
16. ilocal_upgrade.in: fixed typo nssd.conf --> nssd.pid
- 30/07/2023
17. relay, lastauth, ip_alias_table, host_table updated ip address field
    lengths [Feature Request #48](https://sourceforge.net/p/indimail/feature-requests/48/)
- 31/07/2023
18. vaddaliasdomain, vadddomain, vdeldomain, vdeluser, vmoduser, vpasswd,
    vrenamedomain, vrenameuser : cd to root before doing svc -h in post_handle
- 04/08/2023
19. deliver_mail.c: skip white space after | and command for DTLINE to be
    preserved
20. roundcubemail.te: added missing defintion for class sock_file
- 06/08/2023
21. vfilter.c: fixed setting emailid from arguments
22. parseAddress.c: BUGFIX - Fixed logic to parse addresses
- 07/08/2023
23. vadddomain_handle.in, vmoduser_handle.in: updated argument list for getopt
- 08/08/2023
24. adminclient.c, adminCmmd.c: use strerr_tls for reporting tls error
25. authindi.c: display pid in logs
- 22/08/2023
26. adminclient.c, indisrvr.c: Use TLS_CIPHER_LIST for TLSv1.2 and below,
    TLS_CIPHER_SUITE for TLSv1.3 and above
- 31/08/2023
27. eps-1.2/eps_address.c: BUG: Fix assignment of user component, when address
    doesn't have domain
28. parseAddress.c: handle address without domain component
29. storeHeader.c: return error if parseAddress is unsuccessful
30. vfilter.c: run vdelivermail if storeHeader is unsuccessful
- 05/09/2023
31. vcfilter.c: allow both textual and numberical values for -c and -h option
32. vfilter_header.c: added function headerNumber() to convert textual filter
    name to filter number
33. vadddomain_handle.in: replace header, comparision numbers with textual
    names
34. vfilter.c, spam.c: replace fnmatch with matchregex from libqmail
35. configure.ac: Removed check for fnmatch
36. vfilter.c, vcfilter.c, variables.c, vfilter_insert.c: removed "Sender not
    in addressbook"
- 06/09/2023
37. vdelivermail.c: prepend dot '.' to delivery folder if folder doesn't start
    with dot
38. vfilter_filterNo.c: start with filter no 1 for filter not matching 'My ID
    not in To, Cc, Bcc'
39. vfilter_insert.c: handle negative header_num, empty keyword for 'My ID not
    in To, Cc, Bcc'
- 07/09/2023
40. vdelivermail: Bounce mail if env variable BOUNCE_MAIL is set
41. vfilter.c: set BOUNCE_MAIL env variable to bounce mail using vdelivermail

* Sun Apr 23 2023 19:21:03 +0000 Manvendra Bhangui <indimail-virtualdomains@indimail.org> 3.4.4-1.1%{?dist}
Release 3.4.4-1.1 Start 26/03/2023 End 23/04/2023
- 26/03/2023
01. deliver_mail.c, ismaildup.c, postdel.c, vbulletin.c, vfilter.c: fixed code
    using wait_handler
02. valias.c: exit with return value valias function
03. valias_insert.c, valias_update: return 0 if rows updated
- 01/04/2023
04. RemoteBulkMail.c, dbload.c, findhost.c, iopen.c: display mysql error for
    mysql_options()
05. load_mysql.c: refactored getlibObject function
- 02/04/2023 - indimail-3.4.3 hotfix
- 02/04/2023
06. usr.sbin.mysqld: added /run/mysqld, /var/run/mysqld for apparmor
- 07/04/2023
07. qmailmrtg.c: refactored to use libqmail
08. renamed qmailmrtg7 to qmailmrtg
09. qmailmrtg.c: converted queue messages to messages/hour
- 08/04/2023
10. ProcessInFifo.c: modified for qmailmrtg inlookup stats
11. qmailmrtg.c: refactored code to print service uptime and status
12. indimail.mrtg.cfg: updated to include service uptime in graphs
13. ilocal_ugprade.in: refresh mrtg service during upgrade if using old
    qmailmrtg
- 09/04/2023
14. ProcessInFifo.c: skip logging of binary search walk on SIGUSR1 (log only
    when debug is set)
15. qmailmrtg.c: added case for generating status for inlookup Cache Hits
16. journal2mrtg: convert journalctl logs to qmailmrtg format
17. qmailmrtg.c: read from stdin if logdir is -
18. indimailmrtg.cfg.in: rearranged graphs
- 10/04/2023 - indimail-3.4.3 hotfix
- 19/04/2023
19. mysql_stack.c: include stdlib.h to fix compiler warning
- 22/04/2023
20. Login_Tasks.c: record IPv6 address if present in lastauth
21. open_smtp_relay.c: record IPv6 address if present in relay
22. inquery.c: write error messages for all errors

* Sat Mar 25 2023 08:40:00 +0000 Manvendra Bhangui <indimail-virtualdomains@indimail.org> 3.4.3-1.1%{?dist}
Release 3.4.3-1.1 Start 13/02/2023 End 25/03/2023
======= Release Highlights ================================================
o Test script testindimail-virtual tests essential indimail commands
===========================================================================
- 13/02/2023
01. indimail.spec: added qcerts supplementary group for apache for roundcube
    access to certs
02. auth_admin.c, indisrvr.c: free ctx if tls_session fails
03. inquery.c: use FIFOTMPDIR instead of TMPDIR for inquery fifo
- 20/03/2023
04. add_vacation.c, autoturn_dir.c, bulletin.c, check_quota.c,
    count_rcpthosts.c, deldomain.c, deliver_mail.c, findhost.c,
    get_local_hostid.c, get_local_ip.c, get_real_domain.c, GetSMTProute.c,
    host_in_locals.c, iadduser.c, indisrvr.c, iopen.c, is_alias_domain.c,
    is_already_running.c, ischema.c, islocalif.c, ismaildup.c,
    isvirtualdomain.c, LoadBMF.c, LoadDbInfo.c, maildir_to_domain.c,
    maildir_to_email.c, open_master.c, print_control.c, printdir.c,
    ProcessInFifo.c, proxyimap.c, proxypop3.c, remove_line.c, resetquota.c,
    skip_relay.c, spam.c, sql_renamedomain.c, tcplookup.c, update_file.c,
    update_rules.c, userinfo.c, user_over_quota.c, vacation.c, vadduser,
    valiasinfo.c, vbulletin.c, vcalias.c, vdel_dir_control.c, vdelivermail.c,
    vdominfo.c, vfilter_header.c, vtable.c
    standardize getln handling
05. backfill.c: documented backfill function
06. cronlist.in: added cron entry to rotate mysql logs in
    indimaildir/mysqldb/logs
07. dbload.c: fixed typo
08. getFreeFS.c, vadduser: use SYSONFDIR env variable if set for lastfstab
09. ischema.c.c: use SYSONFDIR env variable if set for indimail.schema
10. indimail.h: removed mailing_list table
11. indimail.spec.in: added logrotate.mysql
12. inlookup.c, mgmtpass.c: fixed command line argument handling
13. Makefile.am: fixed vadddomain man page target
14. vaddaliasdomain_handle.in, vadddomain_handle, vdeldomain_handle,
    vmoduser_handle, vpasswd_handle, vrenamedomain_handle,
    vrenameuser_handle.in
    use SERVICEDIR, CONTROLDIR env variable if set for service and control directory
15. vadddomain: call post handle script with the same arguments passed to
    vadddomain
16. vadddomain_handle: handle all arguments passed to vaddomain
- 22/03/2023
17. add_domain_assign.c: BUG - set uid, gid variables before creating assign
    file
18. vaddaliasdomain.c, vadddomain.c, vdeldomain.c, vmoduser.c, vmoveuser.c,
    vrenamedomain.c, vrenameuser.c
    run POST_HANDLE program (if set) with domain user uid/gid
19. check_group.c: memory leak: free allocated variable list before returning
20. vmoddomain.c, vdeluser.c: updated error strings
- 23/03/2023
21. deldomain.c: multiple bug fixes
22. deluser.c: skip vdelfiles when directory doesn't exist
23. limits.c: removed spurious warning message when limits doesn't exist
24. sql_renamedomain.c: refactored code
25. sql_setpw.c: bug fix - record not getting updated
26. vmoduser.c: removed incorrect call to vdeldomain
27. vmoveuser.c: bug fix - remove domain component from User  
28. vrenamedomain.c: multiple bug fixes
29. vrenameuser.c: set BASE PATH of original domain for the new user
30. renameuser.c: ignore duplicate error when updating lastauth table
31. LoadBMF.c: fix wrong counts when badmailfrom has comments
- 24/03/2023
31. vbulletin.c: when processing all domains, do fork to lower privileges for
    child.
32. vmoveuser.c, indimail.spec, variables.c, perm_list.in,
    indimail-permissions.*: vmoveuser command renamed to vmoveuserdir
- 25/03/2023
33. del_control.c, get_real_domain.c: refactored code
34. is_alias_domain: fixed soft link resolved name
35. add testindimail-virtual test script

* Tue Jan 31 2023 03:32:40 +0000 Manvendra Bhangui <indimail-virtualdomains@indimail.org> 3.4.2-1.1%{?dist}
Release 3.4.2-1.1 Start 08/09/2022 End 31/01/2023
- 08/09/2022
01. authindi.c: hotfix: fix domain absent in assign causing AUTHFAILURE for
    system users 
- 12/09/2022
02. Fixed vpasswd usage
03. iauth.c, vmoduser.c, renameuser.c, sql_setpw.c, vsetpas.c: extract
    encrypted password from pw->pw_passwd starting with {SCRAM-SHA.*}
04. sql_setpw.c: fixed password struct getting overwritten with call to
    sql_getpw()
- 08/10/2022
05. vfilter_display.c: Fixed SIGSEGV
- 18/10/2022
06. postdel.c: added wrapper for postfix delivery to indimail virtualdomains.
- 20/10/2022
07. Converted function prototypes to ansic
- 22/10/2022
08. handlers.c: fixed out of bounds copy
09. get_localtime.c: use date822fmt() for local time
10. deliver_mail.c: Changed Received header to be consistent with qmail style
- 27/10/2022
11. valias_delete_domain.c: delete entries for alias instead of real domain
12. iadduser.c: add to hostcntrl only for distributed domains
13. is_user_present.c: make variables static to avoid clash
14. sql_deldomain.c, sql_deluser.c, sql_getpw.c, sql_passwd.c, sql_setpw.c,
    sql_setquota.c, sql_updateflag.c: refactored sql code into do_sql()
- 29/10/2022
15. vchkpass.c: fixed display of auth method in logs
- 02/11/2022
16. vadddomain.c, vadduser.c, vgroup.c: added feature to add scram password
    during user addition
17. vmoduser.c, vpasswd.c: set usage string depeding on gsasl availability
18. renameuser.c: restore scram password while renaming user
- 05/11/2022
19. vchkpass.c:  use ENABLE_CRAM to allow use of pw_passwd field of indimail,
    indibak for plain text cram auth
- 22/11/2022
20. configure.ac: fixed typo
- 23/11/2022
21. load_mysql.c: renamed mysql_lib to libmysql
- 07/12/2022
22. vadduser.c: fixed incorrect order of arguments in get_options
23. indimail.spec: skip lsb-core on obs builds
- 18/12/2022
23. deliver_mail.c, ismaildup.c, postdel.c, qmail_remote.c, vfilter.c:
    recoded wait logic
24. indisrvr.c, initsvc.c: log additional wait status
25. inlookup.c, runcmmd.c: handle SIGCONT
- 25/12/2022
26. proxylogin.c: authenticate using SCRAM salted password
27. proxyimap, proxypop3: allow any TLS/SSL helper program other than
    sslerator, couriertls
- 03/01/2023
28. adminCmmd.c, auth_admin.c: renamed ADMIN_TIMEOUT to TIMEOUTDATA
29. adminCmmd.c, auth_admin.c: replaced safewrite, saferead with tlswrite,
    tlsread from tls library in libqmail
30. adminclient.c:  added -r option to specify certification revocation list
31. auth_admin.c: replaced tls code with TLS library from libqmail
32. auth_admin.c: added env variable TIMEOUTCONN for connection timeout
33. auth_admin.h: added crlfile argument to auth_admin()
34. get_local_ip.c: replaced hints.ai_socktype from SOCK_DGRAM to SOCK_STREAM
35. indisrvr.c: replaced tls code with TLS library from libqmail
36. indisrvr.c: added -T option to specify connection timeout
37. indisrvr.c: added -r option to specify crl file
38. indisrvr.c: added -d option to specify certificate dir
39. proxyimap.c: added 'proxyimap' identifier in connection log message
40. proxypop3.c: added 'proxypop3' identifier in connection log message
41. proxylogin.c: added crlfile argument for auth_admin()
- 08/01/2023
42. indisrvr.c: fixed potential double free if tls_accept fails
43. postinstall: fixed refresh of services
- 03/01/2023
44. mpack-x/encode.c: Fixed usage of variable after free
- 18/01/2023
45. LoadBMF.c hostcntrl.c ischema.c spam.c vatrn.c vcalias.c vcfilter.c
    vdeloldusers.c vdominfo.c vfilter.c vfilter_display.c vfstab.c vhostid.c
    vpriv.c vsmtp.c: replaced qprintf with subprintf
- 21/01/2023
46. configure.ac, Makefile.am: added provision to have system specific
    Makefile rules

* Thu 08 Sep 2022 14:38:16 +0000 Manvendra Bhangui <indimail@indimail.org> 3.4.1-1.1%{?dist}
Release @version@-@release@ Start 14/02/2021 End 08/09/2022
======= Release Highlights ================================================
o added support for SCRAM authentication in password field (vpasswd, vmoduser)
o added support for CRAM authentication in password field (vpasswd, vmoduser)
o Converted man pages to markdown for indimail wiki
===========================================================================
- 12/02/2021
01. moved replacestr to libqmail
- 31/01/2022
02. setuserquota.c: fixed setting of quota=NOQUOTA
03. vmoduser.c: Fixed args passed to post handle
04. vmoduser.c: removed leftover debug statement
- 23/02/2022
05. deliver_mail.c: fix message failing with overquota error for users having
    unlimited quota
- 10/05/2022
06. moved tcpopen, tcpbind, udpopen, isnum, qdirname to libqmail
- 18/05/2022
07. tls.c: openssl 3.0.0 port
- 04/07/2022
08. ProcessInFifo.c: Fixed typo
- 16/07/2022
09. indimail-rpmlintrc, indimail-spec: fixes for openSUSE tumbleweed
- 31/07/2022
10. inquery.c: use TMPDIR for /tmp
11. indimail.spec: fixed service dir name for inlookup, indisrvr
- 04/08/2022
12. inquery.c: refactored code
13. authindi.c, vchkpass.c: authenticate using SCRAM salted password
14. ProcessInFifo.c, sql_getpw.c: fetch scram password
15. userinfo.c: display scram password if existing
16. indimail.h: added scram column to indimail/indibak tables
- 05/08/2022
17. iadduser.c: added encrypt_flag argument
18. dbinfo.c: replaced fprintf with strerr_warn1
19. configure.ac: added check for gsasl.h, libgsasl
20. ilocal_upgrade.sh: run schema update
21. added ischema program for schema updates to indimail database
22. indimail.spec: added ischema - schema update program for indimail database
23. ipasswd.[c,h]: added scram argument to update scram password
24. mgmtpass.c, mgmtpassfuncs.c: added encrypt_flag argument to mgmtsetpass()
25. proxylogin.c: added encrypt_flag argument to autoAddUser()
26. renameuser.c, vadduser.c: added encrypt_flag argument to iadduser()
27. sql_passwd.[c,h]: added scram argument to update scram password
28. vmoduser.c: reversed encrypt_flag setting for mkpasswd() change in
    encrypt_flag
29. vpasswd.c: added option to update scram passwords
30. variables.c: added ischema table, removed encrypt_flag global variable
31. indimail.h: added ischema table
32. gsasl_mkpasswd.c: added gsasl_mkpasswd() for updating scram passwords
33. iadduser.[c,h]: removed apop argument to iadduser()
34. sql_adduser: renamed apop argument to uid_flag
35. vadduser, vadddomain: removed apop argument to iadduser()
36. vgroup: added encrypt_flag argument to iadduser
37. renameuser.c: removed apop argument to iadduser()
- 06/08/2022
38. gsasl_mkpasswd.c: use gsasl_nonce() if sodium_random() function is missing
39. vpasswd.c: fix compilation when libgsasl is missing or of wrong version
40. configure.ac: Added check for sodium_random() function
- 07/08/2022
41. sql_setpw.[c,h]: added scram argument to set scram password
42. vadddomain.c, vadduser.c: Removed apop setting
43. vmoduser.c: added option to update scram passwords
44. vmoduser_handle.in: updated options to vmoduser
45. vmovuser.c, vreorg.c, vset_lastdeliver.c: updated for scram argument to
    sql_getpw()
46. gsasl_mkpasswd.[c.h]: added gsasl_mkpasswd_err() function
47. vpasswd.c, vmoduser.c: check return value of gsasl_mkpasswd() function
- 23/08/2022
48. vchkpass.c: display AUTH method as a string instead of a number
49. vpasswd.c, vmoduser.c: made setting hash method and scram method
    independent of each other
- 25/08/2022
50. gsasl_mkasswd.c, vpasswd.c, vmoduser.c: Make password compatible with
    CRAM & SCRAM
    1. store hex-encoded salted password for setting
       GSASL_SCRAM_SALTED_PASSWORD property in libgsasl.
    2. store clear text password for CRAM authentication
       methods
51. authindi.c, vchkpass.c: fetch clear text passwords for CRAM
    authentication
52. strToPw.c handle additional hex salted passwod and clear text password in
    pw_passwd field
53. strToPw.c: use colon_count to fix logic for cram/non-cram passwords
- 26/08/2022
54. incrypt.c: validate user input and use in_crypt from libqmail
- 27/08/2022
55. authindi.c, vchkpass.c: fixed logic for fetching clear txt password for
    cram methods
56. gsasl_mkpasswd.c: fixed null terminatin when docram was 0
- 28/08/2022
57. incrypt.c: added option to specify salt and hash method
58. mgmtpassfuncs.c: allow configureable salt size using env variable SALTSIZE
59. sql_passwd.c: set scram field to NULL when not given
60. userinfo.c: fixed display string for DES/un-encrypted password
61. vmoduser.c, vpasswd.c: fix compilation error for non gsasl build
- 08/09/2022 - Final release indimail-3.4.1
62. authindi.c: hotfix: fix domain absent in assign causing AUTHFAILURE for
    system users 

*
Release 3.4.0 Start 14/02/2021
======= Release Highlights ================================================
===========================================================================
- 23/02/2021
01. sql_adddomain.c,, sql_setpw.c : replaced CREATE TABLE statements with
    create_table() function
02. post install: save variables
- 03/03/2021
03. indisrvr.c, tls.c - renamed SSL_CIPHER to TLS_CIPHER_LIST
04. tls.c, tls.h, auth_admin.c - updated datatypes
05. tls.c, tls.h - added cafile argument to tls_init()
06. auth_admin.c - tls_init() changed for cafile argument
- 04/03/2021
07. auth_admin.c, tls.c - added option to match host with common name
08. adminclient.c - added -m option to match host with common name
09. adminclient.c - added -C option to specify cafile
10. proxylogin.c - added option to specify CAFILE and match host with common
    name
- 09/03/2021
11. tls.c, tls.h - refactored tls code
12. auth_admin.c, indisrvr.c: use functions from tls.c
- 10/03/2021
13. tls.c: use set_essential_fd() to avoid deadlock
- 10/03/2021
14. vpriv_insert.c: fixed SQL syntax error
- 14/03/2021
15. Changes for making code github action, added workflow for CI
16. indimail.h - allow inclusion without having mysql installed
- 30/04/2021
17. spec, postinst: fixed syntax error getting HOSTNAME
- 03/05/2021
18. RemoteBulkMail.c: added missing guarding braces
19. vdeloldusers.c: fix compiler warnings
20. tcplookup.c: initialize rfd, wfd
- 26/05/2021
21. tcpopen.c: treat access on socket other than ENOENT as error
- 09/06/2021
22. inquerytest.c: BUG - Fixed SIGSEGV
23. ProcessInFifo.c: BUG: Fixed read failing on fifo because of O_NDELAY flag
24. inquerytest: use fifo read to ensure inlookup service is ready to serve
    requests.
- 11/06/2021
25. indisrvr.c, ismaildup.c, runcmmd.c, vfilter: replaced MakeArgs with
    makeargs from libqmail
26. deliver_mail.c, ismaildup.c, vdelivermail.c, vfilter.c: replaced
    makeseekable with mktempfile from libqmail
- 08/07/2021
27. printdir.c vadduser.c vbulletin.c vcfilter.c vdeluser.c vdominfo.c
    vmoduser.c vmoveuser.c vrenameuser.c vreorg.c add check for
    misconfigured assign file
28. add_domain_assign.c valiasinfo.c: removed QMAILDIR setting through env
    variable
29. initsvc.c: removed LIBEXECDIR setting through env variable
30. controlfiles.i: added mcdinfo, mailalert.cfg
31. vacation.c: fixed argument handling
32. add_vacation.c: added missing error handling
33. removed sq_vacation
- 13/07/2021
34. indimail.spec: removed chkconfig from Requires
- 18/07/2021 - indimail-3.4.0
- 21/07/2021
35. adminCmmd.c, monkey.c: conditional compilation (alpine linux)
36. tcpopen.c: deprecated rresvport
37. configure.ac: check for asm/ioctl.h, rresvport function
38. authpgsql.c default.configure doc/ChangeLog incrypt.c
    passwd_policy.c proxylogin.c userinfo.c vchkpass.c
    vlimit.c vsetpass.c: conditionally define _XOPEN_SOURCE
39. default.configure: use /usr/local/etc/indimail/sv as
    servicedir for darwin/freebsd
- 27/07/2021
40. deliver_mail.c findhost.c LoadDbInfo.c Login_Tasks.c parse_email.c
    smtp_port.c vdelivermail.c vfilter.c set default domain using
    vset_default_domain
41. ProcessInFifo.c: use getEnvConfigStr to set default domain
42. vset_default_domain.c: changed vset_default_domain to return
    default domain
- 31/07/2021
43. PKGBUILD.in: Added missing variable definitions
- 01/08/2021
44. PKGBUILD.in: added missing variable _sysconfdir
45. indimail-mta.spec, indimail-postinst: install mrtg service only if mrtg
    binary is present
46. spec, PKGBUILD, debian pre/post: skip service if dir doesn't exist
- 02/08/2021
47. PKGBUILD: Fix permissions for directories
- 04/08/2021
48. indimail.spec, Makefile.am: removed r_mkdir, evalulate function
- 16/08/2021
49. indimail.spec: fixed noproxy variable
- 18/08/2021
50. vget_ip_map.c: create ip_alias_map table if absent
- 20/08/2021
51. indimail.spec, PKGBUILD, debian post scripts: removed host compoment from
    default domain
- 21/08/2021
52. moved no_of_days.[c,h] to libqmail
- 24/08/2021
53. vadddomain: added check for domain name validity
- 30/08/2021
54. clearopensmtp.c, handlers.c, inquerytest.c, osh.h: mark functions not
    returning as __attribute__ ((noreturn))
- 01/09/2021
55. indimail.spec: removed use of chrpath
- 05/09/2021
56. changed permissions for dirs with 555 to 755
- 11/09/2021
57. add_user_assign.c, is_alias_domain.c, make_user_dir.c,
    sql_adduser.c: use getEnvConfig for domain directory
58. is_alias_domain: on system error, return -1 instead of exit
59. get_real_domain.c: corrected wrong variable used for domain director
60. inlookup.c: fixed wrong assignment of strnum2 for pid
61. sql_insertaliasdomain.c: fixed missing round brace in sql statement
62. FifoCreate.c: set permission mode of inquery fifo from FIFO_MODE env variable
- 12/09/2021 - indimail-3.4.0

* Sunday 14 February 2021 11:34:04 PM IST
Release 3.3 Start 06/09/2020
- 13/09/2020
01. create_rpm: added --release option
02. indimail.spec: added explicit dependency of indimail-devel on libindimail version
03. renamed ChangeLog.indimail to ChangeLog
04. Shortened README-indimail after moving document to online wiki
- 14/09/2020
05. Removed Provides: indimail-libs, libindimail from indimail package. Now
    available only in libindimail package
- 17/09/2020
07. FreeBSD fixes fo vfstabNew.c, vadddomain.c, ProcessInFifo.c,
    pathToFilesystem.c, get_localtime.c, Makefile.am, configure.ac,
    default.configure
- 19/09/2020
09. initsvc: enable and start services for FreeBSD
- 28/09/2020
10. vsetpass.c, vchkpass.c, authpgsql.c, authindi.c print authmodule name in
    error logs/debug statements
11. pipe_exec.c: display authmodule being executed in debug statements
12. vsetpass.c, vchkpass.c, authpgsql.c, authindi.c, pipe_exec.c added pid
    error logs/debug statements
- 29/09/2020
13. authindi: execute next module when already authenticated by previous
    module
- 01/10/2020
14. authindi.c, check_quota.c, indisrvr.c, ismaildup.c, lockfile.c, monkey.c,
    osh.c, proxylogin.c, sslerator.c fixed compiler warnings
15. bulletin.c: initialize len variable
16. crc.c, configure.ac, inlookup.c, ProcessInFifo.c - Darwin Port
17. spam.c: initialize pos variable
18. vdeloldusers.c: initialize activecount variable
- 04/10/2020
19. add_user_assign.c: BUG: wrong variable passed to do_assign2()
20. authindi.c: use AUTHADDR to determine if we are already authenticated
21. initsvc.c: changed Label for launchd unit file to org.indimail.svscan
22. Makefile.am: bypass linux specific code on Darwin
- 05/10/2020
23. uninstall iauth.so, docs and post handle scripts
24. Makefile.am: Set LDPATH for libqmail path (Darwin)
25. initsvc: Fix for FreeBSD
- 11/10/2020
26. fix for empty DISTRIB_ID on openSUSE, Suse causes indimail.[te][fc] to be
    missed out in the build.
27. ProcessInFifo.c: replace deprecated sys_siglist with strsignal
28. configure.ac: added check for strsignal function
- 12/10/2020
29. recalc_quota.c: maildirquota problem: strnum2 variable wasn't getting set
30. configure.ac: set LDFLAGS -pie on Linux (primarily for openSUSE builds)
31. indimail.spec: fixed DISTRIB_ID and DISTRIB_VERSION for openSUSE, SLES
    builds
32. no_of_days.c: fixed no of days variabel getting clobbered due to use of
    stralloc_copyb() instead of stralloc_catb()
- 13/10/2020
33. authindi.c: use _exit(2) as no buffers need to be flushed
34. get_assign.c, islocalif.c: added missing alloc_free
35. userinfo.c, vlimit.c: initialize struct tm for strptime() value too big
    error
36. added debuginfo package
37. vget_lastauth.c: null terminate ipaddr
38: GetSMTProute.c, vreorg.c: fixed infinite loop
39. skip_relay.c: new logic for terminating a line
- 16/10/2020
40. postinstallation: update smtp authmodule with vchkpass                      
41. postinstallation: update imap/pop3, proxy imap/pop3 authmodule with authindi
- 18/10/2020
42. indimail.h: added last_error_len field to dbinfo to keep track of allocated_length
    of last_error field
43. count_dir.c, dbload.c. get_assigh.c, inquery.c, islocalif.c, vdelfiles.c
    use alloc() instead of alloc_re()
44. LoadDbInfo.c: initialize last_error_len field of dbinfo
45. load_mysql.c: renamed closeLibrary() to incloseLibrary()
44. sql_getall.c: use allo_re() only for expansion
45. sq_vacation.c: drop supplementary privilges before setuid()
- 19/10/2020
46. vbulletin.c, SendWelcomeMail.c, RemoteBulkMail.c, iadddomain.c,
    bulletin.c, bulk_mail.c use /var/indomain/domains for domain/bulk_mail
47. indimail.spec: fixed rplint error with unstripped binary or object
- 20/10/2020
48. vdelivermail.c: skip creation of maildirfolder file for user's Maildir (INBOX)
- 14/11/2020
49. indimail.spec: turn off lto
50. indimail.spec: turn on openSUSE permissions
- 17/11/2020
51. removed sslerator
52. indimail.spec: stop/start svscan on upgrade
- 21/11/2020
53. packaging: shutdown specific indimaail services instead of entire svscan
    service
54. handlers.c: use execv() instead of execute() in i_mount() function
- 11/01/2021
55. indimail.spec: use redhat-lsb-core for centos8
- 19/01/2021
56. authindi.c: added uid, gid in debug log
- 26/01/2021
57. sql_init.c, UserInLookup.c, sqlOpen_user.c, findmdahost.c, bulletin.c,
    clear_open_smtp.c: renamed sql_init() to in_sql_init() to avoid clash with
    dovecot sql authentication driver
58. vchkpass: support dovecot checkpassword implementation
59. vchkpass: set HOME, userdb_uid, userdb_gid, EXTRA env variables for
    dovecot
60. pam-checkpwd.c: env variable NATIVE_CHECKPASSWORD to comply exactly with
    checkpassword protocol
- 02/02/2021
61. fstabChangeCounter.c: fix SIGSEGV, wrong variable used
62. sql_active.c: use create_table() to create MySQL table
63. tcpbind.c: fix bind on unix domain sockets
- 07/02/2021
64. New program tcplookup - TCP/IP frontend to inlookup
65. inquery.c, inlookup.c, ProcessInFifo.c - handle TCP/IP request under
    tcpclient/tcpserver
- 24/02/2021
66. tcplookup.c: include <stdlib.h> for srand()
