(ctx context.Context, clientID string)
| 14 | const DeviceAuthCodeTTL = 10 * time.Minute |
| 15 | |
| 16 | func (s *Service) IssueDeviceAuthCode(ctx context.Context, clientID string) (*database.DeviceAuthCode, error) { |
| 17 | authCode, err := generateDeviceAndUserCode() |
| 18 | if err != nil { |
| 19 | return nil, err |
| 20 | } |
| 21 | authCode.ClientID = clientID |
| 22 | code, err := s.DB.InsertDeviceAuthCode(ctx, authCode.DeviceCode, authCode.UserCode, authCode.ClientID, authCode.Expiry) |
| 23 | if err != nil { |
| 24 | return nil, err |
| 25 | } |
| 26 | return code, nil |
| 27 | } |
| 28 | |
| 29 | // generateDeviceAndUserCode generates a random device code and user code. |
| 30 | func generateDeviceAndUserCode() (*database.DeviceAuthCode, error) { |
no test coverage detected