Giter VIP home page Giter VIP logo

passff's Introduction

passff

Join the chat at https://gitter.im/jvenant/passff

zx2c4 pass management extension for Mozilla Firefox. Pending Chrome port

Official signed version can be found on the Mozilla add-on page

passff

Overview

This extension will allow you to access your zx2c4 pass repository directly from your web browser.

You can choose to automatically fill and submit login forms if a matching password entry is found.

Browser compatibility

Installation

zx2c4 pass repository

This extension requires zx2c4 pass to be installed and set up with a password repository. Make sure you can execute pass show some-password-name in a terminal before continuing.

Host application

For the extension to communicate with your system's pass script, you need to install what's called the host application from the official GitHub repository. The host application allows the extension to communicate with pass on your system.

PassFF extension

Install the current release of PassFF for your browser:

Previous releases are available for download as XPI files from our releases page. However, this is strongly discouraged for security reasons!

A graphical pinentry program

This program prompts you for your passphrase. One is probably already installed. If PassFF does not work, install one of these programs:

  • For Ubuntu/Debian: pinentry-gtk or pinentry-qt or pinentry-fltk
  • For CentOS/RHEL: pinentry-qt4 or pinentry-qt
  • For MacOS: pinentry-mac

If that does not work for you, you may have to configure GnuPG to use the right pinentry program. See the Troubleshooting section.

Note: Since the host app runs non-interactively, a console pinentry such as pinentry-ncurses is useless and may render PassFF unusable if this is the default pinentry.

One-time-password (OTP) Authentication

PassFF can generate tokens to fill OTP input fields if the pass-otp extension is installed and the key URI is configured in the password file.

Password formats

To make the most of the extension, you should format your password files according to our expected formats.

If you only want the extension to fill out passwords, you don't need any special format for your password files. But if you follow our formats, the extension can also visit the website's URL and fill out the username and other input fields for you.

Multi-line format

This is the preferred organizational scheme used by the author of pass.

<the_password>
login: <the_login>
url: <the_url>
<other_inputfield_name>: <inputfield_value>

You can change or configure additional names for the login and url fields in preferences.

If there are no colons (:) on any of the lines, and there are at least 2 lines, then the first two lines are assumed to contain the password and login name respectively:

<the_password>
<the_login>
<ignored_content>

If there is only a single line, or none of the provided fields matches a login field name, the username is taken from the filename, e.g. example.com/janedoe will have a default username of janedoe:

<the_password>
url: <the_url>
<other_inputfield_name>: <inputfield_value>

If your login credentials do not include any login name information (only a password), you can instruct PassFF to omit filling any login name by adding login: PASSFF_OMIT_FIELD to your pass entry. The same keyword can be used for credentials without password, but only login name.

Lines besides the login and URL that match the format <other_inputfield_name>: <value> can be used to fill in input fields besides the login and password fields. The left hand side of the colon should match the input field's name, id, autocomplete, or placeholder attribute. You can instruct PassFF to fill your login name, password, or OTP token, by setting <value> to one of PASSFF_FIELD_LOGIN, PASSFF_FIELD_PASSWORD, or PASSFF_FIELD_OTP.

Examples

nu8kzeo2Aese
login: bob
url: https://github.com/login
Sae7gohsooquahCoh3ie
alice
AephieryZ2Ya
login: kevin
url: example.com
otpauth://totp/Example:[email protected]?secret=JBSWY3DPEHPK3PXP&issuer=Example
pin: 1234
loginkey: PASSFF_FIELD_OTP
fancyinput: PASSFF_FIELD_LOGIN
File-structure format

Alternatively, you can organize your login information with file structure. For example, if you have this file structure:

  • www
    • supersite.com
      • login
      • password
      • url
      • totp
    • mysite.com

PassFF will

  • get the login from the "login", the url from the "url" and the password from the "password" file under supersite.com
  • get the login from the "login" field inside the mysite.com entry for mysite.com (see format above)

The file structure approach does not support custom input fields.

Note that the file structure format is recognized and assumed by PassFF whenever a file name matches a reserved field name such as user, url, password or login. This might cause unexpected behavior in cases where there is a file in multi-line format whose name happens to be a reserved field name.

Improve Suggestions

Unless you activate the preference "Index URL fields on startup", the auto-suggestions in the menus are based on matches of the current web page's URL against the names of password store entries. In the following, you find an explanation how you can improve matching quality by adapting the names and paths of your password store entries.

Generally speaking, the match quality is best if the exact hostname as well as all alphanumeric parts of the URL's path appear exactly in your entry's name. An entry is excluded from the matching if no part of the hostname is contained in its name. Matching (parts of) the hostname is more important than matching parts from the rest of the URL.

For the URL https://bugs.gentoo.org/index.cgi?GoAheadAndLogIn=1, best match quality is reached if your password store entry contains the strings bugs.gentoo.org, index and GoAheadAndLogIn in arbitrary order, but for it to be ranked in the matching process at all, it's enough for it to contain the strings bugs or gentoo.

Example (Only one entry per hostname): If you don't have multiple credentials for one hostname in your password store, you get the best results from naming the entries after the exact hostname. In this scenario, if you name an entry /some/arbitrary/path/bugs.gentoo.org, it will always rank highest on https://bugs.gentoo.org/index.cgi?GoAheadAndLogIn=1.

Example (More than one entry per hostname): If you happen to have several credentials for one hostname, you could name a directory in your password store after the hostname and list the different credentials inside that directory. Suppose you have different credentials for each of the following URLs:

https://my.example.com/cloud
https://my.example.com/blog?login
https://my.example.com/blog?admin

You could store them in your password store as

/some/path/my.example.com/cloud
/some/path/my.example.com/blog-login
/some/path/my.example.com/blog-admin

However, the following will work equally well:

/business/cloud/my.example.com
/personal/my.example.com-blog-login
/personal/my.example.com-blog-admin

For the rare case where you need several entries for one hostname but with different ports (e.g. if you have different entries for http://example.com:2000/ and http://example.com/), you might want to include the port number 2000 into the name of the entry for http://example.com:2000/:

/business/cloud/example.com:2000
/business/cloud/example.com-2000
/business/cloud/example.com/port2000

Configuration and preferences

Extension preferences

Accessible from the gear button in the toolbar menu, preferences let you fine-tune the behaviour of PassFF. Some of them are described below:

  • Inputs (A comma separated list of input names. Input field names in a web page containing one of those values will be filled with the corresponding value.)
    • Passwords input names
    • Login input names
    • OTP input names
  • Fields (A comma separated list of field names. The first matching field in the password data or in the store tree will be used as the corresponding value.)
    • Login field names
    • Password field names
    • URL field names
    • OTP Auth field names
    • Regex for hiding items (tests the full path to the item)
  • Adding Passwords
    • The default length for generating passwords
    • Whether or not to include special characters in generated passwords by default
    • Preferred new password method ("generate" or "insert")
Host application preferences

If you use a customized pass installation: environment variables, customized repository path or extensions, you may have to configure the host application accordingly.

Usage

Once installed, you should have a new icon in your toolbar. Click the icon to browse your password repository or search using a fuzzy matching algorithm.

Keyboard shortcuts

The default shortcut to open the menu is ctrl+y.

With the menu open, you can press enter to execute one of the following commands, according to your preferences:

  • Goto, fill and submit
  • Goto and fill
  • Fill and submit
  • Fill
Input menu

PassFF can mark fillable input fields with the PassFF icon. It adds an icon in the fields that PassFF can automatically fill. The icon is clickable and pops up a menu to select the password. PassFF fills the input fields and optionally submit depending on your preferences. You can always override this behavior by clicking the pencil (Fill) or the paper plane (Fill & Submit).

This feature can be disabled in the preferences.

Contextual menu

In any input field, fillable or not, you can access a contextual menu (right-click) in order to:

  • Add the input field's name in the Login input names for (auto)filling,
  • Add the input field's name in the OTP input names for (auto)filling,
  • Select a password to fill the input fields.

Adding new passwords

In order to add a password in your repository, select the 'plus' (+) icon in the toolbar menu.

Issues

If you're having problems, the most common causes are misconfigured preferences or an incorrect installation of the host application. You can get more information by debugging the extension.

First, make sure the host application is installed correctly.

Configure the script's execution parameters appropriately in the host app passff.py: E.g., set COMMAND to the path to the pass binary (if installed with homebrew, the default location is /usr/local/bin/pass). With those settings in place, the extension should be able to find your passwords.

Troubleshooting

I use an old version of Firefox and I have weird behaviours

PassFF is developed for the last version of Firefox. PassFF should also work on previous versions above Firefox 50, which introduced native messaging for WebExtensions. However, HTTP authentication is available from Firefox 54 onwards.

I get a window saying: gpg: decryption failed: No secret key
Nothing happens when I click on a password and select an action
PassFF does not prompt me for the passphrase
PassFF works but only intermittently

It may be a problem with your pin-entry program, while your gpg-agent sometimes caches your passphrase.

Possible solutions:

Related issues:

The icon/toolbar menu suggests no or the wrong entries

See the section Improve Suggestions above.

Contributing

Is the documentation too obscure?

Open a new issue. We will gratefully clarify the doc.

Would you like to translate PassFF?

Open a new issue to tell us about it, or make a pull request.

Would you like to code?

See CONTRIBUTING.

Thanks

Development and improvements

Russian translation : Grigorii Horos

passff's People

Contributors

5bentz avatar arkie avatar beardhatcode avatar clarkqaq avatar cs8898 avatar drmoose avatar fishyfriend avatar girst avatar gitter-badger avatar gordanv avatar grigorii-horos avatar gutierri avatar innir avatar jvenant avatar lucidone avatar next-mad-hatter avatar nwallace avatar paulperegud avatar phryneas avatar qsantos avatar rafaelcz avatar runejuhl avatar shtrom avatar swarnk avatar thperret avatar tialaramex avatar tophattom avatar tuxor1337 avatar u8nwxd avatar xeruf avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

passff's Issues

Print the passwords

It would be cool to be able to just print a password, and not just copy it.

better search for items matching url

Hello.
you look for item's key in url, sometimes it's not right because item's key can be '1' for example. and it can match.
So I offer to search for url's host in item's key. But maybe it should be better to use other url parsing method like https://developer.mozilla.org/en-US/Add-ons/SDK/High-Level_APIs/url
Here is my replacement:
getUrlMatchingItems : function(url) {
var urls = url.split('/');
if (urls==null && urls.length <3) { return; }

return this._items.filter(function(item) {
  return !item.isField() && urls[2]==item.key;
});

},

Now it gives the right items for sites where I have lots of accounts.

Please check.
Thanks.

Icon in firefox menu

The passwords are not accessible when I launch firefox with the icon in the new australis menu. I have to move it in the tool bar and restart firefox. I use firefox beta.

Addon stops working in certain ways after firefox has been in use for a while

Using Mozilla Firefox Nightly 31.0a1 (2014-04-03) on Arch Linux with the latest v1-beta-3, I had the same issue with v1-beta-2.

To reproduce the issue:
Have Firefox open for a while, visit a few sites, etc.
Then open up a page which you know has passwords available, and open up the toolbar menu.

Actual results:
Menu with "All >" and "Refresh" opens.

Expected results:
Menu with "All >", "Refresh", and "directory/domain.tld" opens.

To sometimes temporarily fix:
Switch tabs back and forth whilst clicking the addon's icon to check if "directory/domain.tld" shows up, sometimes it will and once it does it stays working for that tab.


It works fine when Firefox has only been running for a few minutes but after it's been used for a while this issue presents itself.

I don't know if it's related to this issue or just a fluke but at some point today, after Firefox had been running for a couple of hours the addon completely stopped filling forms - it still prompted for passwords with pinentry but didn't do anything afterwards.

Upload to AMO.

Obviously this is still a beta but it would be nice to upload it to addons.mozilla.org in the future.

Also AMO has the option for beta channels that can help push addons to testers without them needing to remember to check back for new releases.

Uses category name instead of password entry

I set up my pass according to the passff guidelines:

  • www
    • facebook.com (contains password, login: , url: )

However passff (sometimes?) fills in "www" as username (e.g. on facebook)

Gpg-agent not working: "undefined" Problem with Gpg Agent file existance?

I'm having trouble getting gpg-agent to cache my passphrase.

Starting firefox with -jsconsole I see this:

"Retrieve Gpg agent variable from file /home/bob/undefined.gpg-agent-info"

Is the gpg-agent-info file actually loaded correctly? I don't think so....

When I check the "Preferences initialised" Object ... gpgAgentEnv Array [3] 0:"GPG_AGENT_INFO="

https://github.com/jvenant/passff/blob/master/src/modules/preferences.js#L77

This is Firefox 32.

Thanks for a great plugin otherwise!

Path problems in Windows

Hi,
my setup first:
I have pass running in cygwin on Windows.
I can run it just fine from outside Cygwin by calling
C:\Users\me\cygwin\bin\bash.exe --login /usr/bin/pass
and would be happy to use pass with the passff add-on. (In fact, this is the reason I have changed back to firefox)

But passff seems to have a hard time with windows pathnames.

Currently, it is throwing a "[nsILocalFile.initWithPath] NS_ERROR_FILE_UNRECOGNIZED_PATH" error in modules/preferences.js, line 75: new FileUtils.File(filename);

I tried different path versions, like
C:\Users\me, file:///C/Users/me, C:/Users/me etc. but none of them work.
According to the documentation, I guess C:\Users\me COULD work if the plugin would not attach a forward slash as a directory separator, but I have not experience with Firefox developement and while I can see the code and set breakpoints I have no idea on how to modify the code without starting heavily into add-on developement.

If you want me to do any specific testing, please feel free to contact me.

Regards,
phry

Utilize input context menu

It would be really convenient if passff could add an "Insert login"/"Insert password" item in the right-click menu for form elements that are identified as login inputs.

Immediate Crash On Load

Heya!

I'm running Mac OS X 10.9.4, Firefox 32.0. Pass v1.6.3, latest gpg-tools, I'm experiencing an immediate crash on first load of the plugin. The thread the crashes seems to be the one responsible for calling pass because the browser itself doesn't crash, but I do get a panic from a firefox thread.

Output from Developer Console
"[PassFF]" "startup" bootstrap.js:35
"[PassFF]" "Check Gpg agent file existance : /Users/qapf/.gpg-agent-info" preferences.js:76
"[PassFF]" "Retrieve Gpg agent variable from file /Users/qapf/.gpg-agent-info" preferences.js:78
"[PassFF]" "Preferences initialised" Object { passwordInputNames: Array[3], loginInputNames: Array[4], loginFieldNames: Array[4], passwordFieldNames: Array[3], urlFieldNames: Array[2], command: "/usr/local/Cellar/pass/1.6.3/bin/pass", home: "/Users/qapf/", storeDir: "/Users/qapf/.password-store", storeGit: "", gpgAgentEnv: null, 4 more… } preferences.js:53
"[PassFF]" "Execute pass" Object { command: "/usr/local/Cellar/pass/1.6.3/bin/pass", arguments: Array[0], environment: Array[3], charset: "UTF-8", workdir: "/Users/qapf/", mergeStderr: false, done: PassFF.Pass.executePass/params.done() } pass.js:178
"[PassFF]" "Set Gpg agent variable :" "/Users/qapf/.gnupg/S.gpg-agent:70324:1
" preferences.js:81
"[PassFF]" "pass script execution ok" pass.js:184
"[PassFF]" "Found Items" Array [ ] pass.js:118
"[PassFF]" "Check Gpg agent file existance : /Users/qapf/.gpg-agent-info" preferences.js:76
"[PassFF]" "Retrieve Gpg agent variable from file /Users/qapf/.gpg-agent-info" preferences.js:78
"[PassFF]" "Preferences initialised" Object { passwordInputNames: Array[3], loginInputNames: Array[4], loginFieldNames: Array[4], passwordFieldNames: Array[3], urlFieldNames: Array[2], command: "/usr/local/Cellar/pass/1.6.3/bin/pass", home: "/Users/qapf/", storeDir: "/Users/qapf/.password-store", storeGit: "", gpgAgentEnv: Array[2], 4 more… } preferences.js:53
"[PassFF]" "Execute pass" Object { command: "/usr/local/Cellar/pass/1.6.3/bin/pass", arguments: Array[0], environment: Array[5], charset: "UTF-8", workdir: "/Users/qapf/", mergeStderr: false, done: PassFF.Pass.executePass/params.done() } pass.js:178
"[PassFF]" "Set Gpg agent variable :" "/Users/qapf/.gnupg/S.gpg-agent:70324:1
" preferences.js:81
"[PassFF]" "" "" pass.js:182
"[PassFF]" "init" bootstrap.js:81
"[PassFF]" "Wait documents" bootstrap.js:87
"[PassFF]" "Documents found" bootstrap.js:98
"[PassFF]" "Add panel to new window" bootstrap.js:161
"[PassFF]" "createContextualMenu" "about:addons" menu.js:216
"[PassFF]" "Create children menu list" Array [ ] menu.js:224
"[PassFF]" "Add panel to new window" bootstrap.js:161
"[PassFF]" "createContextualMenu" "http://wiki.centos.org/HowTos/EncryptedFilesystem" menu.js:216
"[PassFF]" "Create children menu list" Array [ ] menu.js:224
"[PassFF]" "Wait panels" bootstrap.js:110
"[PassFF]" "Panels found" bootstrap.js:121
Screenshot of crashed window
screenshot 2014-07-29 22 11 44

Crash on initialization

Configuration: Firefox 30.0 x86_64, Linux, 228f723
The bug description:
there is no Pass icon.
After disabling and then re-enabling the extension button does not re-appear (so it's not the same as #24 ).
JS console shows the following exception:
WARN addons.manager: Exception calling callback: SyntaxError: unterminated parenthetical (resource://gre/modules/XPIProvider.jsm -> jar:file:///home/user/.mozilla/firefox/xxxxxx.default/extensions/[email protected]!/bootstrap.js -> jar:file:///home/user/.mozilla/firefox/xxxxxx.default/extensions/[email protected]!/modules/pass.js:140)
In pass.js:140 there's the following code:

getUrlMatchingItems : function(url) {
return this._items.filter(function(item){
line 140---> return !item.isField() && url.search(new RegExp(item.key,"i")) >= 0;
});
},

It seems there's something wrong with URL parser. It looks like a some simple to fix issue, unfortunately I have no idea how to debug XUL applications (I'm not a JS developer)

Organisation

Personally, I manage my pass by putting passwords in /passwd, and the id in /id. Would it be possible to let users choose their organization scheme ?

[AMO] NslTimer

When using nsITimer instances, you must keep a reference to the timer alive until it fires, or it will be canceled when garbage collection runs.

Cygwin - no icon when settings are (presumably) good

I'm trying to run passff in Cygwin. I've tried putting parameters as in #38 and error message doesn't appear anymore.

The problem is that after correcting settings and restarting Firefox I don't see the icon in the bar. When I restore settings to defaults, both error message and icon return. I've noticed that icon won't appear until you close the message.

Is there any way I could debug startup process? Additionally, where are logs (from "enable logs" option) being stored?

Black icon not present

Hello. I'm in the process of moving from one single password for all sites to using pass and this addon for firefox. I compiled the .xpi just fine, but there is no "black icon" present in the toolbar. I'm using Firefox stable 28.0 on OS X 10.9.2. I can't find the icon in the catalog with available icons for the toolbar either.

"gpg: cannot open `/dev/tty': No such device or address" under linux

The extension does not seem to work in my system. It gives me the following error:

gpg: cannot open `/dev/tty': No such device or address

I think this is because the pass executable is executed without the PATH environment variable being set. When I wrap the pass executable with a script that sets that variable then everything works as expected.

Also, while debuging the above bug, I discovered that the pass executable is executed with the GNOME_KEYRING_CONTROL (with a space at the end of the name of the variable) being set. There is also a space in the beginning of the value of that variable. This is probably due to the spaces before and after the equals sign in the relevant line in src/modules/preferences.js.

[AMO] subprocess

Since subprocess.jsm does not restore the process working directory after changing it to accommodate the workdir parameter, you must manually restore it when using it as such.

<enter> behaves differently from <click on "goto, fill and submit">

Suppose the gnome-keyring is locked.

Case 1: When typing the name of some item in the passff-menu and then pressing enter or return, I will never be asked for the keyring credentials and passff thinks the item is empty (PassFF.Pass.getPasswordData() will return empty params).

Case 2: When choosing and clicking "goto, fill and submit" manually, I will be asked for the keyring credentials and everything works as it should.

I observed, that in both cases there are no errors in the browser console ("pass script execution ok"). Case 1 also applies when choosing with the mouse one of "Copy login", "Copy password" or "Display". Case 2 also applies when choosing "Fill", "Fill and submit" or "Go to". All options work equally well when the gnome-keyring is unlocked.

I had a look into src/modules/menu.js and couldn't find the fundamental difference which might cause this malfunction... :-/

Support $GPG_AGENT_INFO too

I just started using passff and so far it seems really nice.
One issue I am having is that it only accepts a .gpg_agent_info file with no fallback
to an environment variable (contrary to most other options)

I am using the gnome-keyring and it does not create the file, just exports the variable.

Separate "auto fill" and "submit" functionality

The preference: "Try to auto fill page login forms" not only "auto fills" the login/password information, but also "submits" it to the site. It would be very nice to separate these two actions (e.g. by adding a second preference: "Auto submit") to allow one to choose whether to actually login to a site or not. Also, the "auto submit" feature might mess with sites, where additional input is needed (e.g. captchas, etc.). This feature would more closely emulate the default firefox behaviour (auto fill but do not submit).
(Similar to #10)

[AMO] Debug logs

Your add-on prints quite a lot of debugging information to the Browser Console, which is generally not allowed in production add-ons.

Integrate with gnome-keyring-daemon

It seems like this plugin could work with gnome-keyring-daemon, since it runs in place of gpg-agent. It implements the DBus secret service API, so it's not probably not directly compatible with gpg-agent.
There's a directory specified by $GNOME_KEYRING_CONTROL, though I don't know if that's of any use for passff. Perhaps it could use the secret-tool program, if DBus is out of the question.

gpg-agent

How does your plugin interact with gpg-agent ? My key is in the agent but the plugin says it isn't. I launch gpg-agent with systemd --user, my GPG_AGENT_INFO is ok (I exported the env variable).

setGpgAgentEnv: adding a little bit too much Environment

Hi,
as of upgrading the plugin, pass is not working any more, it comes down to this:

the first popen (getting the password list) works well:
command:"C:\Users\phry\cygwin\bin\bash.exe --login /bin/pass"
environment:Array[4] [
"HOME=C:\Users\phry"
"DISPLAY=:0.0"
"PASSWORD_STORE_DIR=.password-store"
"PASSWORD_STORE_GIT=.password-store/.git"
]

the second popen (looking up a password) does not work so well and fails with an exeception.
command:"C:\Users\phry\cygwin\bin\bash.exe --login /bin/pass mypass"
environment:Array[8] [
"HOME=C:\Users\phry"
"DISPLAY=:0.0"
"PASSWORD_STORE_DIR=.password-store"
"PASSWORD_STORE_GIT=.password-store/.git"
"SSH_AUTH_SOCK=/tmp/ssh-dqw123fwSZ5/agent.4480; export SSH_AUTH_SOCK;"
"SSH_AGENT_PID=208; export SSH_AGENT_PID;"
"echo Agent pid 208;"
""
]

As you see, the environment variable seems to contain a lot of junk, and I suspect this is what makes the popen fail.

Out of suspicion, I commented out the lines in "preferences.setGpgAgentEnv", where you set these variables, and after that, pass is being executed.
(still with some problems with the PATH to the gpg executable, but I believe this error is just in my configuration and another thing I will have to clean up in my environment ;) ).

So if you have the time, it would be great if you could fix that environment parsing part.

Thanks a lot!

[AMO] Dom namespace

Your add-on creates DOM nodes with the following non-namespaced IDs, which could cause compatibility problems with other add-ons. Please consistently prefix your DOM IDs with a distinct string which is unique to and indicative of your add-on:

Automatic Login; github.com | bbs.archlinux.org

Automatic detection and login of these two sites don't seem to work for me. I have a bunch of other sites set up that behave fine.

github seems to auto fill with username 'Github' and some password I don't know. It's set up to use url: https://github.com/login in my password store. If I look at my password store this is the only entry for github.

The arch linux forums doesn't look like it's even being recognized with url: https://bbs.archlinux.org/login.php I thought maybe it might have something to do with the names of the login forms not being picked up. I tried adding capital Username Password (not sure capitalization makes a difference) but that didn't change anything.

For both of these two sites if I choose 'display' the information shows up correctly. If I choose 'fill' or 'fill and submit' it works correctly.

v1-pre-release-7
2d32f16

support for symlinks in password-store tree

At work I have two LDAP accounts (a production and a development one), and a bunch of websites working with the one or the other LDAP account. Since I tend to change quite frequently the password of the development LDAP account, I thought of creating symlinks in my password store tree, like this:

  • site1.job.com.gpg (works with ldap-account1)
  • site2.job.com.gpg (works with ldap-account2)
  • site3.job.com.gpg -> site2.job.com.gpg

In passff I see the following:

site1.job.com
site2.job.com
site3.job.com.gpg -> site2.job.com

When I try to display the site3 contents in passff, I get the following error:
Error: site3.job.com.gpg -> site2.job.com is not in the password store.

PS: I believe this issue should be low prio, as it is quite a corner case

passff retrieves empty password from v1-pre-release-11 and on

passff in versions v1-pre-release-11 till 13 seems to malfunction.

  • For structure: file "example.com" and contents: first line the password, second line "username: myuser", I get from passff display dialog: username: example.com, password:
  • For structure: example.com/myuser, containing only one line with the password, I get from passff display dialog: username: myuser, password:
    The goto functionality works fine in both the above cases.

My configuration is:
password input names: passwd,password,pass
login input names: login,user,mail,email,username,wpName,log,name,u
password field names: passwd,password,pass
url field names: url,http
login field names:login,user,id,username

I was also able to reproduce in a clean environment. Let me know if you need further debug info

Issue with the new menu release

Just installed the new menu release now it won't show any password entries anymore.
When starting with -jsconsole I get
Timestamp: 16.04.2014 10:54:48
Error: TypeError: this.children.find is not a function
Source File: resource://passff/pass.js
Line: 104

spaces in filenames

It appears that the current version (v1-beta-6) cannot handle correctly spaces in the names of password files and directories:

  • the relevant entries do appear in the menu but spaces are escaped with a \ (e.g. "foo bar" will apear as "foo\ bar"
  • clicking on a menu entry will not fill in the login form correctly

password database location

Hi

I set PASSWORD_STORE_DIR and PASSWORD_STORE_GIT to $HOME/.data/pass. It doesn't seem to work when I configure your plugin to use $HOME/.data or $HOME/.data/pass (with $HOME expanded). Any idea ?

Button doesn't work when navigation bar is hidden.

If the navigation bar is hidden (with addons like "Hide Navigation Bar", "Toolbar Autohide", or "Pentadactyl"), and the button is moved to another place (like the tab bar, via right-click->customize), then clicking the button does not open the menu. If the nav bar is shown again, the button starts working again (even if it still is in the tab bar).
The easiest method I can find to reproduce this is:
1 - Move the Pass Manager button to the tab bar (here it still works)
2 - Install Pentadactyl: http://5digits.org/nightly/pentadactyl-latest.xpi
3 - Pentadactyl hides the nav bar by default, so now clicking the Pass button doesn't work anymore
4 - On Pentadactyl, type ":set guioptions+=mT" (without quotes) to show the nav bar
5 - The button works again

Support for url/username structure

I am using url/username structure in pass, which is also used by consumers of pass_python_keyring. I would like to be able to use the same structure for passff without having to re-define my tree for passff explicitly. This will also provide:

  • support for multiple usernames under the same website, eg url/username1 url/username2. passff could either get the first username alphabetically, or be smart and auto-fill the last used one.
  • no need to write "url: " or "login: " entries inside the files, as both are provided by the filesystem

Keyboard shortcut to autofill

Currently, passf tries to autofill automatically all websites when the option "Try to autofill..." is activated. An option to set a keyboard shortcut to autofill the current site would be really useful, for those who don't want to autofill every website they visit.

Pages where autofill doesn't work

I'm wondering if here is the best place for this, but here I go anyway. If I'm wrong, I apologize and expect some advice of the proper place.

I'm using passff for about 24h now and I've been careful enough to migrate most of my former password management utility by hand to avoid any conflicts in the conversion process. I followed exactly the structure proposed in the README.md, which is:

<the_password>
login: <the_login>
url: <the_url>

For the sake of clarity, I've changed the login field to user.

It's working on almost every account I'm managing with pass, except these two bellow. In all the mentioned cases, when I chose Display in passff popup window both login and password data looks ok (they are the ones set for that page URL).

Instagram

url: https://instagram.com/accounts/login/
behavior: Here the login form is included through an iframe (o.O). It appears that passff is able to fill forms in the pages that has been loaded straight by the browser, and not for the ones loaded indirectly via iframes.

TIM (Telecom Italia Mobile, Brazil)

url: https://meutim.tim.com.br/login
behavior: In this one, the password field (name="senha") gets filled fine, but not the login one (name="loginField"). I have set the field name into Login input names field at passff preferences, but it's still a no go. The loginField length is 13 characters in the form: (##)#########. The parenthesis are not optional and the # must be numbers from 0 to 9.

These are the ones I have for now. As I found more exceptions, I'll come back here to notify.

Auto prompt when password/login inputs are found

The auto prompt can get quite annoying, certain sites still have password fields on pages even when you're logged in. I disabled it myself in the xpi file but maybe just have let it be disabled by default and have a checkbox in the prefences to opt-in.

Mac OSX

The plugin doesn't work on Mac OSX

Restartless extension

Hi,

Thanks for integrating pass with Firefox. However, this would be a great improvement if the extension was restartless.
I really don't know how hard it is to convert it, or even if it is doable.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.