[PATCH v2 07/12] secur32: Get rid of buffer iteration callback in unixlib.
Nikolay Sivov
wine at gitlab.winehq.org
Thu Jun 2 06:45:47 CDT 2022
From: Nikolay Sivov <nsivov at codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
---
dlls/secur32/schannel_gnutls.c | 19 ++++++++-----------
1 file changed, 8 insertions(+), 11 deletions(-)
diff --git a/dlls/secur32/schannel_gnutls.c b/dlls/secur32/schannel_gnutls.c
index 44ad7c2c1da..0657f9ab064 100644
--- a/dlls/secur32/schannel_gnutls.c
+++ b/dlls/secur32/schannel_gnutls.c
@@ -147,7 +147,6 @@ struct schan_buffers
SIZE_T limit;
const SecBufferDesc *desc;
int current_buffer_idx;
- int (*get_next_buffer)(struct schan_buffers *);
};
struct schan_transport
@@ -226,17 +225,15 @@ static void compat_gnutls_dtls_set_timeouts(gnutls_session_t session, unsigned i
FIXME("\n");
}
-static void init_schan_buffers(struct schan_buffers *s, const PSecBufferDesc desc,
- int (*get_next_buffer)(struct schan_buffers *))
+static void init_schan_buffers(struct schan_buffers *s, const PSecBufferDesc desc)
{
s->offset = 0;
s->limit = ~0UL;
s->desc = desc;
s->current_buffer_idx = -1;
- s->get_next_buffer = get_next_buffer;
}
-static int common_get_next_buffer(struct schan_buffers *s)
+static int get_next_buffer(struct schan_buffers *s)
{
if (s->current_buffer_idx == -1)
return s->desc->cBuffers ? 0 : -1;
@@ -259,7 +256,7 @@ static char *get_buffer(struct schan_buffers *s, SIZE_T *count)
if (s->current_buffer_idx == -1)
{
/* Initial buffer */
- int buffer_idx = s->get_next_buffer(s);
+ int buffer_idx = get_next_buffer(s);
if (buffer_idx == -1)
{
TRACE("No next buffer\n");
@@ -280,7 +277,7 @@ static char *get_buffer(struct schan_buffers *s, SIZE_T *count)
{
int buffer_idx;
- buffer_idx = s->get_next_buffer(s);
+ buffer_idx = get_next_buffer(s);
if (buffer_idx == -1)
{
TRACE("No next buffer\n");
@@ -518,9 +515,9 @@ static NTSTATUS schan_handshake( void *args )
NTSTATUS status;
int err;
- init_schan_buffers(&t->in, params->input, common_get_next_buffer);
+ init_schan_buffers(&t->in, params->input);
t->in.limit = params->input_size;
- init_schan_buffers(&t->out, params->output, common_get_next_buffer);
+ init_schan_buffers(&t->out, params->output);
while (1)
{
@@ -785,7 +782,7 @@ static NTSTATUS schan_send( void *args )
struct schan_transport *t = (struct schan_transport *)pgnutls_transport_get_ptr(s);
SSIZE_T ret, total = 0;
- init_schan_buffers(&t->out, params->output, common_get_next_buffer);
+ init_schan_buffers(&t->out, params->output);
for (;;)
{
@@ -825,7 +822,7 @@ static NTSTATUS schan_recv( void *args )
ssize_t ret;
SECURITY_STATUS status = SEC_E_OK;
- init_schan_buffers(&t->in, params->input, common_get_next_buffer);
+ init_schan_buffers(&t->in, params->input);
t->in.limit = params->input_size;
while (received < data_size)
--
GitLab
https://gitlab.winehq.org/wine/wine/-/merge_requests/160
More information about the wine-devel
mailing list