2
Code style / indentation
3
------------------------
4
The file indent-all.sh contains information about the current code
5
style. Run this script before commits.
8
Variable argument macros
9
------------------------
10
Variable argument macros are non-portable in general, and should be
11
avoided. Either use a second set of parentheses like DEBUG, or create
12
a variable argument function like error.
17
The core protocol stack should be system-independent (i.e. ANSI C89
18
only) so that it is easy to port. This currently applies to the
21
bitmap.c licence.c orders.c rdp.c rdp5.c cache.c iso.c mcs.c
22
secure.c mppc.c channels.c
29
The source code should be compatible with ANSI C89. One exception is
30
the SeamlessRDP ServerEXE and ClientDLL, which should be compatible
36
http://dev.remotenetworktechnology.com/refdata.htm
39
Checking for out of memory conditions
40
-------------------------------------
41
Try to handle out of memory conditions gracefully. Use the xmalloc
42
routines from rdesktop.c, instead of calling malloc manually. Also,
43
remember that several Xlib functions can return NULL. This includes
44
XGetImage. Use exit_if_null to verify returned pointers.