On Sat, 07 Sep 2013 07:37:23 -0500 "Slávek
Banko"
<slavek.banko(a)axis.cz> wrote:
On Saturday 07 of September 2013 08:20:12 Darrell
Anderson wrote:
* tdesu: WARNING: unknown super user command
Test the super user command is a one tdelibs/tdesu/su.cpp a second
time in
tdebase/tdesu/sudlg.spp. Valid is considered "sudo" or "su".
For tdebase is in tdebase/tdesu/CMakeLists.txt defined:
if( WITH_SUDO_TDESU_BACKEND )
set( DEFAULT_SUPER_USER_COMMAND sudo CACHE INTERNAL "" FORCE )
else()
set( DEFAULT_SUPER_USER_COMMAND su CACHE INTERNAL "" FORCE )
endif()
For tdelibs is in tdelibs/CMakeLists.txt defined:
# FIXME for unknown reason cmake cannot find su
#find_program( __PATH_SU su )
set( __PATH_SU "/bin/su" )
if( __PATH_SU )
set( DEFAULT_SUPER_USER_COMMAND ${__PATH_SU} )
else( __PATH_SU )
message( STATUS "WARNING: su was not found" )
endif( __PATH_SU )
# FIXME for unknown reason cmake cannot find sudo
# find_program( __PATH_SUDO "sudo" )
set( __PATH_SUDO "/usr/bin/sudo" )
if( WITH_SUDO_TDESU_BACKEND )
if( __PATH_SUDO )
set( DEFAULT_SUPER_USER_COMMAND ${__PATH_SUDO} )
else( __PATH_SUDO )
message( FATAL_ERROR "sudo was chosen as tdesu backend, but
was not found
in path." )
endif( __PATH_SUDO )
endif( WITH_SUDO_TDESU_BACKEND )
In neither case does not test for the presence sudo. And in
tdelibs instead of
setting DEFAULT_SUPER_USER_COMMAND to su or sudo is used full path
to binary,
which is incorrect.
Proposed patches attached.
I build tdelibs and tdebase with WITH_SUDO_TDESU_BACKEND=OFF.
The description for that option: "Use sudo as backend for tdesu
(default is su)".
I always presumed that option was for support for Ubuntu because
that distro is hard-wired for sudo. sudo is well supported in
Slackware, but the default is for users to use su. Hence my build
option decisions.
Seems I can trigger the "tdesu: WARNING: unknown super user
command" message simply by running tdesu. A snippet from my
xsession-error log:
[tdeinit] Got EXT_EXEC 'tdesu' from launcher.
[tdeinit] tdesu is executable. Launching with exec.
[tdeinit] Got EXEC_NEW '/opt/trinity/bin/tdesud' from launcher.
[tdeinit] /opt/trinity/bin/tdesud is executable. Launching with
exec.
tdesu: WARNING: unknown super user command
tdesu: WARNING: unknown super user command
Will the patches resolve the xsession-error messages with
WITH_SUDO_TDESU_BACKEND=OFF?
Darrell
It does not matter if you use su or sudo. In tdelibs CMakeLists.txt
DEFAULT_SUPER_USER_COMMAND is not set to a short name "su" or "sudo",
but the
name with the full path - ie. "/bin/su". And this is then the reason for this
warning.
Slavek
--