Commit Graph

1613 Commits

Author SHA1 Message Date
Michael Voříšek
a797873ef5 Fix "phpdoc_no_empty_return" CS (#9302)
* replace void with never return type

* replace "return void" phpdoc with native type in tests

* replace "return void" phpdoc with native type in rcube_addressbook

* replace "return void" phpdoc with native type in rcmail_oauth

* fix remaining
2024-01-05 19:03:58 +01:00
Aleksander Machniak
415381e6a7 Support (DEPTH 0) in GETMETADATA command 2024-01-05 14:43:28 +01:00
Aleksander Machniak
652f2fc410 Fix IMAP GETMETADATA command with options - RFC5464 2024-01-05 14:37:29 +01:00
Michael Voříšek
6a53a1d853 Fix CS (whitespace, visibility) (#9297)
* Fix "method_argument_space"

* Fix "control_structure_continuation_position"

* Fix "new_with_parentheses"

* Fix "blank_line_before_statement"

* Fix "visibility_required"

* Fix some "array_indentation"

* Fix some "array_indentation" - unify all "rcube::raise_error" calls

* rm useless eslint ignores and add rules counts

* sort eslint ignores

* fix eslint ignores grammar

* Revert "Fix "blank_line_before_statement""

* fix CS 3.46.0
2024-01-04 14:26:35 +01:00
Michael Voříšek
86eda9f7ed Fix "increment_style" CS (#9296)
* Fix "increment_style" CS

* use "post" increment style
2024-01-01 12:23:21 +01:00
Michael Voříšek
2643be3eaa Fix single quotes CS (#9283)
* Fix "single_quote"

* fix "escape_implicit_backslashes"

* fix typo from f363481c

* fix single quotes in JS

* fix some minor JS CS

* fix CS v3.45.0
2023-12-31 16:36:55 +01:00
Edouard Vanbelle
c5a84f7d73 fix: correct language_prop() to support language like es_419 from user agent (#9292) 2023-12-29 18:48:50 +01:00
Edouard Vanbelle
0e4c35797d core: correct coding style warning (#9284)
Signed-off-by: Edouard Vanbelle <edouard@vanbelle.fr>
2023-12-26 09:04:54 +01:00
Aleksander Machniak
90555d228e Define missing functions in rcube_storage 2023-12-23 20:29:44 +01:00
Michael Voříšek
3e458fa5fd Refer native constants unambiguously (#9275)
* Fix "native_constant_invocation" CS

* "self_accessor" was fixed in 9269 PR

* "php_unit_strict" was fixed in 9268 PR
2023-12-23 17:02:19 +01:00
Michael Voříšek
a9167a0d2f Fix "static_lambda" CS (#9276) 2023-12-20 20:01:00 +01:00
Aleksander Machniak
a689d4cda0 Fix potential "undefined index" warning 2023-12-19 10:44:47 +01:00
Aleksander Machniak
9f5cc3e9fa Accept null as input to parse_bytes() 2023-12-18 08:04:55 +01:00
Michael Voříšek
aa3803eaee Return integer|false from parse_bytes() function (#9271)
* Return integer from parse_bytes() function

* fix rebase

* Return false from parse_bytes() function if input is invalid

* allow null until strongly typed
2023-12-18 07:51:07 +01:00
Michael Voříšek
28c778b7a0 Modernize more CS III (#9270)
* fix "single_trait_insert_per_statement"

* fix "empty_loop_condition"

* fix "backtick_to_shell_exec"

* fix "phpdoc_to_comment"

* fix "no_empty_statement"

* fix "heredoc_to_nowdoc"

* fix "class_reference_name_casing"

* fix "align_multiline_comment"

* fix "heredoc_indentation"

* fix "constant_case"

* fix "single_line_comment_style"

* fix "no_null_property_initialization"

* fix "standardize_increment"

* fix "no_unneeded_control_parentheses"

* fix missing NL after "<?php"

* fix php in *.sh files too

* fix trailing spaces from all text files

* fix "explicit_indirect_variable"

* Revert "fix "align_multiline_comment""

This reverts commit 42e584f8e3.

* fix "align_multiline_comment" properly

* Revert "fix trailing spaces from all text files" - diff files only

* Revert "Revert "fix trailing spaces from all text files" - diff files only"

This reverts commit 2101c2a3a3.

* rm useless "setup-php" config
2023-12-18 07:46:51 +01:00
Aleksander Machniak
9729ff9418 Fix warning on parse_bytes(null) call 2023-12-17 14:18:55 +01:00
Michael Voříšek
e7d7e62146 Modernize more basic CS II (#9254)
* fix "integer_literal_case"

* fix "phpdoc_separation"

* fix "phpdoc_var_without_name"

* fix "operator_linebreak"

* fix "no_alias_language_construct_call"

* fix "list_syntax"

* fix "concat_space"

* fix "array_syntax"

* fix "binary_operator_spaces"

* fix "binary_operator_spaces" relaxed

* fix "phpdoc_types_order"

* fix "phpdoc_trim"

* fix "native_type_declaration_casing"

* fix "method_chaining_indentation"

* fix "phpdoc_no_package"

* fix "elseif"

* fix PHP CS Fixer config itself too

* fix "native_type_declaration_casing"
2023-12-17 13:14:45 +01:00
Michael Voříšek
ca8b17d191 Modernize more basic CS (#9258)
* fix "yoda_style"

* fix "is_null"

* rm useless rule ignores

* add full "PhpCsFixer:risky" ruleset

* fix "implode_call"

* fix "no_alias_functions"

* fix "array_push"

* fix "long_to_shorthand_operator"

* fix "ternary_to_elvis_operator"

* fix "logical_operators"

* fix "fopen_flags"

* rename "returns" phpdoc tags to "return"

* fix "php_unit_construct"

* fix "function_to_constant"

* fix "php_unit_data_provider_return_type"

* fix "php_unit_set_up_tear_down_visibility"

* some safe "string_length_to_empty"

* fix "phpdoc_align"

* fix "phpdoc_no_alias_tag"

* fix "trailing_comma_in_multiline"

---------

Co-authored-by: Aleksander Machniak <alec@alec.pl>
2023-12-17 09:51:11 +01:00
Michael Voříšek
93946f4ca7 Fix "self_accessor" PHP CS Fixer rule (#9269) 2023-12-17 09:44:43 +01:00
Edouard Vanbelle
588a879107 OAuth improvements (#9217)
- OAuth: Add `oauth_config_uri` - support OAuth/OpenIDC discovery (#8201)
- OAuth: Add `oauth_logout_uri` - allow invalidating the OAUTH-Session on logout (#8057)
- OAuth: Support for OpenID Connect RP-Initiated Logout (#9109)
- OAuth: Add support of OAUTHBEARER (#9217)
- OAuth: Add `oauth_debug` option (#9217)
- OAuth: Fix: missing config `oauth_provider_name` in rcmail_oauth's constructor (#9217)
- OAuth: Refactor: move display to the rcmail_oauth class and use `loginform_content` hook (#9217)

Signed-off-by: Edouard Vanbelle <edouard@vanbelle.fr>
Co-authored-by: Aleksander Machniak <alec@alec.pl>
2023-12-17 09:13:07 +01:00
Michael Voříšek
1aef271290 Fix class/method names case typos (#9261)
* fix Mail_Mime case

* fix StdErrMock case

* fix method calls case
2023-12-16 15:39:59 +01:00
Michael Voříšek
a8707ae220 Fix and assert basic CS using CI (#9246)
* Assert CS using CI

* fix "single_blank_line_at_eof"

* fix "statement_indentation"

* fix "switch_case_semicolon_to_colon"

* fix "control_structure_braces"

* fix "statement_indentation"

* fix "no_whitespace_in_blank_line"

* fix "no_trailing_whitespace_in_comment"

* fix "no_trailing_whitespace"

* fix "single_space_around_construct"

* fix "spaces_inside_parentheses"

* fix "ternary_operator_spaces"

* fix "trim_array_spaces"

* fix "whitespace_after_comma_in_array"

* fix "cast_spaces"

* fix "unary_operator_spaces"

* fix "no_trailing_comma_in_singleline"

* fix "ordered_imports"

* fix "no_unused_imports"

* Check composer.json format

* fix CI job name

* file header comments are not phpdoc

* fix "phpdoc_indent"

* fix "braces_position"

* fix "phpdoc_types"

* fix "no_blank_lines_after_class_opening"

* fix "no_multiple_statements_per_line"

* fix "multiline_comment_opening_closing"

* fix "single_line_empty_body"

* fix "non_printable_character"

* fix "phpdoc_trim_consecutive_blank_line_separation"

* fix "include"

* fix "no_mixed_echo_print"

---------

Co-authored-by: Aleksander Machniak <alec@alec.pl>
2023-12-16 15:37:43 +01:00
Michael Voříšek
a2b5bb8f05 Fix rcube::decrypt() (#9264)
* do not skip test_encrypt_and_decrypt test
* Fix rcube::decrypt()
2023-12-13 08:27:39 +01:00
Aleksander Machniak
164d486594 Fix PHP8 warning 2023-12-12 12:16:37 +01:00
Michael Voříšek
5425d1a84a Fix invalid phpdocs (#9252)
* fix missing return type in phpdoc
* fix "phpdoc_scalar"
* Fix phpdoc variable names typos
* fix wrong phpdoc tags
2023-12-10 16:20:50 +01:00
Michael Voříšek
a5bb3b2b08 Fix rcube_imap::sort_folder_comparator() warning on Windows (#9253)
* Fix rcube_imap::sort_folder_comparator() for Windows
* fix more robustly
2023-12-10 15:50:55 +01:00
Michael Voříšek
13f68fa06f Fix explode_quoted_string for multibyte delimiter (#9248) 2023-12-10 10:15:52 +01:00
Aleksander Machniak
104a992e35 Fix PHP8 warnings (#9242) 2023-12-09 08:47:35 +01:00
cgzones
12dea728f8 Ignore mbstring.func_overload in PHP 8 (#9227)
The feature `mbstring.func_overload` is deprecated since PHP version 7.2 and removed since 8.0.0
(see https://www.php.net/manual/en/mbstring.overload.php).

Skip trying to set it for PHP version 8, e.g. to avoid failures with the sloppy comparison hardening of Snuffleupagus
(https://snuffleupagus.readthedocs.io/config.html#prevent-sloppy-comparison):
2023-12-03 13:11:22 +01:00
Aleksander Machniak
9f044f004c Don't log anything if per_user_logging=true and user is not authenticated yet 2023-11-27 13:12:01 +01:00
Aleksander Machniak
4ed6f65f94 Rename DNS option attr_emulate_prepares to emulate_prepares, update changelog
[skip ci]
2023-11-19 10:41:52 +01:00
Dominik Ulrich
d53db5e7e5 Add possibility to change ATTR_EMULATE_PREPARES via config file (#9213) 2023-11-19 10:37:35 +01:00
Aleksander Machniak
cfd55ca010 Fix PHP8 warnings 2023-11-13 20:01:49 +01:00
Aleksander Machniak
651710ca96 Fix deprecated (in PHP 8.4) use of session_set_save_handler() (#9060) 2023-11-11 12:49:27 +01:00
Aleksander Machniak
41a6609b3a Fix regression in handling LDAP search_fields configuration parameter (#9210) 2023-11-11 10:38:07 +01:00
Aleksander Machniak
8415e34c2b Cleanup 2023-11-07 15:53:40 +01:00
Aleksander Machniak
da3c12bce2 Silence some potential PHP warnings 2023-11-07 15:52:17 +01:00
Aleksander Machniak
cd87dd013f Fix cross-site scripting (XSS) vulnerability in setting Content-Type/Content-Disposition for attachment preview/download
Thanks to rehme.infosec for reporting the issues.
2023-11-04 17:52:00 +01:00
Aleksander Machniak
a94d19768b Fix regression where smtp_user did not allow pre/post strings before/after %u placeholder (#9162) 2023-10-29 13:13:50 +01:00
Denys Klymenko
26ba211400 Fix PHP fatal error on folder read-only check (#9190) 2023-10-29 12:52:37 +01:00
Aleksander Machniak
4c1ec61bf1 Fix PHP 8.2 deprecation warning: Creation of dynamic property rcube_message_part::$realtype is deprecated (#9193) 2023-10-29 12:11:17 +01:00
Aleksander Machniak
04767b6b47 Fix bug where images attached to application/smil messages weren't displayed (#8870) 2023-10-21 18:15:00 +02:00
Aleksander Machniak
a2da5278df Fix duplicated Inbox folder on IMAP servers that do not use Inbox folder with all capital letters (#9166) 2023-10-18 19:36:43 +02:00
Aleksander Machniak
6880e085f9 Fix PHP8 fatal error when parsing a malformed BODYSTRUCTURE (#9171) 2023-10-17 20:02:30 +02:00
Aleksander Machniak
6ee6e7ae30 Fix cross-site scripting (XSS) vulnerability in handling of SVG in HTML messages (#9168) 2023-10-14 18:16:22 +02:00
Aleksander Machniak
f0d1ae49f9 Fix default 'mime.types' path on Windows (#9113) 2023-10-01 14:12:25 +02:00
Aleksander Machniak
16ee6865ca Fix cross-site scripting (XSS) vulnerability in handling of linkrefs in plain text messages
Thanks to Niraj Shivtarkar for the report.
2023-09-14 08:39:51 +02:00
Aleksander Machniak
048e1e8e9b Fix PHP8 warnings 2023-08-20 08:13:35 +02:00
Aleksander Machniak
35d7b1fa5c Relax uuencode header regexp 2023-08-13 13:15:24 +02:00
Aleksander Machniak
64eb733c39 Fix handling of an error case in Cyrus IMAP BINARY FETCH, fallback to non-binary FETCH (#9097) 2023-08-13 12:27:58 +02:00