diff options
author | Manoj Srivastava <srivasta@debian.org> | 2014-02-09 16:09:49 +0000 |
---|---|---|
committer | Colin Watson <cjwatson@debian.org> | 2017-10-04 13:54:48 +0100 |
commit | 4b276122c04aed0726803a92c8ca955e614a4d3a (patch) | |
tree | 5c5638fad9f6edf9ada6a4661f6c5cbb1bec2696 /sshpty.c | |
parent | cdd9076a145a95c21538eedb3f728a897480c5de (diff) |
Handle SELinux authorisation roles
Rejected upstream due to discomfort with magic usernames; a better approach
will need an SSH protocol change. In the meantime, this came from Debian's
SELinux maintainer, so we'll keep it until we have something better.
Bug: https://bugzilla.mindrot.org/show_bug.cgi?id=1641
Bug-Debian: http://bugs.debian.org/394795
Last-Update: 2017-10-04
Patch-Name: selinux-role.patch
Diffstat (limited to 'sshpty.c')
-rw-r--r-- | sshpty.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -187,7 +187,7 @@ pty_change_window_size(int ptyfd, u_int row, u_int col, | |||
187 | } | 187 | } |
188 | 188 | ||
189 | void | 189 | void |
190 | pty_setowner(struct passwd *pw, const char *tty) | 190 | pty_setowner(struct passwd *pw, const char *tty, const char *role) |
191 | { | 191 | { |
192 | struct group *grp; | 192 | struct group *grp; |
193 | gid_t gid; | 193 | gid_t gid; |
@@ -209,7 +209,7 @@ pty_setowner(struct passwd *pw, const char *tty) | |||
209 | strerror(errno)); | 209 | strerror(errno)); |
210 | 210 | ||
211 | #ifdef WITH_SELINUX | 211 | #ifdef WITH_SELINUX |
212 | ssh_selinux_setup_pty(pw->pw_name, tty); | 212 | ssh_selinux_setup_pty(pw->pw_name, tty, role); |
213 | #endif | 213 | #endif |
214 | 214 | ||
215 | if (st.st_uid != pw->pw_uid || st.st_gid != gid) { | 215 | if (st.st_uid != pw->pw_uid || st.st_gid != gid) { |