feat(client): Add no_audio_playback flag to Config struct

Enable audio playback on the client.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
This commit is contained in:
Marc-André Lureau 2025-04-08 14:19:07 +04:00 committed by Benoît Cortier
parent 5dcc526f51
commit 9f0edcc4c9
7 changed files with 13 additions and 1 deletions

View file

@ -729,7 +729,6 @@ fn create_client_info_pdu(config: &Config, routing_addr: &SocketAddr) -> rdp::Cl
| ClientInfoFlags::DISABLE_CTRL_ALT_DEL
| ClientInfoFlags::LOGON_NOTIFY
| ClientInfoFlags::LOGON_ERRORS
| ClientInfoFlags::NO_AUDIO_PLAYBACK
| ClientInfoFlags::VIDEO_DISABLE
| ClientInfoFlags::ENABLE_WINDOWS_KEY
| ClientInfoFlags::MAXIMIZE_SHELL;
@ -742,6 +741,10 @@ fn create_client_info_pdu(config: &Config, routing_addr: &SocketAddr) -> rdp::Cl
flags |= ClientInfoFlags::PASSWORD_IS_SC_PIN;
}
if config.no_audio_playback {
flags |= ClientInfoFlags::NO_AUDIO_PLAYBACK;
}
let client_info = ClientInfo {
credentials: Credentials {
username: config.credentials.username().unwrap_or("").to_owned(),

View file

@ -177,6 +177,9 @@ pub struct Config {
pub request_data: Option<NegoRequestData>,
/// If true, the INFO_AUTOLOGON flag is set in the [`ClientInfoPdu`](ironrdp_pdu::rdp::ClientInfoPdu)
pub autologon: bool,
/// If true, the INFO_NOAUDIOPLAYBACK flag is set in the [`ClientInfoPdu`](ironrdp_pdu::rdp::ClientInfoPdu)
pub no_audio_playback: bool,
pub license_cache: Option<Arc<dyn LicenseCache>>,
// FIXME(@CBenoit): these are client-only options, not part of the connector.