aboutsummaryrefslogtreecommitdiff
path: root/vendor/github.com/lib/pq/ssl_permissions.go
blob: 014af6a1695b56a0c0642023f1ed63e602c7720f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
//go:build !windows
// +build !windows

package pq

import "os"

// sslKeyPermissions checks the permissions on user-supplied ssl key files.
// The key file should have very little access.
//
// libpq does not check key file permissions on Windows.
func sslKeyPermissions(sslkey string) error {
	info, err := os.Stat(sslkey)
	if err != nil {
		return err
	}
	if info.Mode().Perm()&0077 != 0 {
		return ErrSSLKeyHasWorldPermissions
	}
	return nil
}