1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
* Go through all log statements, make sure log type and log level is sane
* Add pthread mutex locking in eurephia_log(...) [beta_0.9 req]
* Make new eurephiadb-driver_template.c - template for creating db driver (DONE)
- add new parameter to eDBregister_attempt(...) -- attempt_mode
* Implement logging of env.variable time_duration on disconnect (DONE)
- Needs to expand the openvpn_lastlog table with connection_duration
field.
* Write firewall (iptables) implementation
- Add function declarations in eurephia_firewall.h (DONE)
- Enable firewall functionality by checking if firewall_interface
config variable is set. (DONE)
- Add eDBget_firewall_profile(ctx, session) in eurephiadb (DONE)
- Add eurephia_firewall(ctx, mode{ADD|DELETE}, {profilename|macaddr},
(eurephiaCTX *, const int mode, char *) (DONE)
- This function is located in eurephia_fw_iptables.c (DONE)
- iptables -I {INSERT place} is taken from config:
firewall_destination (DONE)
- iptables -j {vpnuser_profile} is taken from VPN users
accessprofile (DONE)
- Needs probably to be an own thread with root permission and a
socket to send ADD/DELETE commands (DONE)
- Flush iptables chain on startup (DONE)
* Log MACaddresses per session into openvpn_macaddr_history (DONE)
- Can change during a session
CREATE TABLE openvpn_macaddr_history (
sessionkey varchar(64) NOT NULL,
macaddr varchar(20) NOT NULL,
registered timestamp DEFAULT CURRENT_TIMESTAMP,
semaid integer PRIMARY KEY AUTOINCREMENT,
KEY(sessionkey),
KEY(macaddr)
);
- Add insert in database/sqlite/eurphia-sqlite.c -- eDBregister_vpnaddr(...)
* BUGFIX: Core dumps when log file cannot be created (DONE)
* Fix core dump when openvpn process closes eDBdriver (DONE)
* Write eurephia main module - phase 1 (DONE)
- replaces sqlite-auth.so (DONE)
- utilising eurephiaDB database driver (DONE)
- Add openvpn_plugin_close_v1 (DONE)
* Rename eDBfree_sessionkey -> eDBfree_session (DONE)
* Move get_config from eurephiadb-sqlite.c to ../../eurephia_values.c (DONE)
- Make it more general (DONE)
- make use of eurephiaVALUES instead of its own dblconfig struct (DONE)
= Now it is also used by eurephiadb_session.c too.
* Rename eDBgenerate_sessionkey(...) -> eDBopen_session(...) (DONE)
* certinfo.c (DONE)
- cname -> common_name failure (DONE)
* rename dblink to eurephiaDB (DONE)
- DBL -> eDB (DONE)
- Find better names than eDBsessionvalues, eDBsessionkey (eDB -> eurephia) (DONE)
- DBLsessionkey -> eueurephiaSESSION (DONE)
- DBLsessionvalues -> eurephiaVALUES (DONE)
- Find better names than DBLattempt_* (DONE)
- Rename DBLconnection -> eDBconn (DONE)
- plugin_context -> eurephiaCTX (DONE)
* Go through code, check comments (DONE)
* Improve drivers/sqlite/sqlite.c (DONE)
- remove headers from all record tuples, put result headers in an own data struct
- put a pointer in record pointers to the corresponding header column
- make dbresult record chain a circular chain, with pointers in both directions
- write an algorithm which finds the shortest way to loop to a specific record ID
* Implement eDB_DriverVersion() and eDB_DriverAPIversion() (DONE)
|