Salad Dais
d66d5226a2
Initial implementation of reliable injected packets
...
See #17 . Not yet tested for real.
2021-12-08 04:49:45 +00:00
Salad Dais
1e55d5a9d8
Continue handling HTTP flows if flow logging fails
...
If flow beautification for display throws then we don't want
to bypass other handling of the flow.
This fixes a login failure due to SL's login XML-RPC endpoint
returning a Content-Type of "application/llsd+xml/r/n" when it's
actually "application/xml".
2021-12-06 17:01:13 +00:00
Salad Dais
34f3ee4c3e
Move mtime wrapper to helpers
2021-12-05 18:14:26 +00:00
Salad Dais
7d655543f5
Dont reserialize responses as pretty LLSD-XML
...
Certain LLSD parsers don't like the empty text nodes it adds around
the root element of the document. Yuck.
2021-12-05 18:12:53 +00:00
Salad Dais
74c3287cc0
Add base addon for creating proxy-only caps based on ASGI apps
2021-12-02 06:04:29 +00:00
Salad Dais
3a7f8072a0
Initial implementation of proxy-provided caps
...
Useful for mocking out a cap while developing the viewer-side
pieces of it.
2021-12-02 03:22:47 +00:00
Salad Dais
690d6b51b8
Upgrade to mitmproxy 7.0.2
...
Our fix for `Flow.set_state()` has been upstreamed
2021-08-09 22:16:23 +00:00
Salad Dais
afa601fffe
Support session-specific viewer cache directories
2021-08-02 18:23:13 +00:00
Salad Dais
874feff471
Fix incorrect reference to mitmproxy class
2021-08-01 12:16:10 +00:00
Salad Dais
578f1d8c4e
Add setting to disable all proxy object autorequests
...
Will help with #18 by not changing object request behaviour when
running through the proxy.
2021-08-01 06:37:33 +00:00
Salad Dais
66e112dd52
Add basic message log import / export feature
...
Closes #20
2021-07-30 03:13:33 +00:00
Salad Dais
02ac022ab3
Add export formats for message log entries
2021-07-30 01:06:29 +00:00
Salad Dais
6eb25f96d9
Support logging to a hierarchy of message loggers
...
Necessary to eventually support multiple message log windows
2021-07-27 02:35:03 +00:00
Salad Dais
22b9eeb5cb
Better handling of optional command parameters
2021-07-22 23:59:55 +00:00
Salad Dais
7d9712c16e
Fix message dropping and queueing corner cases
2021-07-22 05:08:47 +00:00
Salad Dais
82663c0fc2
Add parse_bool helper function for command parameters
2021-07-21 06:39:29 +00:00
Salad Dais
9fb4884470
Extend TlsLayer.tls_start_server instead of monkeypatching OpenSSL funcs
...
We have a more elegant way of unsetting `X509_CHECK_FLAG_NEVER_CHECK_SUBJECT`
now that mitmproxy 7.0 is out.
See https://github.com/mitmproxy/mitmproxy/pull/4688
2021-07-19 20:17:31 +00:00
Salad Dais
cf69c42f67
Rework HTTP proxying code to work with mitmproxy 7.0.0
2021-07-18 07:02:45 +00:00
Salad Dais
d064ecd466
Don't raise when reading a new avatar_name_cache.xml
2021-06-25 18:45:42 +00:00
Salad Dais
49a9c6f28f
Workaround for failed teleports due to EventQueue timeouts
...
Closes #16
2021-06-23 16:43:09 +00:00
Salad Dais
9bf4240411
Allow tagging UDPPackets with arbitrary metadata
...
The metadata should propagate to any Messages deserialized
from the packet as well.
2021-06-18 20:31:15 +00:00
Salad Dais
48180b85d1
Export proxy test utils for use in addon test suites
2021-06-15 18:48:05 +00:00
Salad Dais
77d3bf2fe1
Make ObjectCacheChain handle invalid caches properly
2021-06-14 14:17:21 +00:00
Salad Dais
d8ec9ee77a
Add hooks to allow swapping out transports
2021-06-14 13:48:30 +00:00
Salad Dais
0b46b95f81
Minor API changes
2021-06-14 13:33:17 +00:00
Salad Dais
220d8ddf65
Add confirmation helper for InteractionManager API
2021-06-12 15:15:34 +00:00
Salad Dais
41fd67577a
Add ability to wait on object-related events
2021-06-12 10:43:16 +00:00
Salad Dais
4ddc6aa852
Remove unloaded addon scripts from sys.modules
2021-06-11 19:44:35 +00:00
Salad Dais
cb8c1cfe91
Only generate lowercase hostnames in register_wrapper_cap()
...
Hostnames are case insensitive and passing a URL through urlparse()
will always give you a lowercase domain name.
2021-06-11 17:52:03 +00:00
Salad Dais
52679bf708
HTTPAssetRepo: Don't throw when trying to serve invalid UUID
2021-06-11 17:51:45 +00:00
Salad Dais
216ffb3777
Add integration test for mitmproxy interception
2021-06-10 23:22:59 +00:00
Salad Dais
d4c30d998d
Allow handling Firestorm Bridge responses, use to guess avatar Z pos
2021-06-09 02:02:09 +00:00
Salad Dais
003f37c3d3
Auto-request unknown objects when an avatar sits on them
...
We need to know about an avatar's parent to get their exact position
due to the Object.Position field always being relative to the parent.
2021-06-08 23:44:08 +00:00
Salad Dais
b71da8f5a4
Add option to automatically request missing cached objects
2021-06-08 18:41:44 +00:00
Salad Dais
5618bcbac1
Add new persistent (Proxy)Settings object, use to pass down settings
2021-06-08 16:55:19 +00:00
Salad Dais
135ce06452
Rewrite ObjectManager to have WorldObjectManager own objects
...
This simplifies a lot of the interdependencies between the
WorldObjectManagers and region ObjectManagers.
2021-06-07 05:31:54 +00:00
Salad Dais
12862fcd02
Keep Avatar wrappers around rather than regenerating them when queried
...
Allows callers to keep around a reference to an Avatar object and get
updated position and validity information without having to poll the
ObjectManager itself.
2021-06-05 14:23:49 +00:00
Salad Dais
3887e0a23c
Add note about VOCache
2021-06-04 09:31:54 +00:00
Salad Dais
49f7ba960f
Move tons more things to lib.base and lib.client
...
Put an abstract session and region implementation in client so things
that could be logically shared between client/proxy can be.
ObjectManager moved to client with proxy-specific details in
ProxyObjectManager.
2021-06-04 09:31:54 +00:00
Salad Dais
f2ee6f789f
Correct region handle change comments in ObjectManager
2021-06-03 20:51:38 +00:00
Salad Dais
9df0224fbf
Split CapsClient into proxy and non-proxy version
2021-06-03 08:02:11 +00:00
Salad Dais
59493e021c
Move XferManager and TransferManager to base
2021-06-03 07:04:06 +00:00
Salad Dais
7b98c0b261
Split out human str formatting for Messages
2021-06-03 07:03:54 +00:00
Salad Dais
a39d025a04
Move Circuit and Message to lib.base
...
Fairly invasive, but will help make lib.base useful again. No
more Message / ProxiedMessage split!
2021-06-03 07:00:32 +00:00
Salad Dais
0bf1e84da4
Make XferManager tests exercise both upload and download paths
2021-06-02 20:02:31 +00:00
Salad Dais
3d8da0af65
Remove TransferManager dependency on ProxiedRegion
2021-06-02 20:01:47 +00:00
Salad Dais
0a45cd3739
Remove XferManager dependency on ProxiedRegion
2021-06-02 11:44:06 +00:00
Salad Dais
af17525071
Remove Circuit dependency on parent Region
2021-06-02 11:44:06 +00:00
Salad Dais
c1d795e850
Add XferManager tests
2021-06-02 02:48:13 +00:00
Salad Dais
984ac257a5
Rename ensure_ancestors_loaded(), add timeout tests
2021-06-01 22:51:57 +00:00