Skip to content

Commit 7226cea

Browse files
tachtlerleenooks
andauthored
#170 - issue - openssl 3.0 patch (#176)
* Updated README with info on PLA v2 * Fix broken git command in readme - closes #124 * #170 - issue - openssl 3.0 patch Co-authored-by: Deon George <deon@leenooks.net>
1 parent d15bd2d commit 7226cea

File tree

2 files changed

+89
-11
lines changed

2 files changed

+89
-11
lines changed

README.md

Lines changed: 82 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,90 @@
1-
phpLDAPadmin
2-
============
1+
# phpLDAPadmin
2+
phpLDAPadmin is a web based LDAP data management tool for system administrators. It is commonly known and referred by many as "PLA".
33

4-
phpLDAPadmin - Web based LDAP administration tool
4+
A primary goal of PLA is to be as intuitive as possible - so it is certainly possible for end users to use it as well, for example, to manage their data in an LDAP server.
55

6+
PLA is designed to be compliant with LDAP RFCs, enabling it to be used with any LDAP server.
7+
If you come across an LDAP server, where PLA exhibits problems, please open an issue with full details of the problem so that we can have it fixed.
8+
9+
## History
10+
Initially created in 2002 by David Smith, it was taken over by Deon George (aka leenooks) in 2005.
11+
12+
Since 2003 many things have changed - initial development was done in CVS and the project was hosted on Sourceforge.
13+
In 2009, CVS was swapped out for GIT, and in around 2011 the project was moved to Github.
14+
15+
The PLA v1.2.x stream was created in July 2009.
16+
17+
Work on PLA v2 has started and some information on that is below. Soon `master` will be updated and `BRANCH-2.0` will be visible in git. Until then, a sneak peak of v2 is available [here](https://phpldapadmin.servio.leenooks.net)
18+
19+
## THANK YOU
20+
Over the years, many, many, many people have supported PLA with either their time, their coding or with financial donations.
21+
I have tried to send an email to acknowledge each contribution, and if you havent seen anything personally from me, I am sorry, but please know that I do appreciate all the help I get, in whatever form it is provided.
22+
23+
Again, Thank You.
24+
25+
## Future
26+
Web development, tools, approaches and technology has come along way since 2009 and some talented folks have created some fantastic tools.
27+
With that PLA is going under a major revamp in preparation for v2 and will aim to use those existing creations to help speed up the revamp effort.
28+
29+
Some of the creations planned to be used in v2 include:
30+
* Laravel (https://laravel.com)
31+
* adldap2/adldap2 (https://github.com/Adldap2/Adldap2)
32+
* JQuery (https://jquery.com)
33+
* FancyTree (https://github.com/mar10/fancytree)
34+
* ArchitectUI (https://architectui.com)
35+
36+
PLA v1.2.x will be archived into [BRANCH-1.2](https://github.com/leenooks/phpLDAPadmin/tree/BRANCH-1.2), and `master` will be changed to reflect the new v2 work and effort.
37+
38+
If you plan to use PLA, and cannot use an installation from your OS package, please use [BRANCH-1.2](https://github.com/leenooks/phpLDAPadmin/tree/BRANCH-1.2) while progress is made in master for v2.
39+
40+
If you like the cutting edge, feel free to try out `master`, but expect problems, bugs and missing functionality.
41+
If you have extended v2 and would like to contribute your extension, or if you find a way to fix something that is broken or missing please submit a pull request.
42+
43+
Alternatively, you can get take a peek at the work so far by using our docker container, which is built automatically after testing passes.
44+
The [demo](http://demo.phpldapadmin.org) site, will also be running the same docker container. (See below for details.)
45+
46+
In summary, for the time being, expect `master` to be buggy and broken, and I'll update this readme as enhancements progress.
647

748
## Installation
49+
The following instructions will be for PLA v2 when its commited to GIT. Checkback regularly, as it will be pushed when its is semi functional.
850

9-
[INSTALL](INSTALL.md)
51+
### Installation on your server
1052

11-
## License
53+
#### Prerequisites
54+
* A HTTP server (eg: Apache, Nginx)
55+
* PHP (minimum version 7.2) https://www.php.net
56+
* Composer https://getcomposer.org
57+
* GIT
58+
59+
#### Installation
60+
1. Checkout the code from github
61+
```bash
62+
git clone https://github.com/leenooks/phpLDAPadmin.git
63+
```
64+
65+
1. Install composer dependencies.
66+
```bash
67+
composer install
68+
```
69+
70+
1. Edit your `.env` file as appropriate
71+
72+
copy `.env.example` to `.env` as a start.
73+
74+
1. Configure your webserver to have PLA's root in the `public` directory
1275

76+
### Using Docker
77+
Instructions to come.
78+
79+
## Getting Help
80+
The best place to get help with PLA (new and old) is on Stack Overflow (https://stackoverflow.com/tags/phpldapadmin/info)
81+
82+
## Found a bug?
83+
If you have found a bug, and can provide detailed instructions so that it can be reproduced, please open an [issue](https://github.com/leenooks/phpLDAPadmin/issues) and provide those details.
84+
85+
Before opening a ticket, please check to see if it hasnt already been reported, and if it has, please provide any additional information that will help it be fixed.
86+
87+
*TIP*: Issues opened with reproducible details accompanied with a patch (or a pull request) to fix the problem will be looked at first.
88+
89+
## License
1390
[LICENSE](LICENSE)

lib/functions.php

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
define('DOCDIR',sprintf('%s/',realpath(LIBDIR.'../doc/')));
2222
define('HOOKSDIR',sprintf('%s/',realpath(LIBDIR.'../hooks/')));
2323
define('JSDIR','js/');
24+
define('SESSION_CIPHER','aes256-gcm');
2425

2526
/**
2627
* Supplimental functions
@@ -769,9 +770,9 @@ function blowfish_encrypt($data,$secret=null) {
769770
if (! trim($secret))
770771
return $data;
771772

772-
if (! empty($data) && function_exists('openssl_encrypt') && in_array('bf-ecb', openssl_get_cipher_methods())) {
773-
$keylen = openssl_cipher_iv_length('bf-ecb') * 2;
774-
return openssl_encrypt($data, 'bf-ecb', substr($secret,0,$keylen));
773+
if (! empty($data) && function_exists('openssl_encrypt') && in_array(SESSION_CIPHER, openssl_get_cipher_methods())) {
774+
$keylen = openssl_cipher_iv_length(SESSION_CIPHER) * 2;
775+
return openssl_encrypt($data, SESSION_CIPHER, substr($secret,0,$keylen));
775776
}
776777

777778
if (function_exists('mcrypt_module_open') && ! empty($data)) {
@@ -830,9 +831,9 @@ function blowfish_decrypt($encdata,$secret=null) {
830831
if (! trim($secret))
831832
return $encdata;
832833

833-
if (! empty($encdata) && function_exists('openssl_encrypt') && in_array('bf-ecb', openssl_get_cipher_methods())) {
834-
$keylen = openssl_cipher_iv_length('bf-ecb') * 2;
835-
return trim(openssl_decrypt($encdata, 'bf-ecb', substr($secret,0,$keylen)));
834+
if (! empty($encdata) && function_exists('openssl_encrypt') && in_array(SESSION_CIPHER, openssl_get_cipher_methods())) {
835+
$keylen = openssl_cipher_iv_length(SESSION_CIPHER) * 2;
836+
return trim(openssl_decrypt($encdata, SESSION_CIPHER, substr($secret,0,$keylen)));
836837
}
837838

838839
if (function_exists('mcrypt_module_open') && ! empty($encdata)) {

0 commit comments

Comments
 (0)