diff --git a/service/cziti/sdk.go b/service/cziti/sdk.go index efbc86e4..5f1dbf7f 100644 --- a/service/cziti/sdk.go +++ b/service/cziti/sdk.go @@ -416,12 +416,11 @@ func serviceCB(ziti_ctx C.ziti_context, service *C.ziti_service, status C.int, z timeout := -1 timeoutRemaining := -1 - //find all posture checks sets... - for setIdx := 0; true; setIdx++ { - pqs := C.posture_query_set_get(service.posture_query_set, C.int(setIdx)) - if unsafe.Pointer(pqs) == C.NULL { - break - } + it := C.model_map_iterator(&service.posture_query_map) + for unsafe.Pointer(it) != C.NULL { + ptr := C.model_map_it_value(it) + + pqs := (*C.ziti_posture_query_set)(unsafe.Pointer(ptr)) if C.GoString(pqs.policy_type) == "Bind" { log.Tracef("Posture Query set returned a Bind policy: %s [ignored]", C.GoString(pqs.policy_id)) @@ -483,6 +482,19 @@ func serviceCB(ziti_ctx C.ziti_context, service *C.ziti_service, status C.int, z postureChecks = append(postureChecks, pc) } } + + it = C.model_map_it_next(it) + } + + + //find all posture checks sets... + for setIdx := 0; true; setIdx++ { + pqs := C.posture_query_set_get(service.posture_query_set, C.int(setIdx)) + if unsafe.Pointer(pqs) == C.NULL { + break + } + + } svc = &dto.Service{