1
0
mirror of https://github.com/binary-kitchen/doorlockd synced 2024-12-23 02:34:27 +01:00
Commit Graph

190 Commits

Author SHA1 Message Date
Ralf Ramsauer
b66c82aad8 Added tool for simple command injection 2015-10-01 22:10:35 +02:00
Ralf Ramsauer
49a5b88f6c Big rewrite of several things
- Data type Token changed from uint64_t to std::string
- Added new class "Request" that describes a JSON TCP request
- Classes may now throw Responses for proper error handling
- Removed JSON parsing from Logic
- proper Error handling everywhere
- Many small fixes
- removed unnecessary includes
- removed using namespace std everywhere
2015-10-01 22:09:55 +02:00
Ralf Ramsauer
abf69d70fa Fixed typo 2015-10-01 18:02:25 +02:00
Ralf Ramsauer
c9fa75201f Changed window sizes 2015-09-30 15:36:11 +02:00
Ralf Ramsauer
cde0521d6f Added ui file for MainWindow 2015-09-30 15:26:28 +02:00
Ralf Ramsauer
765e41afd5 Switched to asynchronous asio handling 2015-09-30 15:21:41 +02:00
Ralf Ramsauer
b2244ed9be Fix segfaults 2015-09-30 00:44:06 +02:00
Ralf Ramsauer
1984f6720e bugfix 2015-09-29 15:03:43 +02:00
Ralf Ramsauer
2b2ec56a9b Bugfix 2015-09-29 15:00:36 +02:00
Ralf Ramsauer
b1ea4426a9 Some improvements 2015-09-29 14:55:20 +02:00
Ralf Ramsauer
60ed23486b Improved directory structure
Signed-off-by: Ralf Ramsauer <ralf@ramses-pyramidenbau.de>
2015-09-29 14:33:53 +02:00
Ralf Ramsauer
4366e117d1 Improved GUI 2015-09-29 02:13:48 +02:00
Ralf Ramsauer
a45fc4ca33 Bugfix: QR code generation was case insensitive
Also changed Qstring back to std::string
2015-09-29 02:13:35 +02:00
Ralf Ramsauer
2ab091679f Removed sending status code as answer to subscription message 2015-09-29 02:12:02 +02:00
Ralf Ramsauer
a3bf378458 Added mainwindow.h to CMakeLists.txt 2015-09-29 02:11:29 +02:00
Ralf Ramsauer
fb9f5f835e Fixed include bug 2015-09-28 17:07:21 +02:00
Ralf Ramsauer
9c7cc532fe Created new MainWindow QT Frontend
Signed-off-by: Ralf Ramsauer <ralf@ramses-pyramidenbau.de>
2015-09-28 17:05:05 +02:00
Ralf Ramsauer
8f8d8a75b1 std::string -> QString 2015-09-28 17:03:03 +02:00
Ralf Ramsauer
3d7b6fbe08 Moved common code parts to static library
Signed-off-by: Ralf Ramsauer <ralf@ramses-pyramidenbau.de>
2015-09-25 16:53:17 +02:00
Ralf Ramsauer
13b0b8744a Added simple Qt Qr widget 2015-09-25 13:12:07 +02:00
Ralf Ramsauer
69dcbe6b59 Write first tokenupdate on session initialization 2015-09-25 13:11:02 +02:00
Ralf Ramsauer
b8cb8f9876 Added door state to Clientmessage / Doormessage 2015-09-25 03:26:07 +02:00
Ralf Ramsauer
404f219b6c added install rule for doorlock-client 2015-09-25 01:31:39 +02:00
Ralf Ramsauer
cb5de7eba9 First working version of doorlock-client 2015-09-25 00:50:11 +02:00
Ralf Ramsauer
b9dc2f5ee1 Improved Clientmessage
- Added Clientmessage::fromJson
- Improved JSON key handling
2015-09-25 00:50:10 +02:00
Ralf Ramsauer
aa79228e47 Added Response::fromJSON 2015-09-25 00:50:10 +02:00
Ralf Ramsauer
4c05636ff0 Improved exception handling 2015-09-25 00:50:10 +02:00
Ralf Ramsauer
80d8610559 Added response to subscription 2015-09-25 00:50:10 +02:00
Ralf Ramsauer
b07c0e8f54 Bugfix
socket might be closed after session-thread is spawned.
socket might throw errors very early.
2015-09-25 00:50:10 +02:00
Ralf Ramsauer
93fccda5d8 Small fix 2015-09-25 00:50:10 +02:00
Ralf Ramsauer
36787b91b3 Some refactoring 2015-09-25 00:50:10 +02:00
Ralf Ramsauer
9b58de4b5d Added stub for doorlock-client
Signed-off-by: Ralf Ramsauer <ralf@ramses-pyramidenbau.de>
2015-09-25 00:50:10 +02:00
Ralf Ramsauer
9e4de23dff Renamed main.cpp to doorlockd.cpp
Signed-off-by: Ralf Ramsauer <ralf@ramses-pyramidenbau.de>
2015-09-25 00:50:10 +02:00
Ralf Ramsauer
8ed116bf7f Added proper client and doormessage classes
Signed-off-by: Ralf Ramsauer <ralf@ramses-pyramidenbau.de>
2015-09-25 00:50:10 +02:00
Ralf Ramsauer
92d19bfc98 Added subscriptions 2015-09-25 00:50:10 +02:00
Ralf Ramsauer
3de8855dac Added Client messages 2015-09-25 00:50:10 +02:00
Ralf Ramsauer
4f22e652e8 Added door callbacks 2015-09-25 00:50:10 +02:00
Ralf Ramsauer
8b4be48811 Some refactoring 2015-09-25 00:50:10 +02:00
Ralf Ramsauer
deccb94cd5 Added new response code: AccessDenied 2015-09-25 00:50:10 +02:00
Ralf Ramsauer
2234c58371 Typos 2015-09-25 00:50:10 +02:00
Ralf Ramsauer
364a1f36fc Logical bugfix 2015-09-25 00:50:10 +02:00
Ralf Ramsauer
1d6719269b Resend version string after redirection stdout 2015-09-25 00:50:10 +02:00
Ralf Ramsauer
85f8e3a3bc Bugfix: Timeout was uninitialized 2015-09-25 00:50:10 +02:00
Ralf Ramsauer
4d2bdba703 Simplified version string 2015-09-25 00:50:10 +02:00
Ralf Ramsauer
32ebec327d Added version information 2015-09-25 00:50:10 +02:00
Ralf Ramsauer
201ffe1e44 Added baudrate 2015-09-25 00:50:10 +02:00
Ralf Ramsauer
d6b092ea9f Changed default serial port 2015-09-25 00:50:10 +02:00
Ralf Ramsauer
dcdc8bcfe2 Removed manual change of tokenTimeout
Epaper display is gone, this is not necessary any more.
2015-09-25 00:50:09 +02:00
Ralf Ramsauer
7496a0bab2 Rearranged code 2015-09-25 00:50:09 +02:00
Ralf Ramsauer
542f5518a6 TCP connection logging 2015-09-25 00:50:09 +02:00
Ralf Ramsauer
c01eb22f91 Moved Command handling from logic to main 2015-09-25 00:50:09 +02:00
Ralf Ramsauer
211127f9d3 Refactored action to command 2015-09-25 00:50:09 +02:00
Ralf Ramsauer
5c825a0958 Implemented better Response handling
Signed-off-by: Ralf Ramsauer <ralf@ramses-pyramidenbau.de>
2015-09-25 00:50:09 +02:00
Ralf Ramsauer
3b7338ea6e Added proper Response handling 2015-09-25 00:50:09 +02:00
Ralf Ramsauer
48565ef37e Moved JSON parsing to main.cpp 2015-09-25 00:50:09 +02:00
Ralf Ramsauer
60bbe3df76 Added condition variable, which is notified on Token updates 2015-09-25 00:50:09 +02:00
Ralf Ramsauer
a06a2669e5 Check if logic is running 2015-09-25 00:50:09 +02:00
Ralf Ramsauer
4581e4da20 Removed using of std namespace 2015-09-25 00:50:09 +02:00
Ralf Ramsauer
09a1c613cc Improved error handling 2015-09-25 00:50:09 +02:00
Ralf Ramsauer
25c07e28a1 Implemented multi-threaded TCP session handling 2015-09-25 00:50:09 +02:00
Ralf Ramsauer
cd1fcdc96b Removed unreachable code 2015-09-25 00:50:09 +02:00
Ralf Ramsauer
0f67ed23c5 moved License file 2015-09-25 00:50:09 +02:00
Ralf Ramsauer
703ecc9c86 Removed foreground option (default now)
Signed-off-by: Ralf Ramsauer <ralf@ramses-pyramidenbau.de>
2015-09-25 00:50:09 +02:00
Ralf Ramsauer
d979310893 Added emergency unlock scripts 2015-09-25 00:50:09 +02:00
Ralf Ramsauer
5808ef8677 doorlockd now uses doorcmds.h 2015-09-25 00:50:09 +02:00
Ralf Ramsauer
5af124000b Improved door responses 2015-09-25 00:50:09 +02:00
Ralf Ramsauer
ad77fbe86b Typo 2015-09-25 00:50:08 +02:00
Ralf Ramsauer
9141b502c3 Readded PRE/POST Lock scripts 2015-09-25 00:50:08 +02:00
Ralf Ramsauer
73868b2d4d Rewrite of Door class
Removed old epaper display and added stub for qrcode printing.

Signed-off-by: Ralf Ramsauer <ralf@ramses-pyramidenbau.de>
2015-09-25 00:50:08 +02:00
Ralf Ramsauer
b4d6a46025 removed wiringPi 2015-09-25 00:50:08 +02:00
Ralf Ramsauer
4d965f3614 Added proper json-cpp include directory 2015-09-25 00:50:08 +02:00
Ralf Ramsauer
392763f720 Added mutex to door.cpp to prevent lock collissions
Signed-off-by: Ralf Ramsauer <ralf@ramses-pyramidenbau.de>
2015-09-25 00:50:08 +02:00
Ralf Ramsauer
3a50f596b5 Fixed Button-close bug
Signed-off-by: Ralf Ramsauer <ralf@ramses-pyramidenbau.de>
2015-09-25 00:50:08 +02:00
Ralf Ramsauer
4dbce13cb0 Added logging to close request on button press
Signed-off-by: Ralf Ramsauer <ralf@ramses-pyramidenbau.de>
2015-09-25 00:50:08 +02:00
Ralf Ramsauer
d933bc9821 Automatically turn on blue light on unlocking
Signed-off-by: Ralf Ramsauer <ralf@ramses-pyramidenbau.de>
2015-09-25 00:50:08 +02:00
Ralf Ramsauer
a965779f3c Removed Door State from Logic
Signed-off-by: Ralf Ramsauer <ralf@ramses-pyramidenbau.de>
2015-09-25 00:50:08 +02:00
Ralf Ramsauer
d163e826ea Switched button type from open to close
Signed-off-by: Ralf Ramsauer <ralf@ramses-pyramidenbau.de>
2015-09-25 00:50:08 +02:00
Ralf Ramsauer
6a8e917ede Added Lock Button
Signed-off-by: Ralf Ramsauer <ralf@ramses-pyramidenbau.de>
2015-09-25 00:50:08 +02:00
Ralf Ramsauer
052f2ff071 Removed LDAP TLS environment variable 2015-09-25 00:50:08 +02:00
Ralf Ramsauer
139e5a8409 Added Pre/Post Lock/Unlock Scripts 2015-09-25 00:50:08 +02:00
Ralf Ramsauer
4a170a934c New LDAP default URI 2015-09-25 00:50:08 +02:00
Ralf Ramsauer
c37f66ff91 Improved Epaper QR code generation 2015-09-25 00:50:08 +02:00
Ralf Ramsauer
e6cba90b37 Added comments 2015-09-25 00:50:08 +02:00
Ralf Ramsauer
13b392fc8b Improved klackering mechanism 2015-09-25 00:50:08 +02:00
Ralf Ramsauer
4d61754fc1 small bugfix 2015-09-25 00:50:08 +02:00
Ralf Ramsauer
8b2a0ea4ca Only listening on localhost 2015-09-25 00:50:07 +02:00
Ralf Ramsauer
f99ed93f29 Removed authenticated feature. Authentication is now required 2015-09-25 00:50:07 +02:00
Ralf Ramsauer
c8dccd7bfc Added Light-off feature 2015-09-25 00:50:07 +02:00
Ralf Ramsauer
21abbffeea Fixed small bug 2015-09-25 00:50:07 +02:00
Ralf Ramsauer
4f2625525f added rest of the software 2015-09-25 00:50:07 +02:00