Commit Graph

16946 Commits

Author SHA1 Message Date
924034fb73 ArchiveAccountManager: cleanup
Change-Id: I9f50862b57f0c30c4766825af0b090c2eb0e5c55
2025-07-17 15:01:46 -04:00
1969975c2c gitserver: add context to log messages
Change-Id: I9bd9db97a0e280e1fe548bf1f84313397f79b3db
2025-07-09 13:36:17 -04:00
847d1fdbed update for asio 1.30
Change-Id: Iac5a8f965eb5211f3016946c5f4eee5b34f748f7
2025-07-09 10:04:38 -04:00
7a2ed6e925 gittransport: use fmt instead of std::ostringstream
Change-Id: I6f9d093298e5fe46267ac0e1ca78d824b0a42f7c
2025-07-09 10:04:33 -04:00
898fe1fbbc encoder: enable SPS/PPS in every H.264 keyframe
Set AV_CODEC_FLAG2_LOCAL_HEADER for H.264 to include
SPS/PPS headers in each keyframe. This improves decoder
robustness during packet loss or late joins in RTP
streaming scenarios.

Change-Id: I9f31bd26dca343a83cff1cfa5cc8ada789f94786
2025-07-08 17:20:31 -04:00
bae238e6f9 tests: add contrib lib dir
Change-Id: I3323d86c4b80993e9cd0b3f3bbb9440bb65ba0bd
2025-07-08 15:53:21 -04:00
69347f0f1d exceptions: use fmt instead of std::ostringstream
Change-Id: I87d034eb2e9f9527c167ea5d1ee634168ec38f16
2025-07-08 15:38:52 -04:00
c772a3d92d namedirectory: use starts_with
Change-Id: Ie65271cf32f43c89243e701859c4b21bdaf57062
2025-07-08 15:38:42 -04:00
d2a3032543 SwarmManager: send request on io pool
Change-Id: Icdb722ba4131862e56391243f08cdbcf16cfeb52
2025-07-08 15:38:36 -04:00
9b07b6d5c9 ConversationModule: bootstrap without holding mutex
Change-Id: I6bf61173a79c0284a2fca3aca4ec7e5a1a1c1c53
2025-07-08 15:11:05 -04:00
0b39b0c36d SyncModule: sync on io pool
Change-Id: Ied96331123e06d01305ea7d01aea3a6d684cb6bb
2025-07-08 15:03:42 -04:00
18b6ae56db Add encryption support when importing archive
Save password and scheme on new device during
linking. Set archiveHasPassword flag in config
when saving the archive.

Change-Id: I8822c746d2f7968fef5493ee3f4c92f121274c5a
2025-07-08 14:33:58 -04:00
edfa4fa623 namedirectory.cpp: cleanup
Change-Id: I02f9cc0e18fdee5a04d1a3c516650821d4d9d248
2025-06-26 08:00:21 -04:00
a5eee33e40 tests: remove unneeded std::move of temporary
Change-Id: I2deb3d4c64ad764b2dcd8b50018abb766526b5c9
2025-06-23 19:36:21 -04:00
66bad93487 cmake/tests: add restinio dependency for ut_namedirectory
Namedirectory unit tests uses restinio directly which itself depends on llhttp.
So while restinio itself is header only, we need to declare the dependency
for appropriate linking of llhttp.

Change-Id: I113257613c660e5e73c52c14fb6691cd6c85f693
2025-06-23 19:36:21 -04:00
72363e1083 cmake: depend explicitly on nettle
Nettle is used directly for sha3 computation

Change-Id: I9ad71746f78e433e5df65938d477cc6c93dc6a31
2025-06-23 19:36:19 -04:00
837eb562d8 rational: cleanup, add to_string()
Change-Id: I84578c8bb23ea164a78194b40e700d62eb8cfa52
2025-06-23 16:07:24 -04:00
60fd7559d3 videomanager: only save config if setting changed
Change-Id: I5edef4f1e1a5b92e6e0222d735d50b764eb5b188
2025-06-23 16:07:24 -04:00
9a47abbac7 sipcall: start and stop streams in parallel
Change-Id: I884acf675fa72c1d3dc06de8c70c1e3e7f1bd021
2025-06-23 16:04:10 -04:00
b687f8e21c media: fix return value for mediaTypeToString
The function mediaTypeToString never checked for nullptr
return values, which could potentially lead to crashes.
This patch ensures it always returns a valid string for
all defined MediaType values.

Change-Id: I81ef8876e1f57265584fae02cdfaff2894ff9f8c
2025-06-19 15:07:57 -04:00
dc1c49b5b8 jamiaccount: fix null pointer dereference
We were getting occasional segfaults in requestMessageConnection due to
the handler pointer being null. More precisely, this would happen
whenever requestMessageConnection got called after channelHandlers_ had
been cleared by shutdownConnections.

GitLab: #1095
GitLab: #1133
Change-Id: If7a8b9b9395647a890bb6b3c12954db91a22ed30
2025-06-19 15:07:48 -04:00
f8f19f4586 video_rtp: start receiver before sender
Ensures receiver is initialized before sender
to handle incoming packets early.

Change-Id: I98fc780def9d5cb140fe4fc957b283b3d2db5d41
2025-06-18 14:30:50 -04:00
9d53375028 conference: initSources after setting state
Change-Id: Idc5416f9db85502874f07dfa84e3eb159a4c50eb
2025-06-17 15:55:34 -04:00
001b13103b Remove redundant warning log
The warning log in publishFrame was being printed
unconditionally due to the absence of a return
statement after a successful frame publish.

Change-Id: I552276e37071cb24a7b16b4b8ae441ebd26379b6
2025-06-16 14:16:48 -04:00
eb9bec5d23 unitTest: fix incorrect check in ut_conference
This patch fixes a logic error in testCreateParticipantsSinks which was
introduced in commit 0757c2cf.

GitLab: #1132
Change-Id: I1c34857f5a309ee34dd976a9d91c3ef1ba938408
2025-06-16 10:22:45 -04:00
38ac794295 optimize SDP input probing for video streams
Set max_ts_probe and fpsprobesize to 0 for SDP
video to reduce stream initialization latency.

Change-Id: Idfda66cfc72cb1a9d45c6da4e13c73f82859b1de
2025-06-13 16:04:52 -04:00
3280fa373a fix paramter warning and libgit2 error
Add directives to use git_comit * const for final parameter when calling git_commit_create_buffer function using v.1.8.0, v1.8.1, and v1.8.3

Change-Id: Iffc023b0ae87f14aea15b360d00da76933a81cc4
2025-06-09 10:22:46 -04:00
ace9a0da42 fix various warnings
Change-Id: Ib01f381cb1a1c2f7259269603a47c39e39808494
2025-06-05 17:33:01 -04:00
0757c2cf70 libjami: respect LIBJAMI_FLAG_NO_LOCAL_VIDEO
Change-Id: I92eb18404ca9872a3dad3ecbae5e5ab6439a07ad
2025-06-05 15:18:29 -04:00
41384122a8 contrib: update dhtnet
Change-Id: I699955671953b68bf37c01697232cb9010066b33
2025-06-05 14:36:11 -04:00
c4bac01b1c jamiaccount: remove unused code
Change-Id: I2663620a9b1001810367f48889205d11a1c0eff7
2025-06-05 14:08:34 -04:00
30fc8649ed swarms_sdp: ensure host always matches sdp offer
Fixes the host-side logic behind how the medialist is populated
when an SDP offer is received in a swarm.

GitLab: #1079
Change-Id: I58a0764f05d32ffc05fa064eb0ce5768dda580c2
2025-06-04 15:54:23 -04:00
f20373cda2 media_decoder: handle invalid data in AVPacket
This fixes a crash when receiving invalid data in an AVPacket.

Gitlab: #1116
Change-Id: Ie5e102413d94f05b3c8935501b57839b31b98569
2025-06-04 11:47:14 -04:00
52fc02f036 manager: handle swarm calls on jami accounts only
Change-Id: I7850183c9265ad83e921bd78071828452717597b
2025-05-27 11:59:11 -04:00
86014b4005 MessageChannelHandler: increase read buffer size
Change-Id: I83ae33f163fd533b6cb92a8f1fb6afdf930cd948
2025-05-27 11:58:59 -04:00
54702ec7dd jamiaccount: always return true on presence notification
Change-Id: If25ec9b8dda7b9d1c5e48b316251f3cdb9d93919
2025-05-27 11:58:46 -04:00
0184863d26 siptransport: log cleanup
Change-Id: I06f70f79c97e9ed42b36315f329b7840e689e65c
2025-05-27 11:58:43 -04:00
20f8e7e1ce sync module: clear buffer before sending preferences
Change-Id: I51f79c4346deedf148016fb4acdb47fa8f3f2c19
2025-05-27 11:27:39 -04:00
e18dcee2b5 AccountManager: avoid saving contacts if no change
Change-Id: I89a5aea23d1c64566404b4bc0cfa9d8bddfaf46e
2025-05-27 11:27:39 -04:00
07ba87d417 MessageChannelHandler: emplace back new connection
Change-Id: I052792afdc89cd0fa8095c8029320f7efac7ee97
2025-05-27 11:27:39 -04:00
018a4227f5 portaudiolayer: protect concurrent streams array access
Hotplug events may trigger a race condition when accessing the streams
array. This commit protects the access to the streams array by locking
a mutex. Locks are only acquired when streams are added, removed, or
initialized.

Gitlab: #1130
Change-Id: Ide0f2bfba47bf597981b26cce8d37ca076c7173b
2025-05-26 18:18:03 -04:00
1bca75aa4e portaudiolayer: fix stop-stream routine
The return value of Pa_IsStreamStopped() was not checked correctly, and
the stream pointers were not reset to nullptr. This could theoretically
lead to a crash if we were to try to stop an non-null stream pointer.

Gitlab: #1130
Change-Id: If2cf3a05b76c8c2d9c7d1ba53606c80e86516b77
2025-05-26 18:17:56 -04:00
5645210a2d jamiaccount: fix crash when calling without a connection
This commit places a null check for the connectionManager before getting
the ice options in the `newOutgoingCall` method, which fixes a crash
when calling without a connection.

Gitlab: #1129
Change-Id: Ia6872f6fb9830e72da1d87201e2a0890719a8db9
2025-05-26 18:16:35 -04:00
a48c353f6c sonar: remove deprecated parameter comment
Follow up to the https://review.jami.net/c/jami-daemon/+/31242 patch.

Change-Id: I67ebaed68644b349f4db20590f1585b91a5ff065
2025-05-26 13:35:21 -04:00
513de5a988 audio-device-monitor: validate PROPVARIANT type
This should fix a crash in the audio device monitor. Presumably,
this was caused by the audio device monitor trying to convert a
PROPVARIANT that was not the correct type.

Gitlab: #2036
Change-Id: I2fcee78075d8f99b1379245e81453240de00332e
2025-05-26 12:55:53 -04:00
f85a39d5e5 account_manager: ensure it is not null before use
Change-Id: I466e07b69d209113dd69c048eba02a947dc3b2b0
2025-05-26 12:53:26 -04:00
7afa1aa2dc sonar: remove deprecated parameter
WIP

Change-Id: I6d2ac84376062d1c67e13423a98f82bd3fa32189
2025-05-23 14:17:23 -04:00
6f81476042 askForFileChannel: avoid use-after-move
Change-Id: I0f9bb2961c08307edf13c48ac206a9e56ae46e0f
2025-05-23 13:16:43 -04:00
bb49066ff4 ConversationModule: avoid use-after-move
Change-Id: I419160880710f68b39b3b8bc8e738570ab46c8db
2025-05-23 13:14:30 -04:00
1ea753e981 sipaccountbase: getIceOptions is not noexcept
Change-Id: Icef1641f02aceca451b0ff569eeb96916b2e951e
2025-05-23 13:14:30 -04:00