You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@guacamole.apache.org by "Mike Jumper (Jira)" <ji...@apache.org> on 2020/10/29 08:35:00 UTC

[jira] [Commented] (GUACAMOLE-1181) Memory allocated for outbound SVC PDUs may not be freed

    [ https://issues.apache.org/jira/browse/GUACAMOLE-1181?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17222778#comment-17222778 ] 

Mike Jumper commented on GUACAMOLE-1181:
----------------------------------------

Checking against {{2.0.0-rc0}}, the automatic {{Stream_Free()}} doesn't seem to be present. Checking {{2.0.0-rc4}}, it's present via {{channel_queue_message_free()}} which is automatically invoked via the {{message.Free}} handler for messages popped off the message queue within {{freerdp_channels_process_sync()}}. Checking {{2.2.0}}, the same path to {{channel_queue_message_free()}} exists, but the function no longer performs any automatic free.

Adding our own manual free is simple enough, but finding exactly which versions of FreeRDP need it is tricky.

> Memory allocated for outbound SVC PDUs may not be freed
> -------------------------------------------------------
>
>                 Key: GUACAMOLE-1181
>                 URL: https://issues.apache.org/jira/browse/GUACAMOLE-1181
>             Project: Guacamole
>          Issue Type: Bug
>          Components: RDP
>    Affects Versions: 1.1.0, 1.2.0
>            Reporter: Mike Jumper
>            Assignee: Mike Jumper
>            Priority: Minor
>             Fix For: 1.3.0
>
>
> As reported on the mailing list, depending on the version of FreeRDP installed, the {{wStream}} allocated for transmission along a static virtual channel may not be freed:
> https://lists.apache.org/thread.html/r39f830253413b2143438d09533c59e193e78729ef036bf1a1356f33b%40%3Cuser.guacamole.apache.org%3E
> Possible solutions include:
> * Explicitly freeing the {{wStream}} (if the version of FreeRDP present at build time will not do so)
> * Leveraging the {{wStream}} pool that _will_ be automatically freed (if the version of FreeRDP present at build time supports this)
> Unfortunately, even after this is addressed, it may always be the case that a build of guacamole-server against FreeRDP 2.0.0 will suddenly start leaking memory if FreeRDP is updated and guacamole-server is not rebuilt, as the difference in behavior will only be detectable at build time.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)