diff options
-rw-r--r-- | include/libssh/buffer.h | 2 | ||||
-rw-r--r-- | src/agent.c | 4 | ||||
-rw-r--r-- | src/base64.c | 8 | ||||
-rw-r--r-- | src/buffer.c | 77 | ||||
-rw-r--r-- | src/channels.c | 14 | ||||
-rw-r--r-- | src/channels1.c | 2 | ||||
-rw-r--r-- | src/dh.c | 22 | ||||
-rw-r--r-- | src/gssapi.c | 2 | ||||
-rw-r--r-- | src/gzip.c | 8 | ||||
-rw-r--r-- | src/kex.c | 2 | ||||
-rw-r--r-- | src/kex1.c | 6 | ||||
-rw-r--r-- | src/packet.c | 8 | ||||
-rw-r--r-- | src/packet1.c | 2 | ||||
-rw-r--r-- | src/pcap.c | 2 | ||||
-rw-r--r-- | src/pki.c | 8 | ||||
-rw-r--r-- | src/pki_crypto.c | 6 | ||||
-rw-r--r-- | src/sftp.c | 8 | ||||
-rw-r--r-- | src/sftpserver.c | 8 | ||||
-rw-r--r-- | src/socket.c | 4 | ||||
-rw-r--r-- | tests/unittests/torture_buffer.c | 10 |
20 files changed, 114 insertions, 89 deletions
diff --git a/include/libssh/buffer.h b/include/libssh/buffer.h index 16f4d957..3224af28 100644 --- a/include/libssh/buffer.h +++ b/include/libssh/buffer.h @@ -45,7 +45,7 @@ int buffer_add_u8(ssh_buffer buffer, uint8_t data); int buffer_add_u16(ssh_buffer buffer, uint16_t data); int buffer_add_u32(ssh_buffer buffer, uint32_t data); int buffer_add_u64(ssh_buffer buffer, uint64_t data); -int buffer_add_data(ssh_buffer buffer, const void *data, uint32_t len); +int ssh_buffer_add_data(ssh_buffer buffer, const void *data, uint32_t len); int buffer_prepend_data(ssh_buffer buffer, const void *data, uint32_t len); int buffer_add_buffer(ssh_buffer buffer, ssh_buffer source); int ssh_buffer_reinit(ssh_buffer buffer); diff --git a/src/agent.c b/src/agent.c index e764525c..d5257604 100644 --- a/src/agent.c +++ b/src/agent.c @@ -300,7 +300,7 @@ static int agent_talk(struct ssh_session_struct *session, "Error reading response from authentication socket."); return -1; } - if (buffer_add_data(reply, payload, n) < 0) { + if (ssh_buffer_add_data(reply, payload, n) < 0) { SSH_LOG(SSH_LOG_WARN, "Not enough space"); return -1; } @@ -526,7 +526,7 @@ ssh_string ssh_agent_sign_data(ssh_session session, ssh_buffer_free(request); return NULL; } - if (buffer_add_data(request, buffer_get_rest(data), dlen) < 0) { + if (ssh_buffer_add_data(request, buffer_get_rest(data), dlen) < 0) { ssh_buffer_free(request); return NULL; } diff --git a/src/base64.c b/src/base64.c index ff7671c1..e5981f55 100644 --- a/src/base64.c +++ b/src/base64.c @@ -88,7 +88,7 @@ ssh_buffer base64_to_bin(const char *source) { if (_base64_to_bin(block, ptr, 3) < 0) { goto error; } - if (buffer_add_data(buffer, block, 3) < 0) { + if (ssh_buffer_add_data(buffer, block, 3) < 0) { goto error; } len -= 4; @@ -112,7 +112,7 @@ ssh_buffer base64_to_bin(const char *source) { if (_base64_to_bin(block, ptr, 3) < 0) { goto error; } - if (buffer_add_data(buffer, block, 3) < 0) { + if (ssh_buffer_add_data(buffer, block, 3) < 0) { goto error; } SAFE_FREE(base64); @@ -131,7 +131,7 @@ ssh_buffer base64_to_bin(const char *source) { if (_base64_to_bin(block, ptr, 1) < 0) { goto error; } - if (buffer_add_data(buffer, block, 1) < 0) { + if (ssh_buffer_add_data(buffer, block, 1) < 0) { goto error; } SAFE_FREE(base64); @@ -149,7 +149,7 @@ ssh_buffer base64_to_bin(const char *source) { if (_base64_to_bin(block, ptr, 2) < 0) { goto error; } - if (buffer_add_data(buffer,block,2) < 0) { + if (ssh_buffer_add_data(buffer,block,2) < 0) { goto error; } SAFE_FREE(base64); diff --git a/src/buffer.c b/src/buffer.c index 76507596..fdee6a09 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -186,7 +186,8 @@ int ssh_buffer_reinit(struct ssh_buffer_struct *buffer) * * @return 0 on success, < 0 on error. */ -int buffer_add_data(struct ssh_buffer_struct *buffer, const void *data, uint32_t len) { +int ssh_buffer_add_data(struct ssh_buffer_struct *buffer, const void *data, uint32_t len) +{ buffer_verify(buffer); if (buffer->used + len < len) { @@ -223,7 +224,7 @@ int buffer_add_ssh_string(struct ssh_buffer_struct *buffer, uint32_t len = 0; len = ssh_string_len(string); - if (buffer_add_data(buffer, string, len + sizeof(uint32_t)) < 0) { + if (ssh_buffer_add_data(buffer, string, len + sizeof(uint32_t)) < 0) { return -1; } @@ -241,12 +242,16 @@ int buffer_add_ssh_string(struct ssh_buffer_struct *buffer, * * @return 0 on success, -1 on error. */ -int buffer_add_u32(struct ssh_buffer_struct *buffer,uint32_t data){ - if (buffer_add_data(buffer, &data, sizeof(data)) < 0) { - return -1; - } +int buffer_add_u32(struct ssh_buffer_struct *buffer,uint32_t data) +{ + int rc; - return 0; + rc = ssh_buffer_add_data(buffer, &data, sizeof(data)); + if (rc < 0) { + return -1; + } + + return 0; } /** @@ -260,12 +265,16 @@ int buffer_add_u32(struct ssh_buffer_struct *buffer,uint32_t data){ * * @return 0 on success, -1 on error. */ -int buffer_add_u16(struct ssh_buffer_struct *buffer,uint16_t data){ - if (buffer_add_data(buffer, &data, sizeof(data)) < 0) { - return -1; - } +int buffer_add_u16(struct ssh_buffer_struct *buffer,uint16_t data) +{ + int rc; - return 0; + rc = ssh_buffer_add_data(buffer, &data, sizeof(data)); + if (rc < 0) { + return -1; + } + + return 0; } /** @@ -279,12 +288,16 @@ int buffer_add_u16(struct ssh_buffer_struct *buffer,uint16_t data){ * * @return 0 on success, -1 on error. */ -int buffer_add_u64(struct ssh_buffer_struct *buffer, uint64_t data){ - if (buffer_add_data(buffer, &data, sizeof(data)) < 0) { - return -1; - } +int buffer_add_u64(struct ssh_buffer_struct *buffer, uint64_t data) +{ + int rc; - return 0; + rc = ssh_buffer_add_data(buffer, &data, sizeof(data)); + if (rc < 0) { + return -1; + } + + return 0; } /** @@ -298,12 +311,16 @@ int buffer_add_u64(struct ssh_buffer_struct *buffer, uint64_t data){ * * @return 0 on success, -1 on error. */ -int buffer_add_u8(struct ssh_buffer_struct *buffer,uint8_t data){ - if (buffer_add_data(buffer, &data, sizeof(uint8_t)) < 0) { - return -1; - } +int buffer_add_u8(struct ssh_buffer_struct *buffer,uint8_t data) +{ + int rc; - return 0; + rc = ssh_buffer_add_data(buffer, &data, sizeof(uint8_t)); + if (rc < 0) { + return -1; + } + + return 0; } /** @@ -361,12 +378,18 @@ int buffer_prepend_data(struct ssh_buffer_struct *buffer, const void *data, * @return 0 on success, -1 on error. */ int buffer_add_buffer(struct ssh_buffer_struct *buffer, - struct ssh_buffer_struct *source) { - if (buffer_add_data(buffer, buffer_get_rest(source), buffer_get_rest_len(source)) < 0) { - return -1; - } + struct ssh_buffer_struct *source) +{ + int rc; - return 0; + rc = ssh_buffer_add_data(buffer, + buffer_get_rest(source), + buffer_get_rest_len(source)); + if (rc < 0) { + return -1; + } + + return 0; } /** diff --git a/src/channels.c b/src/channels.c index 333d5fdf..17aed906 100644 --- a/src/channels.c +++ b/src/channels.c @@ -879,7 +879,7 @@ int channel_default_bufferize(ssh_channel channel, void *data, int len, } } - if (buffer_add_data(channel->stdout_buffer, data, len) < 0) { + if (ssh_buffer_add_data(channel->stdout_buffer, data, len) < 0) { ssh_set_error_oom(session); ssh_buffer_free(channel->stdout_buffer); channel->stdout_buffer = NULL; @@ -895,7 +895,7 @@ int channel_default_bufferize(ssh_channel channel, void *data, int len, } } - if (buffer_add_data(channel->stderr_buffer, data, len) < 0) { + if (ssh_buffer_add_data(channel->stderr_buffer, data, len) < 0) { ssh_set_error_oom(session); ssh_buffer_free(channel->stderr_buffer); channel->stderr_buffer = NULL; @@ -1389,7 +1389,7 @@ static int channel_write_common(ssh_channel channel, goto error; } - rc = buffer_add_data(session->out_buffer, data, effectivelen); + rc = ssh_buffer_add_data(session->out_buffer, data, effectivelen); if (rc < 0) { ssh_set_error_oom(session); goto error; @@ -1619,7 +1619,7 @@ static int channel_request(ssh_channel channel, const char *request, ssh_string_free(req); if (buffer != NULL) { - if (buffer_add_data(session->out_buffer, buffer_get_rest(buffer), + if (ssh_buffer_add_data(session->out_buffer, buffer_get_rest(buffer), buffer_get_rest_len(buffer)) < 0) { ssh_set_error_oom(session); goto error; @@ -2184,7 +2184,7 @@ static int global_request(ssh_session session, const char *request, } if (buffer != NULL) { - rc = buffer_add_data(session->out_buffer, + rc = ssh_buffer_add_data(session->out_buffer, buffer_get_rest(buffer), buffer_get_rest_len(buffer)); if (rc < 0) { @@ -2664,7 +2664,7 @@ int channel_read_buffer(ssh_channel channel, ssh_buffer buffer, uint32_t count, if(r < 0){ return r; } - if(buffer_add_data(buffer,buffer_tmp,r) < 0){ + if(ssh_buffer_add_data(buffer,buffer_tmp,r) < 0){ ssh_set_error_oom(session); r = SSH_ERROR; } @@ -2685,7 +2685,7 @@ int channel_read_buffer(ssh_channel channel, ssh_buffer buffer, uint32_t count, if(r==0){ return total; } - if(buffer_add_data(buffer,buffer_tmp,r) < 0){ + if (ssh_buffer_add_data(buffer,buffer_tmp,r) < 0) { ssh_set_error_oom(session); return SSH_ERROR; diff --git a/src/channels1.c b/src/channels1.c index 42dde8ea..2b307408 100644 --- a/src/channels1.c +++ b/src/channels1.c @@ -356,7 +356,7 @@ int channel_write1(ssh_channel channel, const void *data, int len) { effectivelen = len > 32000 ? 32000 : len; if (buffer_add_u32(session->out_buffer, htonl(effectivelen)) < 0 || - buffer_add_data(session->out_buffer, ptr, effectivelen) < 0) { + ssh_buffer_add_data(session->out_buffer, ptr, effectivelen) < 0) { return -1; } @@ -655,7 +655,7 @@ int make_sessionid(ssh_session session) { if (buffer_add_u32(buf,len) < 0) { goto error; } - if (buffer_add_data(buf, buffer_get_rest(client_hash), + if (ssh_buffer_add_data(buf, buffer_get_rest(client_hash), buffer_get_rest_len(client_hash)) < 0) { goto error; } @@ -664,13 +664,13 @@ int make_sessionid(ssh_session session) { if (buffer_add_u32(buf, len) < 0) { goto error; } - if (buffer_add_data(buf, buffer_get_rest(server_hash), + if (ssh_buffer_add_data(buf, buffer_get_rest(server_hash), buffer_get_rest_len(server_hash)) < 0) { goto error; } len = ssh_string_len(session->next_crypto->server_pubkey) + 4; - if (buffer_add_data(buf, session->next_crypto->server_pubkey, len) < 0) { + if (ssh_buffer_add_data(buf, session->next_crypto->server_pubkey, len) < 0) { goto error; } if(session->next_crypto->kex_type == SSH_KEX_DH_GROUP1_SHA1 || @@ -682,7 +682,7 @@ int make_sessionid(ssh_session session) { } len = ssh_string_len(num) + 4; - if (buffer_add_data(buf, num, len) < 0) { + if (ssh_buffer_add_data(buf, num, len) < 0) { goto error; } @@ -693,7 +693,7 @@ int make_sessionid(ssh_session session) { } len = ssh_string_len(num) + 4; - if (buffer_add_data(buf, num, len) < 0) { + if (ssh_buffer_add_data(buf, num, len) < 0) { goto error; } @@ -717,10 +717,10 @@ int make_sessionid(ssh_session session) { #ifdef HAVE_CURVE25519 } else if(session->next_crypto->kex_type == SSH_KEX_CURVE25519_SHA256_LIBSSH_ORG){ rc = buffer_add_u32(buf, htonl(CURVE25519_PUBKEY_SIZE)); - rc += buffer_add_data(buf, session->next_crypto->curve25519_client_pubkey, + rc += ssh_buffer_add_data(buf, session->next_crypto->curve25519_client_pubkey, CURVE25519_PUBKEY_SIZE); rc += buffer_add_u32(buf, htonl(CURVE25519_PUBKEY_SIZE)); - rc += buffer_add_data(buf, session->next_crypto->curve25519_server_pubkey, + rc += ssh_buffer_add_data(buf, session->next_crypto->curve25519_server_pubkey, CURVE25519_PUBKEY_SIZE); if (rc != SSH_OK) { goto error; @@ -733,7 +733,7 @@ int make_sessionid(ssh_session session) { } len = ssh_string_len(num) + 4; - if (buffer_add_data(buf, num, len) < 0) { + if (ssh_buffer_add_data(buf, num, len) < 0) { goto error; } @@ -813,13 +813,13 @@ int hashbufout_add_cookie(ssh_session session) { } if (session->server) { - if (buffer_add_data(session->out_hashbuf, + if (ssh_buffer_add_data(session->out_hashbuf, session->next_crypto->server_kex.cookie, 16) < 0) { ssh_buffer_reinit(session->out_hashbuf); return -1; } } else { - if (buffer_add_data(session->out_hashbuf, + if (ssh_buffer_add_data(session->out_hashbuf, session->next_crypto->client_kex.cookie, 16) < 0) { ssh_buffer_reinit(session->out_hashbuf); return -1; @@ -839,7 +839,7 @@ int hashbufin_add_cookie(ssh_session session, unsigned char *cookie) { ssh_buffer_reinit(session->in_hashbuf); return -1; } - if (buffer_add_data(session->in_hashbuf,cookie, 16) < 0) { + if (ssh_buffer_add_data(session->in_hashbuf,cookie, 16) < 0) { ssh_buffer_reinit(session->in_hashbuf); return -1; } diff --git a/src/gssapi.c b/src/gssapi.c index 47394c35..da358994 100644 --- a/src/gssapi.c +++ b/src/gssapi.c @@ -889,7 +889,7 @@ static int ssh_gssapi_send_mic(ssh_session session){ return SSH_ERROR; } - rc = buffer_add_data(session->out_buffer, mic_token_buf.value, mic_token_buf.length); + rc = ssh_buffer_add_data(session->out_buffer, mic_token_buf.value, mic_token_buf.length); ssh_buffer_free(mic_buffer); if (rc < 0) { ssh_set_error_oom(session); @@ -90,7 +90,7 @@ static ssh_buffer gzip_compress(ssh_session session,ssh_buffer source,int level) return NULL; } len = BLOCKSIZE - zout->avail_out; - if (buffer_add_data(dest, out_buf, len) < 0) { + if (ssh_buffer_add_data(dest, out_buf, len) < 0) { ssh_buffer_free(dest); return NULL; } @@ -113,7 +113,7 @@ int compress_buffer(ssh_session session, ssh_buffer buf) { return -1; } - if (buffer_add_data(buf, buffer_get_rest(dest), buffer_get_rest_len(dest)) < 0) { + if (ssh_buffer_add_data(buf, buffer_get_rest(dest), buffer_get_rest_len(dest)) < 0) { ssh_buffer_free(dest); return -1; } @@ -181,7 +181,7 @@ static ssh_buffer gzip_decompress(ssh_session session, ssh_buffer source, size_t } len = BLOCKSIZE - zin->avail_out; - if (buffer_add_data(dest,out_buf,len) < 0) { + if (ssh_buffer_add_data(dest,out_buf,len) < 0) { ssh_buffer_free(dest); return NULL; } @@ -209,7 +209,7 @@ int decompress_buffer(ssh_session session,ssh_buffer buf, size_t maxlen){ return -1; } - if (buffer_add_data(buf, buffer_get_rest(dest), buffer_get_rest_len(dest)) < 0) { + if (ssh_buffer_add_data(buf, buffer_get_rest(dest), buffer_get_rest_len(dest)) < 0) { ssh_buffer_free(dest); return -1; } @@ -438,7 +438,7 @@ int ssh_send_kex(ssh_session session, int server_kex) { if (buffer_add_u8(session->out_buffer, SSH2_MSG_KEXINIT) < 0) { goto error; } - if (buffer_add_data(session->out_buffer, kex->cookie, 16) < 0) { + if (ssh_buffer_add_data(session->out_buffer, kex->cookie, 16) < 0) { goto error; } @@ -417,7 +417,7 @@ SSH_PACKET_CALLBACK(ssh_packet_publickey1){ if (buffer_add_u8(session->out_buffer, support_3DES ? SSH_CIPHER_3DES : SSH_CIPHER_DES) < 0) { goto error; } - if (buffer_add_data(session->out_buffer, session->next_crypto->server_kex.cookie, 8) < 0) { + if (ssh_buffer_add_data(session->out_buffer, session->next_crypto->server_kex.cookie, 8) < 0) { goto error; } @@ -431,10 +431,10 @@ SSH_PACKET_CALLBACK(ssh_packet_publickey1){ bits, ssh_string_len(enc_session)); bits = htons(bits); /* the encrypted mpint */ - if (buffer_add_data(session->out_buffer, &bits, sizeof(uint16_t)) < 0) { + if (ssh_buffer_add_data(session->out_buffer, &bits, sizeof(uint16_t)) < 0) { goto error; } - if (buffer_add_data(session->out_buffer, ssh_string_data(enc_session), + if (ssh_buffer_add_data(session->out_buffer, ssh_string_data(enc_session), ssh_string_len(enc_session)) < 0) { goto error; } diff --git a/src/packet.c b/src/packet.c index e3322872..87b9100c 100644 --- a/src/packet.c +++ b/src/packet.c @@ -192,7 +192,7 @@ int ssh_packet_socket_callback(const void *data, size_t receivedlen, void *user) processed += blocksize; len = packet_decrypt_len(session, buffer); - rc = buffer_add_data(session->in_buffer, buffer, blocksize); + rc = ssh_buffer_add_data(session->in_buffer, buffer, blocksize); if (rc < 0) { goto error; } @@ -237,7 +237,7 @@ int ssh_packet_socket_callback(const void *data, size_t receivedlen, void *user) to_be_read - current_macsize); #endif - rc = buffer_add_data(session->in_buffer, + rc = ssh_buffer_add_data(session->in_buffer, packet, to_be_read - current_macsize); if (rc < 0) { @@ -534,7 +534,7 @@ static int packet_send2(ssh_session session) { if (buffer_prepend_data(session->out_buffer, &finallen, sizeof(uint32_t)) < 0) { goto error; } - if (buffer_add_data(session->out_buffer, padstring, padding) < 0) { + if (ssh_buffer_add_data(session->out_buffer, padstring, padding) < 0) { goto error; } #ifdef WITH_PCAP @@ -547,7 +547,7 @@ static int packet_send2(ssh_session session) { hmac = packet_encrypt(session, buffer_get_rest(session->out_buffer), buffer_get_rest_len(session->out_buffer)); if (hmac) { - if (buffer_add_data(session->out_buffer, hmac, 20) < 0) { + if (ssh_buffer_add_data(session->out_buffer, hmac, 20) < 0) { goto error; } } diff --git a/src/packet1.c b/src/packet1.c index 5fe48398..ec72f166 100644 --- a/src/packet1.c +++ b/src/packet1.c @@ -155,7 +155,7 @@ int ssh_packet_socket_callback1(const void *data, size_t receivedlen, void *user /* it is _not_ possible that to_be_read be < 8. */ packet = (char *)data + processed; - if (buffer_add_data(session->in_buffer,packet,to_be_read) < 0) { + if (ssh_buffer_add_data(session->in_buffer,packet,to_be_read) < 0) { goto error; } processed += to_be_read; @@ -486,7 +486,7 @@ int ssh_pcap_context_write(ssh_pcap_context ctx,enum ssh_pcap_direction directio goto error; } /* actual data */ - err = buffer_add_data(ip,data,len); + err = ssh_buffer_add_data(ip, data, len); if (err < 0) { goto error; } @@ -811,7 +811,7 @@ int ssh_pki_import_pubkey_blob(const ssh_string key_blob, return SSH_ERROR; } - rc = buffer_add_data(buffer, ssh_string_data(key_blob), + rc = ssh_buffer_add_data(buffer, ssh_string_data(key_blob), ssh_string_len(key_blob)); if (rc < 0) { ssh_pki_log("Out of memory!"); @@ -1236,9 +1236,9 @@ int ssh_pki_import_signature_blob(const ssh_string sig_blob, return SSH_ERROR; } - rc = buffer_add_data(buf, - ssh_string_data(sig_blob), - ssh_string_len(sig_blob)); + rc = ssh_buffer_add_data(buf, + ssh_string_data(sig_blob), + ssh_string_len(sig_blob)); if (rc < 0) { ssh_buffer_free(buf); return SSH_ERROR; diff --git a/src/pki_crypto.c b/src/pki_crypto.c index 19346a70..733e0875 100644 --- a/src/pki_crypto.c +++ b/src/pki_crypto.c @@ -1303,9 +1303,9 @@ ssh_signature pki_signature_from_blob(const ssh_key pubkey, return NULL; } - rc = buffer_add_data(b, - ssh_string_data(sig_blob), - ssh_string_len(sig_blob)); + rc = ssh_buffer_add_data(b, + ssh_string_data(sig_blob), + ssh_string_len(sig_blob)); if (rc < 0) { ssh_buffer_free(b); ssh_signature_free(sig); @@ -332,7 +332,7 @@ sftp_packet sftp_packet_read(sftp_session sftp) { SAFE_FREE(packet); return NULL; } - buffer_add_data(packet->payload,buffer, r); + ssh_buffer_add_data(packet->payload, buffer, r); if (buffer_get_u32(packet->payload, &size) != sizeof(uint32_t)) { ssh_set_error(sftp->session, SSH_FATAL, "Short sftp packet!"); ssh_buffer_free(packet->payload); @@ -348,7 +348,7 @@ sftp_packet sftp_packet_read(sftp_session sftp) { SAFE_FREE(packet); return NULL; } - buffer_add_data(packet->payload, buffer, r); + ssh_buffer_add_data(packet->payload, buffer, r); buffer_get_u8(packet->payload, &packet->type); size=size-1; while (size>0){ @@ -361,7 +361,7 @@ sftp_packet sftp_packet_read(sftp_session sftp) { SAFE_FREE(packet); return NULL; } - if(buffer_add_data(packet->payload,buffer,r)==SSH_ERROR){ + if (ssh_buffer_add_data(packet->payload, buffer, r) == SSH_ERROR) { ssh_buffer_free(packet->payload); SAFE_FREE(packet); ssh_set_error_oom(sftp->session); @@ -451,7 +451,7 @@ static sftp_message sftp_get_message(sftp_packet packet) { msg->id, msg->packet_type); - if (buffer_add_data(msg->payload, buffer_get_rest(packet->payload), + if (ssh_buffer_add_data(msg->payload, buffer_get_rest(packet->payload), buffer_get_rest_len(packet->payload)) < 0) { ssh_set_error_oom(sftp->session); sftp_message_free(msg); diff --git a/src/sftpserver.c b/src/sftpserver.c index 0986b6ce..88fde251 100644 --- a/src/sftpserver.c +++ b/src/sftpserver.c @@ -64,7 +64,9 @@ sftp_client_message sftp_get_client_message(sftp_session sftp) { /* take a copy of the whole packet */ msg->complete_message = ssh_buffer_new(); - buffer_add_data(msg->complete_message, buffer_get_rest(payload), buffer_get_rest_len(payload)); + ssh_buffer_add_data(msg->complete_message, + buffer_get_rest(payload), + buffer_get_rest_len(payload)); buffer_get_u32(payload, &msg->id); @@ -407,7 +409,7 @@ int sftp_reply_names(sftp_client_message msg) { if (buffer_add_u32(out, msg->id) < 0 || buffer_add_u32(out, htonl(msg->attr_num)) < 0 || - buffer_add_data(out, buffer_get_rest(msg->attrbuf), + ssh_buffer_add_data(out, buffer_get_rest(msg->attrbuf), buffer_get_rest_len(msg->attrbuf)) < 0 || sftp_packet_write(msg->sftp, SSH_FXP_NAME, out) < 0) { ssh_buffer_free(out); @@ -466,7 +468,7 @@ int sftp_reply_data(sftp_client_message msg, const void *data, int len) { if (buffer_add_u32(out, msg->id) < 0 || buffer_add_u32(out, ntohl(len)) < 0 || - buffer_add_data(out, data, len) < 0 || + ssh_buffer_add_data(out, data, len) < 0 || sftp_packet_write(msg->sftp, SSH_FXP_DATA, out) < 0) { ssh_buffer_free(out); return -1; diff --git a/src/socket.c b/src/socket.c index da996533..dd414ef0 100644 --- a/src/socket.c +++ b/src/socket.c @@ -281,7 +281,7 @@ int ssh_socket_pollcallback(struct ssh_poll_handle_struct *p, socket_t fd, int r } if(r>0){ /* Bufferize the data and then call the callback */ - r = buffer_add_data(s->in_buffer,buffer,r); + r = ssh_buffer_add_data(s->in_buffer,buffer,r); if (r < 0) { return -1; } @@ -606,7 +606,7 @@ void ssh_socket_fd_set(ssh_socket s, fd_set *set, socket_t *max_fd) { */ int ssh_socket_write(ssh_socket s, const void *buffer, int len) { if(len > 0) { - if (buffer_add_data(s->out_buffer, buffer, len) < 0) { + if (ssh_buffer_add_data(s->out_buffer, buffer, len) < 0) { ssh_set_error_oom(s->session); return SSH_ERROR; } diff --git a/tests/unittests/torture_buffer.c b/tests/unittests/torture_buffer.c index d813a132..0ec2cf73 100644 --- a/tests/unittests/torture_buffer.c +++ b/tests/unittests/torture_buffer.c @@ -25,7 +25,7 @@ static void torture_growing_buffer(void **state) { int i; for(i=0;i<LIMIT;++i){ - buffer_add_data(buffer,"A",1); + ssh_buffer_add_data(buffer,"A",1); if(buffer->used >= 128){ if(buffer_get_rest_len(buffer) * 2 < buffer->allocated){ assert_true(buffer_get_rest_len(buffer) * 2 >= buffer->allocated); @@ -43,11 +43,11 @@ static void torture_growing_buffer_shifting(void **state) { int i; unsigned char c; for(i=0; i<1024;++i){ - buffer_add_data(buffer,"S",1); + ssh_buffer_add_data(buffer,"S",1); } for(i=0;i<LIMIT;++i){ buffer_get_u8(buffer,&c); - buffer_add_data(buffer,"A",1); + ssh_buffer_add_data(buffer,"A",1); if(buffer->used >= 128){ if(buffer_get_rest_len(buffer) * 4 < buffer->allocated){ assert_true(buffer_get_rest_len(buffer) * 4 >= buffer->allocated); @@ -63,7 +63,7 @@ static void torture_growing_buffer_shifting(void **state) { static void torture_buffer_prepend(void **state) { ssh_buffer buffer = *state; uint32_t v; - buffer_add_data(buffer,"abcdef",6); + ssh_buffer_add_data(buffer,"abcdef",6); buffer_prepend_data(buffer,"xyz",3); assert_int_equal(buffer_get_rest_len(buffer),9); assert_memory_equal(buffer_get_rest(buffer), "xyzabcdef", 9); @@ -109,7 +109,7 @@ static void torture_buffer_get_ssh_string(void **state) { rc = buffer_add_u32(buffer,htonl(values[i])); assert_int_equal(rc, 0); } - rc = buffer_add_data(buffer,data,j); + rc = ssh_buffer_add_data(buffer,data,j); assert_int_equal(rc, 0); for(l=0;l<k;++l){ ssh_string str = buffer_get_ssh_string(buffer); |