<!--
{
  "availability" : [
    "iOS: 5.0.0 -",
    "iPadOS: 5.0.0 -",
    "macCatalyst: 13.0.0 -",
    "macOS: 10.14.0 -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "GSS",
  "identifier" : "/documentation/GSS/GSS_C_PROT_READY_FLAG",
  "metadataVersion" : "0.1.0",
  "role" : "Global Variable",
  "symbol" : {
    "kind" : "Global Variable",
    "modules" : [
      "GSS"
    ],
    "preciseIdentifier" : "c:@macro@GSS_C_PROT_READY_FLAG"
  },
  "title" : "GSS_C_PROT_READY_FLAG"
}
-->

# GSS_C_PROT_READY_FLAG

A flag that provides an early indication of the availability of confidentiality and integrity services.

```
var GSS_C_PROT_READY_FLAG: Int32 { get }
```

## Discussion

Establishing a context requires a back and forth over a network connection between initiator and acceptor, typically involving multiple calls to the [`gss_init_sec_context(_:_:_:_:_:_:_:_:_:_:_:_:_:)`](/documentation/GSS/gss_init_sec_context(_:_:_:_:_:_:_:_:_:_:_:_:_:)) and [`gss_accept_sec_context(_:_:_:_:_:_:_:_:_:_:_:)`](/documentation/GSS/gss_accept_sec_context(_:_:_:_:_:_:_:_:_:_:_:)) functions. The `GSS_C_PROT_READY_FLAG` flag, when set by either function as a return flag, indicates that although the context is not yet ready, the forthcoming availability of confidentiality and integrity services is already known and reported by the [`GSS_C_CONF_FLAG`](/documentation/GSS/GSS_C_CONF_FLAG) and [`GSS_C_INTEG_FLAG`](/documentation/GSS/GSS_C_INTEG_FLAG) flags, respectively. This allows you to begin using the various protection functions if reported as available, without waiting for the context to complete.

When the flag is not set, you can’t assume anything about the availability of the protection services until the context is complete.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)