MCPcopy Create free account
hub / github.com/53AI/53AIHub / buildWebFetchDialContext

Function buildWebFetchDialContext

api/service/tools/web_fetch.go:311–324  ·  view source on GitHub ↗
(resolver webFetchResolver, dialer webFetchDialer)

Source from the content-addressed store, hash-verified

309}
310
311func buildWebFetchDialContext(resolver webFetchResolver, dialer webFetchDialer) webFetchDialer {
312 return func(ctx context.Context, network, address string) (net.Conn, error) {
313 host, port, err := net.SplitHostPort(address)
314 if err != nil {
315 host = address
316 port = "80"
317 }
318 ip, err := resolveAndPickPublicIP(ctx, host, resolver)
319 if err != nil {
320 return nil, err
321 }
322 return dialer(ctx, network, net.JoinHostPort(ip.String(), port))
323 }
324}
325
326func checkWebFetchSSRF(ctx context.Context, hostname string, resolver webFetchResolver) error {
327 _, err := resolveAndPickPublicIP(ctx, hostname, resolver)

Callers 1

fetchWebContentFunction · 0.85

Calls 2

resolveAndPickPublicIPFunction · 0.85
StringMethod · 0.45

Tested by

no test coverage detected