[Buildroot] [PATCH] sudo: optionally add user "default" to sudoers
Stephan Hoffmann
sho at relinux.de
Thu Nov 3 18:13:15 UTC 2011
Hello all,
my previously sent patch to add user "default" to sudoers fails when
/etc/sudoers.d/default already exists. Please find the corrected patch
below.
With kind regards
Stephan
Signed-off-by: Stephan Hoffmann <sho at relinux.de>
---
package/sudo/Config.in | 9 +++++++++
package/sudo/sudo.mk | 9 +++++++++
2 files changed, 18 insertions(+), 0 deletions(-)
diff --git a/package/sudo/Config.in b/package/sudo/Config.in
index fc0a175..59b6a93 100644
--- a/package/sudo/Config.in
+++ b/package/sudo/Config.in
@@ -7,3 +7,12 @@ config BR2_PACKAGE_SUDO
but still allow people to get their work done.
http://www.sudo.ws/sudo/
+
+if BR2_PACKAGE_SUDO
+
+config BR2_SUDO_ADD_DEFAULT
+ bool "add default user"
+ help
+ Add user "default" to sudoers file
+
+endif
diff --git a/package/sudo/sudo.mk b/package/sudo/sudo.mk
index 9c62c49..adc1c0d 100644
--- a/package/sudo/sudo.mk
+++ b/package/sudo/sudo.mk
@@ -15,10 +15,19 @@ SUDO_CONF_OPT = \
--without-interfaces \
--without-pam
+ifeq ($(BR2_SUDO_ADD_DEFAULT),y)
+define SUDO_ADD_DEFAULT
+ test -d $(TARGET_DIR)/etc/sudoers.d || mkdir $(TARGET_DIR)/etc/sudoers.d
+ test -f $(TARGET_DIR)/etc/sudoers.d/default || \
+ echo "default ALL = ALL" >$(TARGET_DIR)/etc/sudoers.d/default; \
+ chmod 0440 $(TARGET_DIR)/etc/sudoers.d/default
+endef
+endif
+
define SUDO_INSTALL_TARGET_CMDS
install -m 4555 -D $(@D)/sudo $(TARGET_DIR)/usr/bin/sudo
install -m 0555 -D $(@D)/visudo $(TARGET_DIR)/usr/sbin/visudo
install -m 0440 -D $(@D)/sudoers $(TARGET_DIR)/etc/sudoers
+ $(SUDO_ADD_DEFAULT)
endef
$(eval $(call AUTOTARGETS))
-- 1.7.0.4
Am 01.11.2011 15:26, schrieb Stephan Hoffmann:
> Hello all,
>
> I think that using a non privileged user even in embedded systems is a
> real good concept.
>
> To make things easier I made this little patch that generates a config
> option to add user "default" to the sudoers list when the package sudo
> is included in the system.
>
> Kind regards
>
> Stephan
>
>
> Signed-off-by: Stephan Hoffmann <sho at relinux.de>
>
> ---
> package/sudo/Config.in | 9 +++++++++
> package/sudo/sudo.mk | 9 +++++++++
> 2 files changed, 18 insertions(+), 0 deletions(-)
>
> diff --git a/package/sudo/Config.in b/package/sudo/Config.in
> index fc0a175..59b6a93 100644
> --- a/package/sudo/Config.in
> +++ b/package/sudo/Config.in
> @@ -7,3 +7,12 @@ config BR2_PACKAGE_SUDO
> but still allow people to get their work done.
>
> http://www.sudo.ws/sudo/
> +
> +if BR2_PACKAGE_SUDO
> +
> +config BR2_SUDO_ADD_DEFAULT
> + bool "add default user"
> + help
> + Add user "default" to sudoers file
> +
> +endif
> diff --git a/package/sudo/sudo.mk b/package/sudo/sudo.mk
> index 9c62c49..adc1c0d 100644
> --- a/package/sudo/sudo.mk
> +++ b/package/sudo/sudo.mk
> @@ -15,10 +15,19 @@ SUDO_CONF_OPT = \
> --without-interfaces \
> --without-pam
>
> +ifeq ($(BR2_SUDO_ADD_DEFAULT),y)
> +define SUDO_ADD_DEFAULT
> + mkdir $(TARGET_DIR)/etc/sudoers.d
> + echo "default ALL = ALL" >$(TARGET_DIR)/etc/sudoers.d/default
> + chmod 0440 $(TARGET_DIR)/etc/sudoers.d/default
> +endef
> +endif
> +
> define SUDO_INSTALL_TARGET_CMDS
> install -m 4555 -D $(@D)/sudo $(TARGET_DIR)/usr/bin/sudo
> install -m 0555 -D $(@D)/visudo $(TARGET_DIR)/usr/sbin/visudo
> install -m 0440 -D $(@D)/sudoers $(TARGET_DIR)/etc/sudoers
> + $(SUDO_ADD_DEFAULT)
> endef
>
> $(eval $(call AUTOTARGETS))
--
reLinux - Stephan Hoffmann
Am Schmidtgrund 124 50765 Köln
Tel. +49.221.95595-19 Fax: -64
www.reLinux.de sho at reLinux.de
More information about the buildroot
mailing list