diff --git a/src/channels.c b/src/channels.c index 8490a9a3..2e6ababe 100644 --- a/src/channels.c +++ b/src/channels.c @@ -85,6 +85,11 @@ ssh_channel ssh_channel_new(ssh_session session) return NULL; } + /* Check if we have an authenticated session */ + if (!(session->flags & SSH_SESSION_FLAG_AUTHENTICATED)) { + return NULL; + } + channel = calloc(1, sizeof(struct ssh_channel_struct)); if (channel == NULL) { ssh_set_error_oom(session);