Accepting request 834273 from home:zhangxiaofei:branches:X11:RemoteDesktop
- Update to version 0.9.14 + New features - Multi monitor and resize support for Xvnc backend #1343 For more details see https://github.com/neutrinolabs/xrdp/wiki/Xvnc-backend-:-Multi-monitor-and-resize-support - Support Programmer Dvorak Keyboard #1663 + Bug fixes - Fix odd shift key behavior (workaround) #397 #1522 - Fix internal username/password buffer is smaller than RDP protocol specification #1648 #1653 - Fix possible memory out-of-bounds accesses #1549 - Fix memory allocation overflow #1557 - Prevent chansrv input channels being scanned during a server reset #1595 - Ignore TS_MULTIFRAGMENTUPDATE_CAPABILITYSET from client if fp disabled #1593 + Known issues - FreeRDP 2.0.0-rc4 or later might not able to connect to xrdp due to xrdp's bad-mannered behaviour, add +glyph-cache option to FreeRDP to connect #1266 - Audio redirection by MP3 codec doesn't sound with some client, use AAC instead #965 - Drop xrdp-fate319683-allow-vnc-resizing.patch: fixed upstream - Rebase xrdp-default-config.patch - Rebase xrdp-disable-8-bpp-vnc-support.patch - Rebase xrdp-fate318398-change-expired-password.patch OBS-URL: https://build.opensuse.org/request/show/834273 OBS-URL: https://build.opensuse.org/package/show/X11:RemoteDesktop/xrdp?expand=0&rev=87
This commit is contained in:
parent
a6ccd50395
commit
55547a941a
13
buildfix.patch
Normal file
13
buildfix.patch
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
Index: b/genkeymap/genkeymap.c
|
||||||
|
===================================================================
|
||||||
|
--- a/genkeymap/genkeymap.c 2020-08-26 10:32:21.000000000 +0800
|
||||||
|
+++ b/genkeymap/genkeymap.c 2020-09-14 13:38:46.498825240 +0800
|
||||||
|
@@ -44,7 +44,7 @@
|
||||||
|
#include <X11/XKBlib.h>
|
||||||
|
#include <locale.h>
|
||||||
|
|
||||||
|
-extern int xfree86_to_evdev[137-8];
|
||||||
|
+extern int xfree86_to_evdev[137-8+1];
|
||||||
|
|
||||||
|
int main(int argc, char **argv)
|
||||||
|
{
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:e90a15404c060c378a91b3b51899415122e801863b8a00e4ea42a106b184108c
|
|
||||||
size 1878031
|
|
@ -1,16 +0,0 @@
|
|||||||
-----BEGIN PGP SIGNATURE-----
|
|
||||||
|
|
||||||
iQIzBAABCAAdFiEEGKuDipBxZ3RZFIcZA5k7QGXnGTsFAl764e4ACgkQA5k7QGXn
|
|
||||||
GTvL6g/+JGmCorupzV7CYN3ThrT8FZtOuYpm3cXQtkpvMMZb7LgzoCn96UWoVnnF
|
|
||||||
ldg3cdCvhDtf08Am619Uo1Qtet2Qk1w9ssdEChaz+dN/kw6BB88KtbehIaxEmsu7
|
|
||||||
G+NSIQxC6T7gOSEwxNL35gv55fJgmBIyptri592awqIM7Y46704mELoDaHeIu0Je
|
|
||||||
B5R9eTuL0Pi02gcWA/8XDnYY6yg1xlh23+Z+yXqKbpX+qltEpuKff+eIDhM1m/N2
|
|
||||||
Nd3/sHii9dvX3vXhdq2iH14sk4d701rJ6s+Qfw3iE7UcJLPwiIAIfepj3MU4bo8G
|
|
||||||
qwbQwrRHOCTRHlRV9DfQ2ZXqadP52w9D7ZQPE9Iqyk8UBJx3Gd1I8drg2iNBIkeK
|
|
||||||
w7sLfJmDdVgyMJjSbQ0CWMkTSzhIpdlRLeDdafusmLwLokpgVWPCeBEc2oW24A7B
|
|
||||||
gNysT3iur1vqYpx5PtgAf7eQ9/NqUKLS/nfVfvvCde0apXLgTUIUjOfR5fCkn6VA
|
|
||||||
OuqbysoYg+U99iQ/Yy4HWDO9msSf5V8ZoaMggxenbD9OQtJVgu8eaUqory+3jmQe
|
|
||||||
MNKUUtdFzy1DYTqkby8hN+ipL0jLA7DQWncx2+w9f0+Vh1t3uBP3z2YnzSORJXFX
|
|
||||||
P0CUtlQp0IJxBHqvuItVcOA5aPpErJNz45/UxVjk9btxGiU6feE=
|
|
||||||
=n35S
|
|
||||||
-----END PGP SIGNATURE-----
|
|
3
xrdp-0.9.14.tar.gz
Normal file
3
xrdp-0.9.14.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:e3a9d27da7881dbfb7fd22b33c11dd7390d42ca8ff94541e88f552b8dce1b5d2
|
||||||
|
size 1885201
|
16
xrdp-0.9.14.tar.gz.asc
Normal file
16
xrdp-0.9.14.tar.gz.asc
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
iQIzBAABCAAdFiEEGKuDipBxZ3RZFIcZA5k7QGXnGTsFAl9Mmh0ACgkQA5k7QGXn
|
||||||
|
GTuY+g/7Bx+1EW2wqMOwN8dgwtxWu87ixET4MDJ8JKT99uS/ERGVAZHDaAIBsaTA
|
||||||
|
4xGlx92zRXR1JNH6IwOIZy/l4YuYfuO6LVZBRab1dfz6YU7pU4OG1vqM98YMz4TR
|
||||||
|
Oca3VzgiIi/XuklJu42+d6S4C7k5IiquWK7JcjW+zd+Yn4e5iUnecDdswbuPeA+W
|
||||||
|
8/Gdfbytunh2PTKPy3egDluYBSYT+68Vla6YEo8GRdT4W7SAMwZqY6Sv1+iItTcU
|
||||||
|
dPGqrTVUyC5PXXJ8rOklZZtbQ3hTYg8ajrJhXawGJWuef12msjaZgODYM9HqYGlz
|
||||||
|
cXibCQEWhQj/hwyLDXHBmCFNmzWD0f5IEwXPJGNfpp3XrXjO43vC+pONZsxJQm/C
|
||||||
|
DLbA0wticzO22oRPaUAf1hmIWRAdj5htxpJO/oOncKAOlBPq7r3IIvwXpgpKLwe8
|
||||||
|
Hm1uTYom6oeVh6D/Vkb7LIacdzXoEisG03NkHgnIgBlAZOfv4aV+mTUC/H7RKQfJ
|
||||||
|
11OUaMa2xLhwNQLXqKFkOTAwL2KurPQtjNEXY3ETRJc5BOV+i4HsS3QKppjJ6LaW
|
||||||
|
i52+kQIxA3Rsn6TP1cfac3JYTUFHMc8I5bOdxi7zFDDhXCvhy9bFL4nuiva5Wxk9
|
||||||
|
a+8CTpzf9lejBdWZzB5X4Jfv2nEXX5uwGcbC05FV93Njn7oSfqw=
|
||||||
|
=519h
|
||||||
|
-----END PGP SIGNATURE-----
|
@ -1,8 +1,8 @@
|
|||||||
Index: b/sesman/sesman.ini
|
Index: b/sesman/sesman.ini
|
||||||
===================================================================
|
===================================================================
|
||||||
--- a/sesman/sesman.ini 2018-12-27 17:50:27.173173569 +0800
|
--- a/sesman/sesman.ini 2020-09-14 13:14:33.645606549 +0800
|
||||||
+++ b/sesman/sesman.ini 2018-12-27 17:51:31.737663351 +0800
|
+++ b/sesman/sesman.ini 2020-09-14 13:14:43.105484131 +0800
|
||||||
@@ -24,7 +24,7 @@ AlwaysGroupCheck=false
|
@@ -27,7 +27,7 @@ RestrictOutboundClipboard=false
|
||||||
;; X11DisplayOffset - x11 display number offset
|
;; X11DisplayOffset - x11 display number offset
|
||||||
; Type: integer
|
; Type: integer
|
||||||
; Default: 10
|
; Default: 10
|
||||||
@ -11,7 +11,7 @@ Index: b/sesman/sesman.ini
|
|||||||
|
|
||||||
;; MaxSessions - maximum number of connections to an xrdp server
|
;; MaxSessions - maximum number of connections to an xrdp server
|
||||||
; Type: integer
|
; Type: integer
|
||||||
@@ -62,9 +62,9 @@ Policy=Default
|
@@ -65,9 +65,9 @@ Policy=Default
|
||||||
|
|
||||||
[Logging]
|
[Logging]
|
||||||
LogFile=xrdp-sesman.log
|
LogFile=xrdp-sesman.log
|
||||||
@ -26,9 +26,9 @@ Index: b/sesman/sesman.ini
|
|||||||
; Session definitions - startup command-line parameters for each session type
|
; Session definitions - startup command-line parameters for each session type
|
||||||
Index: b/xrdp/xrdp.ini
|
Index: b/xrdp/xrdp.ini
|
||||||
===================================================================
|
===================================================================
|
||||||
--- a/xrdp/xrdp.ini 2018-12-27 17:50:27.173173569 +0800
|
--- a/xrdp/xrdp.ini 2020-09-14 13:14:33.645606549 +0800
|
||||||
+++ b/xrdp/xrdp.ini 2018-12-27 17:57:38.260447082 +0800
|
+++ b/xrdp/xrdp.ini 2020-09-14 13:14:43.105484131 +0800
|
||||||
@@ -76,7 +76,7 @@ grey=dedede
|
@@ -101,7 +101,7 @@ grey=dedede
|
||||||
#ls_title=My Login Title
|
#ls_title=My Login Title
|
||||||
|
|
||||||
; top level window background color in RGB format
|
; top level window background color in RGB format
|
||||||
@ -37,7 +37,7 @@ Index: b/xrdp/xrdp.ini
|
|||||||
|
|
||||||
; width and height of login screen
|
; width and height of login screen
|
||||||
ls_width=350
|
ls_width=350
|
||||||
@@ -119,9 +119,9 @@ ls_btn_cancel_height=30
|
@@ -144,9 +144,9 @@ ls_btn_cancel_height=30
|
||||||
|
|
||||||
[Logging]
|
[Logging]
|
||||||
LogFile=xrdp.log
|
LogFile=xrdp.log
|
||||||
@ -50,37 +50,3 @@ Index: b/xrdp/xrdp.ini
|
|||||||
; LogLevel and SysLogLevel could by any of: core, error, warning, info or debug
|
; LogLevel and SysLogLevel could by any of: core, error, warning, info or debug
|
||||||
|
|
||||||
[Channels]
|
[Channels]
|
||||||
@@ -153,24 +153,24 @@ tcutils=true
|
|
||||||
; Some session types such as Xorg, X11rdp and Xvnc start a display server.
|
|
||||||
; Startup command-line parameters for the display server are configured
|
|
||||||
; in sesman.ini. See and configure also sesman.ini.
|
|
||||||
-[Xorg]
|
|
||||||
-name=Xorg
|
|
||||||
-lib=libxup.so
|
|
||||||
+[Xvnc]
|
|
||||||
+name=Xvnc
|
|
||||||
+lib=libvnc.so
|
|
||||||
username=ask
|
|
||||||
password=ask
|
|
||||||
ip=127.0.0.1
|
|
||||||
port=-1
|
|
||||||
-code=20
|
|
||||||
+#xserverbpp=24
|
|
||||||
+delay_ms=2000
|
|
||||||
|
|
||||||
-[Xvnc]
|
|
||||||
-name=Xvnc
|
|
||||||
-lib=libvnc.so
|
|
||||||
+[Xorg]
|
|
||||||
+name=Xorg
|
|
||||||
+lib=libxup.so
|
|
||||||
username=ask
|
|
||||||
password=ask
|
|
||||||
ip=127.0.0.1
|
|
||||||
port=-1
|
|
||||||
-#xserverbpp=24
|
|
||||||
-#delay_ms=2000
|
|
||||||
+code=20
|
|
||||||
|
|
||||||
[vnc-any]
|
|
||||||
name=vnc-any
|
|
||||||
|
@ -10,15 +10,17 @@ Xvnc drops support for 8 bpp since 1.4.0. Trying to launch Xvnc in
|
|||||||
vnc/vnc.c | 8 ++++++--
|
vnc/vnc.c | 8 ++++++--
|
||||||
1 file changed, 6 insertions(+), 2 deletions(-)
|
1 file changed, 6 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
diff --git a/vnc/vnc.c b/vnc/vnc.c
|
Index: b/vnc/vnc.c
|
||||||
index b0eb29b3..db593da0 100644
|
===================================================================
|
||||||
--- a/vnc/vnc.c
|
--- a/vnc/vnc.c 2020-09-14 13:20:01.611135290 +0800
|
||||||
+++ b/vnc/vnc.c
|
+++ b/vnc/vnc.c 2020-09-14 13:24:50.515034607 +0800
|
||||||
@@ -1011,15 +1011,19 @@ lib_mod_connect(struct vnc *v)
|
@@ -1914,13 +1914,16 @@ lib_mod_connect(struct vnc *v)
|
||||||
/* check if bpp is supported for rdp connection */
|
|
||||||
switch (v->server_bpp)
|
switch (v->server_bpp)
|
||||||
{
|
{
|
||||||
- case 8:
|
case 8:
|
||||||
|
+ v->server_msg(v, "VNC error - 8 bpp support is dropped "
|
||||||
|
+ "since Xvnc 1.4.0", 0);
|
||||||
|
+ return 1;
|
||||||
case 15:
|
case 15:
|
||||||
case 16:
|
case 16:
|
||||||
case 24:
|
case 24:
|
||||||
@ -28,11 +30,5 @@ index b0eb29b3..db593da0 100644
|
|||||||
- v->server_msg(v, "VNC error - only supporting 8, 15, 16, 24 and 32 "
|
- v->server_msg(v, "VNC error - only supporting 8, 15, 16, 24 and 32 "
|
||||||
+ v->server_msg(v, "VNC error - only supporting 15, 16, 24 and 32 "
|
+ v->server_msg(v, "VNC error - only supporting 15, 16, 24 and 32 "
|
||||||
"bpp rdp connections", 0);
|
"bpp rdp connections", 0);
|
||||||
+ if (v->server_bpp == 8)
|
|
||||||
+ {
|
|
||||||
+ v->server_msg(v, "VNC error - 8 bpp support is dropped "
|
|
||||||
+ "since Xvnc 1.4.0", 0);
|
|
||||||
+ }
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
Index: xrdp-0.9.13.1/sesman/auth.h
|
Index: xrdp-0.9.14/sesman/auth.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- xrdp-0.9.13.1.orig/sesman/auth.h
|
--- xrdp-0.9.14.orig/sesman/auth.h
|
||||||
+++ xrdp-0.9.13.1/sesman/auth.h
|
+++ xrdp-0.9.14/sesman/auth.h
|
||||||
@@ -106,4 +106,6 @@ auth_check_pwd_chg(const char *user);
|
@@ -106,4 +106,6 @@ auth_check_pwd_chg(const char *user);
|
||||||
int
|
int
|
||||||
auth_change_pwd(const char *user, const char *newpwd);
|
auth_change_pwd(const char *user, const char *newpwd);
|
||||||
@ -9,10 +9,10 @@ Index: xrdp-0.9.13.1/sesman/auth.h
|
|||||||
+int
|
+int
|
||||||
+auth_change_pwd_pam(char* user, char* pass, char* newpwd);
|
+auth_change_pwd_pam(char* user, char* pass, char* newpwd);
|
||||||
#endif
|
#endif
|
||||||
Index: xrdp-0.9.13.1/sesman/libscp/libscp_session.c
|
Index: xrdp-0.9.14/sesman/libscp/libscp_session.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- xrdp-0.9.13.1.orig/sesman/libscp/libscp_session.c
|
--- xrdp-0.9.14.orig/sesman/libscp/libscp_session.c
|
||||||
+++ xrdp-0.9.13.1/sesman/libscp/libscp_session.c
|
+++ xrdp-0.9.14/sesman/libscp/libscp_session.c
|
||||||
@@ -75,6 +75,10 @@ scp_session_set_type(struct SCP_SESSION
|
@@ -75,6 +75,10 @@ scp_session_set_type(struct SCP_SESSION
|
||||||
s->type = SCP_GW_AUTHENTICATION;
|
s->type = SCP_GW_AUTHENTICATION;
|
||||||
break;
|
break;
|
||||||
@ -57,10 +57,10 @@ Index: xrdp-0.9.13.1/sesman/libscp/libscp_session.c
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
Index: xrdp-0.9.13.1/sesman/libscp/libscp_types.h
|
Index: xrdp-0.9.14/sesman/libscp/libscp_types.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- xrdp-0.9.13.1.orig/sesman/libscp/libscp_types.h
|
--- xrdp-0.9.14.orig/sesman/libscp/libscp_types.h
|
||||||
+++ xrdp-0.9.13.1/sesman/libscp/libscp_types.h
|
+++ xrdp-0.9.14/sesman/libscp/libscp_types.h
|
||||||
@@ -47,6 +47,7 @@
|
@@ -47,6 +47,7 @@
|
||||||
* XRDP sends this command to let sesman verify if the user is allowed
|
* XRDP sends this command to let sesman verify if the user is allowed
|
||||||
* to use the gateway */
|
* to use the gateway */
|
||||||
@ -77,10 +77,10 @@ Index: xrdp-0.9.13.1/sesman/libscp/libscp_types.h
|
|||||||
char* hostname;
|
char* hostname;
|
||||||
tui8 addr_type;
|
tui8 addr_type;
|
||||||
tui32 ipv4addr;
|
tui32 ipv4addr;
|
||||||
Index: xrdp-0.9.13.1/sesman/libscp/libscp_v0.c
|
Index: xrdp-0.9.14/sesman/libscp/libscp_v0.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- xrdp-0.9.13.1.orig/sesman/libscp/libscp_v0.c
|
--- xrdp-0.9.14.orig/sesman/libscp/libscp_v0.c
|
||||||
+++ xrdp-0.9.13.1/sesman/libscp/libscp_v0.c
|
+++ xrdp-0.9.14/sesman/libscp/libscp_v0.c
|
||||||
@@ -383,9 +383,9 @@ scp_v0s_init_session(struct SCP_CONNECTI
|
@@ -383,9 +383,9 @@ scp_v0s_init_session(struct SCP_CONNECTI
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -133,10 +133,10 @@ Index: xrdp-0.9.13.1/sesman/libscp/libscp_v0.c
|
|||||||
out_uint16_be(c->out_s, value); /* reply code */
|
out_uint16_be(c->out_s, value); /* reply code */
|
||||||
out_uint16_be(c->out_s, 0); /* dummy data */
|
out_uint16_be(c->out_s, 0); /* dummy data */
|
||||||
s_mark_end(c->out_s);
|
s_mark_end(c->out_s);
|
||||||
Index: xrdp-0.9.13.1/sesman/libscp/libscp_v0.h
|
Index: xrdp-0.9.14/sesman/libscp/libscp_v0.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- xrdp-0.9.13.1.orig/sesman/libscp/libscp_v0.h
|
--- xrdp-0.9.14.orig/sesman/libscp/libscp_v0.h
|
||||||
+++ xrdp-0.9.13.1/sesman/libscp/libscp_v0.h
|
+++ xrdp-0.9.14/sesman/libscp/libscp_v0.h
|
||||||
@@ -79,6 +79,6 @@ scp_v0s_deny_connection(struct SCP_CONNE
|
@@ -79,6 +79,6 @@ scp_v0s_deny_connection(struct SCP_CONNE
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@ -145,10 +145,10 @@ Index: xrdp-0.9.13.1/sesman/libscp/libscp_v0.h
|
|||||||
+scp_v0s_replyauthentication(struct SCP_CONNECTION* c, unsigned short int value, tui8 type);
|
+scp_v0s_replyauthentication(struct SCP_CONNECTION* c, unsigned short int value, tui8 type);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
Index: xrdp-0.9.13.1/sesman/scp_v0.c
|
Index: xrdp-0.9.14/sesman/scp_v0.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- xrdp-0.9.13.1.orig/sesman/scp_v0.c
|
--- xrdp-0.9.14.orig/sesman/scp_v0.c
|
||||||
+++ xrdp-0.9.13.1/sesman/scp_v0.c
|
+++ xrdp-0.9.14/sesman/scp_v0.c
|
||||||
@@ -42,6 +42,13 @@ scp_v0_process(struct SCP_CONNECTION *c,
|
@@ -42,6 +42,13 @@ scp_v0_process(struct SCP_CONNECTION *c,
|
||||||
int errorcode = 0;
|
int errorcode = 0;
|
||||||
bool_t do_auth_end = 1;
|
bool_t do_auth_end = 1;
|
||||||
@ -189,19 +189,19 @@ Index: xrdp-0.9.13.1/sesman/scp_v0.c
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (data)
|
else if (data)
|
||||||
Index: xrdp-0.9.13.1/sesman/verify_user_pam.c
|
Index: xrdp-0.9.14/sesman/verify_user_pam.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- xrdp-0.9.13.1.orig/sesman/verify_user_pam.c
|
--- xrdp-0.9.14.orig/sesman/verify_user_pam.c
|
||||||
+++ xrdp-0.9.13.1/sesman/verify_user_pam.c
|
+++ xrdp-0.9.14/sesman/verify_user_pam.c
|
||||||
@@ -38,6 +38,7 @@ struct t_user_pass
|
@@ -41,6 +41,7 @@ struct t_user_pass
|
||||||
{
|
{
|
||||||
char user[256];
|
char user[MAX_BUF];
|
||||||
char pass[256];
|
char pass[MAX_BUF];
|
||||||
+ char newpwd[256];
|
+ char newpwd[MAX_BUF];
|
||||||
};
|
};
|
||||||
|
|
||||||
struct t_auth_info
|
struct t_auth_info
|
||||||
@@ -86,6 +87,55 @@ verify_pam_conv(int num_msg, const struc
|
@@ -89,6 +90,55 @@ verify_pam_conv(int num_msg, const struc
|
||||||
}
|
}
|
||||||
|
|
||||||
/******************************************************************************/
|
/******************************************************************************/
|
||||||
@ -257,7 +257,7 @@ Index: xrdp-0.9.13.1/sesman/verify_user_pam.c
|
|||||||
static void
|
static void
|
||||||
get_service_name(char *service_name)
|
get_service_name(char *service_name)
|
||||||
{
|
{
|
||||||
@@ -103,6 +153,52 @@ get_service_name(char *service_name)
|
@@ -106,6 +156,52 @@ get_service_name(char *service_name)
|
||||||
}
|
}
|
||||||
|
|
||||||
/******************************************************************************/
|
/******************************************************************************/
|
||||||
@ -310,10 +310,10 @@ Index: xrdp-0.9.13.1/sesman/verify_user_pam.c
|
|||||||
/* returns long, zero is no go
|
/* returns long, zero is no go
|
||||||
Stores the detailed error code in the errorcode variable*/
|
Stores the detailed error code in the errorcode variable*/
|
||||||
|
|
||||||
Index: xrdp-0.9.13.1/xrdp/xrdp_login_wnd.c
|
Index: xrdp-0.9.14/xrdp/xrdp_login_wnd.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- xrdp-0.9.13.1.orig/xrdp/xrdp_login_wnd.c
|
--- xrdp-0.9.14.orig/xrdp/xrdp_login_wnd.c
|
||||||
+++ xrdp-0.9.13.1/xrdp/xrdp_login_wnd.c
|
+++ xrdp-0.9.14/xrdp/xrdp_login_wnd.c
|
||||||
@@ -187,7 +187,14 @@ xrdp_wm_cancel_clicked(struct xrdp_bitma
|
@@ -187,7 +187,14 @@ xrdp_wm_cancel_clicked(struct xrdp_bitma
|
||||||
{
|
{
|
||||||
if (wnd->wm != 0)
|
if (wnd->wm != 0)
|
||||||
@ -498,10 +498,10 @@ Index: xrdp-0.9.13.1/xrdp/xrdp_login_wnd.c
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Load configuration from xrdp.ini file
|
* Load configuration from xrdp.ini file
|
||||||
Index: xrdp-0.9.13.1/xrdp/xrdp_mm.c
|
Index: xrdp-0.9.14/xrdp/xrdp_mm.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- xrdp-0.9.13.1.orig/xrdp/xrdp_mm.c
|
--- xrdp-0.9.14.orig/xrdp/xrdp_mm.c
|
||||||
+++ xrdp-0.9.13.1/xrdp/xrdp_mm.c
|
+++ xrdp-0.9.14/xrdp/xrdp_mm.c
|
||||||
@@ -1781,7 +1781,7 @@ xrdp_mm_sesman_data_in(struct trans *tra
|
@@ -1781,7 +1781,7 @@ xrdp_mm_sesman_data_in(struct trans *tra
|
||||||
/*********************************************************************/
|
/*********************************************************************/
|
||||||
/* return 0 on success */
|
/* return 0 on success */
|
||||||
@ -578,7 +578,7 @@ Index: xrdp-0.9.13.1/xrdp/xrdp_mm.c
|
|||||||
g_strncpy(pam_auth_username, value, 255);
|
g_strncpy(pam_auth_username, value, 255);
|
||||||
}
|
}
|
||||||
else if (g_strcasecmp(name, "pamsessionmng") == 0)
|
else if (g_strcasecmp(name, "pamsessionmng") == 0)
|
||||||
@@ -2240,45 +2253,56 @@ xrdp_mm_connect(struct xrdp_mm *self)
|
@@ -2240,45 +2253,55 @@ xrdp_mm_connect(struct xrdp_mm *self)
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef USE_NOPAM
|
#ifndef USE_NOPAM
|
||||||
@ -590,7 +590,6 @@ Index: xrdp-0.9.13.1/xrdp/xrdp_mm.c
|
|||||||
- xrdp_wm_log_msg(self->wm, LOG_LEVEL_DEBUG,
|
- xrdp_wm_log_msg(self->wm, LOG_LEVEL_DEBUG,
|
||||||
- "Please wait, we now perform access control...");
|
- "Please wait, we now perform access control...");
|
||||||
+ int reply;
|
+ int reply;
|
||||||
+ char replytxt[128];
|
|
||||||
+ char pam_error[128];
|
+ char pam_error[128];
|
||||||
+ const char *additionalError;
|
+ const char *additionalError;
|
||||||
+ xrdp_wm_log_msg(self->wm, LOG_LEVEL_INFO, "Please wait, we now perform access control...");
|
+ xrdp_wm_log_msg(self->wm, LOG_LEVEL_INFO, "Please wait, we now perform access control...");
|
||||||
@ -666,7 +665,7 @@ Index: xrdp-0.9.13.1/xrdp/xrdp_mm.c
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -2374,6 +2398,59 @@ xrdp_mm_connect(struct xrdp_mm *self)
|
@@ -2374,6 +2397,59 @@ xrdp_mm_connect(struct xrdp_mm *self)
|
||||||
return rv;
|
return rv;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -679,7 +678,6 @@ Index: xrdp-0.9.13.1/xrdp/xrdp_mm.c
|
|||||||
+ int index;
|
+ int index;
|
||||||
+ int count;
|
+ int count;
|
||||||
+ int old_idx;
|
+ int old_idx;
|
||||||
+ int new_idx;
|
|
||||||
+ char *username;
|
+ char *username;
|
||||||
+ char *password;
|
+ char *password;
|
||||||
+ char *newpass;
|
+ char *newpass;
|
||||||
@ -687,8 +685,10 @@ Index: xrdp-0.9.13.1/xrdp/xrdp_mm.c
|
|||||||
+ char *name;
|
+ char *name;
|
||||||
+ char *value;
|
+ char *value;
|
||||||
+
|
+
|
||||||
|
+ old_idx = -1;
|
||||||
+ username = 0;
|
+ username = 0;
|
||||||
+ password = 0;
|
+ password = 0;
|
||||||
|
+ newpass = 0;
|
||||||
+ count = self->login_names->count;
|
+ count = self->login_names->count;
|
||||||
+
|
+
|
||||||
+ for (index = 0; index < count; index++)
|
+ for (index = 0; index < count; index++)
|
||||||
@ -708,12 +708,11 @@ Index: xrdp-0.9.13.1/xrdp/xrdp_mm.c
|
|||||||
+ else if (g_strcasecmp(name, "newpass") == 0)
|
+ else if (g_strcasecmp(name, "newpass") == 0)
|
||||||
+ {
|
+ {
|
||||||
+ newpass = value;
|
+ newpass = value;
|
||||||
+ new_idx = index;
|
|
||||||
+ }
|
+ }
|
||||||
+ g_strncpy(sessionIP, "127.0.0.1", 255);
|
+ g_strncpy(sessionIP, "127.0.0.1", 255);
|
||||||
+ }
|
+ }
|
||||||
+ rv = access_control(username, password, newpass, sessionIP, 5);
|
+ rv = access_control(username, password, newpass, sessionIP, 5);
|
||||||
+ if (rv == 0)
|
+ if (rv == 0 && old_idx >= 0 && old_idx < count && password != 0)
|
||||||
+ {
|
+ {
|
||||||
+ list_remove_item (self->login_names, old_idx);
|
+ list_remove_item (self->login_names, old_idx);
|
||||||
+ list_remove_item (self->login_values, old_idx);
|
+ list_remove_item (self->login_values, old_idx);
|
||||||
@ -726,10 +725,10 @@ Index: xrdp-0.9.13.1/xrdp/xrdp_mm.c
|
|||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
int
|
int
|
||||||
xrdp_mm_get_wait_objs(struct xrdp_mm *self,
|
xrdp_mm_get_wait_objs(struct xrdp_mm *self,
|
||||||
Index: xrdp-0.9.13.1/xrdp/xrdp_types.h
|
Index: xrdp-0.9.14/xrdp/xrdp_types.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- xrdp-0.9.13.1.orig/xrdp/xrdp_types.h
|
--- xrdp-0.9.14.orig/xrdp/xrdp_types.h
|
||||||
+++ xrdp-0.9.13.1/xrdp/xrdp_types.h
|
+++ xrdp-0.9.14/xrdp/xrdp_types.h
|
||||||
@@ -329,6 +329,7 @@ struct xrdp_wm
|
@@ -329,6 +329,7 @@ struct xrdp_wm
|
||||||
struct xrdp_cache* cache;
|
struct xrdp_cache* cache;
|
||||||
int palette[256];
|
int palette[256];
|
||||||
@ -738,11 +737,11 @@ Index: xrdp-0.9.13.1/xrdp/xrdp_types.h
|
|||||||
/* generic colors */
|
/* generic colors */
|
||||||
int black;
|
int black;
|
||||||
int grey;
|
int grey;
|
||||||
Index: xrdp-0.9.13.1/xrdp/xrdp_wm.c
|
Index: xrdp-0.9.14/xrdp/xrdp_wm.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- xrdp-0.9.13.1.orig/xrdp/xrdp_wm.c
|
--- xrdp-0.9.14.orig/xrdp/xrdp_wm.c
|
||||||
+++ xrdp-0.9.13.1/xrdp/xrdp_wm.c
|
+++ xrdp-0.9.14/xrdp/xrdp_wm.c
|
||||||
@@ -1990,6 +1990,34 @@ xrdp_wm_login_mode_changed(struct xrdp_w
|
@@ -1996,6 +1996,34 @@ xrdp_wm_login_mode_changed(struct xrdp_w
|
||||||
self->dragging = 0;
|
self->dragging = 0;
|
||||||
xrdp_wm_set_login_mode(self, 11);
|
xrdp_wm_set_login_mode(self, 11);
|
||||||
}
|
}
|
||||||
@ -777,7 +776,7 @@ Index: xrdp-0.9.13.1/xrdp/xrdp_wm.c
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -2034,11 +2062,19 @@ xrdp_wm_log_wnd_notify(struct xrdp_bitma
|
@@ -2040,11 +2068,19 @@ xrdp_wm_log_wnd_notify(struct xrdp_bitma
|
||||||
xrdp_bitmap_invalidate(wm->screen, &rect);
|
xrdp_bitmap_invalidate(wm->screen, &rect);
|
||||||
|
|
||||||
/* if module is gone, reset the session when ok is clicked */
|
/* if module is gone, reset the session when ok is clicked */
|
||||||
@ -798,7 +797,7 @@ Index: xrdp-0.9.13.1/xrdp/xrdp_wm.c
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -2100,6 +2136,9 @@ xrdp_wm_show_log(struct xrdp_wm *self)
|
@@ -2106,6 +2142,9 @@ xrdp_wm_show_log(struct xrdp_wm *self)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -808,3 +807,39 @@ Index: xrdp-0.9.13.1/xrdp/xrdp_wm.c
|
|||||||
if (self->log_wnd == 0)
|
if (self->log_wnd == 0)
|
||||||
{
|
{
|
||||||
w = DEFAULT_WND_LOG_W;
|
w = DEFAULT_WND_LOG_W;
|
||||||
|
Index: xrdp-0.9.14/xrdp/xrdp.h
|
||||||
|
===================================================================
|
||||||
|
--- xrdp-0.9.14.orig/xrdp/xrdp.h
|
||||||
|
+++ xrdp-0.9.14/xrdp/xrdp.h
|
||||||
|
@@ -360,6 +360,8 @@ int
|
||||||
|
xrdp_login_wnd_create(struct xrdp_wm* self);
|
||||||
|
int
|
||||||
|
load_xrdp_config(struct xrdp_config *config, int bpp);
|
||||||
|
+int
|
||||||
|
+xrdp_newpass_wnd_create(struct xrdp_wm *self);
|
||||||
|
|
||||||
|
/* xrdp_bitmap_compress.c */
|
||||||
|
int
|
||||||
|
@@ -394,6 +396,8 @@ xrdp_mm_check_wait_objs(struct xrdp_mm*
|
||||||
|
int
|
||||||
|
xrdp_mm_frame_ack(struct xrdp_mm *self, int frame_id);
|
||||||
|
int
|
||||||
|
+xrdp_mm_change_expired_password(struct xrdp_mm *self);
|
||||||
|
+int
|
||||||
|
server_begin_update(struct xrdp_mod* mod);
|
||||||
|
int
|
||||||
|
server_end_update(struct xrdp_mod* mod);
|
||||||
|
Index: xrdp-0.9.14/sesman/libscp/libscp_session.h
|
||||||
|
===================================================================
|
||||||
|
--- xrdp-0.9.14.orig/sesman/libscp/libscp_session.h
|
||||||
|
+++ xrdp-0.9.14/sesman/libscp/libscp_session.h
|
||||||
|
@@ -94,6 +94,9 @@ scp_session_set_errstr(struct SCP_SESSIO
|
||||||
|
int
|
||||||
|
scp_session_set_guid(struct SCP_SESSION *s, const tui8 *guid);
|
||||||
|
|
||||||
|
+int
|
||||||
|
+scp_session_set_newpass(struct SCP_SESSION *s, char *str);
|
||||||
|
+
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @brief destroys a session object
|
||||||
|
@ -1,129 +0,0 @@
|
|||||||
Index: b/sesman/sesman.ini
|
|
||||||
===================================================================
|
|
||||||
--- a/sesman/sesman.ini 2019-10-12 17:45:30.594432280 +0800
|
|
||||||
+++ b/sesman/sesman.ini 2019-10-12 17:45:37.222491421 +0800
|
|
||||||
@@ -55,7 +55,7 @@ IdleTimeLimit=0
|
|
||||||
|
|
||||||
;; Policy - session allocation policy
|
|
||||||
; Type: enum [ "Default" | "UBD" | "UBI" | "UBC" | "UBDI" | "UBDC" ]
|
|
||||||
-; Default: Xrdp:<User,BitPerPixel> and Xvnc:<User,BitPerPixel,DisplaySize>
|
|
||||||
+; Default: Xrdp and Xvnc:<User,BitPerPixel>
|
|
||||||
; "UBD" session per <User,BitPerPixel,DisplaySize>
|
|
||||||
; "UBI" session per <User,BitPerPixel,IPAddr>
|
|
||||||
; "UBC" session per <User,BitPerPixel,Connection>
|
|
||||||
Index: b/sesman/session.c
|
|
||||||
===================================================================
|
|
||||||
--- a/sesman/session.c 2019-10-12 17:45:30.598432316 +0800
|
|
||||||
+++ b/sesman/session.c 2019-10-12 17:45:37.222491421 +0800
|
|
||||||
@@ -105,9 +105,6 @@ session_get_bydata(const char *name, int
|
|
||||||
{
|
|
||||||
case SCP_SESSION_TYPE_XVNC: /* 0 */
|
|
||||||
type = SESMAN_SESSION_TYPE_XVNC; /* 2 */
|
|
||||||
- /* Xvnc cannot resize */
|
|
||||||
- policy = (enum SESMAN_CFG_SESS_POLICY)
|
|
||||||
- (policy | SESMAN_CFG_SESS_POLICY_D);
|
|
||||||
break;
|
|
||||||
case SCP_SESSION_TYPE_XRDP: /* 1 */
|
|
||||||
type = SESMAN_SESSION_TYPE_XRDP; /* 1 */
|
|
||||||
Index: b/vnc/vnc.c
|
|
||||||
===================================================================
|
|
||||||
--- a/vnc/vnc.c 2019-10-12 17:45:30.598432316 +0800
|
|
||||||
+++ b/vnc/vnc.c 2019-10-12 17:49:39.956657294 +0800
|
|
||||||
@@ -385,7 +385,8 @@ lib_mod_event(struct vnc *v, int msg, lo
|
|
||||||
/* FramebufferUpdateRequest */
|
|
||||||
init_stream(s, 8192);
|
|
||||||
out_uint8(s, 3);
|
|
||||||
- out_uint8(s, 0);
|
|
||||||
+ out_uint8(s, v->incremental);
|
|
||||||
+ v->incremental = 1;
|
|
||||||
x = (param1 >> 16) & 0xffff;
|
|
||||||
out_uint16_be(s, x);
|
|
||||||
y = param1 & 0xffff;
|
|
||||||
@@ -727,7 +728,24 @@ lib_framebuffer_update(struct vnc *v)
|
|
||||||
{
|
|
||||||
v->mod_width = cx;
|
|
||||||
v->mod_height = cy;
|
|
||||||
- error = v->server_reset(v, cx, cy, v->mod_bpp);
|
|
||||||
+ }
|
|
||||||
+ else if (encoding == 0xfffffecc) /* extended desktop resize */
|
|
||||||
+ {
|
|
||||||
+ init_stream(s, 8192);
|
|
||||||
+ error = trans_force_read_s(v->trans, s, 4);
|
|
||||||
+ if (error == 0)
|
|
||||||
+ {
|
|
||||||
+ in_uint8(s, k); /* number of screens */
|
|
||||||
+ in_uint8s(s, 3);
|
|
||||||
+ error = trans_force_read_s(v->trans, s, k * 16);
|
|
||||||
+ if (error == 0)
|
|
||||||
+ {
|
|
||||||
+ in_uint8s(s, k * 16); /* skip screen list */
|
|
||||||
+ /* note new dimensions for later */
|
|
||||||
+ v->server_width = cx;
|
|
||||||
+ v->server_height = cy;
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
@@ -743,6 +761,15 @@ lib_framebuffer_update(struct vnc *v)
|
|
||||||
error = v->server_end_update(v);
|
|
||||||
}
|
|
||||||
|
|
||||||
+ if (v->mod_width != v->server_width || v->mod_height != v->server_height)
|
|
||||||
+ {
|
|
||||||
+ /* perform actual resize outside the update */
|
|
||||||
+ v->mod_width = v->server_width;
|
|
||||||
+ v->mod_height = v->server_height;
|
|
||||||
+ error = v->server_reset(v, v->mod_width, v->mod_height, v->mod_bpp);
|
|
||||||
+ v->incremental = 0;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if (error == 0)
|
|
||||||
{
|
|
||||||
if (v->suppress_output == 0)
|
|
||||||
@@ -750,7 +777,8 @@ lib_framebuffer_update(struct vnc *v)
|
|
||||||
/* FramebufferUpdateRequest */
|
|
||||||
init_stream(s, 8192);
|
|
||||||
out_uint8(s, 3);
|
|
||||||
- out_uint8(s, 1);
|
|
||||||
+ out_uint8(s, v->incremental);
|
|
||||||
+ v->incremental = 1;
|
|
||||||
out_uint16_be(s, 0);
|
|
||||||
out_uint16_be(s, 0);
|
|
||||||
out_uint16_be(s, v->mod_width);
|
|
||||||
@@ -1333,11 +1361,12 @@ lib_mod_connect(struct vnc *v)
|
|
||||||
init_stream(s, 8192);
|
|
||||||
out_uint8(s, 2);
|
|
||||||
out_uint8(s, 0);
|
|
||||||
- out_uint16_be(s, 4);
|
|
||||||
+ out_uint16_be(s, 5);
|
|
||||||
out_uint32_be(s, 0); /* raw */
|
|
||||||
out_uint32_be(s, 1); /* copy rect */
|
|
||||||
out_uint32_be(s, 0xffffff11); /* cursor */
|
|
||||||
out_uint32_be(s, 0xffffff21); /* desktop size */
|
|
||||||
+ out_uint32_be(s, 0xfffffecc); /* extended desktop resize */
|
|
||||||
v->server_msg(v, "VNC sending encodings", 0);
|
|
||||||
s_mark_end(s);
|
|
||||||
error = trans_force_write_s(v->trans, s);
|
|
||||||
@@ -1530,7 +1559,8 @@ lib_mod_suppress_output(struct vnc* v, i
|
|
||||||
make_stream(s);
|
|
||||||
init_stream(s, 8192);
|
|
||||||
out_uint8(s, 3);
|
|
||||||
- out_uint8(s, 0);
|
|
||||||
+ out_uint8(s, v->incremental);
|
|
||||||
+ v->incremental = 1;
|
|
||||||
out_uint16_be(s, 0);
|
|
||||||
out_uint16_be(s, 0);
|
|
||||||
out_uint16_be(s, v->mod_width);
|
|
||||||
Index: b/vnc/vnc.h
|
|
||||||
===================================================================
|
|
||||||
--- a/vnc/vnc.h 2019-10-12 17:45:30.598432316 +0800
|
|
||||||
+++ b/vnc/vnc.h 2019-10-12 17:45:37.222491421 +0800
|
|
||||||
@@ -116,6 +116,7 @@ struct vnc
|
|
||||||
int clip_chanid;
|
|
||||||
struct stream *clip_data_s;
|
|
||||||
int delay_ms;
|
|
||||||
+ int incremental;
|
|
||||||
struct trans *trans;
|
|
||||||
int got_guid;
|
|
||||||
tui8 guid[16];
|
|
30
xrdp.changes
30
xrdp.changes
@ -1,3 +1,33 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Sep 14 04:04:20 UTC 2020 - Felix Zhang <fzhang.foss@gmail.com>
|
||||||
|
|
||||||
|
- Update to version 0.9.14
|
||||||
|
+ New features
|
||||||
|
- Multi monitor and resize support for Xvnc backend #1343
|
||||||
|
For more details see
|
||||||
|
https://github.com/neutrinolabs/xrdp/wiki/Xvnc-backend-:-Multi-monitor-and-resize-support
|
||||||
|
- Support Programmer Dvorak Keyboard #1663
|
||||||
|
+ Bug fixes
|
||||||
|
- Fix odd shift key behavior (workaround) #397 #1522
|
||||||
|
- Fix internal username/password buffer is smaller than RDP
|
||||||
|
protocol specification #1648 #1653
|
||||||
|
- Fix possible memory out-of-bounds accesses #1549
|
||||||
|
- Fix memory allocation overflow #1557
|
||||||
|
- Prevent chansrv input channels being scanned during a server
|
||||||
|
reset #1595
|
||||||
|
- Ignore TS_MULTIFRAGMENTUPDATE_CAPABILITYSET from client if fp
|
||||||
|
disabled #1593
|
||||||
|
+ Known issues
|
||||||
|
- FreeRDP 2.0.0-rc4 or later might not able to connect to xrdp
|
||||||
|
due to xrdp's bad-mannered behaviour, add +glyph-cache option
|
||||||
|
to FreeRDP to connect #1266
|
||||||
|
- Audio redirection by MP3 codec doesn't sound with some
|
||||||
|
client, use AAC instead #965
|
||||||
|
- Drop xrdp-fate319683-allow-vnc-resizing.patch: fixed upstream
|
||||||
|
- Rebase xrdp-default-config.patch
|
||||||
|
- Rebase xrdp-disable-8-bpp-vnc-support.patch
|
||||||
|
- Rebase xrdp-fate318398-change-expired-password.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Fri Jul 10 02:27:32 UTC 2020 - Yifan Jiang <yfjiang@suse.com>
|
Fri Jul 10 02:27:32 UTC 2020 - Yifan Jiang <yfjiang@suse.com>
|
||||||
|
|
||||||
|
@ -22,7 +22,7 @@
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
Name: xrdp
|
Name: xrdp
|
||||||
Version: 0.9.13.1
|
Version: 0.9.14
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Remote desktop protocol (RDP) server
|
Summary: Remote desktop protocol (RDP) server
|
||||||
License: Apache-2.0 AND GPL-2.0-or-later
|
License: Apache-2.0 AND GPL-2.0-or-later
|
||||||
@ -52,8 +52,7 @@ Patch12: xrdp-filter-tab-from-mstsc-on-focus-change.patch
|
|||||||
Patch13: xrdp-bsc965647-allow-admin-choose-desktop.patch
|
Patch13: xrdp-bsc965647-allow-admin-choose-desktop.patch
|
||||||
# PATCH-FEATURE-SLE xrdp-fate318398-change-expired-password.patch fate#318398 - fezhang@suse.com -- enable user to update expired password via PAM
|
# PATCH-FEATURE-SLE xrdp-fate318398-change-expired-password.patch fate#318398 - fezhang@suse.com -- enable user to update expired password via PAM
|
||||||
Patch14: xrdp-fate318398-change-expired-password.patch
|
Patch14: xrdp-fate318398-change-expired-password.patch
|
||||||
# PATCH-FEATURE-SLE xrdp-fate319683-allow-vnc-resizing.patch fate#319683 bsc#948062 - fezhang@suse.com -- allow resizing in VNC sessions.
|
Patch16: buildfix.patch
|
||||||
Patch15: xrdp-fate319683-allow-vnc-resizing.patch
|
|
||||||
BuildRequires: autoconf
|
BuildRequires: autoconf
|
||||||
BuildRequires: automake
|
BuildRequires: automake
|
||||||
BuildRequires: fdupes
|
BuildRequires: fdupes
|
||||||
@ -110,8 +109,8 @@ This package contains libraries for the JPEG2000 codec for RDP.
|
|||||||
%patch12 -p1
|
%patch12 -p1
|
||||||
%patch13 -p1
|
%patch13 -p1
|
||||||
%patch14 -p1
|
%patch14 -p1
|
||||||
%patch15 -p1
|
|
||||||
%endif
|
%endif
|
||||||
|
%patch16 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
sh ./bootstrap
|
sh ./bootstrap
|
||||||
|
Loading…
x
Reference in New Issue
Block a user