You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit f7fd285
Browse filesBrowse the repository at this point in the historyBrowse files
A Pingora gateway can keep the framework and proxy code compiled while moving request/response policy into RustScript:
7
+
A Pingora gateway can keep the framework and proxy code compiled while moving request, transport, protocol, and response policy into RustScript:
8
8
9
-
- live `pingora::http::RequestHeader` reads: `pingora::request::method`, `pingora::request::path`, `pingora::request::header`
10
-
- live Pingora mutations: `pingora::request::insert_header`, `pingora::response::set_status`, `pingora::response::insert_header`
11
-
- host functions are exported with `#[pd_host_function(name = "pingora::...")]`; the `.rss` names and namespaces match the bound host names exactly
9
+
- live `pingora::http::RequestHeader` reads and request mutation
10
+
- HTTP request/response/exchange host functions compatible with the `pd-edge` examples
11
+
- proxy stream functions for native forwarding, bridged forwarding, and exchange-backed streams
12
+
- TCP, UDP, TLS termination, WebSocket, and WebRTC-style host functions for protocol policy demos
13
+
- host function names are bound in the same namespaces used by the `.rss` scripts: `http`, `proxy`, `tcp`, `udp`, `tls`, `websocket`, `webrtc`, `rate_limit`, and compatibility `pingora::*` names
12
14
13
15
This does not fork or patch Pingora. It depends on the upstream `pingora` crate plus local `pd-vm` / `pd-host-function` paths only.
14
16
17
+
## Scripts
18
+
19
+
| script | focus |
20
+
|---|---|
21
+
|`scripts/gateway_policy.rss`| direct Pingora request/response policy |
0 commit comments