Implement FlyWeb Routing Abstraction for MDNS services

RESOLVED FIXED

Status

()

Core
Networking
RESOLVED FIXED
2 years ago
2 years ago

People

(Reporter: djvj, Unassigned)

Tracking

(Blocks: 1 bug)

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(4 attachments, 3 obsolete attachments)

(Reporter)

Description

2 years ago
When the browser establishes a "session" (not a HTTP session, but a logical FlyWeb session) with a discovered service, it should assign a UUID-based name to the session, and route URLs containing that UUID as their host, to the appropriate service.

This involves messing with nsISocketTransportService and nsISocketTransport implementations to route URLS with FlyWeb-UUID hosts to a different target than what would normally be done when a host is assumed to refer to an internet domain.
(Reporter)

Comment 1

2 years ago
Created attachment 8713823 [details] [diff] [review]
1-make-connect-to-service-async.patch

This patch changes the "connectToService" internal API call to operate asynchronously (accepting a callback) instead of just returning the connection object.
(Reporter)

Comment 2

2 years ago
Created attachment 8713824 [details] [diff] [review]
2-add-list-connected-services.patch

Adds a listConnectedServices method to the internal API that lets us list all the connected FlyWeb services from gecko.
(Reporter)

Comment 3

2 years ago
Created attachment 8713825 [details] [diff] [review]
3-transport-layer-abstraction.patch

This patch is the bulk of the work.  It changes nsSocketTransportService2, nsSocketTransport2, and FlyWebConnectedService to let gecko bypass normal DNS lookup when connecting to FlyWeb-UUID hosts.
(Reporter)

Comment 4

2 years ago
Created attachment 8714439 [details] [diff] [review]
1-make-connect-to-service-async.patch

Re-uploading patch for new patchset update (only the last patch is new).
Attachment #8713823 - Attachment is obsolete: true
(Reporter)

Comment 5

2 years ago
Created attachment 8714440 [details] [diff] [review]
2-add-list-connected-services.patch
Attachment #8713824 - Attachment is obsolete: true
(Reporter)

Comment 6

2 years ago
Created attachment 8714441 [details] [diff] [review]
3-name-routing-abstraction.patch

Renamed this patch to reflect its contents better.
Attachment #8713825 - Attachment is obsolete: true
(Reporter)

Comment 7

2 years ago
Created attachment 8714442 [details] [diff] [review]
4-reuse-connected-services.patch

This makes it so that when we connect twice to the same service, we re-use the ConnectedService objects already established from the previous connection.
(Reporter)

Comment 8

2 years ago
These are landed.

http://hg.mozilla.org/projects/larch/rev/0484cb9eac28
http://hg.mozilla.org/projects/larch/rev/081233895d7d
http://hg.mozilla.org/projects/larch/rev/2dcf1793cc99
http://hg.mozilla.org/projects/larch/rev/1404734ac871
Status: NEW → RESOLVED
Last Resolved: 2 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.