Skip to content

Commit

Permalink
[CWS] COS constant fixes (#11587)
Browse files Browse the repository at this point in the history
* [CWS] skip `TestNetworkCIDR` on SLES

* [CWS] fix COS offsets
  • Loading branch information
paulcacheux authored Apr 19, 2022
1 parent c878654 commit 66fe668
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 1 deletion.
14 changes: 14 additions & 0 deletions pkg/security/probe/constantfetch/fallback.go
Original file line number Diff line number Diff line change
Expand Up @@ -524,6 +524,12 @@ func getPipeInodeInfoBufsOffset(kv *kernel.Version) uint64 {
offset = 152
case kv.IsDebianKernel() && kv.IsInRangeCloseOpen(kernel.Kernel5_10, kernel.Kernel5_11):
offset = 152
case kv.IsCOSKernel() && kv.IsInRangeCloseOpen(kernel.Kernel4_19, kernel.Kernel4_20):
fallthrough
case kv.IsCOSKernel() && kv.IsInRangeCloseOpen(kernel.Kernel5_4, kernel.Kernel5_5):
offset = 160
case kv.IsCOSKernel() && kv.IsInRangeCloseOpen(kernel.Kernel5_10, kernel.Kernel5_11):
offset = 208

case kv.IsInRangeCloseOpen(kernel.Kernel4_13, kernel.Kernel5_6):
offset = 120
Expand Down Expand Up @@ -575,6 +581,12 @@ func getNetNSOffset(kv *kernel.Version) uint64 {
}

switch {
case kv.IsCOSKernel() && kv.IsInRangeCloseOpen(kernel.Kernel4_19, kernel.Kernel4_20):
return 176
case kv.IsCOSKernel() && kv.IsInRangeCloseOpen(kernel.Kernel5_4, kernel.Kernel5_5):
fallthrough
case kv.IsCOSKernel() && kv.IsInRangeCloseOpen(kernel.Kernel5_10, kernel.Kernel5_11):
return 192
case kv.IsInRangeCloseOpen(kernel.Kernel4_15, kernel.Kernel4_16) && ubuntuAbiVersionCheck(kv, hashMixAbiMinVersion):
fallthrough
// Commit 355b98553789b646ed97ad801a619ff898471b92 introduces a hashmix field for security
Expand Down Expand Up @@ -623,6 +635,8 @@ func getNFConnCTNetOffset(kv *kernel.Version) uint64 {
offset := uint64(144)

switch {
case kv.IsCOSKernel():
offset = 168
case kv.IsRH7Kernel():
offset = 240
}
Expand Down
2 changes: 1 addition & 1 deletion pkg/security/tests/network_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ import (
func TestNetworkCIDR(t *testing.T) {
checkKernelCompatibility(t, "RHEL, SLES and Oracle kernels", func(kv *kernel.Version) bool {
// TODO: Oracle because we are missing offsets
return kv.IsRH7Kernel() || kv.IsOracleUEKKernel()
return kv.IsRH7Kernel() || kv.IsOracleUEKKernel() || kv.IsSLESKernel()
})

if testEnvironment != DockerEnvironment && !config.IsContainerized() {
Expand Down

0 comments on commit 66fe668

Please sign in to comment.