diff -up openssh-5.2p1/session.c.sesftp openssh-5.2p1/session.c
--- openssh-5.2p1/session.c.sesftp 2009-07-10 20:32:04.348435048 +0200
+++ openssh-5.2p1/session.c 2009-07-10 21:10:42.247557847 +0200
@@ -58,6 +58,7 @@
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
+#include <selinux/selinux.h>
#include "openbsd-compat/sys-queue.h"
#include "xmalloc.h"
@@ -1816,6 +1817,9 @@ do_child(Session *s, const char *command
argv[i] = NULL;
optind = optreset = 1;
__progname = argv[0];
+ if (setcon ("unconfined_u:system_r:sftpd_t:s0-s0:c0.c1023") < 0)
+ logit("do_child: setcon failed witch %s", strerror (errno));
+
exit(sftp_server_main(i, argv, s->pw));
}