From 9fe95669e1611ba8ecb5be59d29e033e4a25bd0a Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 6 Mar 2024 20:17:19 +0000
Subject: [PATCH] Bump github.com/cloudevents/sdk-go/v2 from 2.14.0 to 2.15.2

Bumps [github.com/cloudevents/sdk-go/v2](https://github.com/cloudevents/sdk-go) from 2.14.0 to 2.15.2.
- [Release notes](https://github.com/cloudevents/sdk-go/releases)
- [Commits](https://github.com/cloudevents/sdk-go/compare/v2.14.0...v2.15.2)
---
 go.mod                                        |   4 +-
 go.sum                                        |   8 +-
 .../cloudevents/sdk-go/v2/binding/doc.go      |  10 +-
 .../cloudevents/sdk-go/v2/binding/encoding.go |   4 +-
 .../sdk-go/v2/binding/event_message.go        |   4 +-
 .../cloudevents/sdk-go/v2/binding/message.go  |   2 +-
 .../cloudevents/sdk-go/v2/binding/spec/doc.go |   1 -
 .../cloudevents/sdk-go/v2/client/client.go    |   9 +-
 .../sdk-go/v2/client/http_receiver.go         |   2 +-
 .../cloudevents/sdk-go/v2/client/invoker.go   |  14 +-
 .../cloudevents/sdk-go/v2/client/options.go   |  13 ++
 .../cloudevents/sdk-go/v2/client/receiver.go  |   1 -
 .../cloudevents/sdk-go/v2/client/test/test.go |  23 ++-
 .../cloudevents/sdk-go/v2/event/event.go      |   7 +-
 .../sdk-go/v2/event/eventcontext_v03.go       |   3 +-
 .../cloudevents/sdk-go/v2/protocol/doc.go     |   1 -
 .../sdk-go/v2/protocol/http/context.go        |   2 +-
 .../sdk-go/v2/protocol/http/options.go        |   1 -
 .../sdk-go/v2/protocol/http/protocol.go       |   5 +-
 .../sdk-go/v2/protocol/http/protocol_retry.go |  59 +++----
 .../sdk-go/v2/protocol/http/write_request.go  |  15 +-
 .../sdk-go/v2/test/event_matchers.go          |  13 +-
 .../cloudevents/sdk-go/v2/types/doc.go        |  39 +++--
 .../cloudevents/sdk-go/v2/types/value.go      |   6 +-
 .../apis/networking/metadata_validation.go    |   1 -
 .../pkg/apis/networking/register.go           |  21 +--
 .../networking/pkg/config/config.go           | 149 +++++++-----------
 vendor/modules.txt                            |   6 +-
 28 files changed, 208 insertions(+), 215 deletions(-)

diff --git a/go.mod b/go.mod
index 30b5e7e3c..d93fb7cab 100644
--- a/go.mod
+++ b/go.mod
@@ -5,7 +5,7 @@ go 1.19
 require (
 	github.com/GoogleCloudPlatform/cloud-builders/gcs-fetcher v0.0.0-20191203181535-308b93ad1f39
 	github.com/ahmetb/gen-crd-api-reference-docs v0.3.1-0.20220720053627-e327d0730470
-	github.com/cloudevents/sdk-go/v2 v2.14.0
+	github.com/cloudevents/sdk-go/v2 v2.15.2
 	github.com/golang/protobuf v1.5.3
 	github.com/google/cel-go v0.19.0
 	github.com/google/go-cmp v0.6.0
@@ -150,7 +150,7 @@ require (
 	k8s.io/gengo v0.0.0-20221011193443-fad74ee6edd9 // indirect
 	k8s.io/klog v1.0.0 // indirect
 	k8s.io/utils v0.0.0-20230505201702-9f6742963106 // indirect
-	knative.dev/networking v0.0.0-20231017124814-2a7676e912b7 // indirect
+	knative.dev/networking v0.0.0-20231012062757-a5958051caf8 // indirect
 	sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect
 	sigs.k8s.io/structured-merge-diff/v4 v4.2.3 // indirect
 )
diff --git a/go.sum b/go.sum
index 47cab7b0e..6da609bcf 100644
--- a/go.sum
+++ b/go.sum
@@ -187,8 +187,8 @@ github.com/cloudevents/sdk-go/sql/v2 v2.8.0 h1:gWednxJHL0Ycf93XeEFyQxYj81A7b4eNw
 github.com/cloudevents/sdk-go/sql/v2 v2.8.0/go.mod h1:u9acNJbhmi1wnDJro4PEAqbr4N1LTCyEUClErxbPS1A=
 github.com/cloudevents/sdk-go/v2 v2.4.1/go.mod h1:MZiMwmAh5tGj+fPFvtHv9hKurKqXtdB9haJYMJ/7GJY=
 github.com/cloudevents/sdk-go/v2 v2.8.0/go.mod h1:GpCBmUj7DIRiDhVvsK5d6WCbgTWs8DxAWTRtAwQmIXs=
-github.com/cloudevents/sdk-go/v2 v2.14.0 h1:Nrob4FwVgi5L4tV9lhjzZcjYqFVyJzsA56CwPaPfv6s=
-github.com/cloudevents/sdk-go/v2 v2.14.0/go.mod h1:xDmKfzNjM8gBvjaF8ijFjM1VYOVUEeUfapHMUX1T5To=
+github.com/cloudevents/sdk-go/v2 v2.15.2 h1:54+I5xQEnI73RBhWHxbI1XJcqOFOVJN85vb41+8mHUc=
+github.com/cloudevents/sdk-go/v2 v2.15.2/go.mod h1:lL7kSWAE/V8VI4Wh0jbL2v/jvqsm6tjmaQBSvxcv4uE=
 github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc=
 github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk=
 github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk=
@@ -1883,8 +1883,8 @@ knative.dev/hack v0.0.0-20220224013837-e1785985d364/go.mod h1:PHt8x8yX5Z9pPquBEf
 knative.dev/hack v0.0.0-20220318020218-14f832e506f8/go.mod h1:PHt8x8yX5Z9pPquBEfIj0X66f8iWkWfR0S/sarACJrI=
 knative.dev/hack v0.0.0-20220328133751-f06773764ce3/go.mod h1:PHt8x8yX5Z9pPquBEfIj0X66f8iWkWfR0S/sarACJrI=
 knative.dev/hack/schema v0.0.0-20220328133751-f06773764ce3/go.mod h1:ffjwmdcrH5vN3mPhO8RrF2KfNnbHeCE2C60A+2cv3U0=
-knative.dev/networking v0.0.0-20231017124814-2a7676e912b7 h1:6+1icZuxiZO1paFZ4d/ysKWVG2M4WB7OxNJNyLG0P/E=
-knative.dev/networking v0.0.0-20231017124814-2a7676e912b7/go.mod h1:1gcHoIVG47ekQWjkddqRq+/7tWRh+CB9W4k/NAcdRbk=
+knative.dev/networking v0.0.0-20231012062757-a5958051caf8 h1:oZMbAAXyiDZUYoQ4qEjL6uxXrL1xBVfEyQJx8sP0XEg=
+knative.dev/networking v0.0.0-20231012062757-a5958051caf8/go.mod h1:XwZwqJoLZR92N6F/sj8lHxttnry/Kiz+OgG8+uVuYn0=
 knative.dev/pkg v0.0.0-20220318185521-e6e3cf03d765/go.mod h1:nKJ2L4o7or3j58eqMK843kbIM0SiYnAXXsisfEQECS8=
 knative.dev/pkg v0.0.0-20220325200448-1f7514acd0c2/go.mod h1:5xt0nzCwxvQ2N4w71smY7pYm5nVrQ8qnRsMinSLVpio=
 knative.dev/pkg v0.0.0-20231023150739-56bfe0dd9626 h1:qFE+UDBRg6cpF5LbA0sv1XK4XZ36Z7aTRCa+HcuxnNQ=
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/binding/doc.go b/vendor/github.com/cloudevents/sdk-go/v2/binding/doc.go
index 8fa999789..ff92f6836 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/binding/doc.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/binding/doc.go
@@ -4,7 +4,6 @@
 */
 
 /*
-
 Package binding defines interfaces for protocol bindings.
 
 NOTE: Most applications that emit or consume events should use the ../client
@@ -16,11 +15,11 @@ Receiver and a Sender belonging to different bindings. This is useful for
 intermediary applications that route or forward events, but not necessary for
 most "endpoint" applications that emit or consume events.
 
-Protocol Bindings
+# Protocol Bindings
 
 A protocol binding usually implements a Message, a Sender and Receiver, a StructuredWriter and a BinaryWriter (depending on the supported encodings of the protocol) and an Write[ProtocolMessage] method.
 
-Read and write events
+# Read and write events
 
 The core of this package is the binding.Message interface.
 Through binding.MessageReader It defines how to read a protocol specific message for an
@@ -49,7 +48,7 @@ The binding.Write method tries to preserve the structured/binary encoding, in or
 Messages can be eventually wrapped to change their behaviours and binding their lifecycle, like the binding.FinishMessage.
 Every Message wrapper implements the MessageWrapper interface
 
-Sender and Receiver
+# Sender and Receiver
 
 A Receiver receives protocol specific messages and wraps them to into binding.Message implementations.
 
@@ -60,9 +59,8 @@ Message and ExactlyOnceMessage provide methods to allow acknowledgments to
 propagate when a reliable messages is forwarded from a Receiver to a Sender.
 QoS 0 (unreliable), 1 (at-least-once) and 2 (exactly-once) are supported.
 
-Transport
+# Transport
 
 A binding implementation providing Sender and Receiver implementations can be used as a Transport through the BindingTransport adapter.
-
 */
 package binding
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/binding/encoding.go b/vendor/github.com/cloudevents/sdk-go/v2/binding/encoding.go
index 5070b7295..bb8f91424 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/binding/encoding.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/binding/encoding.go
@@ -11,9 +11,9 @@ import "errors"
 type Encoding int
 
 const (
-	// Binary encoding as specified in https://github.com/cloudevents/spec/blob/master/spec.md#message
+	// Binary encoding as specified in https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#message
 	EncodingBinary Encoding = iota
-	// Structured encoding as specified in https://github.com/cloudevents/spec/blob/master/spec.md#message
+	// Structured encoding as specified in https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#message
 	EncodingStructured
 	// Message is an instance of EventMessage or it contains EventMessage nested (through MessageWrapper)
 	EncodingEvent
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/binding/event_message.go b/vendor/github.com/cloudevents/sdk-go/v2/binding/event_message.go
index f82c729c4..83d613af4 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/binding/event_message.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/binding/event_message.go
@@ -22,7 +22,9 @@ const (
 
 // EventMessage type-converts a event.Event object to implement Message.
 // This allows local event.Event objects to be sent directly via Sender.Send()
-//     s.Send(ctx, binding.EventMessage(e))
+//
+//	s.Send(ctx, binding.EventMessage(e))
+//
 // When an event is wrapped into a EventMessage, the original event could be
 // potentially mutated. If you need to use the Event again, after wrapping it into
 // an Event message, you should copy it before
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/binding/message.go b/vendor/github.com/cloudevents/sdk-go/v2/binding/message.go
index e30e150c0..2fb136c62 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/binding/message.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/binding/message.go
@@ -66,7 +66,7 @@ type MessageMetadataReader interface {
 
 // Message is the interface to a binding-specific message containing an event.
 //
-// Reliable Delivery
+// # Reliable Delivery
 //
 // There are 3 reliable qualities of service for messages:
 //
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/binding/spec/doc.go b/vendor/github.com/cloudevents/sdk-go/v2/binding/spec/doc.go
index 44c0b3145..da5bc9f85 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/binding/spec/doc.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/binding/spec/doc.go
@@ -8,6 +8,5 @@ Package spec provides spec-version metadata.
 
 For use by code that maps events using (prefixed) attribute name strings.
 Supports handling multiple spec versions uniformly.
-
 */
 package spec
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/client/client.go b/vendor/github.com/cloudevents/sdk-go/v2/client/client.go
index ea8fbfbb4..452304ffd 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/client/client.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/client/client.go
@@ -98,6 +98,7 @@ type ceClient struct {
 	eventDefaulterFns         []EventDefaulter
 	pollGoroutines            int
 	blockingCallback          bool
+	ackMalformedEvent         bool
 }
 
 func (c *ceClient) applyOptions(opts ...Option) error {
@@ -202,7 +203,13 @@ func (c *ceClient) StartReceiver(ctx context.Context, fn interface{}) error {
 		return fmt.Errorf("client already has a receiver")
 	}
 
-	invoker, err := newReceiveInvoker(fn, c.observabilityService, c.inboundContextDecorators, c.eventDefaulterFns...)
+	invoker, err := newReceiveInvoker(
+		fn,
+		c.observabilityService,
+		c.inboundContextDecorators,
+		c.eventDefaulterFns,
+		c.ackMalformedEvent,
+	)
 	if err != nil {
 		return err
 	}
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/client/http_receiver.go b/vendor/github.com/cloudevents/sdk-go/v2/client/http_receiver.go
index 94a4b4e65..672581b58 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/client/http_receiver.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/client/http_receiver.go
@@ -14,7 +14,7 @@ import (
 )
 
 func NewHTTPReceiveHandler(ctx context.Context, p *thttp.Protocol, fn interface{}) (*EventReceiver, error) {
-	invoker, err := newReceiveInvoker(fn, noopObservabilityService{}, nil) //TODO(slinkydeveloper) maybe not nil?
+	invoker, err := newReceiveInvoker(fn, noopObservabilityService{}, nil, nil, false) //TODO(slinkydeveloper) maybe not nil?
 	if err != nil {
 		return nil, err
 	}
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/client/invoker.go b/vendor/github.com/cloudevents/sdk-go/v2/client/invoker.go
index 403fb0f55..a3080b007 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/client/invoker.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/client/invoker.go
@@ -23,11 +23,18 @@ type Invoker interface {
 
 var _ Invoker = (*receiveInvoker)(nil)
 
-func newReceiveInvoker(fn interface{}, observabilityService ObservabilityService, inboundContextDecorators []func(context.Context, binding.Message) context.Context, fns ...EventDefaulter) (Invoker, error) {
+func newReceiveInvoker(
+	fn interface{},
+	observabilityService ObservabilityService,
+	inboundContextDecorators []func(context.Context, binding.Message) context.Context,
+	fns []EventDefaulter,
+	ackMalformedEvent bool,
+) (Invoker, error) {
 	r := &receiveInvoker{
 		eventDefaulterFns:        fns,
 		observabilityService:     observabilityService,
 		inboundContextDecorators: inboundContextDecorators,
+		ackMalformedEvent:        ackMalformedEvent,
 	}
 
 	if fn, err := receiver(fn); err != nil {
@@ -44,6 +51,7 @@ type receiveInvoker struct {
 	observabilityService     ObservabilityService
 	eventDefaulterFns        []EventDefaulter
 	inboundContextDecorators []func(context.Context, binding.Message) context.Context
+	ackMalformedEvent        bool
 }
 
 func (r *receiveInvoker) Invoke(ctx context.Context, m binding.Message, respFn protocol.ResponseFn) (err error) {
@@ -58,13 +66,13 @@ func (r *receiveInvoker) Invoke(ctx context.Context, m binding.Message, respFn p
 	switch {
 	case eventErr != nil && r.fn.hasEventIn:
 		r.observabilityService.RecordReceivedMalformedEvent(ctx, eventErr)
-		return respFn(ctx, nil, protocol.NewReceipt(false, "failed to convert Message to Event: %w", eventErr))
+		return respFn(ctx, nil, protocol.NewReceipt(r.ackMalformedEvent, "failed to convert Message to Event: %w", eventErr))
 	case r.fn != nil:
 		// Check if event is valid before invoking the receiver function
 		if e != nil {
 			if validationErr := e.Validate(); validationErr != nil {
 				r.observabilityService.RecordReceivedMalformedEvent(ctx, validationErr)
-				return respFn(ctx, nil, protocol.NewReceipt(false, "validation error in incoming event: %w", validationErr))
+				return respFn(ctx, nil, protocol.NewReceipt(r.ackMalformedEvent, "validation error in incoming event: %w", validationErr))
 			}
 		}
 
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/client/options.go b/vendor/github.com/cloudevents/sdk-go/v2/client/options.go
index 938478162..44394be34 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/client/options.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/client/options.go
@@ -126,3 +126,16 @@ func WithBlockingCallback() Option {
 		return nil
 	}
 }
+
+// WithAckMalformedevents causes malformed events received within StartReceiver to be acknowledged
+// rather than being permanently not-acknowledged. This can be useful when a protocol does not
+// provide a responder implementation and would otherwise cause the receiver to be partially or
+// fully stuck.
+func WithAckMalformedEvent() Option {
+	return func(i interface{}) error {
+		if c, ok := i.(*ceClient); ok {
+			c.ackMalformedEvent = true
+		}
+		return nil
+	}
+}
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/client/receiver.go b/vendor/github.com/cloudevents/sdk-go/v2/client/receiver.go
index b1ab532d7..2cc0e6497 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/client/receiver.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/client/receiver.go
@@ -57,7 +57,6 @@ var (
 // * func(event.Event) (*event.Event, protocol.Result)
 // * func(context.Context, event.Event) *event.Event
 // * func(context.Context, event.Event) (*event.Event, protocol.Result)
-//
 func receiver(fn interface{}) (*receiverFn, error) {
 	fnType := reflect.TypeOf(fn)
 	if fnType.Kind() != reflect.Func {
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/client/test/test.go b/vendor/github.com/cloudevents/sdk-go/v2/client/test/test.go
index 5124cfd6c..d855af410 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/client/test/test.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/client/test/test.go
@@ -10,6 +10,7 @@ import (
 	"context"
 	"sync"
 	"testing"
+	"time"
 
 	"github.com/cloudevents/sdk-go/v2/protocol"
 
@@ -24,11 +25,21 @@ import (
 func SendReceive(t *testing.T, protocolFactory func() interface{}, in event.Event, outAssert func(e event.Event), opts ...client.Option) {
 	t.Helper()
 	pf := protocolFactory()
-	c, err := client.New(pf, opts...)
+
+	// Create a sender and receiver client since we can't assume it's safe
+	// to use the same one for both roles
+
+	sender, err := client.New(pf, opts...)
+	require.NoError(t, err)
+
+	receiver, err := client.New(pf, opts...)
 	require.NoError(t, err)
+
 	wg := sync.WaitGroup{}
 	wg.Add(2)
 
+	receiverReady := make(chan bool)
+
 	go func() {
 		ctx, cancel := context.WithCancel(context.TODO())
 		inCh := make(chan event.Event)
@@ -38,7 +49,8 @@ func SendReceive(t *testing.T, protocolFactory func() interface{}, in event.Even
 			wg.Done()
 		}(inCh)
 		go func(channel chan event.Event) {
-			err := c.StartReceiver(ctx, func(e event.Event) {
+			receiverReady <- true
+			err := receiver.StartReceiver(ctx, func(e event.Event) {
 				channel <- e
 			})
 			if err != nil {
@@ -49,9 +61,14 @@ func SendReceive(t *testing.T, protocolFactory func() interface{}, in event.Even
 		outAssert(e)
 	}()
 
+	// Wait for receiver to be setup. Not 100% perefect but the channel + the
+	// sleep should do it
+	<-receiverReady
+	time.Sleep(2 * time.Second)
+
 	go func() {
 		defer wg.Done()
-		err := c.Send(context.Background(), in)
+		err := sender.Send(context.Background(), in)
 		require.NoError(t, err)
 	}()
 
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/event/event.go b/vendor/github.com/cloudevents/sdk-go/v2/event/event.go
index 94b5aa0ad..52495f9a3 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/event/event.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/event/event.go
@@ -55,13 +55,12 @@ func New(version ...string) Event {
 // Use functions in the types package to convert extension values.
 // For example replace this:
 //
-//     var i int
-//     err := e.ExtensionAs("foo", &i)
+//	var i int
+//	err := e.ExtensionAs("foo", &i)
 //
 // With this:
 //
-//     i, err := types.ToInteger(e.Extensions["foo"])
-//
+//	i, err := types.ToInteger(e.Extensions["foo"])
 func (e Event) ExtensionAs(name string, obj interface{}) error {
 	return e.Context.ExtensionAs(name, obj)
 }
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/event/eventcontext_v03.go b/vendor/github.com/cloudevents/sdk-go/v2/event/eventcontext_v03.go
index c511c81c4..3f0505547 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/event/eventcontext_v03.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/event/eventcontext_v03.go
@@ -179,7 +179,8 @@ func (ec EventContextV03) AsV1() *EventContextV1 {
 }
 
 // Validate returns errors based on requirements from the CloudEvents spec.
-// For more details, see https://github.com/cloudevents/spec/blob/master/spec.md
+// For more details, see
+// https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md
 // As of Feb 26, 2019, commit 17c32ea26baf7714ad027d9917d03d2fff79fc7e
 // + https://github.com/cloudevents/spec/pull/387 -> datacontentencoding
 // + https://github.com/cloudevents/spec/pull/406 -> subject
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/protocol/doc.go b/vendor/github.com/cloudevents/sdk-go/v2/protocol/doc.go
index f826a1841..3c771fc5c 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/protocol/doc.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/protocol/doc.go
@@ -21,6 +21,5 @@ Available protocols:
 * Nats
 * Nats Streaming (stan)
 * Google PubSub
-
 */
 package protocol
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/protocol/http/context.go b/vendor/github.com/cloudevents/sdk-go/v2/protocol/http/context.go
index 0eec396a1..e973738c6 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/protocol/http/context.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/protocol/http/context.go
@@ -24,7 +24,7 @@ type RequestData struct {
 }
 
 // WithRequestDataAtContext uses the http.Request to add RequestData
-//  information to the Context.
+// information to the Context.
 func WithRequestDataAtContext(ctx context.Context, r *nethttp.Request) context.Context {
 	if r == nil {
 		return ctx
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/protocol/http/options.go b/vendor/github.com/cloudevents/sdk-go/v2/protocol/http/options.go
index 5e400905a..6582af3ea 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/protocol/http/options.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/protocol/http/options.go
@@ -158,7 +158,6 @@ func WithMethod(method string) Option {
 	}
 }
 
-//
 // Middleware is a function that takes an existing http.Handler and wraps it in middleware,
 // returning the wrapped http.Handler.
 type Middleware func(next nethttp.Handler) nethttp.Handler
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/protocol/http/protocol.go b/vendor/github.com/cloudevents/sdk-go/v2/protocol/http/protocol.go
index dba6fd7ba..7ee3b8fe1 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/protocol/http/protocol.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/protocol/http/protocol.go
@@ -102,7 +102,10 @@ func New(opts ...Option) (*Protocol, error) {
 	}
 
 	if p.Client == nil {
-		p.Client = http.DefaultClient
+		// This is how http.DefaultClient is initialized. We do not just use
+		// that because when WithRoundTripper is used, it will change the client's
+		// transport, which would cause that transport to be used process-wide.
+		p.Client = &http.Client{}
 	}
 
 	if p.roundTripper != nil {
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/protocol/http/protocol_retry.go b/vendor/github.com/cloudevents/sdk-go/v2/protocol/http/protocol_retry.go
index 71e7346f3..21fc7e9b3 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/protocol/http/protocol_retry.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/protocol/http/protocol_retry.go
@@ -10,9 +10,7 @@ import (
 	"context"
 	"errors"
 	"io"
-	"io/ioutil"
 	"net/http"
-	"net/url"
 	"time"
 
 	"go.uber.org/zap"
@@ -52,7 +50,7 @@ func (p *Protocol) doOnce(req *http.Request) (binding.Message, protocol.Result)
 }
 
 func (p *Protocol) doWithRetry(ctx context.Context, params *cecontext.RetryParams, req *http.Request) (binding.Message, error) {
-	then := time.Now()
+	start := time.Now()
 	retry := 0
 	results := make([]protocol.Result, 0)
 
@@ -67,7 +65,7 @@ func (p *Protocol) doWithRetry(ctx context.Context, params *cecontext.RetryParam
 				cecontext.LoggerFrom(ctx).Warnw("could not close request body", zap.Error(err))
 			}
 		}()
-		body, err = ioutil.ReadAll(req.Body)
+		body, err = io.ReadAll(req.Body)
 		if err != nil {
 			panic(err)
 		}
@@ -79,51 +77,34 @@ func (p *Protocol) doWithRetry(ctx context.Context, params *cecontext.RetryParam
 
 		// Fast track common case.
 		if protocol.IsACK(result) {
-			return msg, NewRetriesResult(result, retry, then, results)
+			return msg, NewRetriesResult(result, retry, start, results)
 		}
 
-		// Try again?
-		//
-		// Make sure the error was something we should retry.
-
-		{
-			var uErr *url.Error
-			if errors.As(result, &uErr) {
-				goto DoBackoff
+		var httpResult *Result
+		if errors.As(result, &httpResult) {
+			sc := httpResult.StatusCode
+			if !p.isRetriableFunc(sc) {
+				cecontext.LoggerFrom(ctx).Debugw("status code not retryable, will not try again",
+					zap.Error(httpResult),
+					zap.Int("statusCode", sc))
+				return msg, NewRetriesResult(result, retry, start, results)
 			}
 		}
 
-		{
-			var httpResult *Result
-			if errors.As(result, &httpResult) {
-				sc := httpResult.StatusCode
-				if p.isRetriableFunc(sc) {
-					// retry!
-					goto DoBackoff
-				} else {
-					// Permanent error
-					cecontext.LoggerFrom(ctx).Debugw("status code not retryable, will not try again",
-						zap.Error(httpResult),
-						zap.Int("statusCode", sc))
-					return msg, NewRetriesResult(result, retry, then, results)
-				}
-			}
-		}
-
-	DoBackoff:
-		resetBody(req, body)
-
-		// Wait for the correct amount of backoff time.
-
 		// total tries = retry + 1
-		if err := params.Backoff(ctx, retry+1); err != nil {
+		if err = params.Backoff(ctx, retry+1); err != nil {
 			// do not try again.
 			cecontext.LoggerFrom(ctx).Debugw("backoff error, will not try again", zap.Error(err))
-			return msg, NewRetriesResult(result, retry, then, results)
+			return msg, NewRetriesResult(result, retry, start, results)
 		}
 
 		retry++
+		resetBody(req, body)
 		results = append(results, result)
+		if msg != nil {
+			// avoid leak, forget message, ignore error
+			_ = msg.Finish(nil)
+		}
 	}
 }
 
@@ -134,12 +115,12 @@ func resetBody(req *http.Request, body []byte) {
 		return
 	}
 
-	req.Body = ioutil.NopCloser(bytes.NewReader(body))
+	req.Body = io.NopCloser(bytes.NewReader(body))
 
 	// do not modify existing GetBody function
 	if req.GetBody == nil {
 		req.GetBody = func() (io.ReadCloser, error) {
-			return ioutil.NopCloser(bytes.NewReader(body)), nil
+			return io.NopCloser(bytes.NewReader(body)), nil
 		}
 	}
 }
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/protocol/http/write_request.go b/vendor/github.com/cloudevents/sdk-go/v2/protocol/http/write_request.go
index 43ad36180..f22259a3a 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/protocol/http/write_request.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/protocol/http/write_request.go
@@ -9,7 +9,6 @@ import (
 	"bytes"
 	"context"
 	"io"
-	"io/ioutil"
 	"net/http"
 	"strings"
 
@@ -58,7 +57,7 @@ func (b *httpRequestWriter) SetData(data io.Reader) error {
 func (b *httpRequestWriter) setBody(body io.Reader) error {
 	rc, ok := body.(io.ReadCloser)
 	if !ok && body != nil {
-		rc = ioutil.NopCloser(body)
+		rc = io.NopCloser(body)
 	}
 	b.Body = rc
 	if body != nil {
@@ -68,21 +67,21 @@ func (b *httpRequestWriter) setBody(body io.Reader) error {
 			buf := v.Bytes()
 			b.GetBody = func() (io.ReadCloser, error) {
 				r := bytes.NewReader(buf)
-				return ioutil.NopCloser(r), nil
+				return io.NopCloser(r), nil
 			}
 		case *bytes.Reader:
 			b.ContentLength = int64(v.Len())
 			snapshot := *v
 			b.GetBody = func() (io.ReadCloser, error) {
 				r := snapshot
-				return ioutil.NopCloser(&r), nil
+				return io.NopCloser(&r), nil
 			}
 		case *strings.Reader:
 			b.ContentLength = int64(v.Len())
 			snapshot := *v
 			b.GetBody = func() (io.ReadCloser, error) {
 				r := snapshot
-				return ioutil.NopCloser(&r), nil
+				return io.NopCloser(&r), nil
 			}
 		default:
 			// This is where we'd set it to -1 (at least
@@ -137,5 +136,7 @@ func (b *httpRequestWriter) SetExtension(name string, value interface{}) error {
 	return nil
 }
 
-var _ binding.StructuredWriter = (*httpRequestWriter)(nil) // Test it conforms to the interface
-var _ binding.BinaryWriter = (*httpRequestWriter)(nil)     // Test it conforms to the interface
+var (
+	_ binding.StructuredWriter = (*httpRequestWriter)(nil) // Test it conforms to the interface
+	_ binding.BinaryWriter     = (*httpRequestWriter)(nil) // Test it conforms to the interface
+)
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/test/event_matchers.go b/vendor/github.com/cloudevents/sdk-go/v2/test/event_matchers.go
index 712fc7b0b..a849cee18 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/test/event_matchers.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/test/event_matchers.go
@@ -184,6 +184,18 @@ func HasExtensions(ext map[string]interface{}) EventMatcher {
 	}
 }
 
+// HasExtensionKeys checks if the event contains the provided keys from its extensions
+func HasExtensionKeys(keys []string) EventMatcher {
+	return func(have event.Event) error {
+		for _, k := range keys {
+			if _, ok := have.Extensions()[k]; !ok {
+				return fmt.Errorf("expecting extension key %q", k)
+			}
+		}
+		return nil
+	}
+}
+
 // HasExtension checks if the event contains the provided extension
 func HasExtension(key string, value interface{}) EventMatcher {
 	return HasExtensions(map[string]interface{}{key: value})
@@ -277,7 +289,6 @@ func HasAttributeKind(kind spec.Kind, value interface{}) EventMatcher {
 // LICENSE: MIT License
 
 func isEmpty(object interface{}) bool {
-
 	// get nil case out of the way
 	if object == nil {
 		return true
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/types/doc.go b/vendor/github.com/cloudevents/sdk-go/v2/types/doc.go
index cf7a94f35..3a0a595a1 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/types/doc.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/types/doc.go
@@ -11,25 +11,25 @@ type has a corresponding native Go type and a canonical string encoding.  The
 native Go types used to represent the CloudEvents types are:
 bool, int32, string, []byte, *url.URL, time.Time
 
- +----------------+----------------+-----------------------------------+
- |CloudEvents Type|Native Type     |Convertible From                   |
- +================+================+===================================+
- |Bool            |bool            |bool                               |
- +----------------+----------------+-----------------------------------+
- |Integer         |int32           |Any numeric type with value in     |
- |                |                |range of int32                     |
- +----------------+----------------+-----------------------------------+
- |String          |string          |string                             |
- +----------------+----------------+-----------------------------------+
- |Binary          |[]byte          |[]byte                             |
- +----------------+----------------+-----------------------------------+
- |URI-Reference   |*url.URL        |url.URL, types.URIRef, types.URI   |
- +----------------+----------------+-----------------------------------+
- |URI             |*url.URL        |url.URL, types.URIRef, types.URI   |
- |                |                |Must be an absolute URI.           |
- +----------------+----------------+-----------------------------------+
- |Timestamp       |time.Time       |time.Time, types.Timestamp         |
- +----------------+----------------+-----------------------------------+
+	+----------------+----------------+-----------------------------------+
+	|CloudEvents Type|Native Type     |Convertible From                   |
+	+================+================+===================================+
+	|Bool            |bool            |bool                               |
+	+----------------+----------------+-----------------------------------+
+	|Integer         |int32           |Any numeric type with value in     |
+	|                |                |range of int32                     |
+	+----------------+----------------+-----------------------------------+
+	|String          |string          |string                             |
+	+----------------+----------------+-----------------------------------+
+	|Binary          |[]byte          |[]byte                             |
+	+----------------+----------------+-----------------------------------+
+	|URI-Reference   |*url.URL        |url.URL, types.URIRef, types.URI   |
+	+----------------+----------------+-----------------------------------+
+	|URI             |*url.URL        |url.URL, types.URIRef, types.URI   |
+	|                |                |Must be an absolute URI.           |
+	+----------------+----------------+-----------------------------------+
+	|Timestamp       |time.Time       |time.Time, types.Timestamp         |
+	+----------------+----------------+-----------------------------------+
 
 Extension attributes may be stored as a native type or a canonical string.  The
 To<Type> functions will convert to the desired <Type> from any convertible type
@@ -41,6 +41,5 @@ canonical strings.
 Note are no Parse or Format functions for URL or string. For URL use the
 standard url.Parse() and url.URL.String(). The canonical string format of a
 string is the string itself.
-
 */
 package types
diff --git a/vendor/github.com/cloudevents/sdk-go/v2/types/value.go b/vendor/github.com/cloudevents/sdk-go/v2/types/value.go
index f643d0aa5..14004d3e1 100644
--- a/vendor/github.com/cloudevents/sdk-go/v2/types/value.go
+++ b/vendor/github.com/cloudevents/sdk-go/v2/types/value.go
@@ -86,7 +86,7 @@ func Format(v interface{}) (string, error) {
 }
 
 // Validate v is a valid CloudEvents attribute value, convert it to one of:
-//     bool, int32, string, []byte, types.URI, types.URIRef, types.Timestamp
+// bool, int32, string, []byte, types.URI, types.URIRef, types.Timestamp
 func Validate(v interface{}) (interface{}, error) {
 	switch v := v.(type) {
 	case bool, int32, string, []byte:
@@ -151,7 +151,9 @@ func Validate(v interface{}) (interface{}, error) {
 }
 
 // Clone v clones a CloudEvents attribute value, which is one of the valid types:
-//     bool, int32, string, []byte, types.URI, types.URIRef, types.Timestamp
+//
+//	bool, int32, string, []byte, types.URI, types.URIRef, types.Timestamp
+//
 // Returns the same type
 // Panics if the type is not valid
 func Clone(v interface{}) interface{} {
diff --git a/vendor/knative.dev/networking/pkg/apis/networking/metadata_validation.go b/vendor/knative.dev/networking/pkg/apis/networking/metadata_validation.go
index fbd6c155f..85f69717f 100644
--- a/vendor/knative.dev/networking/pkg/apis/networking/metadata_validation.go
+++ b/vendor/knative.dev/networking/pkg/apis/networking/metadata_validation.go
@@ -29,7 +29,6 @@ var (
 		IngressClassAnnotationKey,
 		CertificateClassAnnotationKey,
 		DisableAutoTLSAnnotationKey,
-		DisableExternalDomainTLSAnnotationKey,
 		HTTPOptionAnnotationKey,
 
 		IngressClassAnnotationAltKey,
diff --git a/vendor/knative.dev/networking/pkg/apis/networking/register.go b/vendor/knative.dev/networking/pkg/apis/networking/register.go
index e88e9b5c0..f7bdd81d7 100644
--- a/vendor/knative.dev/networking/pkg/apis/networking/register.go
+++ b/vendor/knative.dev/networking/pkg/apis/networking/register.go
@@ -70,17 +70,11 @@ const (
 
 	// DisableAutoTLSAnnotationKey is the annotation key attached to a Knative Service/DomainMapping
 	// to indicate that AutoTLS should not be enabled for it.
-	// Deprecated: use DisableExternalDomainTLSAnnotationKey instead.
 	DisableAutoTLSAnnotationKey = PublicGroupName + "/disableAutoTLS"
 
 	// DisableAutoTLSAnnotationAltKey is an alternative casing to DisableAutoTLSAnnotationKey
-	// Deprecated: use DisableExternalDomainTLSAnnotationKey instead.
 	DisableAutoTLSAnnotationAltKey = PublicGroupName + "/disable-auto-tls"
 
-	// DisableExternalDomainTLSAnnotationKey is the annotation key attached to a Knative Service/DomainMapping
-	// to indicate that external-domain-tls should not be enabled for it.
-	DisableExternalDomainTLSAnnotationKey = PublicGroupName + "/disable-external-domain-tls"
-
 	// HTTPOptionAnnotationKey is the annotation key attached to a Knative Service/DomainMapping
 	// to indicate the HTTP option of it.
 	HTTPOptionAnnotationKey = PublicGroupName + "/httpOption"
@@ -136,15 +130,9 @@ var (
 		CertificateClassAnnotationAltKey,
 	}
 
-	// Deprecated: use DisableExternalDomainTLSAnnotation instead.
-	DisableAutoTLSAnnotation = DisableExternalDomainTLSAnnotation
-
-	DisableExternalDomainTLSAnnotation = kmap.KeyPriority{
-		// backward compatibility
+	DisableAutoTLSAnnotation = kmap.KeyPriority{
 		DisableAutoTLSAnnotationKey,
 		DisableAutoTLSAnnotationAltKey,
-
-		DisableExternalDomainTLSAnnotationKey,
 	}
 
 	HTTPProtocolAnnotation = kmap.KeyPriority{
@@ -165,9 +153,6 @@ func GetHTTPProtocol(annotations map[string]string) (val string) {
 	return HTTPProtocolAnnotation.Value(annotations)
 }
 
-// Deprecated: use GetDisableExternalDomainTLS instead.
-var GetDisableAutoTLS = GetDisableExternalDomainTLS
-
-func GetDisableExternalDomainTLS(annotations map[string]string) (val string) {
-	return DisableExternalDomainTLSAnnotation.Value(annotations)
+func GetDisableAutoTLS(annotations map[string]string) (val string) {
+	return DisableAutoTLSAnnotation.Value(annotations)
 }
diff --git a/vendor/knative.dev/networking/pkg/config/config.go b/vendor/knative.dev/networking/pkg/config/config.go
index 028937067..47cf440cd 100644
--- a/vendor/knative.dev/networking/pkg/config/config.go
+++ b/vendor/knative.dev/networking/pkg/config/config.go
@@ -25,7 +25,6 @@ import (
 	"strings"
 	"text/template"
 
-	corev1 "k8s.io/api/core/v1"
 	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
 	"k8s.io/utils/lru"
 	cm "knative.dev/pkg/configmap"
@@ -70,12 +69,17 @@ const (
 	// ServingInternalCertName is the name of secret contains certificates in serving
 	// system namespace.
 	//
-	// Deprecated: ServingInternalCertName is deprecated. Use ServingRoutingCertName instead.
+	// Deprecated: ServingInternalCertName is deprecated.
+	// (use ServingControlCertName or ServingRoutingCertName instead)
 	ServingInternalCertName = "knative-serving-certs"
 
 	// ServingRoutingCertName is the name of secret contains certificates for Routing data in serving
 	// system namespace. (Used by Ingress GWs and Activator)
 	ServingRoutingCertName = "routing-serving-certs"
+
+	// ServingControlCertName is the name of secret contains certificates for Control data in serving
+	// system namespace. (Used by Autoscaler and Ingress control for example)
+	ServingControlCertName = "control-serving-certs"
 )
 
 // Config Keys
@@ -87,17 +91,8 @@ const (
 
 	// AutoTLSKey is the name of the configuration entry
 	// that specifies enabling auto-TLS or not.
-	// Deprecated: please use ExternalDomainTLSKey.
 	AutoTLSKey = "auto-tls"
 
-	// ExternalDomainTLSKey is the name of the configuration entry
-	// that specifies if external-domain-tls is enabled or not.
-	ExternalDomainTLSKey = "external-domain-tls"
-
-	// ClusterLocalDomainTLSKey is the name of the configuration entry
-	// that specifies if cluster-local-domain-tls is enabled or not.
-	ClusterLocalDomainTLSKey = "cluster-local-domain-tls"
-
 	// DefaultCertificateClassKey is the name of the configuration entry
 	// that specifies the default Certificate.
 	DefaultCertificateClassKey = "certificate-class"
@@ -138,26 +133,39 @@ const (
 	// hostname for a Route's tag.
 	TagTemplateKey = "tag-template"
 
+	// InternalEncryptionKey is deprecated and replaced by InternalDataplaneTrustKey and internal-controlplane-trust
 	// InternalEncryptionKey is the name of the configuration whether
 	// internal traffic is encrypted or not.
-	// Deprecated: please use SystemInternalTLSKey.
 	InternalEncryptionKey = "internal-encryption"
 
-	// SystemInternalTLSKey is the name of the configuration whether
-	// traffic between Knative system components is encrypted or not.
-	SystemInternalTLSKey = "system-internal-tls"
+	// DataplaneTrustKey is the name of the configuration entry
+	// defining the level of trust used for data plane traffic.
+	DataplaneTrustKey = "dataplane-trust"
+
+	// ControlplaneTrustKey is the name of the configuration entry
+	// defining the level of trust used for control plane traffic.
+	ControlplaneTrustKey = "controlplane-trust"
 )
 
-// EncryptionConfig indicates the encryption configuration
-// used for TLS connections.
-type EncryptionConfig string
+// HTTPProtocol indicates a type of HTTP endpoint behavior
+// that Knative ingress could take.
+type Trust string
 
 const (
-	// EncryptionDisabled - TLS not used.
-	EncryptionDisabled EncryptionConfig = "disabled"
+	// TrustDisabled - TLS not used
+	TrustDisabled Trust = "disabled"
 
-	// EncryptionEnabled - TLS used. The client verifies the servers certificate.
-	EncryptionEnabled EncryptionConfig = "enabled"
+	// TrustMinimal - TLS used. We verify that the server is using Knative certificates
+	TrustMinimal Trust = "minimal"
+
+	// TrustEnabled - TLS used. We verify that the server is using Knative certificates of the right namespace
+	TrustEnabled Trust = "enabled"
+
+	// TrustMutual - same as TrustEnabled and we also verify the identity of the client.
+	TrustMutual Trust = "mutual"
+
+	// TrustIdentity - same as TrustMutual and we also add a trusted sender identity to the message.
+	TrustIdentity Trust = "identity"
 )
 
 // HTTPProtocol indicates a type of HTTP endpoint behavior
@@ -235,12 +243,8 @@ type Config struct {
 	TagTemplate string
 
 	// AutoTLS specifies if auto-TLS is enabled or not.
-	// Deprecated: please use ExternalDomainTLS instead.
 	AutoTLS bool
 
-	// ExternalDomainTLS specifies if external-domain-tls is enabled or not.
-	ExternalDomainTLS bool
-
 	// HTTPProtocol specifics the behavior of HTTP endpoint of Knative
 	// ingress.
 	HTTPProtocol HTTPProtocol
@@ -288,15 +292,15 @@ type Config struct {
 	// not enabled. Defaults to "http".
 	DefaultExternalScheme string
 
+	// Deprecated - replaced with InternalDataplaneTrust and InternalControlplaneTrust
 	// InternalEncryption specifies whether internal traffic is encrypted or not.
-	// Deprecated: please use SystemInternalTLSKey instead.
 	InternalEncryption bool
 
-	// SystemInternalTLS specifies whether knative internal traffic is encrypted or not.
-	SystemInternalTLS EncryptionConfig
+	// DataplaneTrust specifies the level of trust used for date plane.
+	DataplaneTrust Trust
 
-	// ClusterLocalDomainTLS specifies whether cluster-local traffic is encrypted or not.
-	ClusterLocalDomainTLS EncryptionConfig
+	// ControlplaneTrust specifies the level of trust used for control plane.
+	ControlplaneTrust Trust
 }
 
 func defaultConfig() *Config {
@@ -306,26 +310,17 @@ func defaultConfig() *Config {
 		DomainTemplate:                DefaultDomainTemplate,
 		TagTemplate:                   DefaultTagTemplate,
 		AutoTLS:                       false,
-		ExternalDomainTLS:             false,
 		NamespaceWildcardCertSelector: nil,
 		HTTPProtocol:                  HTTPEnabled,
 		AutocreateClusterDomainClaims: false,
 		DefaultExternalScheme:         "http",
 		MeshCompatibilityMode:         MeshCompatibilityModeAuto,
 		InternalEncryption:            false,
-		SystemInternalTLS:             EncryptionDisabled,
-		ClusterLocalDomainTLS:         EncryptionDisabled,
+		DataplaneTrust:                TrustDisabled,
+		ControlplaneTrust:             TrustDisabled,
 	}
 }
 
-// NewConfigFromConfigMap returns a Config for the given configmap
-func NewConfigFromConfigMap(config *corev1.ConfigMap) (*Config, error) {
-	if config == nil {
-		return NewConfigFromMap(nil)
-	}
-	return NewConfigFromMap(config.Data)
-}
-
 // NewConfigFromMap creates a Config from the supplied data.
 func NewConfigFromMap(data map[string]string) (*Config, error) {
 	nc := defaultConfig()
@@ -379,23 +374,12 @@ func NewConfigFromMap(data map[string]string) (*Config, error) {
 	}
 	templateCache.Add(nc.TagTemplate, t)
 
-	// external-domain-tls and auto-tls
 	if val, ok := data["autoTLS"]; ok {
 		nc.AutoTLS = strings.EqualFold(val, "enabled")
 	}
 	if val, ok := data[AutoTLSKey]; ok {
 		nc.AutoTLS = strings.EqualFold(val, "enabled")
 	}
-	if val, ok := data[ExternalDomainTLSKey]; ok {
-		nc.ExternalDomainTLS = strings.EqualFold(val, "enabled")
-
-		// The new key takes precedence, but we support compatibility
-		// for code that has not updated to the new field yet.
-		nc.AutoTLS = nc.ExternalDomainTLS
-	} else {
-		// backward compatibility: if the new key is not set, use the value from the old key
-		nc.ExternalDomainTLS = nc.AutoTLS
-	}
 
 	var httpProtocol string
 	if val, ok := data["httpProtocol"]; ok {
@@ -417,54 +401,41 @@ func NewConfigFromMap(data map[string]string) (*Config, error) {
 		return nil, fmt.Errorf("httpProtocol %s in config-network ConfigMap is not supported", data[HTTPProtocolKey])
 	}
 
-	switch strings.ToLower(data[SystemInternalTLSKey]) {
-	case "", string(EncryptionDisabled):
-		// If SystemInternalTLSKey is not set in the config-network, default is already
-		// set to EncryptionDisabled.
+	switch strings.ToLower(data[DataplaneTrustKey]) {
+	case "", string(TrustDisabled):
+		// If DataplaneTrus is not set in the config-network, default is already
+		// set to TrustDisabled.
 		if nc.InternalEncryption {
 			// Backward compatibility
-			nc.SystemInternalTLS = EncryptionEnabled
+			nc.DataplaneTrust = TrustMinimal
 		}
-	case string(EncryptionEnabled):
-		nc.SystemInternalTLS = EncryptionEnabled
-
-		// The new key takes precedence, but we support compatibility
-		// for code that has not updated to the new field yet.
-		nc.InternalEncryption = true
+	case string(TrustMinimal):
+		nc.DataplaneTrust = TrustMinimal
+	case string(TrustEnabled):
+		nc.DataplaneTrust = TrustEnabled
+	case string(TrustMutual):
+		nc.DataplaneTrust = TrustMutual
+	case string(TrustIdentity):
+		nc.DataplaneTrust = TrustIdentity
 	default:
-		return nil, fmt.Errorf("%s with value: %q in config-network ConfigMap is not supported",
-			SystemInternalTLSKey, data[SystemInternalTLSKey])
+		return nil, fmt.Errorf("DataplaneTrust %q in config-network ConfigMap is not supported", data[DataplaneTrustKey])
 	}
 
-	switch strings.ToLower(data[ClusterLocalDomainTLSKey]) {
-	case "", string(EncryptionDisabled):
-		// If ClusterLocalDomainTLSKey is not set in the config-network, default is already
-		// set to EncryptionDisabled.
-	case string(EncryptionEnabled):
-		nc.ClusterLocalDomainTLS = EncryptionEnabled
+	switch strings.ToLower(data[ControlplaneTrustKey]) {
+	case "", string(TrustDisabled):
+		// If ControlplaneTrust is not set in the config-network, default is already
+		// set to TrustDisabled.
+	case string(TrustEnabled):
+		nc.ControlplaneTrust = TrustEnabled
+	case string(TrustMutual):
+		nc.ControlplaneTrust = TrustMutual
 	default:
-		return nil, fmt.Errorf("%s with value: %q in config-network ConfigMap is not supported",
-			ClusterLocalDomainTLSKey, data[ClusterLocalDomainTLSKey])
+		return nil, fmt.Errorf("ControlplaneTrust %q in config-network ConfigMap is not supported", data[ControlplaneTrustKey])
 	}
 
 	return nc, nil
 }
 
-// InternalTLSEnabled returns whether InternalEncryption is enabled or not.
-// Deprecated: please use SystemInternalTLSEnabled()
-func (c *Config) InternalTLSEnabled() bool {
-	return tlsEnabled(c.SystemInternalTLS)
-}
-
-// SystemInternalTLSEnabled returns whether SystemInternalTLS is enabled or not.
-func (c *Config) SystemInternalTLSEnabled() bool {
-	return tlsEnabled(c.SystemInternalTLS)
-}
-
-func tlsEnabled(encryptionConfig EncryptionConfig) bool {
-	return encryptionConfig == EncryptionEnabled
-}
-
 // GetDomainTemplate returns the golang Template from the config map
 // or panics (the value is validated during CM validation and at
 // this point guaranteed to be parseable).
diff --git a/vendor/modules.txt b/vendor/modules.txt
index 0c6112251..363d2d796 100644
--- a/vendor/modules.txt
+++ b/vendor/modules.txt
@@ -64,8 +64,8 @@ github.com/cespare/xxhash/v2
 ## explicit; go 1.14
 github.com/cloudevents/sdk-go/observability/opencensus/v2/client
 github.com/cloudevents/sdk-go/observability/opencensus/v2/http
-# github.com/cloudevents/sdk-go/v2 v2.14.0
-## explicit; go 1.17
+# github.com/cloudevents/sdk-go/v2 v2.15.2
+## explicit; go 1.18
 github.com/cloudevents/sdk-go/v2
 github.com/cloudevents/sdk-go/v2/binding
 github.com/cloudevents/sdk-go/v2/binding/format
@@ -1257,7 +1257,7 @@ knative.dev/eventing/pkg/metrics/source
 knative.dev/eventing/pkg/observability
 knative.dev/eventing/pkg/observability/client
 knative.dev/eventing/pkg/reconciler/source
-# knative.dev/networking v0.0.0-20231017124814-2a7676e912b7
+# knative.dev/networking v0.0.0-20231012062757-a5958051caf8
 ## explicit; go 1.18
 knative.dev/networking/pkg/apis/networking
 knative.dev/networking/pkg/apis/networking/v1alpha1