func GetCryptoprocessor()

in linux/tpm.go [41:61]


func GetCryptoprocessor(path string) (Cryptoprocessor, error) {
	// Check if the TPM path exists
	info, err := os.Stat(path)
	if err != nil {
		return nil, err
	}

	var tpm Cryptoprocessor
	if (os.ModeDevice|os.ModeCharDevice)&info.Mode() != 0 {
		tpm = &tpmDevice{
			path: path,
		}
	} else {
		return nil, fmt.Errorf(
			"path %q is not a character device, only TPMs are supported",
			path,
		)
	}

	return tpm, nil
}