59 bytes, text/x-review-board-request
Chrome has always started native messaging hosts with the origin parameter (and now it is also documented - https://crbug.com/1271663). 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?
Oops sorry. This is the right one: https://crbug.com/651496
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 https://developer.mozilla.org/en-US/Add-ons/WebExtensions/manifest.json/applications )
See Also: → 1257989
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.
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 on attachment 8873516 [details] Bug 1307852 - Pass ID of calling add-on to native messaging app https://reviewboard.mozilla.org/r/144902/#review148872
Attachment #8873516 - Flags: review?(aswan) → review+
Pushed by email@example.com: https://hg.mozilla.org/integration/autoland/rev/5ae487045afb Pass ID of calling add-on to native messaging app r=aswan
I've added a bit on this here: https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Native_messaging#Native_app_arguments Let me know if this covers it.
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: https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Native_messaging#Chrome_incompatibilities. 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.
This was the blocker for 1password. Landed in Firefox 55. They are on track to migrate for Firefox 57.
Whiteboard: triaged, 1password → triaged, [awe:firstname.lastname@example.org]
You need to log in before you can comment on or make changes to this bug.