Add origin of caller to arguments for native messaging host

RESOLVED FIXED in Firefox 55


3 years ago
11 months ago


(Reporter: robwu, Assigned: robwu)



Dependency tree / graph

Firefox Tracking Flags

(firefox55 fixed)


(Whiteboard: triaged, [])


(1 attachment)



3 years ago
Chrome has always started native messaging hosts with the origin parameter (and now it is also documented - Firefox should also add the parameter.

In Chrome, the parameter looks like: chrome-extension://[extension id = 32 characters a-p]/

In Firefox, the extension ID must be deterministic, and then it should be:
moz-extension://[extension id]/.

When origins are deterministic, then there should be no objection to also support allowed_origins in the native messaging manifest.
Rob, that Chrome link doesn't appear to be valid?
Flags: needinfo?(rob)

Comment 2

3 years ago
Oops sorry. This is the right one:
Flags: needinfo?(rob)


3 years ago
Priority: -- → P3
Whiteboard: triaged


2 years ago
webextensions: --- → ?


2 years ago
webextensions: ? → ---

Comment 3

2 years ago
Since WebExtensions have no deterministic (origin) URL (e.g. bug 1257989), another parameter should be used.

E.g. --sender-extension-id=[extension id here]

Andy, does this approach sound OK?

(extension ID per )
Flags: needinfo?(amckay)
See Also: → 1257989


2 years ago
Flags: needinfo?(amckay) → needinfo?(aswan)
Seems fine to me.  I would skip the whole --sender-extension-id= bit and just pass the id in a fixed position in the arguments array.
Flags: needinfo?(aswan)

Comment 5

2 years ago
Rob offered to take this bug.  Since it looked relatively minor and 1password needed to finish their WE we are good to add this.
Assignee: nobody → rob
Whiteboard: triaged → triaged, 1password
Comment hidden (mozreview-request)

Comment 7

2 years ago
Comment on attachment 8873516 [details]
Bug 1307852 - Pass ID of calling add-on to native messaging app
Attachment #8873516 - Flags: review?(aswan) → review+
Keywords: dev-doc-needed

Comment 8

2 years ago
Pushed by
Pass ID of calling add-on to native messaging app r=aswan

Comment 9

2 years ago
Last Resolved: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla55
I've added a bit on this here:

Let me know if this covers it.
Flags: needinfo?(rob)

Comment 11

2 years ago
Some WebExtensions articles on MDN have compatibility notes that highlight the differences between implementations in browsers.

The native messaging docs do not, even though there are differences with Chrome's implementation:
- Command line argument (see link in this initial report).
- Native messaging host locations (the structure is very similar, but the exact names of paths/registry keys differ).
- Chrome uses allowed_origins, whereas Firefox uses allowed_extensions

Is the omission of these differences intentional? I think that such information can be valuable for developers who wish to distribute a cross-browser native messaging host.
Flags: needinfo?(rob) → needinfo?(wbamberg)
It's tricky to use compat data for this, because that get attached to API reference docs, and this is more of a conceptual type of article.

Maybe the best thing for now would be to add a section into the "Chrome incompatibilities" page, and include it in this page. So that's what I've done:

I'd like to revise the "Chrome incompatibilities" page, and the way it's used in these docs. But that will have to wait for a bit.
Flags: needinfo?(wbamberg)

Comment 13

2 years ago
This was the blocker for 1password.  Landed in Firefox 55.  They are on track to migrate for Firefox 57.
Whiteboard: triaged, 1password → triaged, []


11 months ago
Product: Toolkit → WebExtensions
You need to log in before you can comment on or make changes to this bug.