Buglist of Merce source code
-
This document describes the bugs which were noted in the source code
- Bugs in Merce source code
- Fix the formatting of vacation message reply. Replace the
string<TEXTAREA Name=msg ROWS=3 COLS=30 ALIGN=left> __MSG__ </TEXTAREA>
by ?
- Modify /opt/merce/lib/template/remindme/remGinder_help.tmpl
replace all: @@NET_DOMAIN@@ with the organization domain name of the Merce
server. - Fix the bug of user edit - it shows "unable to update aliastable"
if a user has an alias of type 'U' and one or more aliases of type 'A'.
This error is because of incomplete where clause in update query.
This bug can be fixed by inserting following line at line no: 292 of
/opt/merce/bin/usr/useradm_dat.plpush(@$where, " aliastype = 'U' ");
NOTE: please verify the above line should be just after the following
block of code.$form{'aliastype'} = 'U'; if (! $flag) { undef $where; push(@$where, "emailaliasto = " . Relation::User::quote($dbh, 'intranet_id', $form{'intranet_id'})); push(@$where, " aliastype = 'U' ");
- Mfilter should do case insensitive checking of sender and
recipient. - When user is edited and email-id filed on user edit screen is
modified it does not reflect in preference file of user for
squirrelmail. - Add Netdomain variable in /etc/merce/Siteconfig.sh
- Check squirrelmail, ldap aliases scripts for patching with
Netdomain and Netorgdomain - Remove the functions isadmin_local, isadmin, is_otheradmin,
is_anyadmin and have one function which checks for administrative
privileges. Call it is_admin. - Fix the formating of vacation message reply
- Change the message on the welcome page of admin
- Change the message in title bar of Mtracks admin page
- mail_user function of /opt/merce/common/lib/perl/Utils.pm
should return 1 for unsuccessfull execution. Currently it prints to
STDERR. - licencechk, servicechk, sysinfo, syschk(compiled shell
scripts) become zombie randomly. For now we have compiled these shell
scripts with -T option for 'shc' utility. - Sometimes user edit gives error 'Unable to update rows into
table - aliastable' on browser. Because in useradm_dat.pl, it does not
check ' aliastype = "U" ' in 'where' caluse while updating aliastable - # Installer ask question of domain name during installation. It
does not take domain name starting with numeric values like 2coms.com.
So the reqular expression should be modified in questions.list - Integrate new cleantmp script with Merce
- Create the user junkmail on master during installation time.
- Alias file(/etc/aliases) becomes corrupted due to some
unknown reason. The RHS entries in the alias files are removed. - To add $Netdomain variable in /etc/merce/Siteconfig.sh
and to check squirrelmail, ldap, aliases scripts for patching
with NetDOMAIN and Netorgdomain - When "adding" user, mtracks correctly displays "Date of
Joining" year from 1937-2007(Current) but while "editing" the user
info, the year in "Date of joining" starts from 2007. - Funny choice of words and incorrect English in the questions
asked by the installer. Cosmetic changes - text needs to be fixed in the
installer config file. - During user deletion a users mailbox is deleted without
taking any backup of his home directory or mailbox. Shuvam's script
which takes a backup of the user's mail and home dir area should be
integrated with the user deletion script. This backup should be deleted
once in 6 months or 1 year by cleantmp script. - The script which takes backup of user's mail and home is - apps1:/usr/local/sbin/userarchive. It needs to be integrated with merce. The script may not work for all flavours of Linux. This script, in its current config, assumes that there is one level of subdirs in the IMAP
spool area. If Cyrus is configured to keep /var/spool/imap/s/saurabh
then this script will not work. - The file /opt/merce/lib/Filesendrecvconfig has incorrect entry for
httpdupload on slaves. It is incorrectly spelled as q.*.httpupload*
instead of q.*.httpdupload* - xbackup script should take a configuration file as a parameter on the command line.
- xbackup script should prepend the timestamp in output file and append the status "done" upon completion.
- If there is an alias pointing to only one email address and that email address is removed (removed not deleted) from the alias list, the alias should get deleted but it stays and in the alias file the entry: "testalias: saurabh@starcomsoftware.com" changes to "testalias:"
- When we run licencechk it gives error of 'Illegal
division by zero' error. The licecnecchk uses
/opt/merce/sbin/sysinfo internally.The reason of this error is:
sysinfo uses output of `free -m' and greps the corresponding values
of 'Mem:' and 'Swap:'.
The percentage of Swap used is calculated in sysinfo.When Swap area is not created, it not appears in `free -m' output.
and it shows the 'Illegal division by zero error while calculating
percentage' of Swap used. - Snippet from a mail of Deepak - cause not known. He will replicate and give more info.
There was one thing I noticed while deleting aliases using UI, If I select two aliases for eg.
prachitee.naik: prachiti
prachitee: prachitiI got an error saying the task could not be completed. And when I search again using UI for those aliases both aliases were deleted. But when I checked in /etc/aliases file one of the aliases did not got deleted in the above example prachitee: prachiti
-
To check the variable names in Netconfig.sh and other scripts in
/opt/merce/bin/ which uses NetMailgateways, Netsmtpservers etc
interchangeably .
Each scripts must be using proper name. -
Default preference file is not created for mailbac user at
installation. -
/opt/merce/bin/usr/clientadm_edit.pl does not patch country.
country code IN is hardcoded. put $::Netldapconuntry -
modify /opt/merce/bin/cron/usrusage_report to replace following lines
replace
homedir_info=`df $HOMEDIR | grep -vE
wih
homedir_info=`df -P $HOMEDIR | grep -vEreplace
imapdir_info=`df $IMAPDIR | grep -vE
with
imapdir_info=`df -P $IMAPDIR | grep -vE -
Check all the script which are vulnerable to SQL injection.
For example: alias editing UI has a bug. Giving '%' in search
give all the aliases in database. In this UI the query should have
been prepared and then executed.Check all the script to ensure that all queries are prepared and
executed so that special charecters are escaped by SQL. - "mtracks" is not patched in the zone file of Netdomain and Netorgdomain but it is present in /etc/mail/local-host-names
- The alias entry in alias file become wrong when the user edit his
details from 'user' -> 'user database' -> 'employee' link on
Mtracks/Merce UI and when the user has his intranet ID in
other aliases.For example the user 'abhay' is in 'netsupport' alias. This will
have entry in database as aliastype = 'A'. It should delete the
entries of aliastype U only. But this check was not done in code
of /opt/merce/bin/usr/usergen_dat.pl. So many times it deletes
modifies the aliases of alias type A in alias table.To fix this bug
search the following lines in /opt/merce/bin/usr/usergen_dat.pl$fields = ['emailalias'];
push(@$where, 'emailaliasto = ' .
Relation::Aliastable::quote($dbh, 'emailaliasto',
$form{'intranet_id'}));Add follwoing line after these lines
push(@$where, " aliastype = 'U' "); - aclctl should use /etc/applyacl.cf to do chown, chmod of shared area.
- aclctl should do setgid to group having no members to the shared areas.
- Mfilter changes '<>' from address to 'MAILER-DAEMON@domainname'
It should change the '<>' to 'MERCE-ADMIN@domainname' or
'UUCP-ADMIN@domainname'.Mfilter should never user 'MAILER-DAEMON@domainname'
-
Some times event_handler in merce runs continuously and
increases the load average of merce server. This happens
when there exists a file which is not being used by any
program and which event handler will not process.for example: there is a qfile in /opt/merce/update/pending dir
with name q.1190614216.useradd.30943.addsmbuser_mas.
event_handler will not process it and keep looking for next
file without sleep. - Add script to clean up the reported_event table every 15days
- When a website is blocked at master location, it is not reflected at slave location. This is because /opt/merce/bin/maint/proxyblock_activate tries to copy the proxyblock file to /opt/merce/tmp where user 'mercexfr' does not have write access.
- Bug in user deletion. When user is deleted, all the entries for
deleted user are removed from alias table. But from alias file
only user's email ID and intranet ID are removed. So user is
not deleted from the aliases in which he/she was added from UI. - Remindme bug: remindme trims the long subject lines.
-
/opt/merce/bin/filesend program creates some Xdifffiles.tmp.XXXX
files in outgoing/servername/ directory. These files should be
automatically removed. Also need to check why these files are
created? -
Alias editing shows a row with 'alias' in it when some alias entry
is removed(on confirmation page).To solve this problem add following:
if ($param eq "alias" ) {
$hidden .=
"< INPUT TYPE='HIDDEN' NAME='$param' VALUE='$form_cp{$param}'>";
next;
}after the give line below in opt/merce/bin/usr/useralias_addremove.pl
if ($param eq "SUBMIT") { # or $param eq "alias") { -
The /opt/merce/lib/perl/Queue.pm does not allow a program to
generate multiple qfile from same process at same time.To solve this problem modifiy the Queue.pm to do following:
if(not defined global-ts-var) then
global-ts-var = current-ts
else
global-ts-var = global-ts-var + 1and the get_qfilename function in Queue.pm will return the
qfile name of the format q.$global-ts-var.$event.$pidThe above will take care of generating multiple qfiles from same
the program. -
Change the formating of the text in HTML page titles:
for example currently on main admin page of Merce it shows:
"MERCE - the complete Network tracking systems"It should be:
MERCE - Messaging and Enterprise Resource Control Environment
- Fix the formatting of vacation message reply. Replace the
- Improper configuration.
- Check the configuration for logrotate in RHEL4 and SLES10 for
the support of maxage, dateext, bug for size rotation and decide on a
criteria for log rotation - Amavis stops periodically because the current /etc/amavisd.conf
is old and has not been configured as per the new configuration scheme. - Mails from junkmail@organization.com should not be checked
for spam. - php.ini imposes limit on memory_limit (8 MB), upload_max_filesize
(2 MB), post_max_size (8 MB). Decide what should be these limits - Every shell script in the MercE source tries to source
/etc/merce/Netconfig.sh. If this file is not found it tries to log an
error message with facility local3 and priority emergency. There is no
entry for local3.emerg in /etc/syslog.conf. Add an entry in
/etc/syslog.conf for local3.emerg. - all scripts which are cron jobs of merce should be in /opt/merce/bin/cron. cleantmp should be in /opt/merce/bin/cron instead of /opt/merce/sbin
- In squirrelmail's configuration file value for smtp server is "localhost" and value for imap server is also "localhost". SMTP server should be "smtp.
" and IMAP server should be "imap. ". We need to add this to installer. - update config file /etc/sysconfig/syslog with current version of
syslog package in RHEL4 Update5.For now we have to add SYSLOG_OPTIONS variable in
/etc/sysconfig/syslog variable in /etc/sysconfig/syslog variable
to enable network logging in syslog. - update config file /etc/sysconfig/syslog with current version of
- Check the configuration for logrotate in RHEL4 and SLES10 for
of Merce and the configuration of packages in the Mtracks 2.6.0
release.
- Login to post comments
- Printer-friendly version
- Send to friend
Cyrus Perl Module
Include new perl module IMAP::Admin instead of Cyrus::IMAP::Admin as the later is now unavailable on even CPAN. Also the following scripts needs to be modified to use the IMAP::Admin module: addmailbox.pl, delmailbox.pl.