|
Just mail it to me, then I'll test it later today. You have my mailaddress...
- Anders
Money talks, but all mine ever says is "Goodbye!"
|
|
|
|
|
|
Nish [BusterBoy] wrote:
Anders was right about never sniffing out the \r\n.\r\n, but not for the reasons he assumed. It wasn't that they were never sent, but rather, a recv() was blocking endlessly.
Err... I never said _why_ the program didn't send a \r\n.\r\n, I just said that it didn't send it...
- Anders
Money talks, but all mine ever says is "Goodbye!"
|
|
|
|
|
|
The program is not working to RFC2821 which defines the SMTP protocol.
It sends "HELO MultiMail\r\nMAIL FROM:<mailaddress>\r\n" without checking for a reply from the HELO command.
You must NOT send the MAIL command before you get a 250 reply to your HELO command.
And, in the end it call the DATA command without ever ending with a "\r\n.\r\n" this means that it never ends the mail, and the server just times out while waiting for more data.
At least send an empty body nish, right now you never sends anything.
And, when it don't send anything in the body, it's totally useless for testing mailservers. (the mailserver never get a full mail, so it don't have to store it or anything.)
- Anders
Money talks, but all mine ever says is "Goodbye!"
|
|
|
|
|
Anders Molin wrote:
buggy, and useless
Dear Anders Molin,
I would have preferred it if you did not say things which you are not sure of. I have mentioned in the article that I have been using this tool since nearly 20 months ago. Do you really think I would have used it if it never worked?
Please try the following out:-
(1) enter an@nimo.dk as FROM address
(2) enter am@nimo.dk as TO address
(3) enter mail.nimo.dk as SMTP
(4) set a count of 5
(5) set number of threads to 5
(6) Click 'Go!'
In a few minutes you would have sent yourself 25 emails.
And if you run a sniffer you'd actually notice that it does send a \r\n.\r\n
By the way I had a few CPians test this out before uploading this article. I had run it only on Win2K and I wanted it to be tested on XP. A CPian suucessfully ran it on XP for me.
Now Anders please verify what I have said and reply again.
I fully appreciate creative criticism. But blindly calling a tool useless is not nice at all.
And as for bugs, I believe there would be a few. It does not do error checks at the GUI level and at the SMTP level But it does recv back the SMTP chat from the server. Anyway for stress testing purposes I have not found this to be an issue at all.
Kind regards
Nish
My most recent CP article :-
A newbie's elementary guide to spawning processes
www.busterboy.org
|
|
|
|
|
Nish [BusterBoy] wrote:
I would have preferred it if you did not say things which you are not sure of.
I have _not_ said anything that I'm not sure of!
Nish [BusterBoy] wrote:
And if you run a sniffer you'd actually notice that it does send a \r\n.\r\n
No it does not, I don't know if you have uploaded a new version today that works, and I really don't care, but the version I downloaded yesterday didn't send a \r\n.\r\n
I tried it on 2 different servers. One of them logs everything, and I could see in the logs that you never sent the \r\n.\r\n part. The other server is one I am writing my self, and I ran it under the debugger and could see exactly what your program did!
That's also why I could see that you don't wait for a reply the the HELO command before you execute the MAIL command.
And Dear Nish,
Just for the record, I _do_know_ how SMTP works, but hey, maybe it's all my fault, I just read the RFC, I didn't check with your tool which aparently defines the standard
- Anders
Money talks, but all mine ever says is "Goodbye!"
|
|
|
|
|
Anders Molin wrote:
Just for the record, I _do_know_ how SMTP works,
I didnt mean you didnt know how SMTP worked.
I meant you didnt know how the program worked. You assumed it never sends a \r\n.\r\n after sending DATA. This is not true.
I am debugging it using mail.nimo.dk.
The problem is that it blocks on a recv() just before sending \r\n.\r\n
The greeting message and the HELO reply are coming together.
I wonder why.
I am working on it.
There are two thing here
(1) I'd like to thank you for making me aware of this problem
(2) I am upset you didnt handle it in a neater manner [of course it might be my way of looking at things too]
Regards and thanks
Nish
My most recent CP article :-
A newbie's elementary guide to spawning processes
www.busterboy.org
|
|
|
|
|
Nish [BusterBoy] wrote:
I am upset you didnt handle it in a neater manner [of course it might be my way of looking at things too]
Yes, it might be your way of looking at things. I just saw a tool that I could use, but I found out that the tool didn't work according the the RFC that defines SMTP, and then I said to my self "useless". Sorry, but I can't use it, if Outlook didn't send my mails for me, I would also call it useless.
- Anders
Money talks, but all mine ever says is "Goodbye!"
|
|
|
|
|
|
Nish [BusterBoy] wrote:
Now Anders please verify what I have said and reply again.
Just did that, and sorry, but I'm right, it never sends any mails.
Nish [BusterBoy] wrote:
I fully appreciate creative criticism. But blindly calling a tool useless is not nice at all.
No it's not, but when a SMTP Stress tool can not send mails, and even if it could, the mails would be empty, I'd call it useless, sorry.
At least let it send 500k of "x" in each mail, then you would also test if the mailserver could handle some data and store it on disk quick enough.
- Anders
Money talks, but all mine ever says is "Goodbye!"
|
|
|
|
|
Anders Molin wrote:
but when a SMTP Stress tool can not send mails, and even if it could, the mails would be empty, I'd call it useless, sorry.
But it works with just about every other SMTP server.
Why didnt you think that it might be a small bug in the program that prevents it from working with certain SMTPs.
How could you actually assume something?
Anyway, it does not work with mail.nimo.dk
I am trying to get at it.
Nish
My most recent CP article :-
A newbie's elementary guide to spawning processes
www.busterboy.org
|
|
|
|
|
Nish [BusterBoy] wrote:
Why didnt you think that it might be a small bug in the program that prevents it from working with certain SMTPs.
How could you actually assume something?
I assumed what?
I saw a tool that didn't work the way it's supposed to, and then I said buggy, what's wrong with that?
Of course it's just a small bug, but when a bug prevents a program from working, then it's useless until the bug is fixed.
- Anders
Money talks, but all mine ever says is "Goodbye!"
|
|
|
|
|
|
Hello again Anders
I just tested out mail.nimo.dk. There seems to be nothing wrong with it. I sent one empty mail [directly, not using MultiMail]. So don't be surprised with an empty mail from me. I also apologize for the inconvenience caused by a blank mail [I mean I'd find that irritating, so I assume you would too]
Regards
Nish
My most recent CP article :-
A newbie's elementary guide to spawning processes
www.busterboy.org
|
|
|
|
|
Nish [BusterBoy] wrote:
I also apologize for the inconvenience caused by a blank mail [I mean I'd find that irritating, so I assume you would too]
Never mind that, but why did you send it manually?
Was it just to check my mailserver?
I can tell you that that mailserver don't work with MultiMail...
Or to say it right, MultiMail don't work with the mailserver at nimo.dk, just tried it again...
- Anders
Money talks, but all mine ever says is "Goodbye!"
|
|
|
|
|
|
Nish [BusterBoy] wrote:
Yes, I find that so now. It does not work with mail.nimo.dk.
I wonder why! I am debugging it now...
Would you also make it wait for the response to the HELO command, before it send the MAIL command.
- Anders
Money talks, but all mine ever says is "Goodbye!"
|
|
|
|
|
Anders Molin wrote:
Would you also make it wait for the response to the HELO command, before it send the MAIL command.
It actually sends HELO first, then recv's and then sends MAIL FROM. The reaosn why you saw both together is that it does not recv the greeting. With most servers this is okay as the greeting and the HELO return message are recv'd together.
Thanks
Nish
My most recent CP article :-
A newbie's elementary guide to spawning processes
www.busterboy.org
|
|
|
|
|
Nish [BusterBoy] wrote:
With most servers this is okay as the greeting and the HELO return message are recv'd together.
Hmmmm, you _should_ check the code in the greeting, before sending a HELO
- Anders
Money talks, but all mine ever says is "Goodbye!"
|
|
|
|
|
I think it's a bad idea putting an article out without the sourcecode included by default.
People come here to find out how programming problems are solved, and to learn from that, not for the binaries.
I could use download.com for that, and even if I look at freshmeat, I might even get the sourcecode.
This just turns the whole idea of Code Project upside down.
bye
|
|
|
|
|
Hello Amanjit
I have tried my best to appreciate the thought process that might have lead to this post from you. Before I say anything further, I would like to state here that this tool has been submitted to the freeware tools section. The freeware tools section on the Code Project normally portrays tools that are useful for developers. As I have already mentioned in my article, I developed this particular program while I was developing a Shareware anti-Spam software utility. I have also subsequently put the tool to use for stress testing SMTP servers. Therefore I felt very strongly that this tool might be useful for system administrators wanting to test the strain their SMTP servers can take, and other developers of anti-Spam tools who are looking for a quick and easy way to create test-case flooded-inboxes.
As you might notice if you take a look at the tools section, there is actually a sub section that says, “Tools with source code”. This sub-section would probably feature programs with source code. But this has an automatic implication that the other sub sections need not necessarily feature source code.
I have specific reasons for not including the source code directly. I did that after consultation with a couple of senior CP citizens. You might also notice if you read the article fully, that I have stated that full source code is available on demand. One primary and significant reason for my doing so, is that with just a little bit of tweaking, this program could very easily be used as a high-speed-mail-bombardment tool. As you might notice I have limited the number of simultaneous threads to 10. If this is increased the power of the program as a multi-threaded bomber increases dangerously. I have also removed the body-field from the program. At the worst, assuming someone actually gets flooded, each email will be small on account of having no mail-body.
By the way, the source code for this program is very elementary in nature. It involves very basic worker threads and simple socket connections. Any programmer who knows how to create a worker thread and who has used Winsock would have very little trouble in putting up a similar program in no time at all. I just didn’t want to directly contribute to the malicious spammer community, that’s all. By the way, if anyone actually wants to take a look at the source, I’d we quite willing to mail it to him, if I am convinced he has valid reasons. And you can rest assured, that the code is too natively simple for any great secrecy. But as I already mentioned I was just exerting a nominal amount of caution.
I was quite hurt and wounded by some of your comments. I do hope that at least some of your misjudgments regarding my article have been cleared up. For once, I was trying to behave a little responsibly, and I get formidably admonished for my attempts at prudence.
Kind regards
Yours very truly
Nish
My most recent CP article :-
A newbie's elementary guide to spawning processes
www.busterboy.org
|
|
|
|
|
Nish [BusterBoy] wrote:
I was quite hurt and wounded by some of your comments. I do hope that at least some of your misjudgments regarding my article have been cleared up. For once, I was trying to behave a little responsibly, and I get formidably admonished for my attempts at prudence.
Hey Nish,
Don't worry, be happy. Cheer up! You are the best author of CP. Forget about this guys words.
NISH NISH NISH NISH NISH NISH NISH NISH NISH NISH NISH NISH
Mustafa Demirhan
http://www.macroangel.com
Sonork ID 100.9935:zoltrix
|
|
|
|
|
|
Nish, we're in the same boat right now. People have the wrong idea about my motives involved with my projects. Currently I don't bother writing e-mails or messages as long as this one! I don't try to win people's trust or try to convince them of my motives. People will believe what they believe. That's life. Go on with your own work and enjoy it as much as possible, and don't waste your time winning approval. Just my two rupies
- Jason
Do you have a Pulse?
SonorkID: 100.611 Jason
|
|
|
|
|