[git commit master 1/1] forgot to add libbb/get_shell_name.c
Denys Vlasenko
vda.linux at googlemail.com
Tue Mar 8 20:02:42 UTC 2011
commit: http://git.busybox.net/busybox/commit/?id=f8416dc6f64244223fbcb20fe504b7a9a764e698
branch: http://git.busybox.net/busybox/commit/?id=refs/heads/master
Signed-off-by: Denys Vlasenko <vda.linux at googlemail.com>
---
libbb/get_shell_name.c | 25 +++++++++++++++++++++++++
1 files changed, 25 insertions(+), 0 deletions(-)
create mode 100644 libbb/get_shell_name.c
diff --git a/libbb/get_shell_name.c b/libbb/get_shell_name.c
new file mode 100644
index 0000000..c930afd
--- /dev/null
+++ b/libbb/get_shell_name.c
@@ -0,0 +1,25 @@
+/*
+ * Copyright 2011, Denys Vlasenko
+ *
+ * Licensed under GPLv2, see file LICENSE in this source tree.
+ */
+
+//kbuild:lib-y += get_shell_name.o
+
+#include "libbb.h"
+
+const char *get_shell_name(void)
+{
+ struct passwd *pw;
+ char *shell;
+
+ shell = getenv("SHELL");
+ if (shell && shell[0])
+ return shell;
+
+ pw = getpwuid(getuid());
+ if (pw && pw->pw_shell && pw->pw_shell[0])
+ return pw->pw_shell;
+
+ return DEFAULT_SHELL;
+}
--
1.7.3.4
More information about the busybox-cvs
mailing list