| Age | Commit message (Collapse) | Author |
|
The members sid_min_length and sid_max_length are of type unsigned long,
thus use %lu instead of %zu and a cast.
|
|
|
|
|
|
Use the special value void as parameter for functions taking nor
argument.
|
|
|
|
|
|
* for easier memory manegement, the entire sp_config struct was merged into snuffleupagus_globals and allocated on stack where possible
* SNUFFLEUPAGUS_G() can be written as SPG(), which is faster to type and easier to read
* execution_depth is re-initialized to 0 for each request
* function calls with inline string and length parameters consistently use ZEND_STRL instead of sizeof()-1
* execution is actually hooked if recursion protection is enabled
* some line breaks were removed to make the code more readable
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- Use clang-format on the code
- Improve portability wrt. php8
- Fix php7.4 compatibility. See https://dustri.org/b/fixing-snuffleupagus-sloppy-comparison-on-array_keys-for-php74.html for a detailed writeup
|
|
|
|
It's possible to build PHP with sessions as a
module, or even without sessions at all.
This commit make it possible to use Snuffleupagus
on those platforms.
|
|
We only want to prevent crash/infinite recursion,
we don't really care about the error/warning
messages.
|
|
This used to be useful in the times of PHP5.4/Suhosin
(https://github.com/sektioneins/suhosin/issues/60),
but nowadays, php is handling this case on its own.
|
|
Since decrypt_zval doesn't provide a way to tell apart failed and successful decryption when used in simulation mode, we'll have to restore the original value if something goes wrong, because crypto_secretbox_open might modify the value.
|
|
|
|
* `setcookie` doesn't always return `true` anymore
* clang-format
* Cookies with invalid decryption are dropped, but the request isn't anymore
* faulty unserialize are now dumpable
|
|
|
|
|
|
|
|
|
|
This commit does a lot of things:
- Use hashtables instead of lists to store the rules
- Rules that can be applied at launch time won't be tried at runtime
- Improve feedback when writing nonsensical rules
- Make intensive use of `zend_string` instead of `char*`
|
|
|
|
Implement session encryption.
|