xpra icon
Bug tracker and wiki

Opened 4 weeks ago

Closed 2 weeks ago

Last modified 3 days ago

#2310 closed defect (fixed)

Invalid huge packet received by client when trying to connect

Reported by: tc424 Owned by: tc424
Priority: major Milestone: 3.0
Component: android Version: 2.5.x
Keywords: Cc:

Description

"Received invalid packet: packet size requested is 4609517 but maximum allowed is 4194304"

Server is 2.5.1 (r22431), Xubuntu 16.04.6
Clients are 3.0 HEAD (20190524, r22778), Xubuntu 18.04.2.

Problem manifests from one machine when connected over wifi using python2, but not python3. Similarly, connecting over ethernet seems to be fine.

For some reason, "xpra stop :0" locally on the server also seems to trigger it.

Ordinary client connects didn't see to show much of use in the way of logging, but the xpra stop command showed a huge blob of icon data in the hello packet.

Attachments (1)

xpra-cantstop.log.xz (3.5 MB) - added by tc424 4 weeks ago.

Change History (10)

Changed 4 weeks ago by tc424

Attachment: xpra-cantstop.log.xz added

comment:1 Changed 4 weeks ago by Antoine Martin

Status: newassigned

This is going to be a multi-part thing:

  • r22803 warns us when we find icons that are too large (over 16KB by default)
  • r22804 we now send the xdg-menu data using a dedicated packet rather than the 'hello' packet if the client supports this new capability

Still TODO:

  • now we can also send a new menu when the list of applications is updated
  • maybe downsize icons that are too big? (problem is that they're svg... and we don't have python-pillow support for that)
Last edited 4 weeks ago by Antoine Martin (previous) (diff)

comment:2 Changed 4 weeks ago by Antoine Martin

r22806 watches for changes to the applications menu list and sends the updated definitions to the clients that support the new xdg-menu-update capability.

Tested by moving the xterm definition away and back again:

sudo mv /usr/share/applications/xterm.desktop $HOME/;
sleep 20;
sudo mv $HOME/xterm.desktop  /usr/share/applications/;

(note: there is a slight delay between the time we get notified of changes and the time we actually send the updated menus - that's to prevent the update storms that are common when applying system updates)

Still TODO:

  • deal with the big icons somehow
  • find a way to backport a fix (these changes are too big)

comment:3 Changed 4 weeks ago by tc424

Is it worth making separate settings for enabling "start new commands (with a command line)" and the new menu? I use the former a lot but doubt I will ever use the latter...

comment:4 Changed 4 weeks ago by Antoine Martin

Owner: changed from Antoine Martin to tc424
Status: assignednew

Is it worth making separate settings for enabling "start new commands (with a command line)" and the new menu? I use the former a lot but doubt I will ever use the latter...

I don't have time for this, sorry.

I think we can close this ticket:

  • r22808 fixes "xpra stop": we don't send the xdg-menu data for subcommands like xpra stop since we don't need it, so it doesn't trigger the packet size check
  • r22809 removes the icondata if the xdg menu data data would have taken more than half the hello packet budget (will backport)

@tc424: please let me know if this fix works for you (packages will be pushed soon)

comment:5 Changed 3 weeks ago by Antoine Martin

Same "xdg-data" update code added to the html5 client in r22848..

comment:6 Changed 3 weeks ago by Antoine Martin

Caused a bug: #2314, added python3-inotify to recommends in specfile: r22850.

comment:7 Changed 2 weeks ago by Antoine Martin

Resolution: fixed
Status: newclosed

Feel free to re-open if you still have problems.
The 2.5.2 stable update includes a workaround for this bug.

comment:8 Changed 8 days ago by Antoine Martin

See also #2335

comment:9 Changed 3 days ago by tc424

The fixes seem to solve my problem, thank you! Though #2340 is probably a knock-on..

Note: See TracTickets for help on using tickets.