Skip to content

SHIP Pairing Service Integration#212

Draft
kirollosnct wants to merge 5 commits intodevfrom
feature/shippairing-integration
Draft

SHIP Pairing Service Integration#212
kirollosnct wants to merge 5 commits intodevfrom
feature/shippairing-integration

Conversation

@kirollosnct
Copy link
Copy Markdown
Member

SHIP Pairing Service Integration

This PR introduces breaking API changes to accommodate the latest ship-go module updates, featuring the integration of the new SHIP Pairing Service.

Core changes:

  • Service Start() now returns an error when connection hub returns a runtime error
  • ServiceIdentity is now used instead of 'SKI' only. Subsequently, All APIs dependent on ski have been migrated to a new 'identity' parameter.
    For example, RegisterRemoteSKI(ski, shipID string) is migrated to RegisterRemoteService(identity shipapi.ServiceIdentity)
  • New Service APIs:
GetLocalCertificateFingerprint() (string, error)
StartAnnouncementTo(target shipapi.PairingTarget) error
StopAnnouncementTo(shipID string) error
IsAnnouncingTo(shipID string) bool
GetActiveAnnouncements() []string
HasTrustedAddCuDevice() (string, string)
  • New Service events:
ServiceAutoTrusted(service ServiceInterface, identity shipapi.ServiceIdentity)
ServiceAutoTrustFailed(service ServiceInterface, identity shipapi.ServiceIdentity, reason error)
ServiceAutoTrustRemoved(service ServiceInterface, identity shipapi.ServiceIdentity, reason string)
  • Service Configuration: New parameters:
    pairingConfig: Optional SHIP Pairing configuration. Pass nil if SHIP Pairing should not be used.
    ringBufferPersistence: Interface to Pairing ring buffer persistence. SHALL be set if pairingConfig is set to listener mode (i.e. devA). See ship-go examples on how to create an implementation of this interface.

Examples:

The examples have been updated to accommodate the new API changes.
In addition to that, the legacy commandline arguments have been retired and replaced by flags instead.

kirollosnct and others added 3 commits March 24, 2026 14:46
This commit introduces breaking changes to accommodate the latest
ship-go module updates, featuring the integration of new SHIP Pairing Service.
This commit introduces a rework in the examples to accommodate the
SHIP Pairing Service integration.

The main change is the retirement of the legacy commandline arguments
and the introduction of flags instead.
(Service).HasTrustedAddCuDevice() (string, string) changed to (Service).GetTrustedAddCuDevice() *shipapi.ServiceDetails
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants