Signal-iOS icon indicating copy to clipboard operation
Signal-iOS copied to clipboard

Cannot transfer messages from old iPhone in Lockdown mode to new iPhone

Open jiska2342 opened this issue 1 year ago • 1 comments

  • [X] I have searched open and closed issues for duplicates
  • [X] I am submitting a bug report for existing functionality that does not work as intended
  • [X] This isn't a feature request or a discussion topic

Bug description

I wanted to transfer my messages from my old iPhone to my new iPhone. The Wi-Fi I was using did not have client isolation, so it should be possible to transfer messages from one phone to the other. However, the old iPhone tried to connect to the new iPhone and after some waiting I got the error message that transferring messages was not possible due to a failure in connection.

Steps to reproduce

  • Old iPhone in Lockdown mode
  • New iPhone w/o Lockdown mode
  • Transfer messages from old iPhone to new iPhone -> fails
  • Disable Lockdown mode on old iPhone (causes a reboot)
  • Transfer messages from old iPhone to new iPhone -> works

Expected Result: Even though I don't know if this issue can be fixed on a technical level, it would be great if an error message would hint that Lockdown mode is possibly the cause why messages cannot be transferred.

Device info

Device: iPhone 13 mini

iOS version: 16.0 beta 8

Signal version: 7.30

Link to debug log

While the transfer failed, I took some log messages. Signal seems to attempt to connect to imagent via XPC during the message transfer, which fails in Lockdown mode. These XPC connection attempts happen multiple times. Could this be an issue?

After a while, I also got a connection timeout, which is the part that was also indicated by the user interface.

Due to only being able to transfer messages from an iPhone to another once, and this procedure taking multiple hours depending on the amount of Signal messages, I wasn't able to analyze the issue further.

default	21:04:29.221148+0200	Signal	063f All results have been returned to the client
default	21:04:29.221173+0200	Signal	063f Time spent in client code: 0,00 ys
default	21:04:29.221216+0200	Signal	063f FINISH (2,59 ms)
default	21:04:29.221261+0200	Signal	[0x10fa5bd40] Re-initialization successful; calling out to event handler with XPC_ERROR_CONNECTION_INTERRUPTED
error	21:04:29.221287+0200	imagent	Client 9956 does not have any of allowed entitlements ["com.apple.imagent", "com.apple.private.imagent", "com.apple.private.imcore.imagent", "com.apple.imagent.av", "com.apple.imagent.chat"], invalidating connection
error	21:04:29.221362+0200	Signal	Synchronous remote object got an error attempting to post setup, reason: Couldn’t communicate with a helper application.
default	21:04:29.221385+0200	imagent	[0x9b25b2940] invalidated because the current process cancelled the connection by calling xpc_connection_cancel()
default	21:04:29.221477+0200	imagent	[0x9b25b2940] activating connection: mach=false listener=false peer=true name=com.apple.imagent.embedded.auth.peer[9956].0x9b25b2940
default	21:04:29.221611+0200	Signal	0642 BEGIN: Will execute fetch for request: <private>

... (repeating)

error	21:04:29.228507+0200	imagent	Client 9956 does not have any of allowed entitlements ["com.apple.imagent", "com.apple.private.imagent", "com.apple.private.imcore.imagent", "com.apple.imagent.av", "com.apple.imagent.chat"], invalidating connection
default	21:04:29.228559+0200	imagent	[0x9b25b2940] invalidated because the current process cancelled the connection by calling xpc_connection_cancel()
default	21:04:29.228585+0200	imagent	[0x9b25b2940] activating connection: mach=false listener=false peer=true name=com.apple.imagent.embedded.auth.peer[9956].0x9b25b2940
default	21:04:29.228698+0200	Signal	No nickname found for auto-updating contact <private>
default	21:04:29.228720+0200	Signal	064b Contact: ...
default	21:04:29.228760+0200	Signal	064b All results have been returned to the client
default	21:04:29.228792+0200	Signal	[0x10fa5bd40] Re-initialization successful; calling out to event handler with XPC_ERROR_CONNECTION_INTERRUPTED
default	21:04:29.228816+0200	Signal	064b Time spent in client code: 0,00 ys
default	21:04:29.228915+0200	Signal	064b FINISH (1932 µs)
error	21:04:29.228939+0200	Signal	Synchronous remote object got an error attempting to post setup, reason: Couldn’t communicate with a helper application.

... (no more messages from the Signal process for 20 seconds)

default	21:04:49.747236+0200	Signal	Invite timeout for peer [...] fired.
default	21:04:59.504879+0200	Signal	tcp_input [C20.1.1.1:3] flags=[F.] seq=3267886283, ack=2197429871, win=265 state=ESTABLISHED rcv_nxt=3267886283, snd_una=2197429871
default	21:04:59.505095+0200	Signal	nw_protocol_tcp_log_summary [C20.1.1.1:3] 
	[... <private>:57749<-><private>:443]
	Init: 1, Conn_Time: 14.483ms, SYNs: 1, WR_T: 0/0, RD_T: 0/0, TFO: 0/0/0, ECN: 0/0/0, Accurate ECN (client/server): Disabled/Disabled, TS: 1, TSO: 0
	rtt_cache: process, rtt_upd: 5, rtt: 32.562ms, rtt_var: 30.250ms rtt_nc: 13.781ms, rtt_var_nc: 4.750ms base rtt: 10ms
	ACKs-compressed: 0, ACKs delayed: 0 delayed ACKs sent: 0
default	21:04:59.505422+0200	Signal	tcp_input [C20.1.1.1:3] flags=[F.] seq=3267886283, ack=2197429871, win=265 state=CLOSE_WAIT rcv_nxt=3267886284, snd_una=2197429871
default	21:04:59.506432+0200	Signal	Connection 20: read-side closed
default	21:04:59.506745+0200	Signal	Connection 20: read-side closed
default	21:04:59.506859+0200	Signal	Connection 20: read-side closed
default	21:04:59.507004+0200	Signal	Connection 20: cleaning up

jiska2342 avatar Oct 07 '24 09:10 jiska2342

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

stale[bot] avatar Jan 05 '25 18:01 stale[bot]

This issue has been closed due to inactivity.

stale[bot] avatar Mar 10 '25 08:03 stale[bot]