version 1.185, 2013/05/16 04:09:13 |
version 1.186, 2013/05/17 00:13:13 |
|
|
memset(enc->iv, 0, enc->iv_len); |
memset(enc->iv, 0, enc->iv_len); |
memset(enc->key, 0, enc->key_len); |
memset(enc->key, 0, enc->key_len); |
memset(mac->key, 0, mac->key_len); |
memset(mac->key, 0, mac->key_len); |
xfree(enc->name); |
free(enc->name); |
xfree(enc->iv); |
free(enc->iv); |
xfree(enc->key); |
free(enc->key); |
xfree(mac->name); |
free(mac->name); |
xfree(mac->key); |
free(mac->key); |
xfree(comp->name); |
free(comp->name); |
xfree(active_state->newkeys[mode]); |
free(active_state->newkeys[mode]); |
} |
} |
active_state->newkeys[mode] = kex_get_newkeys(mode); |
active_state->newkeys[mode] = kex_get_newkeys(mode); |
if (active_state->newkeys[mode] == NULL) |
if (active_state->newkeys[mode] == NULL) |
|
|
memcpy(&active_state->outgoing_packet, &p->payload, |
memcpy(&active_state->outgoing_packet, &p->payload, |
sizeof(Buffer)); |
sizeof(Buffer)); |
TAILQ_REMOVE(&active_state->outgoing, p, next); |
TAILQ_REMOVE(&active_state->outgoing, p, next); |
xfree(p); |
free(p); |
packet_send2_wrapped(); |
packet_send2_wrapped(); |
} |
} |
} |
} |
|
|
packet_check_eom(); |
packet_check_eom(); |
/* If we got a packet, return it. */ |
/* If we got a packet, return it. */ |
if (type != SSH_MSG_NONE) { |
if (type != SSH_MSG_NONE) { |
xfree(setp); |
free(setp); |
return type; |
return type; |
} |
} |
/* |
/* |
|
|
packet_get_char(); |
packet_get_char(); |
msg = packet_get_string(NULL); |
msg = packet_get_string(NULL); |
debug("Remote: %.900s", msg); |
debug("Remote: %.900s", msg); |
xfree(msg); |
free(msg); |
msg = packet_get_string(NULL); |
msg = packet_get_string(NULL); |
xfree(msg); |
free(msg); |
break; |
break; |
case SSH2_MSG_DISCONNECT: |
case SSH2_MSG_DISCONNECT: |
reason = packet_get_int(); |
reason = packet_get_int(); |
|
|
SYSLOG_LEVEL_INFO : SYSLOG_LEVEL_ERROR, |
SYSLOG_LEVEL_INFO : SYSLOG_LEVEL_ERROR, |
"Received disconnect from %s: %u: %.400s", |
"Received disconnect from %s: %u: %.400s", |
get_remote_ipaddr(), reason, msg); |
get_remote_ipaddr(), reason, msg); |
xfree(msg); |
free(msg); |
cleanup_exit(255); |
cleanup_exit(255); |
break; |
break; |
case SSH2_MSG_UNIMPLEMENTED: |
case SSH2_MSG_UNIMPLEMENTED: |
|
|
case SSH_MSG_DEBUG: |
case SSH_MSG_DEBUG: |
msg = packet_get_string(NULL); |
msg = packet_get_string(NULL); |
debug("Remote: %.900s", msg); |
debug("Remote: %.900s", msg); |
xfree(msg); |
free(msg); |
break; |
break; |
case SSH_MSG_DISCONNECT: |
case SSH_MSG_DISCONNECT: |
msg = packet_get_string(NULL); |
msg = packet_get_string(NULL); |
|
|
} |
} |
packet_write_poll(); |
packet_write_poll(); |
} |
} |
xfree(setp); |
free(setp); |
} |
} |
|
|
/* Returns true if there is buffered data to write to the connection. */ |
/* Returns true if there is buffered data to write to the connection. */ |