From 7731832751ab9f3c6ddeb66f186d3d7fa1934a6d Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 27 Apr 2024 13:11:40 +0200 Subject: Adding upstream version 2.4.57+dfsg. Signed-off-by: Daniel Baumann --- servers/slapd/back-shell/searchexample.sh | 65 +++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 servers/slapd/back-shell/searchexample.sh (limited to 'servers/slapd/back-shell/searchexample.sh') diff --git a/servers/slapd/back-shell/searchexample.sh b/servers/slapd/back-shell/searchexample.sh new file mode 100644 index 0000000..9ded406 --- /dev/null +++ b/servers/slapd/back-shell/searchexample.sh @@ -0,0 +1,65 @@ +#! /bin/sh +# $OpenLDAP$ +## This work is part of OpenLDAP Software . +## +## Copyright 1998-2021 The OpenLDAP Foundation. +## All rights reserved. +## +## Redistribution and use in source and binary forms, with or without +## modification, are permitted only as authorized by the OpenLDAP +## Public License. +## +## A copy of this license is available in the file LICENSE in the +## top-level directory of the distribution or, alternatively, at +## . +# +## Portions Copyright (c) 1995 Regents of the University of Michigan. +## All rights reserved. +## +## Redistribution and use in source and binary forms are permitted +## provided that this notice is preserved and that due credit is given +## to the University of Michigan at Ann Arbor. The name of the University +## may not be used to endorse or promote products derived from this +## software without specific prior written permission. This software +## is provided ``as is'' without express or implied warranty. + +while [ 1 ]; do + read TAG VALUE + if [ $? -ne 0 ]; then + break + fi + case "$TAG" in + base:) + BASE=$VALUE + ;; + filter:) + FILTER=$VALUE + ;; + # include other parameters here + esac +done + +LOGIN=`echo $FILTER | sed -e 's/.*=\(.*\))/\1/'` + +PWLINE=`grep -i "^$LOGIN" /etc/passwd` + +#sleep 60 +# if we found an entry that matches +if [ $? = 0 ]; then + echo $PWLINE | awk -F: '{ + printf("dn: cn=%s,%s\n", $1, base); + printf("objectclass: top\n"); + printf("objectclass: person\n"); + printf("cn: %s\n", $1); + printf("cn: %s\n", $5); + printf("sn: %s\n", $1); + printf("uid: %s\n", $1); + }' base="$BASE" + echo "" +fi + +# result +echo "RESULT" +echo "code: 0" + +exit 0 -- cgit v1.2.3