Hans Leidekker (@hans) commented about dlls/kerberos/krb5_ap.c:
params.context = context_handle->handle;
if (stream_idx == -1){params.stream_length = 0;params.stream = NULL;params.token_length = message->pBuffers[token_idx].cbBuffer;params.token = message->pBuffers[token_idx].pvBuffer;}else{if (!message->pBuffers[data_idx].pvBuffer){message->pBuffers[data_idx].pvBuffer = RtlAllocateHeap( GetProcessHeap(), 0, KERBEROS_MAX_BUF );if (!message->pBuffers[data_idx].pvBuffer) return STATUS_NO_MEMORY;message->pBuffers[data_idx].cbBuffer = KERBEROS_MAX_BUF;
KERBEROS_MAX_BUF is a misleading name, it's actually the maximum token size. I think we can use stream buffer size here instead.