Three defects in add/time_limited_alias:
The description was read as $_data['description'] without a guard. When a
client omits it, null is bound to spamalias.description, which is TEXT NOT
NULL, so the insert raises a PDOException. The global exception handler is
terminal, so process_add_return() never echoes anything and the caller sees
HTTP 200 with an empty body while no alias was created. Default it to an
empty string instead.
The validity guard used a single condition whose else branch also caught the
success case, so every valid validity was overwritten with the 8760 hour
default and the parameter did nothing. Only invalid values were rejected.
Nest the range check so a valid value survives.
The OpenAPI spec documented only username and domain, while the code also
reads description, validity and permanent. Spec driven clients therefore
could not construct a working request. Document all three.
spamalias.description is the only NOT NULL description column in the schema,
which is why the same unguarded read in add/domain and add/resource does not
fail, both of those columns are nullable.
This does not change the generic exception handling. A database error is
still swallowed into an empty HTTP 200, and the message the handler builds
carries the raw PDOException, so surfacing it to API clients would need
sanitising first. That is left for a separate change.
Refs #7287
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* dkim: Add support for 3072 and 4096 bit RSA keys
Signed-off-by: Marvin A. Ruder <signed@mruder.dev>
* php: added missing ; in dkim function
* php: make 4096 DKIM default
* db: update schema to set dkim 4096 as default
* Revert "db: update schema to set dkim 4096 as default"
This reverts commit 790b40a695.
* Revert "php: make 4096 DKIM default"
This reverts commit 7e643376c7.
---------
Signed-off-by: Marvin A. Ruder <signed@mruder.dev>
Co-authored-by: DerLinkman <niklas.meyer@servercow.de>
* fts-flatcurve: inital implementation
* fts: removed solr from compose.yml
* flatcurve: added heap and proc logic to dovecot
* added logic for update.sh & generate for Flatcurve
* delete old iteration of fts-flatcurve.conf
* updated default fts.conf
* updated .gitignore to exclude fts.conf for further git updates
* Remove autogeneration of fts.conf (disable override)
* cleanup all left solr stuff
* renamed SKIP_FLATCURVE to SKIP_FTS
* cleanup leftovers solr in lang files
* moved lazy_expunge plugin only to mail_plugins
* added fts timeout value
* compose: remove dev image of dovecot
* updated japanese translation
Signed-off-by: Kristian Feldsam <feldsam@gmail.com>
Revert "[Web] Implemented SSO for domain admins"
This reverts commit 6860dc8ebe2c8f53d77df5bca7787f7cb3bb4ee0.
Signed-off-by: Kristian Feldsam <feldsam@gmail.com>
* change response of add domain to array
* add tags to request body of add domain
* add gal to request body of add domain
* add relay_unknown_only to request body of add domain
* add relay_unknown_only to request body of edit domain
* add rl_frame, rl_value to request body of edit domain
* fix indentation
* add tags to request body of edit domain
* change response of edit domain to array
* Revert "change response of edit domain to array"
This reverts commit 692384e21b.
* change response type of edit domain to application/json
* change response type of edit domain
* change items in body of edit domain to array of strings
* change response of edit domain to array
* fix indentation
* revert changing response type of edit domain-admin
* change response type of edit domain to array
* fix response type of edit domains
* change msg in response of edit domains to array
* change items in body of delete domain to array of strings
* change request body of delete domain to array of strings
* fix
* remove properties
* change request body of delete domain to array of strings (fix)
* change reponse type of delete domain to array
* [API] Fix minor issue in api docs
* [GH-Actions][stale] Add neverstale label to exempt list
* [Web] add github version tag
* [Web] add github version tag error handling
* Passwordless SOGo auth: support for calendar invitations and calendar/contacts subscriptions
Inviting someone to a calendar event triggers a request to /SOGo/so/otheruser@example.com/freebusy.ifb/ajaxRead. Subscribing to someone's calendar/contacts triggers a request to /SOGo/so/otheruser@example.com/foldersSearch. The email address in the URL is different from the logged-in user, which needs to be handled appropriately by sogo-auth.php.
* [Web] add github version tag - adjust css
* [Compose] Update SOGo Autoreply Schedule to 5m
Based on the advice of inverse (SOGo developer). Thanks to https://github.com/jmber
Closes: https://github.com/mailcow/mailcow-dockerized/issues/4436
* [Web] add github version tag - move twig globals
* [Web] add github version tag - missing </div>
* Passwordless SOGo auth: improvements for when accessing other users
* [WebAuthn] fido2 passwordless auth - fix (#4440)
* [WebAuthn] fido2 revert
* [WebAuthn] set UV flags to 'discouraged'
* [WebAuthn] revert - set UV flags to 'discouraged'
Co-authored-by: ntimo <git@nowitzki.me>
Co-authored-by: Peter <magic@kthx.at>
Co-authored-by: FreddleSpl0it <patschul@posteo.de>
Co-authored-by: FreddleSpl0it <75116288+FreddleSpl0it@users.noreply.github.com>
Co-authored-by: Michael Kuron <mkuron@users.noreply.github.com>