summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAris Adamantiadis <aris@0xbadc0de.be>2014-04-16 20:37:40 +0200
committerAndreas Schneider <asn@cryptomilk.org>2014-08-06 09:46:14 +0200
commite9fd14c7f0313192753d674300704de47f0c41eb (patch)
treeffc62a0851628195f52b336842736e22d8376a53 /src
parentcfd2e4894e916b0c47b1a6ced4d93aca3f1548a8 (diff)
downloadlibssh-e9fd14c7f0313192753d674300704de47f0c41eb.tar.gz
libssh-e9fd14c7f0313192753d674300704de47f0c41eb.tar.xz
libssh-e9fd14c7f0313192753d674300704de47f0c41eb.zip
buffers: adapt packet.c to ssh_buffer_(un)pack()
Reviewed-by: Andreas Schneider <asn@samba.org>
Diffstat (limited to 'src')
-rw-r--r--src/packet.c25
1 files changed, 12 insertions, 13 deletions
diff --git a/src/packet.c b/src/packet.c
index 78a512a5..3ed286df 100644
--- a/src/packet.c
+++ b/src/packet.c
@@ -442,19 +442,19 @@ void ssh_packet_process(ssh_session session, uint8_t type){
* @return SSH_ERROR on error, else SSH_OK
*/
int ssh_packet_send_unimplemented(ssh_session session, uint32_t seqnum){
- int r;
+ int rc;
- r = buffer_add_u8(session->out_buffer, SSH2_MSG_UNIMPLEMENTED);
- if (r < 0) {
- return SSH_ERROR;
- }
- r = buffer_add_u32(session->out_buffer, htonl(seqnum));
- if (r < 0) {
- return SSH_ERROR;
- }
- r = packet_send(session);
+ rc = ssh_buffer_pack(session->out_buffer,
+ "bd",
+ SSH2_MSG_UNIMPLEMENTED,
+ seqnum);
+ if (rc != SSH_OK) {
+ ssh_set_error_oom(session);
+ return SSH_ERROR;
+ }
+ rc = packet_send(session);
- return r;
+ return rc;
}
/** @internal
@@ -465,8 +465,7 @@ SSH_PACKET_CALLBACK(ssh_packet_unimplemented){
(void)session; /* unused */
(void)type;
(void)user;
- buffer_get_u32(packet,&seq);
- seq=ntohl(seq);
+ ssh_buffer_unpack(packet, "d", &seq);
SSH_LOG(SSH_LOG_RARE,
"Received SSH_MSG_UNIMPLEMENTED (sequence number %d)",seq);
return SSH_PACKET_USED;