FreeRDP 2.x support (or 3.x)
I'm planning to add FreeRDP 2.0 support on xrdp. We have NeurtinoRDP in RDP-RDP mode. NeutrinoRDP is a fork of FreeRDP 1.0 for proprietary use and a little bit outdated because it is based on 1.0.
NeutrinoRDP has some security issues like #1083 and also has lots of bugs fixed in FreeRDP. It is better letting users use FreeRDP 2.0 rather than NeutrinoRDP. I'm thinking like this:
- NeutrinoRDP is kept for proprietary use
- Add FreeRDP 2.0 module
- Users can choose which to use at compile time
- --enable-neutrinordp and --enable-freerdp are exclusive
See also: #1075 and https://github.com/neutrinolabs/xrdp/issues/1083#issuecomment-377181335
@metalefty I hope this can work. I tried this at first but the FreeRDP guys(who I was a member of at the time) would not commit to a standard API. They will change it all the time with no way to detect. One of the reasons we started NeutrinoRDP. Maybe that will be better now.
FreeRDP has released version 2.0 and have published a new release policy on their website: ~1 major release every year with >= 2 years of bugfixes. I'm assuming that means predictable API churn.
Wouldn't it make sense if xrdp could rely on the FreeRDP protocol implementation? In short term as an option, in long term as a baseline.