1
0
mirror of https://github.com/php/php-src.git synced 2026-04-17 21:11:02 +02:00
Commit Graph

179 Commits

Author SHA1 Message Date
Charles R. Portwood II
55277a6684 RFC: Argon2 Password Hash Enhancements Implementation of Argon2id per RFC https://wiki.php.net/rfc/argon2_password_hash_enhancements
- m4 and Windows configure scripts now forces Argon2 reference library version >= 20161029
- Implementation tested against 20161029 and 20171227 for Argon2id support
- Updates Argon2 ext/standard/password/tests to run tests for both Argon2i and Argon2id
2018-06-21 13:26:57 +02:00
Joe Watkins
3382424903 Merge branch 'PHP-7.2'
* PHP-7.2:
  fix phpdbg disabling chroot support
2018-05-23 22:24:07 +02:00
Joe Watkins
a422b1e60c Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  fix phpdbg disabling chroot support
2018-05-23 22:23:53 +02:00
Joe Watkins
be11b354f4 fix phpdbg disabling chroot support 2018-05-23 22:23:13 +02:00
Tom Van Looy
7672f8be0b Fix: follow the indent of the other configure options 2018-02-15 08:49:58 +01:00
Anatol Belski
83497327e7 Implement high resolution monotonic timer function hrtime() 2018-01-07 16:03:52 +01:00
David Carlier
a95e8b80db net/if.h requires sys/socket.h on OpenBSD
This led to a detection failure of this particular header.
2018-01-06 21:42:27 +01:00
Matteo Beccati
d3fec3bf03 Fix getifaddrs detection on NetBSD 2017-11-28 15:42:33 +01:00
Sara Golemon
7ca5a7d84e Add net_get_interfaces() 2017-11-27 10:17:55 -05:00
Charles R. Portwood II
498716c2f7 Compatibility with libargon2 versions 20161029 and 20160821
libargon2 20161029 introduces the `type` parameter to the argon2_encodedlen
function that is not present in 20160821. This change ensures the Argon2
functionality introduced in RFC `argon2_password_hash` is compatible with
both versions, as the library version that package maintainers package may
differ.
2017-06-18 19:19:20 -04:00
Nikita Popov
f2c35fdda8 Merge branch 'PHP-7.0' into PHP-7.1 2017-03-17 20:20:43 +01:00
Nikita Popov
2e83082605 Fix bug #74265 2017-03-17 20:19:40 +01:00
Nikita Popov
1b40313804 Merge branch 'PHP-7.1' 2017-02-08 00:54:27 +01:00
Nikita Popov
bb9adc4c52 Merge branch 'PHP-7.0' into PHP-7.1 2017-02-08 00:53:36 +01:00
Christian Schmidt
714d825b62 Fix detection of isnan and isinf
The isnan() and isinf() are C99 macros not functions.

Also fix is_infinite(-INF) in case isinf is not defined.
2017-02-08 00:53:18 +01:00
Nikita Popov
546af1966e Merge branch 'PHP-7.0' into PHP-7.1 2017-02-06 01:46:01 +01:00
Nikita Popov
8a8aa67844 Revert "Fix detection of isnan and isinf"
This reverts commit 9ea0949f43.
2017-02-06 01:45:53 +01:00
Nikita Popov
70b27b5ad8 Merge branch 'PHP-7.0' into PHP-7.1 2017-02-05 18:10:04 +01:00
Christian Schmidt
9ea0949f43 Fix detection of isnan and isinf
The isnan() and isinf() are C99 macros not functions.

Also fix is_infinite(-INF) in case isinf is not defined.
2017-02-05 18:09:04 +01:00
Nikita Popov
2aaf57e6ed Merge branch 'PHP-7.1' 2017-01-09 23:30:07 +01:00
Nikita Popov
aab3f784d0 Merge branch 'PHP-7.0' into PHP-7.1 2017-01-09 23:29:33 +01:00
Leigh
14c72cc582 Fix check for linux getrandom syscall 2017-01-09 23:29:07 +01:00
Anatol Belski
c50abfdb8e Merge branch 'PHP-7.1'
* PHP-7.1:
  Implement github PR #1736
2017-01-07 15:42:44 +01:00
Anatol Belski
901a551bda Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Implement github PR #1736
2017-01-07 15:40:00 +01:00
Anatol Belski
486fc0424a Implement github PR #1736
This fixes leak issues on *BSD systems, as described in the PR.
2017-01-07 15:36:14 +01:00
Andrea Faulds
d8f27b2be8 Merge branch 'DedupNANINF' 2016-10-26 16:46:36 +01:00
Christoph M. Becker
1305fdaa3b Merge branch 'pull-request/1997' 2016-09-08 17:00:07 +02:00
Charles R. Portwood II
d883f65d31 Fixing issue with config.m4 script not correctly checking for PHP_PASSWORD_ARGON2 2016-08-01 19:03:34 -05:00
Charles R. Portwood II
0d4d8eab53 Removing Argon2d, changing config arg to --with-password-argon2
Argon2d is not suitable for password_hashing. To ensure best practices
within password_*, Argon2d was removed.

--with-argon2 implies the full feature set of Argon2, whereas this
feature only implements Argon2i within password_*. Consequently
the feature flag was renamed to --with-password-argon2
2016-08-01 18:53:24 -05:00
Charles R. Portwood II
9bedcb7a61 Adding to PHP library includes 2016-07-12 10:24:11 -05:00
Charles R. Portwood II
f4aa3a465b Fixing linker issue on linux when DIR is specified on --with-argon2 2016-07-11 23:13:07 -05:00
Charles R. Portwood II
bcfccdd9f4 Removing argon2 library files in favor of --with-argon2[=DIR]
- Configure flag now accepts --with-argon2 for dynamic linking with
  libargon2. Argon2 will be enabled in password_* only if this
  flag is passed.
- --with-argon2 config flag allows user passed directory for linking
- Added Argon2 specific tests to ensure existing tests do not fail
  when argon2 is disable
2016-07-11 16:44:40 -05:00
Charles R. Portwood II
c2551a74d4 Working implementation with password_hash, password_verify 2016-07-08 23:45:19 -05:00
Leigh
eba6e7ce9a Split rand and mt_rand into separate files 2016-07-05 11:16:37 +01:00
Nikita Popov
be7a50b9ab Move HAVE_ATTRIBUTE_ALIGNED check outside crypt block
This is checked outside the crypt() implementation as well.
2016-03-25 20:50:52 +01:00
Nikita Popov
786effaff6 Remove PHP_*_CRYPT constants
They are always 1.
2016-03-25 20:48:34 +01:00
Nikita Popov
a142c274fb Ensure that all crypt() formats are supported
Checks for md5, sha512 and sha256 were missing.

As a result the PHP_*_CRYPT constants are always 1 now.
2016-03-25 20:39:14 +01:00
Andrea Faulds
1c1e20d771 Deduplicate NAN/INF portability, move to Zend 2016-03-20 01:32:44 +00:00
Nikita Popov
159602bd86 Merge branch 'PHP-5.6' into PHP-7.0 2016-03-03 17:29:58 +01:00
Anton Blanchard
ccd215a517 Additional improvements to crypt() detection code
Reformat to normalize tabs vs spaces, return 1 if crypt.h not
defined, fix C99 compliance.
2016-03-03 17:28:34 +01:00
Nikita Popov
5a01605b4b Merge branch 'PHP-5.6' into PHP-7.0 2016-03-03 17:14:18 +01:00
Michael Orlitzky
08fce8e2c5 ext/standard/config.m4: fix crypt() test segfaults in >=glibc-2.17.
Starting with glibc-2.17, the crypt() function will report an EINVAL
and return NULL when the format of the "salt" parameter is
invalid. The current tests for crypt() pass its result to strcmp(),
causing segfaults when the value returned from crypt() is NULL.

This commit modifies the test programs to exit with failure when
crypt() returns NULL.

Reference: https://bugs.gentoo.org/show_bug.cgi?id=518964
2016-03-03 17:12:57 +01:00
Leigh
faf835be2b Use arc4random on OpenBSD 5.5+ and NetBSD 7+
As discussed with @weltling, keeping arc4random on the condition that the OS has a solid implementation of it
2015-10-30 19:08:20 +00:00
Leigh
a53510239f Remove arc4random
There has been a lot of discussion around whether arc4random should be included. Given how many different impementations of it are in the wild, we can't guarantee a secure implementation on all platforms.
2015-10-26 20:40:28 +00:00
Scott
6554f721f7 Add support for getrandom(2), add type check on file descriptor
Fix to_read, throw exception if syscall fails

Fixes thanks to feedback from sarnold at ##crypto on freenode

Correction on error conditions

Remove dead code (thanks @defuse)

It turns out getrandom can take >256, getentropy refuses.

Better semantics

Thanks @defuse for catching my silly mistake here

Cast to size_t to be explicit

Let's simplify the logic a bit

Let's be consistent; define everything before we do any logic

Continuously check that the file descriptor is still a valid one

Add device type check on fd initialization
2015-09-29 09:14:28 +02:00
Leigh
5f1b83e9bb Improve CSPRNG implementation 2015-05-09 21:57:59 +02:00
SammyK
bc54d139aa Initial implementation for CSPRNG API 2015-05-09 21:57:50 +02:00
Felipe Pena
85aab94d81 - Fix merge 2015-02-17 01:11:48 -02:00
Felipe Pena
0c01fca444 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  - Fixed bug #67827 (broken detection of system crypt sha256/sha512 support)
  - Fixed bug #67427 (SoapServer cannot handle large messages) patch by: brandt at docoloc dot de
  Update NEWS
2015-02-17 00:28:28 -02:00
Felipe Pena
a331ae4630 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Fixed bug #67827 (broken detection of system crypt sha256/sha512 support)
  - Fixed bug #67427 (SoapServer cannot handle large messages) patch by: brandt at docoloc dot de
  Update NEWS
2015-02-17 00:28:11 -02:00