Add more error checks to sftp_message_new().

git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@574 7dcaeef0-15fb-0310-b436-a5af3365683c
This commit is contained in:
Andreas Schneider
2009-04-22 15:06:28 +00:00
parent ea59faaec9
commit e6c0155567

View File

@@ -284,20 +284,25 @@ int sftp_get_error(SFTP_SESSION *sftp) {
} }
static SFTP_MESSAGE *sftp_message_new(SFTP_SESSION *sftp){ static SFTP_MESSAGE *sftp_message_new(SFTP_SESSION *sftp){
SFTP_MESSAGE *msg; SFTP_MESSAGE *msg = NULL;
sftp_enter_function(); sftp_enter_function();
msg = malloc(sizeof(SFTP_MESSAGE)); msg = malloc(sizeof(SFTP_MESSAGE));
if (msg == NULL) { if (msg == NULL) {
return NULL; return NULL;
} }
ZERO_STRUCTP(msg);
memset(msg,0,sizeof(*msg)); msg->payload = buffer_new();
msg->payload=buffer_new(); if (msg->payload == NULL) {
msg->sftp=sftp; SAFE_FREE(msg);
sftp_leave_function(); return NULL;
return msg; }
msg->sftp = sftp;
sftp_leave_function();
return msg;
} }
static void sftp_message_free(SFTP_MESSAGE *msg){ static void sftp_message_free(SFTP_MESSAGE *msg){