Commit Graph

132 Commits

Author SHA1 Message Date
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
Aldo Cortesi
cd481fdd14 Refactor and whitespace 2014-10-24 17:12:54 +13:00
Aldo Cortesi
962a414327 Fix tests, re-add scripts 2014-10-24 14:01:34 +13:00
Maximilian Hils
60e3e0b898 fix pathod 2014-10-09 03:35:39 +02:00
Maximilian Hils
14c9ba1af6 adjust to netlib changes 2014-10-08 20:48:16 +02:00
Maximilian Hils
6114f07f76 adapt pathod to netlib changes 2014-09-06 01:23:07 +02:00
Maximilian Hils
a0c8b20b7d adjust to netlib api changes 2014-07-21 14:08:09 +02:00
Aldo Cortesi
e54bf1a804 Adjust for upstream cert store changes, improve cert handling significantly 2014-03-05 15:03:31 +13:00
Aldo Cortesi
944f213ebc Add connection cipher info to pathod server log 2014-03-02 22:10:49 +13:00
Aldo Cortesi
0177eb899a Support cert/key combo files in args. Improve argument names in SSLOptions 2014-03-02 15:56:36 +13:00
Aldo Cortesi
234d326080 Implement custom certs. 2014-03-02 15:13:56 +13:00
Aldo Cortesi
091e539a02 Big improvements to SSL handling
- pathod now dynamically generates SSL certs, using the ~/.mitmproxy
cacert
- pathoc returns data on SSL peer certificates
- Pathod certificate CN can be specified on command line
- Support SSLv23
2014-03-02 13:45:35 +13:00
Aldo Cortesi
a1d0da2b53 Expand SSL support
- Cipher suite selection for both pathoc and pathod
- SSL version specification for pathod
- Expose SSLv23 as an option, and use it by default
2014-02-27 18:33:48 +13:00
Maximilian Hils
b64e1ccf91 adjust for netlib.tcp.Address changes 2014-01-30 20:06:33 +01:00
Maximilian Hils
b994fb5a27 adjust to signature changes in netlib.tcp 2014-01-28 19:28:20 +01:00
Maximilian Hils
1b566869de Merge branch 'master' into tcp_proxy 2014-01-28 17:44:55 +01:00