summaryrefslogtreecommitdiff
path: root/source3/script
diff options
context:
space:
mode:
authorcvs2svn Import User <samba-bugs@samba.org>2002-10-01 01:06:38 +0000
committercvs2svn Import User <samba-bugs@samba.org>2002-10-01 01:06:38 +0000
commit6007a592b2c842c640f164d3b5132d05b5be82a7 (patch)
tree99654ceb117602b69c268ccd1d987ae0f9b674cb /source3/script
parent512110f3386f43c262a31111a1280fd724cbee20 (diff)
parent5de642fc6c476f7631b8caaebd1eda5c4d50df57 (diff)
downloadsamba-6007a592b2c842c640f164d3b5132d05b5be82a7.tar.gz
samba-6007a592b2c842c640f164d3b5132d05b5be82a7.tar.bz2
samba-6007a592b2c842c640f164d3b5132d05b5be82a7.zip
This commit was manufactured by cvs2svn to create branch 'SAMBA_3_0'.(This used to be commit eb5ce70e2f0e3ebf6bab168108b410174e42818b)
Diffstat (limited to 'source3/script')
-rwxr-xr-xsource3/script/creategroup27
1 files changed, 27 insertions, 0 deletions
diff --git a/source3/script/creategroup b/source3/script/creategroup
new file mode 100755
index 0000000000..01fb065944
--- /dev/null
+++ b/source3/script/creategroup
@@ -0,0 +1,27 @@
+#!/bin/sh
+
+# Example script for 'add group command'. Handle weird NT group
+# names. First attempt to create the group directly, if that fails
+# then create a random group and print the numeric group id.
+#
+# Note that this is only an example and assumes /dev/urandom.
+#
+# Volker
+
+GROUPNAME="$1"
+ITERS=0
+
+while ! /usr/sbin/groupadd "$GROUPNAME" > /dev/null 2>&1
+do
+ # we had difficulties creating that group. Maybe the name was
+ # too weird, or it already existed. Create a random name.
+ GROUPNAME=nt-$(dd if=/dev/urandom bs=16 count=1 2>/dev/null | md5sum | cut -b 1-5)
+ ITERS=$(expr "$ITERS" + 1)
+ if [ "$ITERS" -gt 10 ]
+ then
+ # Too many attempts
+ exit 1
+ fi
+done
+
+getent group | grep ^"$GROUPNAME": | cut -d : -f 3