summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Sulfrian <alexander@sulfrian.net>2015-11-24 02:55:55 +0100
committerAlexander Sulfrian <alexander@sulfrian.net>2015-11-30 02:16:41 +0100
commite0e28b45f9415e6d21fc6e52904f8c1ed1cb6118 (patch)
treec7616764b389edf8cc7cc0291cf49065066e1e87
parent205fd2d988145dd4772d9086fa5fff9229827513 (diff)
downloadldap-plugin-e0e28b45f9415e6d21fc6e52904f8c1ed1cb6118.tar.gz
ldap-plugin-e0e28b45f9415e6d21fc6e52904f8c1ed1cb6118.tar.bz2
ldap-plugin-e0e28b45f9415e6d21fc6e52904f8c1ed1cb6118.zip
Basic plugin structure
-rw-r--r--Makefile17
-rw-r--r--service_passwords.c22
2 files changed, 39 insertions, 0 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..0b1538b
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,17 @@
+OPENLDAP_SOURCE := ../source/openldap-2.4.40+dfsg
+
+TARGET = service_passwords
+INCLUDE_FLAGS = -I$(OPENLDAP_SOURCE)/include
+CFLAGS = $(INCLUDE_FLAGS) -D_REENTRANT -fPIC -Wall -Wextra
+LDFLAGS = -G
+
+all: $(TARGET).so
+
+clean:
+ rm -f $(TARGET).o $(TARGET).so
+
+%.so: %.o
+ $(LD) $(LDFLAGS) -o $@ $^
+
+%.o: %.c
+ $(CC) $(CFLAGS) -c -o $@ $^
diff --git a/service_passwords.c b/service_passwords.c
new file mode 100644
index 0000000..3d5ca6c
--- /dev/null
+++ b/service_passwords.c
@@ -0,0 +1,22 @@
+#include <stdio.h>
+#include <string.h>
+#include <syslog.h>
+
+#include <slapi-plugin.h>
+
+Slapi_PluginDesc bindpdesc = {
+ .spd_id = "service_passwords",
+ .spd_vendor = "spline",
+ .spd_version = "1.0",
+ .spd_description = "preoperation plugin "
+ "to authenticate a bind against different passwords"
+};
+
+int service_passwords_init(Slapi_PBlock *pb)
+{
+ int rc = 0;
+
+ rc |= slapi_pblock_set(pb, SLAPI_PLUGIN_VERSION, SLAPI_PLUGIN_CURRENT_VERSION);
+ rc |= slapi_pblock_set(pb, SLAPI_PLUGIN_DESCRIPTION, (void *) &bindpdesc);
+ return rc;
+}