Skip to content

pee/Interlock-Ldap

Repository files navigation

This is the server side piece of the door lock code, and is made of a few pieces.

====================================
An ldap server (openldap)
-- configs
   - setup the openldap configuration sing the configs from the ./openldap director
   - this includes the special schema in schema/interlockroc.schema

   Setup
   load the initial directory with the contents of the ldif/core.ldif file using ldapadd
   ( ldapadd -D "cn=root,cn=visp" -W -f ldif/core.ldif  )

====================================
A few tools to manage the directory
-- addButton.py
-- addHacker.py
-- delButton.py
-- delHacker.py
-- disableButton.py
-- enableButton.py
-- linkButton.py
-- listButtons.p


====================================
A python server to answer queries
-- lockServer.py


Some quick notes:



To stay synchronized we are storing the button type in LDAP as:

8 bit family code  ( for instance )
48 bit serial number
8 bit CRC

ID --48-bit-id- CB
01 000012FDA5B3 6B

Run examples:

Button:
./addButton.py  --button 01000012FDA5B36B
./delButton.py  --button 01000012FDA5B36B
./enableButton.py --button 01000012FDA5B36B
./disableButton.py --button 01000012FDA5B36B

Hackers:
./addHacker.py --uid pee2 --name "paul erkkila2" --address "address 2" --alias "alias 2" --econtact "econtact 2" --status "lost in space" --level "4"
./delHacker.py --uid pee2 

Link a button to a user:
./linkButton.py --button 01000012FDA5B36B --uid pee

List the buttons out:

./listButtons.py 


===========================================================
Arduino code that interfaces with this can be found here:

https://github.com/pee/Interlock-Doorduino

=============================================================
TODO:
=============================================================
Input validation is rudimentary at best

If you put spaces in some string arguments, ldap will get confused think it's not ascii, and base64 encode it for you!
Link user->button




About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages