mattermost-mobile-upstream/app/utils
Amy Blais aa47558a47
Some checks failed
ci / lint-typecheck (push) Has been cancelled
ci / detox-lint-typecheck (push) Has been cancelled
ci / test (push) Has been cancelled
MM-70606: Fix Edit Server pre-auth secret save on HTTPS-redirecting servers (#10252) (#10290)
* fix(MM-70606): send the pre-auth secret over HTTPS only and fix Edit Server save

- sanitizeUrl: useHttp no longer downgrades an explicit https:// URL, so
  getServerUrlAfterRedirect keeps an HTTPS redirect target and strips its
  query string.
- Send the pre-auth secret header only to https/wss URLs: REST client
  default headers, per-request headers, WebSocket, and the HEAD probe.
  The secret is still persisted for the server.
- Edit Server: try HTTPS first, then fall back to HTTP (as Add Server does).
- Edit Server: recreate and reconnect the WebSocket client after the
  secret changes, so the new secret is used without an app restart.

* fix(MM-70606): keep the persisted pre-auth secret on token refresh over HTTP

ClientTracking stores the secret in its own field. The token refresh in
doFetchWithTracking reads that field instead of the request header, which
is only set over TLS, so a refresh on an http:// server no longer resets
the saved secret.

* fix(MM-70606): clarify when the pre-auth secret header is removed

* test(MM-70606): cover the pre-auth header guard in NetworkManager.createClient

(cherry picked from commit c189ca9fdd)

Co-authored-by: Felipe Martin <812088+fmartingr@users.noreply.github.com>
2026-10-30 14:09:40 +02:00
..
alerts On iOS, resuming after the 5-minute window showed no biometric prompt — (#10102) 2026-09-02 15:03:13 +08:00
channel [MM-69735] Improve DM call user experience (#10017) 2026-09-03 19:44:10 +00:00
deep_link [MM-66560] Fix channel links ending in channel IDs (#10158) 2026-09-15 11:28:03 -04:00
document Secure Files and preview PDF inline (#8844) 2025-06-19 15:30:56 +08:00
draft Migrate from RNN to Expo router (#9402) 2026-05-13 17:44:55 +08:00
emoji Migrate from RNN to Expo router (#9402) 2026-05-13 17:44:55 +08:00
file Mm 68219 show placeholder for redacted files (#9719) 2026-10-15 15:59:13 -07:00
gallery Migrate from RNN to Expo router (#9402) 2026-05-13 17:44:55 +08:00
general Channel banner display (#8735) 2025-04-08 11:15:18 +05:30
images Fix gallery image dimensions (#9247) 2025-11-10 19:18:27 +08:00
markdown Improve markdown code (#9164) 2025-11-04 10:05:56 +01:00
navigation MM-69122: Add file element support to interactive dialogs (#9898) 2026-10-07 14:43:26 -05:00
notification Migrate from RNN to Expo router (#9402) 2026-05-13 17:44:55 +08:00
performance Migrate from RNN to Expo router (#9402) 2026-05-13 17:44:55 +08:00
permalink Migrate from RNN to Expo router (#9402) 2026-05-13 17:44:55 +08:00
post Mm 68219 show placeholder for redacted files (#9719) 2026-10-15 15:59:13 -07:00
post_list Mm 68219 show placeholder for redacted files (#9719) 2026-10-15 15:59:13 -07:00
role Migrate from RNN to Expo router (#9402) 2026-05-13 17:44:55 +08:00
scheduled_post Migrate from RNN to Expo router (#9402) 2026-05-13 17:44:55 +08:00
search Migrate from RNN to Expo router (#9402) 2026-05-13 17:44:55 +08:00
security On iOS, resuming after the 5-minute window showed no biometric prompt — (#10102) 2026-09-02 15:03:13 +08:00
server [MM-70605][MM-70607] Scope pre-auth secret storage per server (#10149) (#10278) 2026-10-27 08:32:25 +02:00
snack_bar Mm 68293 ephemeral mode warnings (#10140) 2026-10-01 18:13:22 +02:00
svg Gekidou MultiServers second part (#5963) 2022-02-17 10:42:06 -03:00
tap Remove tand prevent double tap (#9078) 2025-08-25 12:03:01 +02:00
theme Migrate from RNN to Expo router (#9402) 2026-05-13 17:44:55 +08:00
thread Better handle threads sync (#8641) 2025-03-19 09:23:22 +01:00
url MM-70606: Fix Edit Server pre-auth secret save on HTTPS-redirecting servers (#10252) (#10290) 2026-10-30 14:09:40 +02:00
user Mm 68219 show placeholder for redacted files (#9719) 2026-10-15 15:59:13 -07:00
apps.test.ts Migrate from RNN to Expo router (#9402) 2026-05-13 17:44:55 +08:00
apps.ts Make attachments and app bindings more robust yet secure (#8570) 2025-03-14 12:02:32 +01:00
bor.test.ts Ensured BoR post actions matches those in webapp (#9362) 2026-02-04 12:18:35 +05:30
bor.ts Ensured BoR post actions matches those in webapp (#9362) 2026-02-04 12:18:35 +05:30
buttonStyles.test.ts Add Report a Problem functionality (#8605) 2025-04-24 11:12:55 +02:00
buttonStyles.ts Standardize tags and chips through the app (#8856) 2025-06-11 10:11:05 +02:00
categories.test.ts Add model mocks to TestHelper (#8715) 2025-03-28 09:40:08 +01:00
categories.ts Add unit tests to Utils buttonStyles and categories (#8015) 2024-06-14 17:11:36 +08:00
channel_attributes.test.ts MM-70813 - support multi value attribute chips (#10192) 2026-09-30 12:08:22 +02:00
channel_attributes.ts MM-70813 - support multi value attribute chips (#10192) 2026-09-30 12:08:22 +02:00
channel_bookmark.test.ts Limit bookmark names to the server's 64 characters (#10211) 2026-10-04 10:23:59 +05:30
channel_bookmark.ts Limit bookmark names to the server's 64 characters (#10211) 2026-10-04 10:23:59 +05:30
classification.test.ts Mm 70299 channel labels display phase 1 (#10113) 2026-09-17 21:37:43 +02:00
classification.ts Mm 70299 channel labels display phase 1 (#10113) 2026-09-17 21:37:43 +02:00
config.test.ts Mm 68767 zero persistence (#9803) 2026-07-16 13:55:45 +02:00
config.ts Mm 68293 ephemeral mode warnings (#10140) 2026-10-01 18:13:22 +02:00
custom_profile_attribute.ts [MM-62565] DB only custom profile attributes and fields (#8739) 2025-04-09 15:35:27 +02:00
database_errors.test.ts [MM-68315] Add autorecovery for database corruptions (#9900) 2026-07-13 18:02:35 +02:00
database_errors.ts [MM-68315] Add autorecovery for database corruptions (#9900) 2026-07-13 18:02:35 +02:00
date_utils.test.ts Add date/datetime field support with timezone features for Apps Forms (#9521) 2026-07-16 08:09:47 -06:00
date_utils.ts Add date/datetime field support with timezone features for Apps Forms (#9521) 2026-07-16 08:09:47 -06:00
datetime.test.ts Add date/datetime field support with timezone features for Apps Forms (#9521) 2026-07-16 08:09:47 -06:00
datetime.ts Add date/datetime field support with timezone features for Apps Forms (#9521) 2026-07-16 08:09:47 -06:00
dialog_conversion.test.ts MM-69122: Add file element support to interactive dialogs (#9898) 2026-10-07 14:43:26 -05:00
dialog_conversion.ts MM-69122: Add file element support to interactive dialogs (#9898) 2026-10-07 14:43:26 -05:00
dialog_utils.test.ts Add date/datetime field support with timezone features for Apps Forms (#9521) 2026-07-16 08:09:47 -06:00
dialog_utils.ts MM-69122: Add file element support to interactive dialogs (#9898) 2026-10-07 14:43:26 -05:00
error_handling.test.ts On iOS, resuming after the 5-minute window showed no biometric prompt — (#10102) 2026-09-02 15:03:13 +08:00
error_handling.ts Migrate from RNN to Expo router (#9402) 2026-05-13 17:44:55 +08:00
errors.test.ts [MM-62777] Fix errors being nested. Make MFA code more resilient to this situation (#8531) 2025-01-31 08:31:15 +02:00
errors.ts [MM-70605][MM-70607] Scope pre-auth secret storage per server (#10149) (#10278) 2026-10-27 08:32:25 +02:00
files.test.ts Secure Files and preview PDF inline (#8844) 2025-06-19 15:30:56 +08:00
files.tsx feat(iOS): Add Microsoft Intune MAM integration with multi-server support (#9312) 2025-12-10 13:07:28 +02:00
grapheme.test.ts New keyboard library Setup (#9278) 2026-01-13 22:38:35 +05:30
grapheme.ts New keyboard library Setup (#9278) 2026-01-13 22:38:35 +05:30
groups.test.ts added utils unit tests (#8040) 2024-07-05 07:17:09 +08:00
groups.ts [Gekidou] Groups + group-memberships deferred fetch (#6370) 2022-07-07 12:20:06 +02:00
headers.test.ts Fix case-insensitive pre-auth header check in doPing (#9577) 2026-03-17 12:07:07 +01:00
headers.ts [MM-70605][MM-70607] Scope pre-auth secret storage per server (#10149) (#10278) 2026-10-27 08:32:25 +02:00
helpers.test.ts Classification Markings: Cached request timer and PSv2 Implementation (#9926) 2026-08-13 15:24:07 +03:00
helpers.ts Classification Markings: Cached request timer and PSv2 Implementation (#9926) 2026-08-13 15:24:07 +03:00
integrations.test.ts MM-69122: Add file element support to interactive dialogs (#9898) 2026-10-07 14:43:26 -05:00
integrations.ts MM-69122: Add file element support to interactive dialogs (#9898) 2026-10-07 14:43:26 -05:00
interactive_dialog_adapter.test.ts MM-69122: Add file element support to interactive dialogs (#9898) 2026-10-07 14:43:26 -05:00
interactive_dialog_adapter.ts MM-69122: Add file element support to interactive dialogs (#9898) 2026-10-07 14:43:26 -05:00
intune_errors.test.ts add support on iOS for Intune Conditional Access (#9660) 2026-04-09 17:46:52 +03:00
intune_errors.ts add support on iOS for Intune Conditional Access (#9660) 2026-04-09 17:46:52 +03:00
key_mirror.test.ts added utils unit tests (#8040) 2024-07-05 07:17:09 +08:00
key_mirror.ts MM-35115 [Gekidou] Login flow - Email and Password (#5402) 2021-06-18 00:57:40 -04:00
keyboard.test.ts Mm 67525 bump min version (#9640) 2026-09-16 10:53:06 +00:00
keyboard.ts Mm 67525 bump min version (#9640) 2026-09-16 10:53:06 +00:00
log.test.ts Add Report a Problem functionality (#8605) 2025-04-24 11:12:55 +02:00
log.ts Update dependencies (#8721) 2025-04-07 09:30:06 +08:00
mattermost_managed.test.ts added utils unit tests (#8040) 2024-07-05 07:17:09 +08:00
mattermost_managed.ts Upgrade RN as well as update or replace other dependencies (#8011) 2024-06-19 09:33:45 +08:00
message_attachment.test.ts Make attachments and app bindings more robust yet secure (#8570) 2025-03-14 12:02:32 +01:00
message_attachment.ts Make attachments and app bindings more robust yet secure (#8570) 2025-03-14 12:02:32 +01:00
mix.test.ts added utils unit tests (#8040) 2024-07-05 07:17:09 +08:00
mix.ts Remove watermelondb limitation on updating an already updated model (#7067) 2023-02-03 17:11:57 +02:00
opengraph.test.ts fix: Product fixes to run e2e tests (#10081) 2026-08-26 16:12:37 +05:30
opengraph.ts fix: Product fixes to run e2e tests (#10081) 2026-08-26 16:12:37 +05:30
permalink_sync.test.ts Ability to show attachment if the permalink post contains attachments. (#9101) 2025-09-12 13:44:54 +05:30
permalink_sync.ts Ability to show attachment if the permalink post contains attachments. (#9101) 2025-09-12 13:44:54 +05:30
phone_number.test.ts MM-70688 Autolink phone numbers in posts as tel: links (#10143) 2026-09-14 14:32:17 -04:00
phone_number.ts MM-70688 Autolink phone numbers in posts as tel: links (#10143) 2026-09-14 14:32:17 -04:00
push_proxy.test.ts added utils unit tests (#8040) 2024-07-05 07:17:09 +08:00
push_proxy.ts capitalize back the alert text 2023-10-18 21:06:12 +02:00
remote_cluster_connection.test.ts [MM-67923] Add channel settings for shared channels (#9591) 2026-04-14 11:43:44 +02:00
remote_cluster_connection.ts [MM-67923] Add channel settings for shared channels (#9591) 2026-04-14 11:43:44 +02:00
render_permissions.test.ts MM-70693: Hide burn-on-read quick action when ABAC policy denies it (#10239) (#10260) 2026-10-20 09:01:17 +03:00
render_permissions.ts MM-70693: Hide burn-on-read quick action when ABAC policy denies it (#10239) (#10260) 2026-10-20 09:01:17 +03:00
reviews.test.ts Migrate from RNN to Expo router (#9402) 2026-05-13 17:44:55 +08:00
reviews.ts Migrate from RNN to Expo router (#9402) 2026-05-13 17:44:55 +08:00
saml_challenge.ts Mobile-side for MM-65084 (#9115) 2025-09-29 14:29:37 -07:00
sentry.test.ts Fix Regressions (#9808) 2026-06-04 06:54:40 +08:00
sentry.ts Fix Regressions (#9808) 2026-06-04 06:54:40 +08:00
share_logs.test.ts Report a problem not redirect to default email application (#9703) 2026-05-14 09:10:39 -04:00
share_logs.ts Report a problem not redirect to default email application (#9703) 2026-05-14 09:10:39 -04:00
strings.test.ts added utils unit tests (#8040) 2024-07-05 07:17:09 +08:00
strings.ts added utils unit tests (#8040) 2024-07-05 07:17:09 +08:00
subscription.test.ts Migrate from RNN to Expo router (#9402) 2026-05-13 17:44:55 +08:00
subscription.ts Migrate from RNN to Expo router (#9402) 2026-05-13 17:44:55 +08:00
team_menu.test.ts Migrate from RNN to Expo router (#9402) 2026-05-13 17:44:55 +08:00
team_menu.ts Migrate from RNN to Expo router (#9402) 2026-05-13 17:44:55 +08:00
time.test.ts [MM-71006] Update timezone data to 2026d (#10201) 2026-10-05 19:10:40 +08:00
time.ts Feature schedule posts (#8509) 2025-04-14 22:08:59 +05:30
timezone.test.ts added utils unit tests (#8040) 2024-07-05 07:17:09 +08:00
timezone.ts remove usages of isTimeZoneEnabled (#7769) 2024-01-30 13:22:55 +01:00
types.ts Add model mocks to TestHelper (#8715) 2025-03-28 09:40:08 +01:00
typography.test.ts added utils unit tests (#8040) 2024-07-05 07:17:09 +08:00
typography.ts added utils unit tests (#8040) 2024-07-05 07:17:09 +08:00