Skip to content
Snippets Groups Projects
Forked from emulab / emulab-devel
Source project has a limited visibility.
  • Mike Hibler's avatar
    1f83c9c6
    First cut at FreeBSD 9.0 support. · 1f83c9c6
    Mike Hibler authored
    Upgrade to perl 5.12 means no more "suidperl" (setuid perl scripts).
    So we now have yet another little wrapper (security/runsuid.c) which
    runs suid and whose sole function is to exec the perl script of the
    same name in the /usr/testbed/suidbin directory. So a formerly setuid
    perl script install now goes like:
      create /usr/testbed/sbin/mkproj as a symlink to /usr/testbed/libexec/runsuid
      install real mkproj perl script in /usr/testbed/suidbin/mkproj
    When the setuid-wrapper is invoked under the name "mkproj" it execs
    /usr/testbed/suidbin/mkproj. We could almost use sudo for this purpose
    instead (see security/sudoers.in) but sudo loses one of the groups in
    the group list.
    
    /usr/include/utmp.h is gone in FreeBSD 9.0. In most places we nevered
    needed it, but in the one case that did (tg source), it just used a
    couple of the constants exposed (UT_*) and not the struct, so I just
    hardwired values for the constants.
    
    The usual tweakage to the install stuff to reflect yet another set of
    packages!
    1f83c9c6
    History
    First cut at FreeBSD 9.0 support.
    Mike Hibler authored
    Upgrade to perl 5.12 means no more "suidperl" (setuid perl scripts).
    So we now have yet another little wrapper (security/runsuid.c) which
    runs suid and whose sole function is to exec the perl script of the
    same name in the /usr/testbed/suidbin directory. So a formerly setuid
    perl script install now goes like:
      create /usr/testbed/sbin/mkproj as a symlink to /usr/testbed/libexec/runsuid
      install real mkproj perl script in /usr/testbed/suidbin/mkproj
    When the setuid-wrapper is invoked under the name "mkproj" it execs
    /usr/testbed/suidbin/mkproj. We could almost use sudo for this purpose
    instead (see security/sudoers.in) but sudo loses one of the groups in
    the group list.
    
    /usr/include/utmp.h is gone in FreeBSD 9.0. In most places we nevered
    needed it, but in the one case that did (tg source), it just used a
    couple of the constants exposed (UT_*) and not the struct, so I just
    hardwired values for the constants.
    
    The usual tweakage to the install stuff to reflect yet another set of
    packages!