@@ -35,12 +35,16 @@ import (
35
35
psputil "k8s.io/kubernetes/pkg/security/podsecuritypolicy/util"
36
36
)
37
37
38
+ // ValidatePodDisruptionBudget validates a PodDisruptionBudget and returns an ErrorList
39
+ // with any errors.
38
40
func ValidatePodDisruptionBudget (pdb * policy.PodDisruptionBudget ) field.ErrorList {
39
41
allErrs := ValidatePodDisruptionBudgetSpec (pdb .Spec , field .NewPath ("spec" ))
40
42
allErrs = append (allErrs , ValidatePodDisruptionBudgetStatus (pdb .Status , field .NewPath ("status" ))... )
41
43
return allErrs
42
44
}
43
45
46
+ // ValidatePodDisruptionBudgetSpec validates a PodDisruptionBudgetSpec and returns an ErrorList
47
+ // with any errors.
44
48
func ValidatePodDisruptionBudgetSpec (spec policy.PodDisruptionBudgetSpec , fldPath * field.Path ) field.ErrorList {
45
49
allErrs := field.ErrorList {}
46
50
@@ -63,6 +67,8 @@ func ValidatePodDisruptionBudgetSpec(spec policy.PodDisruptionBudgetSpec, fldPat
63
67
return allErrs
64
68
}
65
69
70
+ // ValidatePodDisruptionBudgetStatus validates a PodDisruptionBudgetStatus and returns an ErrorList
71
+ // with any errors.
66
72
func ValidatePodDisruptionBudgetStatus (status policy.PodDisruptionBudgetStatus , fldPath * field.Path ) field.ErrorList {
67
73
allErrs := field.ErrorList {}
68
74
allErrs = append (allErrs , apivalidation .ValidateNonnegativeField (int64 (status .PodDisruptionsAllowed ), fldPath .Child ("podDisruptionsAllowed" ))... )
@@ -78,6 +84,8 @@ func ValidatePodDisruptionBudgetStatus(status policy.PodDisruptionBudgetStatus,
78
84
// trailing dashes are allowed.
79
85
var ValidatePodSecurityPolicyName = apimachineryvalidation .NameIsDNSSubdomain
80
86
87
+ // ValidatePodSecurityPolicy validates a PodSecurityPolicy and returns an ErrorList
88
+ // with any errors.
81
89
func ValidatePodSecurityPolicy (psp * policy.PodSecurityPolicy ) field.ErrorList {
82
90
allErrs := field.ErrorList {}
83
91
allErrs = append (allErrs , apivalidation .ValidateObjectMeta (& psp .ObjectMeta , false , ValidatePodSecurityPolicyName , field .NewPath ("metadata" ))... )
@@ -86,6 +94,8 @@ func ValidatePodSecurityPolicy(psp *policy.PodSecurityPolicy) field.ErrorList {
86
94
return allErrs
87
95
}
88
96
97
+ // ValidatePodSecurityPolicySpec validates a PodSecurityPolicySpec and returns an ErrorList
98
+ // with any errors.
89
99
func ValidatePodSecurityPolicySpec (spec * policy.PodSecurityPolicySpec , fldPath * field.Path ) field.ErrorList {
90
100
allErrs := field.ErrorList {}
91
101
@@ -114,6 +124,8 @@ func ValidatePodSecurityPolicySpec(spec *policy.PodSecurityPolicySpec, fldPath *
114
124
return allErrs
115
125
}
116
126
127
+ // ValidatePodSecurityPolicySpecificAnnotations validates annotations and returns an ErrorList
128
+ // with any errors.
117
129
func ValidatePodSecurityPolicySpecificAnnotations (annotations map [string ]string , fldPath * field.Path ) field.ErrorList {
118
130
allErrs := field.ErrorList {}
119
131
@@ -335,10 +347,13 @@ func validatePSPAllowedProcMountTypes(fldPath *field.Path, allowedProcMountTypes
335
347
}
336
348
337
349
const sysctlPatternSegmentFmt string = "([a-z0-9][-_a-z0-9]*)?[a-z0-9*]"
350
+
351
+ // SysctlPatternFmt is a regex used for matching valid sysctl patterns.
338
352
const SysctlPatternFmt string = "(" + apivalidation .SysctlSegmentFmt + "\\ .)*" + sysctlPatternSegmentFmt
339
353
340
354
var sysctlPatternRegexp = regexp .MustCompile ("^" + SysctlPatternFmt + "$" )
341
355
356
+ // IsValidSysctlPattern checks if name is a valid sysctl pattern.
342
357
func IsValidSysctlPattern (name string ) bool {
343
358
if len (name ) > apivalidation .SysctlMaxLength {
344
359
return false
0 commit comments