HTTP Killer Serious Bug?

The following code appears to kill the HTTP task on R5, R6 & R7 servers:

HTTPKiller code

Sub Initialize

s = |Content-Type: text/xml <root>|

For i = 1 To 55

	s = s + |<item>AAAAAAAAAA</item>|

Next		

Print s + |</root>|

End Sub

and the below will not:

HTTPOK code

Sub Initialize

Print |Content-Type: text/xml|

Print |<root>|

For i = 1 To 55 

	s = s + |<item>AAAAAAAAAA</item>|

Next		

Print s + |</root>|

End Sub

Calling the first agent from a browser with e.g. http://host/folder/HTTPKill.nsf/HTTPKiller?OpenAgent, will cause the HTTP task to terminate. It is then impossible to restart the HTTP service and the server has to be restarted.

This is reproducible on R5, R6 and R7 servers.

Calling the second agent from a browser with e.g. http://host/folder/HTTPKill.nsf/HTTPOK?OpenAgent, will not cause the HTTP task to terminate.

The difference

In the first agent ‘Content-Type: text/xml’ appears as part of the string variable ‘s’.

In the second agent the ‘Content-Type: text/xml’ appears in it’s own print statement before the ‘s’ variable is printed.

The above code is just a cut down version of the original agent I wrote, and is just to demonstrate the principle.

It appears as though the combination of adding the ‘Content-Type: text/xml’ statement to the start of a string variable and building a string of a certain length causes the HTTP task to terminate. I’ve tried it with smaller string lengths and while XML is not generated, it does not crash the HTTP service.

I realise that the ‘Content-Type: text/xml’ should always be the first statement printed but failure to do so should not result in a HTTP service crash, especially as it’s quite an easy mistake to make.

has anyone else encountered this?

has it been reported as a bug?

Subject: Yes there is a bug

I found the bug in the web server code that is causing the crash.Thank you for the test case.

Subject: RE: Yes there is a bug

you’re welcome,

glad you were able to isolate the problem so quickly.

Subject: HTTP Killer Serious Bug?

Funny you should mention that as we recently had something similar occuring here too.

The developer in question crashed the http task on not 1, not 2, but 3 live domino servers with a rather dodgy agent that he’d written. His excuses were rather woolly too - a bit like his code!

The Admin team weren’t very impressed, so i’m sure that any light you can shed on this would be very appreciated by a rather sheepish developer.

Subject: HTTP Killer Serious Bug?

Do you have a stack trace?

Note that headers must be terminated with CRLF so your “s” in the first example really isn’t correct syntax.

It should not cause http to crash though.