Arc Forumnew | comments | leaders | submitlogin
Racket's stateless webserver (racket-lang.org)
2 points by akkartik 4975 days ago | 4 comments


1 point by zck 4972 days ago | link

I wonder what they do for security. It's standard that you can't trust data coming from the client; I hope they don't blindly evaluate code coming from the client.

I suppose you could encrypt the ANF'd stack, then send it over the wire.

-----

2 points by rocketnia 4971 days ago | link

I think what comes from the client is mostly an opaque token that refers to a continuation in the server's session store. Probably something like news.arc, but I'm even less familiar with news.arc than I am with this. :-p

I think other values are passed around as first-class values of the program, not as automatically-evaluated expression. So if you use eval in your code or otherwise interpret rich user input with loose privileges, you might indeed have a security risk on your hands. If by some chance you do find yourself in that position, Racket also provides a sandbox library so that you can replace your insecure eval with a more tightly controlled one.

-----

1 point by rocketnia 4971 days ago | link

Do you have something in particular to say about this, akkartik? >.>

-----

1 point by akkartik 4971 days ago | link

Not yet; it was just pleasant to learn of its existence :)

-----