summaryrefslogtreecommitdiffhomepage
path: root/feature/tpm/tpm_linux.go
blob: e7c214c0be6a526ce56d54b21e7594d4d16941b1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// Copyright (c) Tailscale Inc & contributors
// SPDX-License-Identifier: BSD-3-Clause

package tpm

import (
	"errors"

	"github.com/google/go-tpm/tpm2/transport"
	"github.com/google/go-tpm/tpm2/transport/linuxtpm"
)

func open() (transport.TPMCloser, error) {
	tpm, err := linuxtpm.Open("/dev/tpmrm0")
	if err == nil {
		return tpm, nil
	}
	errs := []error{err}
	tpm, err = linuxtpm.Open("/dev/tpm0")
	if err == nil {
		return tpm, nil
	}
	return nil, errors.Join(errs...)
}