Introduction
Introduction Statistics Contact Development Disclaimer Help
Match the exact account name in password retrieval - pee - Pee a password manag…
git clone git://vernunftzentrum.de/pee.git
Log
Files
Refs
LICENSE
---
commit a485baf0ea2485bcddd5f60bc067c3f3aa4c7179
parent 7777da6a41c52ab262aac89c4fa34a6ee9269b4b
Author: Christian Kellermann <[email protected]>
Date: Tue, 12 Jan 2016 12:57:05 +0100
Match the exact account name in password retrieval
This also makes it possible to remove the search-entry and get-*
procedures which have not been in use besides get-password.
Diffstat:
pee.scm | 32 +++++--------------------------
1 file changed, 5 insertions(+), 27 deletions(-)
---
diff --git a/pee.scm b/pee.scm
@@ -136,28 +136,6 @@
(define (db-keys alist) (map car alist))
-(define (search-entry db entry)
- (let* ((regex (string->irregex (string-append ".*" entry ".*") 'i 'utf8))
- (result
- (find (lambda (k) (irregex-match regex k))
- (db-keys db))))
- (and result
- (not (null? result))
- (cons result (alist-ref result db equal?)))))
-
-(define (get-result db entry op)
- (let ((entry (search-entry db entry)))
- (and entry (> (length entry) 1) (op entry))))
-
-(define (get-user db entry)
- (get-result db entry second))
-
-(define (get-password db entry)
- (get-result db entry third))
-
-(define (get-comment db entry)
- (get-result db entry fourth))
-
(define (update-db db key #!key user password comment)
(let ((entry (or (alist-ref key db equal?) (make-list 3 ""))))
(alist-update key
@@ -306,11 +284,11 @@
accounts))))
(define (do-password db e)
- (let ((p (get-password db e)))
- (if p (print p)
- (begin
- (print "Error: password for " e " not found.")
- (exit 1)))))
+ (cond ((alist-ref e db equal?) =>
+ (lambda (e) (print (second e))))
+ (else
+ (print "Error: password for " e " not found.")
+ (exit 1))))
(define (do-init db-name content)
(print "I will ask you twice for the passphrase to encrypt the password stor…
You are viewing proxied material from vernunftzentrum.de. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.