summaryrefslogtreecommitdiffstats
path: root/session.h
diff options
context:
space:
mode:
authordjm@openbsd.org <djm@openbsd.org>2017-09-12 08:32:07 +0200
committerDamien Miller <djm@mindrot.org>2017-09-12 09:37:02 +0200
commitdbee4119b502e3f8b6cd3282c69c537fd01d8e16 (patch)
treeb8a3263a79e0920e8d08f188654f1ccb7c254406 /session.h
parentupstream commit (diff)
downloadopenssh-dbee4119b502e3f8b6cd3282c69c537fd01d8e16.tar.xz
openssh-dbee4119b502e3f8b6cd3282c69c537fd01d8e16.zip
upstream commit
refactor channels.c Move static state to a "struct ssh_channels" that is allocated at runtime and tracked as a member of struct ssh. Explicitly pass "struct ssh" to all channels functions. Replace use of the legacy packet APIs in channels.c. Rework sshd_config PermitOpen handling: previously the configuration parser would call directly into the channels layer. After the refactor this is not possible, as the channels structures are allocated at connection time and aren't available when the configuration is parsed. The server config parser now tracks PermitOpen itself and explicitly configures the channels code later. ok markus@ Upstream-ID: 11828f161656b965cc306576422613614bea2d8f
Diffstat (limited to 'session.h')
-rw-r--r--session.h16
1 files changed, 8 insertions, 8 deletions
diff --git a/session.h b/session.h
index 74c557db6..54dd1f0ca 100644
--- a/session.h
+++ b/session.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: session.h,v 1.34 2017/08/18 05:36:45 djm Exp $ */
+/* $OpenBSD: session.h,v 1.35 2017/09/12 06:32:07 djm Exp $ */
/*
* Copyright (c) 2000, 2001 Markus Friedl. All rights reserved.
@@ -62,20 +62,20 @@ struct Session {
} *env;
};
-void do_authenticated(Authctxt *);
-void do_cleanup(Authctxt *);
+void do_authenticated(struct ssh *, Authctxt *);
+void do_cleanup(struct ssh *, Authctxt *);
int session_open(Authctxt *, int);
void session_unused(int);
-int session_input_channel_req(Channel *, const char *);
-void session_close_by_pid(pid_t, int);
-void session_close_by_channel(int, void *);
-void session_destroy_all(void (*)(Session *));
+int session_input_channel_req(struct ssh *, Channel *, const char *);
+void session_close_by_pid(struct ssh *ssh, pid_t, int);
+void session_close_by_channel(struct ssh *, int, void *);
+void session_destroy_all(struct ssh *, void (*)(Session *));
void session_pty_cleanup2(Session *);
Session *session_new(void);
Session *session_by_tty(char *);
-void session_close(Session *);
+void session_close(struct ssh *, Session *);
void do_setusercontext(struct passwd *);
const char *session_get_remote_name_or_ip(struct ssh *, u_int, int);