gopass

package module
v0.0.0-...-d4b7cdf Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 14, 2023 License: ISC Imports: 5 Imported by: 1

README

getpasswd in Go GoDoc Build Status

Retrieve password from user terminal or piped input without echo.

Verified on BSD, Linux, and Windows.

Example:

package main

import "fmt"
import "github.com/howeyc/gopass"

func main() {
	fmt.Printf("Password: ")

	// Silent. For printing *'s use gopass.GetPasswdMasked()
	pass, err := gopass.GetPasswd()
	if err != nil {
		// Handle gopass.ErrInterrupted or getch() read error
	}

	// Do something with pass
}

Caution: Multi-byte characters not supported!

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrInterrupted       = errors.New("interrupted")
	ErrMaxLengthExceeded = fmt.Errorf("maximum byte limit (%v) exceeded", maxLength)
)

Functions

func GetPasswd

func GetPasswd() ([]byte, error)

GetPasswd returns the password read from the terminal without echoing input. The returned byte array does not include end-of-line characters.

func GetPasswdEchoed

func GetPasswdEchoed() ([]byte, error)

GetPasswdEchoed returns the password read from the terminal, echoing input. The returned byte array does not include end-of-line characters.

func GetPasswdMasked

func GetPasswdMasked() ([]byte, error)

GetPasswdMasked returns the password read from the terminal, echoing asterisks. The returned byte array does not include end-of-line characters.

func GetPasswdPrompt

func GetPasswdPrompt(prompt string, mask bool, r FdReader, w io.Writer) ([]byte, error)

GetPasswdPrompt prompts the user and returns the password read from the terminal. If mask is true, then asterisks are echoed. The returned byte array does not include end-of-line characters.

Types

type FdReader

type FdReader interface {
	io.Reader
	Fd() uintptr
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL