[racket-dev] attacks on the plt web server?

From: Jay McCarthy (jay.mccarthy at gmail.com)
Date: Wed Jan 23 07:58:41 EST 2013

The read-byte messages were removed before 5.3.1.

I haven't seen the last error before, so I'll check it out.

Jay

On Tue, Jan 22, 2013 at 5:17 PM, Danny Yoo <dyoo at hashcollision.org> wrote:
> I've noticed that one of my plt servers is being hit hard
> occassionally, with the following output coming out of the Racket web
> server before it crashes.  I'm including a portion of the output.
> This is on Racket 5.3.  Can it be that somehow something is escaping
> the custodian cleanup?
>
>
> dyoo at web4 ~]$ tail -100 debug-crash.txt
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> read-byte: input port is closed
>   context...:
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> make-request: contract violation
>   expected: (or/c #f bytes?), given: #<eof>
>   in: the 5th argument of
>       (->
>        bytes?
>        url?
>        (listof header?)
>        (promise/c (listof binding?))
>        (or/c #f bytes?)
>        string?
>        number?
>        string?
>        request?)
>   contract from:
>       <collects>/web-server/http/request-structs.rkt
>   blaming:
>       <collects>/web-server/http/request.rkt
>   context...:
>    /home/ubuntu/racket/collects/racket/contract/private/blame.rkt:89:0:
> raise-blame-error
>    /home/ubuntu/racket/collects/web-server/http/request.rkt:32:0
>    /home/ubuntu/racket/collects/web-server/private/dispatch-server-unit.rkt:74:2:
> connection-loop
> Racket virtual machine has run out of memory; aborting



-- 
Jay McCarthy <jay at cs.byu.edu>
Assistant Professor / Brigham Young University
http://faculty.cs.byu.edu/~jay

"The glory of God is Intelligence" - D&C 93

Posted on the dev mailing list.