frostfs-node/pkg/services/control/ir/server/opts.go
Leonard Lyubich dcfe9a6504 [#414] ir/control: Implement service server
Implement `ControlServiceServer` on `Server` type. The `Server` requires all
requests to be signed with keys from the so-called whitelist. To obtain
health status, it uses the abstraction in the form of `HealthChecker`
interface.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2021-06-15 15:21:52 +03:00

20 lines
418 B
Go

package control
// Option specifies Server's optional parameter.
type Option func(*options)
type options struct {
allowedKeys [][]byte
}
func defaultOptions() *options {
return new(options)
}
// WithAllowedKeys returns option to add public keys
// to white list of the Control service.
func WithAllowedKeys(keys [][]byte) Option {
return func(o *options) {
o.allowedKeys = append(o.allowedKeys, keys...)
}
}