* Drop real uid/gid in the suid wrapper, thus allowing commits to remote

subversion repos and fixing some other issues.
master
joey 2006-09-04 03:38:02 +00:00
parent 6933631501
commit ea95624e2d
4 changed files with 11 additions and 3 deletions

View File

@ -75,6 +75,11 @@ $envsave
newenviron[i]=NULL; newenviron[i]=NULL;
environ=newenviron; environ=newenviron;
if (setregid(getegid(), -1) != 0 || setreuid(geteuid(), -1) != 0) {
perror("failed to drop real uid/gid");
exit(1);
}
execl("$this", "$this", NULL); execl("$this", "$this", NULL);
perror("failed to run $this"); perror("failed to run $this");
exit(1); exit(1);

4
debian/changelog vendored
View File

@ -2,8 +2,10 @@ ikiwiki (1.25) UNRELEASED; urgency=low
* Add proper waitpid calls for open2ed processes throughout to avoid * Add proper waitpid calls for open2ed processes throughout to avoid
zombies; this hit htmltidy especially badly. zombies; this hit htmltidy especially badly.
* Drop real uid/gid in the suid wrapper, thus allowing commits to remote
subversion repos and fixing some other issues.
-- Joey Hess <joeyh@debian.org> Sun, 3 Sep 2006 15:56:55 -0400 -- Joey Hess <joeyh@debian.org> Sun, 3 Sep 2006 23:28:37 -0400
ikiwiki (1.24) unstable; urgency=low ikiwiki (1.24) unstable; urgency=low

View File

@ -2,4 +2,4 @@ If I try to do a web commit, to a svn+ssh repo, it fails with
"Host key verification failed." "Host key verification failed."
I think that the setuid isn't fully taking; it should be running as me, I think that the setuid isn't fully taking; it should be running as me,
but commit log shows www-data. So maybe it has the wrong username? Or but commit log shows www-data. So maybe it has the wrong username? Or
EUID/Real UID screwage. EUID/Real UID screwage. [[bugs/done]]

View File

@ -18,7 +18,8 @@ Released 29 April 2006.
* [[Tags]] _(status: fair)_ * [[Tags]] _(status: fair)_
* Should have fully working [[todo/utf8]] support. _(status: good)_ * Should have fully working [[todo/utf8]] support. _(status: good)_
* [[Optimised_rendering|todo/optimisations]] if possible. Deal with other * [[Optimised_rendering|todo/optimisations]] if possible. Deal with other
scalability issues. _(status: 45%-60%+ speedup since 1.0)_ scalability issues. _(status: 45%-60%+ speedup since 1.0, much more
possible)_
* Improved [[todo/html]] stylesheets and templates. * Improved [[todo/html]] stylesheets and templates.
* Improved scalable [[logo]]. _(status: done)_ * Improved scalable [[logo]]. _(status: done)_
* Support for at least one RCS aside from svn. Once it supports two, it should * Support for at least one RCS aside from svn. Once it supports two, it should