pathod: pathological HTTP

Crafted malice for tormenting HTTP clients and servers

pathod

A pathological web daemon.

examples

Check out the complete language docs. Here are some examples to get you started:

200 A basic HTTP 200 response (this will hang).
200:da Server-side disconnect after all content has been sent.
200:b@100 100 random bytes as the body. A Content-Lenght header is added, so the disconnect is no longer needed.
200:b@100:h"Etag"="';drop table servers;" Add a Server header
200:b@100:dr Drop the connection randomly
200:b@100,ascii:ir,@1 100 ASCII bytes as the body, and randomly inject a random byte
200:b@1k:c"text/json" 1k of random bytes, with a text/json content type
200:b@1k:p50,120 1k of random bytes, pause for 120 seconds after 50 bytes
200:b@1k:pr,f 1k of random bytes, but hang forever at a random location
200:b@100:h@1k,ascii_letters='foo' 100 ASCII bytes as the body, randomly generated 100k header name, with the value 'foo'.

pathoc

A perverse HTTP client.

examples

Check out the complete language docs. Here are some examples to get you started:

get:/ Get path /
get:/:b@100 100 random bytes as the body
get:/:h"Etag"="';drop table browsers;" Add a header
get:/:u"';drop table browsers;" Add a User-Agent header
get:/:b@100:dr Drop the connection randomly
get:/:b@100,ascii:ir,@1 100 ASCII bytes as the body, and randomly inject a random byte

pip

pip install pathod

source