Commit Graph

147 Commits

Author SHA1 Message Date
Thomas Kriechbaumer
a2bf19125a refactor protocol-related pathod methods 2015-07-22 15:30:33 +02:00
Thomas Kriechbaumer
c1e84cb322 use websockets protocol 2015-07-22 15:30:33 +02:00
Aldo Cortesi
4407508e0c Give some structure to the logging module 2015-06-28 12:16:02 +12:00
Aldo Cortesi
61679acf56 Preserve traceback for errors in log wrapper 2015-06-27 10:34:56 +12:00
Aldo Cortesi
94a7770a94 Output warning info to log fp using logging methods 2015-06-25 10:33:35 +12:00
Thomas Kriechbaumer
5d63afdc6d unify SSL version/method handling 2015-06-22 20:39:05 +02:00
Thomas Kriechbaumer
7a3623a14e fix pep8 whitespace 2015-06-18 18:15:22 +02:00
Thomas Kriechbaumer
bfc889d29a fix prospector code smells 2015-06-18 18:05:09 +02:00
Thomas Kriechbaumer
231cfcea38 fix failing mitmproxy tests 2015-06-18 12:53:36 +02:00
Thomas Kriechbaumer
65be004bb2 fix prospector code smells 2015-06-18 11:07:33 +02:00
Thomas Kriechbaumer
408b4ffef0 http2: implement Headers for request & response
improve test coverage
fix super ctor call
fix legacy httpversion
simpliy SSLInfo without ALPN
2015-06-16 14:53:41 +02:00
Thomas Kriechbaumer
ec68aa303e http2: implement error response 2015-06-16 11:33:10 +02:00
Thomas Kriechbaumer
a0d8afd0fc http2: add request-response to pathod 2015-06-15 15:51:01 +02:00
Thomas Kriechbaumer
22811c45dd fix craft anchor
The go-button in the app was broken due to an invalid string representation of the regex. A plain string used as URL prefix simplifies this drastically.
2015-06-15 15:50:45 +02:00
Thomas Kriechbaumer
6be6595425 pathod: add ALPN support 2015-06-15 15:50:44 +02:00
Aldo Cortesi
317db54666 Revamp timeout handling and test logging 2015-06-08 15:23:56 +12:00
Aldo Cortesi
af22814bc3 Revamp error logging somewhat 2015-06-08 14:01:04 +12:00
Aldo Cortesi
7dff8f0dca Convert parse_websocket_frame to a generator 2015-06-08 10:58:12 +12:00
Aldo Cortesi
df962f8e7b Convert parse_pathod to generator 2015-06-07 16:11:32 +12:00
Aldo Cortesi
0da3e51e1c Make parse_pathoc a generator
This lets us do things like this:

get:/:ir,@1:x1000000000

It will also let us expand the language to include a "repeat forever" concept.
2015-06-07 13:18:33 +12:00
Aldo Cortesi
d23691f98c Improve websocket logging 2015-06-05 12:04:40 +12:00
Aldo Cortesi
0a7da6a9b1 Rudimentary support for reflected websocket frames. 2015-06-04 23:57:23 +12:00
Aldo Cortesi
182b79ab9e Refactor to allow dropping to websockets on any anchor point 2015-06-04 20:23:05 +12:00
Aldo Cortesi
ae9f470d2b Craft anchor is now specified as a regex
Unifies this with anchor points.
2015-06-04 19:09:38 +12:00
Aldo Cortesi
c5992b8d23 Refactor Pathod HTTP handlers for clarity 2015-06-04 18:37:13 +12:00
Aldo Cortesi
9fda74c65a Clarify language API, stub out nested websocket frames 2015-06-04 17:18:06 +12:00
Aldo Cortesi
6122f2da44 Change test API to allow multiple pathoc requests
Add simple unit test for websocket server
2015-05-31 18:38:11 +12:00
Aldo Cortesi
effd29b51a Refactor logging, fix conversion to websocket handler 2015-05-31 18:03:41 +12:00
Aldo Cortesi
af66661212 Add timestamps to logs by everywhere 2015-05-31 17:25:36 +12:00
Aldo Cortesi
e7c255a3bb Refactor, fix a crashing bug by changing the way we specify SANs to pathod 2015-05-31 16:54:52 +12:00
Aldo Cortesi
88ab54fab0 Refactor pathod to allow switching protocol handlers 2015-05-31 14:12:51 +12:00
Aldo Cortesi
a09f3e06c3 Factor logger out of pathoc, use it in pathod as well. 2015-05-30 17:43:01 +12:00
Aldo Cortesi
4ed5043c67 Add coding style check, reformat. 2015-05-30 12:03:13 +12:00
Aldo Cortesi
5d5f2bdd1f Split out language messages and actions 2015-05-03 08:02:13 +12:00
Aldo Cortesi
9109b3cc8c Massive refactoring to split up language implementation. 2015-05-02 16:17:00 +12:00
Aldo Cortesi
b0ab5297d1 Change the semantics of the craft anchor point specification
The anchor point is now defined as /p (rather than /p/), with the specification
for a request just to /p or /p/ being empty.
2015-04-23 17:35:22 +12:00
Aldo Cortesi
dacb350040 pathod: register websocket key from client handshake 2015-04-23 17:11:20 +12:00
Aldo Cortesi
2306a7ab6d Refactor logging, add some defaults to pathod argument help. 2015-04-23 08:43:57 +12:00
Aldo Cortesi
ce6147ec35 Use get_request_line from netlib.http 2015-04-23 08:24:26 +12:00
Aldo Cortesi
61dc01af11 Resolve messages as part of policy check 2015-04-22 16:38:54 +12:00
Aldo Cortesi
5dee4210eb pathod: flag to set debugging for web interface dev 2015-04-22 15:58:25 +12:00
Aldo Cortesi
99cb0808ab websockets: server handshake scheme
Also refactor settings and resolution interfaces
2015-04-22 15:49:17 +12:00
Aldo Cortesi
33820d9aee Whitespace, interface refcactoring, sketch websockets language 2015-04-20 15:42:33 +12:00
Aldo Cortesi
be450cf9db Whitespace, small fixes. 2015-04-20 08:56:47 +12:00
Aldo Cortesi
43dadbc2fe Add SANs specification arguments to pathod 2015-04-19 10:51:03 +12:00
Aldo Cortesi
f332674ce1 100% unit tests
- Add SANs to pathod SSLConfig
- Fix tricky SSL establishment error test. Lets see if it's platform portable.
2015-04-19 10:43:16 +12:00
Aldo Cortesi
f8e95db6b0 housekeeping: ++tests, coverage annotations 2015-04-17 17:45:50 +12:00
Aldo Cortesi
00d0ee5ad5 Parse patterns eagerly on instantiation 2014-10-25 15:30:54 +13:00
Aldo Cortesi
5aadf92767 Nicer way to specify patterns read for file - just use a path 2014-10-25 08:18:39 +13:00
Aldo Cortesi
c6c0509836 Strictly separate argument parsing from main loops 2014-10-24 17:19:55 +13:00