Community Discussions and Support

The perfect forum for general discussions or technical questions about Mercury Mail Server.

0
-1
closed
vefatica posted Sep 3 '11 at 12:43 am

[quote user="Vincent Fatica"]

What exactly does this, from the system messages window, mean?

 POLICY: Exception 2, job 'MG000003' deleted

I wrote the policy EXE and it always returns 0.  Does "Exception 2" have some specific meaning?

[/quote]

P.S., The policy EXE uses the native DWORD (WINAPI *) (VOID) entry point signature.  I often do that when C libraries aren't needed and many such apps worked flawlessly for years under XP.  After switching to Win7, some of them (haven't figured out rhyme or reason) don't work flawlessly ... they reach a "return" (from the entry point), the main thread ends (according to the debugger, and I'm not creating other threads), but the app doesn't terminate.  But I don't think that's happening in this case for several reasons ... (1) the policy EXE tests OK, (2) there aren't zombie instances of it running, (3) the "POLICY: Exception" message occurs 1-2 seconds after the mail arrives, and (4) the docs say that when a policy hangs, Mercury treats the message as OK.

 - Vince

0
-1
closed
Alfred posted Aug 31 '11 at 6:34 pm

Thank you Rolf;

 (I'm so used to Turnpike that I didn't realise that it must have a built in server to distribute mail as it does. Obviously rather different from other mail clients.)

I've just tried to install Mercury by just going for it. It seems to be a case to 'Read The - Manual'

I will definitely study the information you pointed me to. I hope the learning curve is not too steep but if it does what I want it will be worth it.Thanks again,

Alfred

Somerset U.K. 

0
-1
closed
Greenman posted Aug 27 '11 at 9:41 am

This all makes sense now as I used to restart Mercury every day. Recently, I took to restarting it ony after a configuration change or server restart. I'll make a note to clear the logs folder when this happens. FWIW Windows 2008 does not have problems with a large number of files created by our server. I've had over 10,000 in the folder and have been able to view, move them without issue. Mind you, your definition of 'many files' may be higher than mine :)

Thanks again for the help.

0
-1
closed
cretson posted Aug 25 '11 at 10:22 pm

Thanks Thomas!  Appreciate the quick responses!

So, in a nutshell, what I've been doing is all I can do - having a separately-maintained username/password list for SMTP authentication in a textfile. 

...but my users who are using Pegasus don't need to type in this SMTP password because Pegasus will automatically authenticate using another means?

0
-1
closed
dilberts_left_nut posted Aug 26 '11 at 1:49 pm

[quote user="EduaRT"]In MercuryS SMTP Server --> Connection Control, I checked "Only Authenticated SMTP connections may relay mail" but this obviously only applies for non-local users. How can I force local users to SMTP authenticate first?[/quote]

The operative part of that option is RELAY, and it does force local users to authenticate prior to RELAYING mail TO non-local addresses.

You cannot require authentication for mail addressed TO local users, or else how would foreign servers deliver incoming mail?

 

You could probably set it up like this if you want, but you would need another instance of Mercury with a different local-domain to be the SMTP server, and deny access from the local network to the SMTP server on the "local" Mercury.

You can run two instances on the same machine, from different directories, but you can't have conflicting services running on the same ports.

0
-1
closed
GordonM posted Aug 14 '11 at 10:06 pm

Just a side comment on this.  My ISP doesn't provide static IP addresses for consumer accounts.  One needs a more expensive business account with the ISP to have this functionality.  However, this has never caused me a problem.  I am using an application that tracks the dynamic IP address (which rarely changes anyway) and causes DNS to be updated accordingly.  There are various applications that can provide this IP tracking function (I use DirectUpdate).

Also, because of the dynamic IP address limitation, my ISP doesn't offer the ability to choose DNS records.  However, as  I have my own domain, my Domain Name Registrar does allow me to edit DNS records, e.g. for type MX.  Other companies offer "advanced DNS services" (and some are free) even if your Domain Name Registrar does not.

Gordon

0
-1
closed
Thomas R. Stephenson posted Aug 10 '11 at 2:58 pm

> Looking on a HOW To create a secondary mercury backup server.  Currently I have one server but wish to create a
> backup server that would take e-mails when the first is unavailable.   I know how to create the DNS entries but
> looking on how mercury needs to be set up so users can get or send e-mails if the main server is unavailable. 
> Best practice suggestions would be appreciated.

Mercury/32 currently does not provide MX services.  David's looking into this for a future enhancement but until that happens here's 3 possible work arounds.   

These are NOT a true MX host function since it does not queue and wait for the receiving system to be online to send the mail.  That said, WSMTPEx will keep retrying if the connection to the server and port cannot be made.  I have not tested how long it will continue retrying.   

1.  First of all is the simplest, you simply re-write the domain in the mercury.ini [Rewrite] section.

[Rewrite]
none-tstephenson.com: [192.168.1.3]

I really was surprised when this one worked since it truly simple and has been there
all along.  You learn something new every day.  The brackets are required when using
an IP address.  This forwards all mail for anyuser@none-stephenson.com to
anyuser@[192.168.1.3] using the normal Mercury/32 send process via port 25. 
Works quite well when using MercuryE, cannot work when using MercuryC unless the
IP address is a routable IP address.  You must re-boot Mercury/32 for each change
since this is only read at startup.  

2.  The second one is the daemon MercFwd and it essentially does the same thing as
the rewrite but this can be done dynamically by changing the domains section.  The
[Domains] entry of  

daemon:c:\mercury\mercfwd.dll;[192.168.1.3]: none-tstephenson.com

does essentially the same thing as the rewrite above.  Again it uses Mercury to deliver
the mail via port 25 and so you cannot use this with MercuryC when using non-
routable IP addresses.  

3.  The third one is the program WSMTPEx.exe (SMTPEX.NLM for Netware)  and this a a
separate program that takes mail for a email account and forwards it to any port and
any hostname/IP address.  I use this with my domains to forward the mail to a Linux
system (must use high ports as non-root) and to a second instance of Mercury/32
running on my system (can't share port 25)  Here's a sample of the ini file I use for
forwarding all mail to Mercury/32 running on Ubuntu v8.10 and Wine.  

 #  You can rename this tool, but name of following section must remain [WSMTPEx]
[WSMTPEx]
Version=0.10
#  TCP port, on which SMTP server listens
Port=8025
#  Number of seconds to delay between searches for emails
LoopDelay=30
#  Folder, under which is most of user's mailboxes
UserFolder=
Domains=1
# Users mail address domain part
Domain1=linux-tstephenson.com
LogName=c:\Mercury\WSMTPEx.log
SMTPServer=192.168.1.4
MailBoxes=1
Badmails=c:\pmail\mail\BadMail

[linux-tstephenson.com]
# When user name start with "DM:", WSMTPEx will try to find SMTP envelope address in mail file
Mb1addr=dm:ubunto
Mb1dir=c:\pmail\mail\ubunto


This takes all the mail in the domain account "UBUNTU"  and sends it to port 8025 on
192.168.1.4 to be received by MercuryS.  The directory BADMAIL I have specified
must exist.  You can run multiple instances of this tool and and it can be run as a
service.  If run as a service and running multiple instances the name of the program
should be changed.  I use WSE-UBUNTU to rename the program and ini file for this
one.  

Many thanks to Petr Jaklin for the development of these tools.  You can get these
tools at the community download areas or directly from Petr Jaklin's site
http://www.3net.cz/software/softe.htm  


0
-1
closed
vefatica posted Aug 10 '11 at 5:39 pm

[quote user="Rolf Lindby"]

If Mercury is running in program mode and my command daemon is loaded the daemon simply posts a WM_CLOSE to the window returned by get_variable(GV_FRAMEWINDOW).

/Rolf[/quote]

OK, Thanks.  That doesn't work if Mercury is "Hard to exit"; in that it just minimizes itself.  That's why my previous tests failed.  But that's OK.  I wouldn't use "Hard to exit" if Mercury were running on desktop 0.

0
-1

Profimail connects to Mercury, checks for mail and disconnects - if there's nothing new, it's only visible in the Mercury window for about 5 seconds. I think this is configurable in Profimail. As regards cost, you can download a time-limited demo without charge - I think you get 30 days to try it.

Thunderbird logs in as soon it starts up and appears to stay logged in so long as it's running. I don't think checking for mail and logging in are the same thing - for example, you would need to log in to read existing mail, unless it was synchronised and stored on the client.

Chris

 

0
-1

[quote user="ubecker"]
[Domains]
10.203.63.3: ourdomain.com
[/quote]

That definitely looks wrong to me, in a similar way to the error I made. See page 12 of the 4.73 manual - I think (guessing a bit as you've scrambled your domain name) yours should probably look like

[Domains]

ourdomain:  ourdomain

ourdomain:  ourdomain.com

ourdomain:  [10.203.63.3]

I'm not sure about the colons - they are there in my mercury.ini but the current manual doesn't seem to show any?

Chris

0
-1
closed
Mithdring posted Jul 28 '11 at 7:20 pm

Since there doesn't seem to be any changes I'll ask another question:

DAEMONEXPORT short daemon (void *job, M_INTERFACE *mi, char *address)

{
        void *blank;
        mi->logstring (20100, LOG_NORMAL, "TEST DAEMON: Daemon function called");
        blank = mi->ji_create_job(JT_GENERAL, "u.d@o.com", NULL);
        mi->ji_add_element(blank, "Joshua.Arner@ATIMetals.com");
        mi->ji_add_data(blank, "Subject:This is it");
        mi->ji_close_job(blank);
        mi->ji_close_job(job);
        return 0;


}

 

When

I run this as part of the code for daemon1.dll in the DDK the message

triggers the daemon and create the message just fine.  However, the

triggering message is marked with a retry flag and repeats the entire

process on the next poll cycle.  Am I doing something wrong or is there a

way to reset this flag?

 

My only solution is to try to copy the message and have the daemon return 1 to delete the message, I'd rather not do that.

0
-1
closed
duncane posted Jul 29 '11 at 5:08 pm

This was the log just before Pegasus generated an error. It had been frozen for maybe 5-10 minutes before this.

None of the referenced files seem to exist.

 Duncan

2.32k
13.69k
8
Actions
Hide topic messages
Enable infinite scrolling
Previous
Next
All posts under this topic will be deleted ?
Pending draft ... Click to resume editing
Discard draft