summaryrefslogtreecommitdiffstats
path: root/ldap/servers
diff options
context:
space:
mode:
authorNathan Kinder <nkinder@redhat.com>2006-09-26 22:08:17 +0000
committerNathan Kinder <nkinder@redhat.com>2006-09-26 22:08:17 +0000
commit7452be8870166cd045f7c32ac934b02aa850cb1a (patch)
treee08639f27b674620a53331a51e4391526a94090b /ldap/servers
parent3dad3102ef795f3d917b7e882ec412833f730851 (diff)
downloadds-7452be8870166cd045f7c32ac934b02aa850cb1a.tar.gz
ds-7452be8870166cd045f7c32ac934b02aa850cb1a.tar.xz
ds-7452be8870166cd045f7c32ac934b02aa850cb1a.zip
208058 - Copy decrypted SASL data starting from buffer offset instead of always copying from the beginning of the buffer.
Diffstat (limited to 'ldap/servers')
-rw-r--r--ldap/servers/slapd/sasl_io.c3
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;