2dba16be52
When traversing an exported peered service, the discovery chain evaluation at the other side may re-route the request to a variety of endpoints. Furthermore we intend to terminate mTLS at the mesh gateway for arriving peered traffic that is http-like (L7), so the caller needs to know the mesh gateway's SpiffeID in that case as well. The following new SpiffeID values will be shipped back in the peerstream replication: - tcp: all possible SpiffeIDs resulting from the service-resolver component of the exported discovery chain - http-like: the SpiffeID of the mesh gateway
24 lines
376 B
Go
24 lines
376 B
Go
package maps
|
|
|
|
func SliceOfKeys[K comparable, V any](m map[K]V) []K {
|
|
if len(m) == 0 {
|
|
return nil
|
|
}
|
|
res := make([]K, 0, len(m))
|
|
for k := range m {
|
|
res = append(res, k)
|
|
}
|
|
return res
|
|
}
|
|
|
|
func SliceOfValues[K comparable, V any](m map[K]V) []V {
|
|
if len(m) == 0 {
|
|
return nil
|
|
}
|
|
res := make([]V, 0, len(m))
|
|
for _, v := range m {
|
|
res = append(res, v)
|
|
}
|
|
return res
|
|
}
|