mirror of
https://github.com/PowerShell/openssh-portable.git
synced 2025-07-31 01:35:11 +02:00
- djm@cvs.openbsd.org 2013/04/19 01:03:01
[session.c] reintroduce 1.262 without the connection-killing bug: fatal() when ChrootDirectory specified by running without root privileges; ok markus@
This commit is contained in:
parent
0d6771b464
commit
a56086b990
@ -64,6 +64,11 @@
|
|||||||
- djm@cvs.openbsd.org 2013/04/19 01:01:00
|
- djm@cvs.openbsd.org 2013/04/19 01:01:00
|
||||||
[ssh-keygen.c]
|
[ssh-keygen.c]
|
||||||
fix some memory leaks; bz#2088 ok dtucker@
|
fix some memory leaks; bz#2088 ok dtucker@
|
||||||
|
- djm@cvs.openbsd.org 2013/04/19 01:03:01
|
||||||
|
[session.c]
|
||||||
|
reintroduce 1.262 without the connection-killing bug:
|
||||||
|
fatal() when ChrootDirectory specified by running without root privileges;
|
||||||
|
ok markus@
|
||||||
|
|
||||||
20130418
|
20130418
|
||||||
- (djm) [config.guess config.sub] Update to last versions before they switch
|
- (djm) [config.guess config.sub] Update to last versions before they switch
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* $OpenBSD: session.c,v 1.263 2013/04/17 09:04:09 dtucker Exp $ */
|
/* $OpenBSD: session.c,v 1.264 2013/04/19 01:03:01 djm Exp $ */
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
|
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
|
||||||
* All rights reserved
|
* All rights reserved
|
||||||
@ -1513,6 +1513,9 @@ do_setusercontext(struct passwd *pw)
|
|||||||
safely_chroot(chroot_path, pw->pw_uid);
|
safely_chroot(chroot_path, pw->pw_uid);
|
||||||
free(tmp);
|
free(tmp);
|
||||||
free(chroot_path);
|
free(chroot_path);
|
||||||
|
/* Make sure we don't attempt to chroot again */
|
||||||
|
free(options.chroot_directory);
|
||||||
|
options.chroot_directory = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef HAVE_LOGIN_CAP
|
#ifdef HAVE_LOGIN_CAP
|
||||||
@ -1529,6 +1532,9 @@ do_setusercontext(struct passwd *pw)
|
|||||||
/* Permanently switch to the desired uid. */
|
/* Permanently switch to the desired uid. */
|
||||||
permanently_set_uid(pw);
|
permanently_set_uid(pw);
|
||||||
#endif
|
#endif
|
||||||
|
} else if (options.chroot_directory != NULL &&
|
||||||
|
strcasecmp(options.chroot_directory, "none") != 0) {
|
||||||
|
fatal("server lacks privileges to chroot to ChrootDirectory");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getuid() != pw->pw_uid || geteuid() != pw->pw_uid)
|
if (getuid() != pw->pw_uid || geteuid() != pw->pw_uid)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user