libxrdp: enforce server security layer when rdpNegData is not exists
This commit is contained in:
parent
4ded149eb5
commit
5fcf6beffa
@ -305,12 +305,10 @@ xrdp_iso_incoming(struct xrdp_iso *self)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int serverSecurityLayer = self->mcs_layer->sec_layer->rdp_layer->client_info.security_layer;
|
||||||
/* security layer negotiation */
|
/* security layer negotiation */
|
||||||
if (self->rdpNegData)
|
if (self->rdpNegData)
|
||||||
{
|
{
|
||||||
int
|
|
||||||
serverSecurityLayer =
|
|
||||||
self->mcs_layer->sec_layer->rdp_layer->client_info.security_layer;
|
|
||||||
self->selectedProtocol = PROTOCOL_RDP; /* set default security layer */
|
self->selectedProtocol = PROTOCOL_RDP; /* set default security layer */
|
||||||
|
|
||||||
switch (serverSecurityLayer)
|
switch (serverSecurityLayer)
|
||||||
@ -371,6 +369,11 @@ xrdp_iso_incoming(struct xrdp_iso *self)
|
|||||||
self->failureCode = INCONSISTENT_FLAGS; //TODO: ?
|
self->failureCode = INCONSISTENT_FLAGS; //TODO: ?
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else if (self->requestedProtocol != serverSecurityLayer)
|
||||||
|
{
|
||||||
|
/* enforce server security */
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
/* set things for tls connection */
|
/* set things for tls connection */
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user