martian
martian copied to clipboard
Martian is a library for building custom HTTP/S proxies
Signed-off-by: Abirdcfly
Out-of-sync go.mod with a reference to unused old version of protoc-gen-go-grpc causes a false positive finding in OWASP dependency-check. Running `go mod tidy` fixes the issue. Also fixes #327.
There was very weird logic to work with downstream proxy in case of CONNECT. Which (as far as I see) should be as easy as establish new connection using proxy...
Generating RFC 5280 conformant serial numbers is slightly treacherous. Section 4.1.2.2 dictates that conforming implementations "MUST NOT use serialNumber values longer than 20 octets". A seemingly obvious way to pick...
Is Martian able to capture HTTP/3 and/or QUIC? I am looking for a replacement for MITM Proxy and HTTP Toolkit, as neither of those are currently able to do that.
Hello,For golang,I am a newcomer.I want to know how to config authentication?I posted "{"proxyauth.Modifier":{}}" to the proxy , but it returned "parse: unknown modifier: proxyauth.Modifier",Can you show me the configuration?
Hello, I'm currently attempting to build an HTTP2 logging proxy using Martian. The test snippet below works fine with Firefox; however, when posting data with `curl` via the proxy, I...
During testing this proxy (and many other proxies written in go), can't pass cloudflare ddos protection in [**one specific website**](https://www.investing.com). Other websites protected by cloudflare (such as [phoronix](https://www.phoronix.com), [cloudflare blog](https://blog.cloudflare.com/introducing-strict-ssl-protecting-against-a-man-in-the-middle-attack-on-origin-traffic/),...
Version: v3.2.1 #### Problem `go.mod` file includes `google.golang.org/grpc/cmd/protoc-gen-go-grpc` but does not need it. This causes an issue with `go list` when V3.2.1 is used in another repo. #### Solution run...
```go package main import ( "log" "net" "net/http" "net/url" "github.com/google/martian/v3" ) func main() { p := martian.NewProxy() p.SetRoundTripper( &http.Transport{ Proxy: func(r *http.Request) (*url.URL, error) { log.Printf("%v", r.URL) return nil, nil...