|
@@ -24,6 +24,8 @@ func NewID() ID {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+// ExportIDToError transfers session.ID into an error object, for logging purpose.
|
|
|
|
|
+// This can be used with error.WriteToLog().
|
|
|
func ExportIDToError(ctx context.Context) errors.ExportOption {
|
|
func ExportIDToError(ctx context.Context) errors.ExportOption {
|
|
|
id := IDFromContext(ctx)
|
|
id := IDFromContext(ctx)
|
|
|
return func(h *errors.ExportOptionHolder) {
|
|
return func(h *errors.ExportOptionHolder) {
|
|
@@ -31,16 +33,24 @@ func ExportIDToError(ctx context.Context) errors.ExportOption {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+// Inbound is the metadata of an inbound connection.
|
|
|
type Inbound struct {
|
|
type Inbound struct {
|
|
|
- Source net.Destination
|
|
|
|
|
|
|
+ // Source address of the inbound connection.
|
|
|
|
|
+ Source net.Destination
|
|
|
|
|
+ // Getaway address
|
|
|
Gateway net.Destination
|
|
Gateway net.Destination
|
|
|
- Tag string
|
|
|
|
|
|
|
+ // Tag of the inbound proxy that handles the connection.
|
|
|
|
|
+ Tag string
|
|
|
// User is the user that authencates for the inbound. May be nil if the protocol allows anounymous traffic.
|
|
// User is the user that authencates for the inbound. May be nil if the protocol allows anounymous traffic.
|
|
|
User *protocol.MemoryUser
|
|
User *protocol.MemoryUser
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+// Outbound is the metadata of an outbound connection.
|
|
|
type Outbound struct {
|
|
type Outbound struct {
|
|
|
- Target net.Destination
|
|
|
|
|
- Gateway net.Address
|
|
|
|
|
|
|
+ // Target address of the outbound connection.
|
|
|
|
|
+ Target net.Destination
|
|
|
|
|
+ // Gateway address
|
|
|
|
|
+ Gateway net.Address
|
|
|
|
|
+ // ResolvedIPs is the resolved IP addresses, if the Targe is a domain address.
|
|
|
ResolvedIPs []net.IP
|
|
ResolvedIPs []net.IP
|
|
|
}
|
|
}
|