Hello! This problem has been solved by setting a callback dedicated to loading the channels during the context initialisation. Indeed the main change from 2.11 to 3.8 is that a client common context has been created to provide channels callbacks and to avoid having to handle these manually.
In our case as we implemented our own callbacks for the context initialisation, we had to declare an extra "client->LoadChannels" callback. An example on how to declare the LoadChannels callback and how it is implemented is availble in the freerdp_client_common_new(freerdp* instance, rdpContext* context) method of the client/common/client.c file. Wish it had been documented in the freerdp migration guide. Fabrice FRANCOIS R&D Engineer [Access Manager] ffranc...@wallix.com 250 bis rue du Faubourg Saint-Honoré • 75008 Paris ________________________________ De : Fabrice FRANCOIS via FreeRDP-devel <freerdp-devel@lists.sourceforge.net> Envoyé : mardi 8 octobre 2024 16:51 À : freerdp-devel@lists.sourceforge.net <freerdp-devel@lists.sourceforge.net> Objet : [FreeRDP-devel] Clipboard issues in migration from 2.11 to 3.8 ⚠ EXTERNAL EMAIL: This mail comes from outside the company.. When in doubt, contact the IT Helpdesk<https://fra01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fhelpdesk.wallix.com%2F&data=05%7C02%7Cffrancois%40wallix.com%7Cef2f1bd4d54b4e32478c08dce7b6104b%7Cf6bb2bd8b6f14c268e2b61c79722df19%7C1%7C0%7C638640016353176517%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C0%7C%7C%7C&sdata=LARW6nTWxGAXK8ATfMQr%2F4a3jpEO5vX06nHGTyIDPDc%3D&reserved=0<https://helpdesk.wallix.com/>>. Hi, I have been working for several days on migrating our rdpclient implementation from a freerdp 2.11.7 to 3.8.0 code basis. Our current implementation was working fine but upgrading have become a necessity. As part of the migration process I've managed to compile freerdp for the use of our client implementation. I have now come to a point where I struggle triggering the callbacks that are supposed to be called when the clipboard channel is connected. Our rdpclient implementation is simply a reuse of the samples available in the source code in previous versions and I managed to make it work without too many changes. I have been looking to all the recent samples but I cannot find out why freerdp 3.8.0 prevents me to use the clipboard channel as it was working with 2.11.7. So far, we've been using the PubSub_SubscribeChannelConnected() method in our preConnect() callback as it is used in many samples, but the call to utils_reload_channels(instance->context) in core/freerdp.c:freerdp_connect_begin() seems to destroy the channels pointer and prevents the freerdp_channels_post_connect() method to enter the loop that triggers the OnChannelConnected event. Do I need to make a specific call somewhere outside my PreConnect() callback or do I need to open a ticket ? Fabrice FRANCOIS Fabrice FRANCOIS R&D Engineer [Access Manager] ffranc...@wallix.com 250 bis rue du Faubourg Saint-Honoré • 75008 Paris [twitter]<https://fra01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fsignature.wallix.com%2Fl%2FVDhvdkxwV0dJNmt4S1d0VDlrbjJ3dz09-VjFWNTBIYlNCUDdIbXlxKzJyRzFPUT09&data=05%7C02%7Cffrancois%40wallix.com%7Cef2f1bd4d54b4e32478c08dce7b6104b%7Cf6bb2bd8b6f14c268e2b61c79722df19%7C1%7C0%7C638640016353193790%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C0%7C%7C%7C&sdata=aItb8ufQ4wiA%2BS4EVjdohIxoP5msGymly%2F1eSAc58t0%3D&reserved=0> [youtube] <https://fra01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fsignature.wallix.com%2Fl%2FVDhvdkxwV0dJNmt4S1d0VDlrbjJ3dz09-VHU5ZDFDM3h6QXJ6Qm9jSUVjb2Ftdz09&data=05%7C02%7Cffrancois%40wallix.com%7Cef2f1bd4d54b4e32478c08dce7b6104b%7Cf6bb2bd8b6f14c268e2b61c79722df19%7C1%7C0%7C638640016353208305%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C0%7C%7C%7C&sdata=cIRW9BfCx6ycpdN4S09sw8Vx24ZrtJplMIDOmMm1yK0%3D&reserved=0<https://signature.wallix.com/l/VDhvdkxwV0dJNmt4S1d0VDlrbjJ3dz09-VHU5ZDFDM3h6QXJ6Qm9jSUVjb2Ftdz09>> [linkedin] <https://fra01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fsignature.wallix.com%2Fl%2FVDhvdkxwV0dJNmt4S1d0VDlrbjJ3dz09-eFZMaExNZWZGQjMvaVVJaDArTTl6Zz09&data=05%7C02%7Cffrancois%40wallix.com%7Cef2f1bd4d54b4e32478c08dce7b6104b%7Cf6bb2bd8b6f14c268e2b61c79722df19%7C1%7C0%7C638640016353219414%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C0%7C%7C%7C&sdata=rCiKDmrG0a7xb7I1cYMt0jo0Pe7%2BMlYK1%2FbZawOKwdA%3D&reserved=0<https://signature.wallix.com/l/VDhvdkxwV0dJNmt4S1d0VDlrbjJ3dz09-eFZMaExNZWZGQjMvaVVJaDArTTl6Zz09>> [web] <https://fra01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fsignature.wallix.com%2Fl%2FVDhvdkxwV0dJNmt4S1d0VDlrbjJ3dz09-VzNGNG5oU1pWYjZRMTVQMUxBZ2xJZz09&data=05%7C02%7Cffrancois%40wallix.com%7Cef2f1bd4d54b4e32478c08dce7b6104b%7Cf6bb2bd8b6f14c268e2b61c79722df19%7C1%7C0%7C638640016353230271%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C0%7C%7C%7C&sdata=Y%2Fe324pObeXWidqKeRoSHmuPXr5PfheHjrjJyywYLss%3D&reserved=0<https://signature.wallix.com/l/VDhvdkxwV0dJNmt4S1d0VDlrbjJ3dz09-VzNGNG5oU1pWYjZRMTVQMUxBZ2xJZz09>> _______________________________________________ FreeRDP-devel mailing list FreeRDP-devel@lists.sourceforge.net https://fra01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.sourceforge.net%2Flists%2Flistinfo%2Ffreerdp-devel&data=05%7C02%7Cffrancois%40wallix.com%7Cef2f1bd4d54b4e32478c08dce7b6104b%7Cf6bb2bd8b6f14c268e2b61c79722df19%7C1%7C0%7C638640016353240666%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C0%7C%7C%7C&sdata=nCXQBf88EFriuSHV%2BbjMuQhpjRCZSu0ZsZD9BlXF0cA%3D&reserved=0<https://lists.sourceforge.net/lists/listinfo/freerdp-devel> _______________________________________________ FreeRDP-devel mailing list FreeRDP-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freerdp-devel