File: password_windows.go

package info (click to toggle)
golang-github-containers-common 0.64.1%2Bds1-2
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 5,932 kB
  • sloc: makefile: 132; sh: 111
file content (20 lines) | stat: -rw-r--r-- 370 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//go:build windows

package password

import (
	terminal "golang.org/x/term"
)

// Read reads a password from the terminal.
func Read(fd int) ([]byte, error) {
	oldState, err := terminal.GetState(fd)
	if err != nil {
		return make([]byte, 0), err
	}
	buf, err := terminal.ReadPassword(fd)
	if oldState != nil {
		_ = terminal.Restore(fd, oldState)
	}
	return buf, err
}