Account confirmers, Confirmed users
126
edits
| Line 144: | Line 144: | ||
==== Policies and actions ==== | ==== Policies and actions ==== | ||
{| width="650" cellspacing="0" cellpadding="1" border=" | {| width="650" cellspacing="0" cellpadding="1" border="0" | ||
|- | |- | ||
! scope="col" | Policy | ! style="border-bottom: 2px solid black" scope="col" | Policy | ||
! scope="col" | Action | ! style="border-bottom: 2px solid black" scope="col" | Action | ||
! scope="col" | Notes | ! style="border-bottom: 2px solid black" scope="col" | Notes | ||
|- | |- style="vertical-align: top;" | ||
| Missing file / Parse error / Validation error | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Missing file / Parse error / Validation error | ||
| Reject | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Reject | ||
| | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | | ||
|- | |- style="vertical-align: top;" | ||
| Obfuscated, minified or binary code | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Obfuscated, minified or binary code | ||
| Reject | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Reject | ||
| | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | | ||
|- | |- style="vertical-align: top;" | ||
| Obfuscated, minified or binary code, with original sources included in XPI or provided link | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Obfuscated, minified or binary code, with original sources included in XPI or provided link | ||
| Admin Review | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Admin Review | ||
| | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Add-ons with this type of code are not eligible for preliminary review. | ||
|- | |- style="vertical-align: top;" | ||
| Using eval, Function() or setTimeout on remote code | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Using eval, Function() or setTimeout on remote code | ||
| Reject | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Reject | ||
| | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | | ||
|- | |- style="vertical-align: top;" | ||
| Remote script insertion | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Remote script insertion | ||
| Reject | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Reject | ||
| | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | | ||
|- | |- style="vertical-align: top;" | ||
| Unprotected browser or iframe elements | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Unprotected browser or iframe elements | ||
| Reject | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Reject | ||
| | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | | ||
|- | |- style="vertical-align: top;" | ||
| Conduit add-on without [https://addons.mozilla.org/en-US/firefox/user/4959120 CONDUIT-AMO] as author | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Conduit add-on without [https://addons.mozilla.org/en-US/firefox/user/4959120 CONDUIT-AMO] as author | ||
| Reject | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Reject | ||
| | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | | ||
|- | |- style="vertical-align: top;" | ||
| Conduit add-on with [https://addons.mozilla.org/en-US/firefox/user/4959120 CONDUIT-AMO] as author | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Conduit add-on with [https://addons.mozilla.org/en-US/firefox/user/4959120 CONDUIT-AMO] as author | ||
| Admin Review | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Admin Review | ||
| | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | | ||
|- | |- style="vertical-align: top;" | ||
| JS Library (like jQuery) included, but not in its original file / JS Library doesn't pass checksum validation | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | JS Library (like jQuery) included, but not in its original file / JS Library doesn't pass checksum validation | ||
| Reject | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Reject | ||
| | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | | ||
|- | |- style="vertical-align: top;" | ||
| Unicode characters (e.g. \u0060) in JS code | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Unicode characters (e.g. \u0060) in JS code | ||
| Reject | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Reject | ||
| Keep in mind these can be used inside strings. They're just not allowed to replace JS code characters, since they're usually meant to bypass the validator. | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Keep in mind these can be used inside strings. They're just not allowed to replace JS code characters, since they're usually meant to bypass the validator. | ||
|- | |- style="vertical-align: top;" | ||
| Using eval, Function() or setTimeout on local code | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Using eval, Function() or setTimeout on local code | ||
| Preliminary Review | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Preliminary Review | ||
| One case that we accept is when eval is used to replace existing Firefox functions. This is very common for add-ons that change bookmarking or tabbing behavior. It is also allowed in known libraries like jQuery. | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | One case that we accept is when eval is used to replace existing Firefox functions. This is very common for add-ons that change bookmarking or tabbing behavior. It is also allowed in known libraries like jQuery. | ||
|- | |- style="vertical-align: top;" | ||
| Using the codebase_principal_support preference or enablePrivilege function | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Using the codebase_principal_support preference or enablePrivilege function | ||
| Preliminary Review | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Preliminary Review | ||
| | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | | ||
|- | |- style="vertical-align: top;" | ||
| Native object prototype extension / Using Prototype library | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Native object prototype extension / Using Prototype library | ||
| Preliminary Review | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Preliminary Review | ||
| | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | | ||
|- | |- style="vertical-align: top;" | ||
| Storing passwords or other sensitive user data in the preferences | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Storing passwords or other sensitive user data in the preferences | ||
| Preliminary Review | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Preliminary Review | ||
| | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | | ||
|- | |- style="vertical-align: top;" | ||
| Changing Firefox preferences without user consent | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Changing Firefox preferences without user consent | ||
| Preliminary Review | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Preliminary Review | ||
| These include: network preferences, update system preferences, homepage, User Agent string. | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | These include: network preferences, update system preferences, homepage, User Agent string. | ||
|- | |- style="vertical-align: top;" | ||
| Changing security preferences, permissions, certificates (nsIX509CertDB) | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Changing security preferences, permissions, certificates (nsIX509CertDB) | ||
| Admin Review | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Admin Review | ||
| | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | | ||
|- | |- style="vertical-align: top;" | ||
| Using nsIProcess | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Using nsIProcess | ||
| Admin Review | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Admin Review | ||
| | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | | ||
|- | |- style="vertical-align: top;" | ||
| Using JS c-types | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Using JS c-types | ||
| Admin Review | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Admin Review | ||
| | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | | ||
|- | |- style="vertical-align: top;" | ||
| Theme includes JS code | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Theme includes JS code | ||
| Admin Review | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Admin Review | ||
| | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | | ||
|- | |- style="vertical-align: top;" | ||
| Using Geolocation | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Using Geolocation | ||
| Test | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Test | ||
| Give Preliminary Review if the add-on doesn't ask the user before getting geolocation data. Approve if it does. | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Give Preliminary Review if the add-on doesn't ask the user before getting geolocation data. Approve if it does. | ||
|- | |- style="vertical-align: top;" | ||
| Localization errors | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Localization errors | ||
| Ignore | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | Ignore | ||
| | | style="padding: 1ex 1ex 1ex 0; border-bottom: 1px solid black;" | | ||
|} | |} | ||