continuation

package
v0.0.1-beta.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 28, 2026 License: AGPL-3.0 Imports: 14 Imported by: 0

Documentation

Overview

SPDX-License-Identifier: AGPL-3.0-or-later

Index

Constants

View Source
const (
	HKDFLabel   = "c3api/routing/continuation/v1"
	RedisPrefix = "c3api:cont:"
	TTL         = 24 * time.Hour
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Binding

type Binding struct {
	AccountID   int64
	Fingerprint domain.CandidateFingerprintVal
	// IdentityRevision 是**身份代际 K**(identity_revision),不是客户端 CAS
	// 令牌 C(lifecycle_revision)。绑定按 (I=指纹, K) 围栏在途续跑;
	// C 只围栏管理员写入,与绑定身份无关。
	IdentityRevision int64
	RedisAcked       bool
}

type Store

type Store struct {
	// contains filtered or unexported fields
}

func New

func New(client *redis.Client, authSecret string) (*Store, error)

func (*Store) CreateOrRefresh

func (s *Store) CreateOrRefresh(ctx context.Context, userID, groupID int64, routeClassID domain.RouteClassIDVal, protocolTag, continuationID string, accountID int64, fingerprint domain.CandidateFingerprintVal, identityRevision int64) (string, error)

func (*Store) Lookup

func (s *Store) Lookup(ctx context.Context, userID, groupID int64, routeClassID domain.RouteClassIDVal, protocolTag, continuationID string) (*Binding, bool, error)

func (*Store) RedisKey

func (s *Store) RedisKey(userID, groupID int64, routeClassID domain.RouteClassIDVal, protocolTag, continuationID string) (string, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL