mirror of
https://github.com/hanzozt/zt.git
synced 2026-10-30 15:04:55 +00:00
- Repo names: ziti-* → zt-* - Go modules: github.com/hanzozt/ziti → github.com/hanzozt/zt - Docker images: hanzozt/ziti-* → hanzozt/zt-* - C/Java/JS symbols: ziti_* → zt_* - File and directory names updated
43 lines
844 B
Go
43 lines
844 B
Go
package posture
|
|
|
|
import (
|
|
"github.com/hanzozt/zt/v2/common/pb/edge_ctrl_pb"
|
|
)
|
|
|
|
type DomainCheck struct {
|
|
*edge_ctrl_pb.DataState_PostureCheck
|
|
*edge_ctrl_pb.DataState_PostureCheck_Domains
|
|
}
|
|
|
|
func (m *DomainCheck) Evaluate(state *InstanceData) *CheckError {
|
|
if state == nil {
|
|
return &CheckError{
|
|
Id: m.Id,
|
|
Name: m.Name,
|
|
Cause: NilStateError,
|
|
}
|
|
}
|
|
|
|
notInListErr := &AnyInListError[Str]{
|
|
GivenValues: []Str{Str(state.Domain.Name)},
|
|
}
|
|
|
|
for _, domain := range m.Domains {
|
|
if state.Domain.Name != domain {
|
|
notInListErr.FailedValues = append(notInListErr.FailedValues, FailedValueError[Str]{
|
|
ExpectedValue: Str(domain),
|
|
GivenValue: Str(state.Domain.Name),
|
|
Reason: NotEqualError,
|
|
})
|
|
} else {
|
|
return nil
|
|
}
|
|
}
|
|
|
|
return &CheckError{
|
|
Id: m.Id,
|
|
Name: m.Name,
|
|
Cause: notInListErr,
|
|
}
|
|
}
|