[sspi] passing gss seq# to sspi privacy api
This commit is contained in:
parent
332f9331a2
commit
4222bd6f2b
3 changed files with 5 additions and 5 deletions
|
|
@ -760,7 +760,7 @@ uint32_t sspi_wrap(PCtxtHandle ctx, u_int seq, sspi_buffer_desc *bufin,
|
||||||
SecBuff[2].BufferType = SECBUFFER_PADDING;
|
SecBuff[2].BufferType = SECBUFFER_PADDING;
|
||||||
SecBuff[2].pvBuffer = malloc(ContextSizes.cbBlockSize);
|
SecBuff[2].pvBuffer = malloc(ContextSizes.cbBlockSize);
|
||||||
|
|
||||||
maj_stat = EncryptMessage(ctx, ulQop, &BuffDesc, 0);
|
maj_stat = EncryptMessage(ctx, ulQop, &BuffDesc, seq);
|
||||||
if (maj_stat != SEC_E_OK)
|
if (maj_stat != SEC_E_OK)
|
||||||
goto out_free;
|
goto out_free;
|
||||||
|
|
||||||
|
|
@ -781,7 +781,7 @@ out:
|
||||||
return maj_stat;
|
return maj_stat;
|
||||||
}
|
}
|
||||||
|
|
||||||
uint32_t sspi_unwrap(PCtxtHandle ctx, sspi_buffer_desc *bufin,
|
uint32_t sspi_unwrap(PCtxtHandle ctx, u_int seq, sspi_buffer_desc *bufin,
|
||||||
sspi_buffer_desc *bufout, u_int *conf_state,
|
sspi_buffer_desc *bufout, u_int *conf_state,
|
||||||
u_int *qop_state)
|
u_int *qop_state)
|
||||||
{
|
{
|
||||||
|
|
@ -804,7 +804,7 @@ uint32_t sspi_unwrap(PCtxtHandle ctx, sspi_buffer_desc *bufin,
|
||||||
|
|
||||||
log_hexdump(0, "cipher:", bufin->value, bufin->length, 0);
|
log_hexdump(0, "cipher:", bufin->value, bufin->length, 0);
|
||||||
|
|
||||||
maj_stat = DecryptMessage(ctx, &BuffDesc, 0, &ulQop);
|
maj_stat = DecryptMessage(ctx, &BuffDesc, seq, &ulQop);
|
||||||
if (maj_stat != SEC_E_OK) return maj_stat;
|
if (maj_stat != SEC_E_OK) return maj_stat;
|
||||||
|
|
||||||
bufout->length = SecBuff[1].cbBuffer;
|
bufout->length = SecBuff[1].cbBuffer;
|
||||||
|
|
|
||||||
|
|
@ -248,7 +248,7 @@ xdr_rpc_sspi_unwrap_data(XDR *xdrs, xdrproc_t xdr_func, caddr_t xdr_ptr,
|
||||||
maj_stat = gss_unwrap(&min_stat, ctx, &wrapbuf, &databuf,
|
maj_stat = gss_unwrap(&min_stat, ctx, &wrapbuf, &databuf,
|
||||||
&conf_state, &qop_state);
|
&conf_state, &qop_state);
|
||||||
#else
|
#else
|
||||||
maj_stat = sspi_unwrap(ctx, &wrapbuf, &databuf, &conf_state, &qop_state);
|
maj_stat = sspi_unwrap(ctx, seq, &wrapbuf, &databuf, &conf_state, &qop_state);
|
||||||
#endif
|
#endif
|
||||||
#if 0
|
#if 0
|
||||||
gss_release_buffer(&min_stat, &wrapbuf);
|
gss_release_buffer(&min_stat, &wrapbuf);
|
||||||
|
|
|
||||||
|
|
@ -107,7 +107,7 @@ uint32_t sspi_verify_mic(void *ctx, u_int seq, sspi_buffer_desc *bufin,
|
||||||
sspi_buffer_desc *bufout, u_int *qop_state);
|
sspi_buffer_desc *bufout, u_int *qop_state);
|
||||||
uint32_t sspi_wrap(void *ctx, u_int seq, sspi_buffer_desc *bufin,
|
uint32_t sspi_wrap(void *ctx, u_int seq, sspi_buffer_desc *bufin,
|
||||||
sspi_buffer_desc *bufout, u_int *conf_state);
|
sspi_buffer_desc *bufout, u_int *conf_state);
|
||||||
uint32_t sspi_unwrap(void *ctx, sspi_buffer_desc *bufin,
|
uint32_t sspi_unwrap(void *ctx, u_int seq, sspi_buffer_desc *bufin,
|
||||||
sspi_buffer_desc *bufout, u_int *conf_state,
|
sspi_buffer_desc *bufout, u_int *conf_state,
|
||||||
u_int *qop_state);
|
u_int *qop_state);
|
||||||
void sspi_release_buffer(sspi_buffer_desc *buf);
|
void sspi_release_buffer(sspi_buffer_desc *buf);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue