[PATCH] rdp compositor: add a man page

Pekka Paalanen ppaalanen at gmail.com
Fri Dec 15 10:02:48 UTC 2017


On Thu, 14 Dec 2017 13:51:11 +0100
David Fort <rdp.effort at gmail.com> wrote:

> ---
>  Makefile.am        |  5 +++
>  man/weston-rdp.man | 92 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
>  2 files changed, 97 insertions(+)
>  create mode 100644 man/weston-rdp.man
> 
> diff --git a/Makefile.am b/Makefile.am
> index 7adc625..f67e693 100644
> --- a/Makefile.am
> +++ b/Makefile.am
> @@ -1563,6 +1563,10 @@ if ENABLE_DRM_COMPOSITOR
>  man_MANS += weston-drm.7
>  endif
>  
> +if ENABLE_RDP_COMPOSITOR
> +man_MANS += weston-rdp.7
> +endif
> +
>  MAN_SUBSTS =								\
>  	-e 's|__weston_native_backend__|$(WESTON_NATIVE_BACKEND)|g'	\
>  	-e 's|__weston_modules_dir__|$(pkglibdir)|g'			\
> @@ -1577,6 +1581,7 @@ SUFFIXES = .1 .5 .7 .man
>  EXTRA_DIST +=					\
>  	man/weston.man				\
>  	man/weston-drm.man			\
> +	man/weston-rdp.man			\
>  	man/weston.ini.man
>  
>  CLEANFILES += $(man_MANS)
> diff --git a/man/weston-rdp.man b/man/weston-rdp.man
> new file mode 100644
> index 0000000..88c795a
> --- /dev/null
> +++ b/man/weston-rdp.man
> @@ -0,0 +1,92 @@
> +.TH WESTON-RDP 7 "2017-12-14" "Weston __version__"
> +.SH NAME
> +weston-rdp \- the RDP backend for Weston
> +.SH SYNOPSIS
> +.B weston --backend=rdp-backend.so
> +.
> +.\" ***************************************************************
> +.SH DESCRIPTION
> +The RDP backend allows to run a
> +.B weston
> +environment without the need of specific graphic hardware, or input devices. Users can interact with
> +.B weston
> +only by connecting using the RDP protocol.
> +
> +The RDP backend uses FreeRDP to implement the RDP part, it acts as a RDP server
> +listening for incoming connections. It supports different codecs for encoding the
> +graphical content. Depending on what is supported by the RDP client, the backend will
> +encode images using remoteFx codec, NS codec or will fallback to raw bitmapUpdate.
> +
> +On the security part, the backend supports RDP security or TLS, keys and certificates
> +must be provided to the backend depending on which kind of security is requested. The RDP
> +backend will announced security options based on which files have been given.

s/announced/announce/ ?

> +
> +The RDP backend is multi-seat aware, so if two clients connect on the backend,
> +they will get their own seat.

"each will get its own logical seat"?

This seems like a nice way to test multi-seat, btw. :-)

> +
> +.\" ***************************************************************
> +.SH OPTIONS
> +.
> +When the RDP backend is loaded,
> +.B weston
> +will understand the following additional command line options.
> +.TP
> +.B \-\-address\fR=\fIaddress\fR
> +The IP address on which the RDP backend will listen for RDP connections. By
> +default it listens on 0.0.0.0.
> +.TP
> +\fB\-\-port\fR=\fIport\fR
> +The TCP port to listen on for connections, it defaults to 3389.
> +.TP
> +\fB\-\-no-clients-resize
> +By default when a client connects on the RDP backend, it will instruct weston to
> +resize to the dimensions of the client's announced resolution. When this option is
> +set, weston will force the client to resize to its own resolution.
> +.TP
> +\fB\-\-rdp4\-key\fR=\fIfile\fR
> +The file containing the RSA key for doing RDP security. As RDP security is known
> +to be insecure, this option should be avoided in production.
> +.TP
> +\fB\-\-rdp\-tls\-key\fR=\fIfile\fR
> +The file containing the key for doing TLS security. To have TLS security you also need
> +to ship a file containing a certificate.
> +.TP
> +\fB\-\-rdp\-tls\-cert\fR=\fIfile\fR
> +The file containing the certificate for doing TLS security. To have TLS security you also need
> +to ship a key file.
> +
> +
> +.\" ***************************************************************
> +.SH Generating cryptographic material for the RDP backend
> +.
> +To generate a key file to use for RDP security, you need the
> +.BR winpr-makecert
> +utility shipped with FreeRDP:
> +
> +.nf
> +$ winpr-makecert -rdp -silent -n rdp-security
> +.fi
> +
> +This will create a rdp-security.key file.
> +
> +
> +You can generate a key and certificate file to use with TLS security using a typical
> +.B openssl
> +invocations:
> +
> +.nf
> +$ openssl genrsa -out tls.key 2048
> +Generating RSA private key, 2048 bit long modulus
> +[...]
> +$ openssl req -new -key tls.key -out tls.csr
> +[...]
> +$ openssl x509 -req -days 365 -signkey tls.key -in tls.csr -out tls.crt
> +[...]
> +.fi
> +
> +You will get the tls.key and tls.crt files to use with the RDP backend.

Nice, I went through these commands and I can run it! :-)

> +.
> +.\" ***************************************************************
> +.SH "SEE ALSO"
> +.BR weston (1)
> +.\".BR weston.ini (5)

You could also modify weston.man to include a reference to this man
page as well as add rdp to the list of backends there.

I installed Remmina as the client, and it works. Sweet!

Looks good, would you mind doing those little edits?


Thanks,
pq
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20171215/52e37888/attachment.sig>


More information about the wayland-devel mailing list