#!/bin/bash 

BASEDN=cn=smbadmin,ou=People,dc=skole,dc=skolelinux,dc=no
LDAPURI="ldaps://ldap"

if /usr/bin/ldapsearch -LLL -H $LDAPURI -x -b "$BASEDN" 1>/dev/null 2>&1 ; then 
  echo "smbadmin account already exists, exiting"
  exit 0
fi

# Generate Samba_passwd
SMBPW=$(/usr/bin/makepasswd)

# Generate Crypted password
CRYPTPW=$(/usr/sbin/slappasswd -u -s $SMBPW)

# Stop openldap 
/etc/init.d/slapd stop

# Stop nscd 
/etc/init.d/nscd stop

# Add smbadmin user to ldap db
cat << EOF | /usr/sbin/slapadd 
dn: $BASEDN
objectClass: top
objectClass: organizationalRole
objectClass: simpleSecurityObject
cn: smbadmin
description: Samba Administrator
userPassword: $CRYPTPW

EOF


# Start slapd
/etc/init.d/slapd start

# Store samba pw for later use
/usr/bin/smbpasswd -w $SMBPW

