diff options
Diffstat (limited to 'ldap/servers')
-rw-r--r-- | ldap/servers/slapd/sasl_io.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/ldap/servers/slapd/sasl_io.c b/ldap/servers/slapd/sasl_io.c index e346b88e..cd296bfb 100644 --- a/ldap/servers/slapd/sasl_io.c +++ b/ldap/servers/slapd/sasl_io.c @@ -314,7 +314,8 @@ sasl_recv_connection(Connection *c, char *buffer, size_t count,PRInt32 *err) if (bytes_to_return > count) { bytes_to_return = count; } - memcpy(buffer, sp->decrypted_buffer, bytes_to_return); + /* Copy data from the decrypted buffer starting at the offset */ + memcpy(buffer, sp->decrypted_buffer + sp->decrypted_buffer_offset, bytes_to_return); if (bytes_in_buffer == bytes_to_return) { sp->decrypted_buffer_offset = 0; sp->decrypted_buffer_count = 0; |